@@ -36,26 +36,26 @@ classifiers = [
3636 " Topic :: Software Development :: Testing" ,
3737]
3838dependencies = [
39- " pytest>=8.4.1 " ,
40- " python-dotenv>=1.1 .0" ,
41- " tomli>=2 .2.1 ; python_version<'3.11'" ,
39+ " pytest>=7.0.0 " ,
40+ " python-dotenv>=1.0 .0" ,
41+ " tomli>=0 .2.0 ; python_version<'3.11'" ,
4242]
4343
4444[dependency-groups ]
4545dev = [
4646 { include-group = " test" },
47- { include-group = " type " },
47+ { include-group = " type_hints " },
4848 { include-group = " lint" },
4949]
5050test = [
5151 " coverage>=7.9.1" ,
52- " pytest>=8.3.4 " ,
52+ " pytest>=7.0.0 " ,
5353 " pytest-cov>=6.2.1" ,
5454 " pytest-xdist>=3.7.0" ,
5555 " diff-cover>=9.4.1" ,
5656 " covdefaults>=2.3.0"
5757]
58- type = [
58+ type_hints = [
5959 " mypy>=1.16.1" ,
6060 " pytest-stub>=1.1.0"
6161]
@@ -140,9 +140,6 @@ show_contexts = true
140140[tool .coverage .path ]
141141source = [
142142 " src" ,
143- " .tox*/*/lib/python*/site-packages" ,
144- " .tox*/pypy*/site-packages" ,
145- " .tox*\\ *\\ Lib\\ site-packages" ,
146143 " */src" ,
147144 " *\\ src" ,
148145]
@@ -156,81 +153,3 @@ omit = [
156153 " src/pytest_envx/__version__.py"
157154]
158155show_missing = true
159-
160- # ==============================
161- # Tox
162- # ==============================
163- [tool .tox ]
164- requires = [
165- " tox>=4.27.0" ,
166- " tox-uv>=1.26.1" ,
167- ]
168- env_list = [
169- " 3.13" ,
170- " 3.12" ,
171- " 3.11" ,
172- " 3.10" ,
173- " 3.9" ,
174- " lint" ,
175- " type_hints" ,
176- " pkg-meta" ,
177- ]
178- skip_missing_interpreters = true
179-
180- [tool .tox .env_run_base ]
181- description = " Execute pytest tests for the specified Python environment"
182- dependency_groups = [" test" ]
183- set_env.COVERAGE_FILE = { replace = " env" , name = " COVERAGE_FILE" , default = " {toxworkdir}{/}.coverage.{env_name}" }
184- set_env.COVERAGE_XML = { replace = " env" , name = " COVERAGE_XML" , default = " {env_tmp_dir}{/}coverage.{env_name}.xml" }
185- package = " wheel"
186- wheel_build_env = " .pkg"
187- pass_env = [" PYTEST_*" , " COVERAGE_*" ]
188- commands = [
189- [
190- " pytest" , { replace = " posargs" , extend = true , default = [
191- " -p" , " no:pytest_envx" ,
192- " -v" ,
193- " -n" , { replace = " env" , name = " PYTEST_XDIST_AUTO_NUM_WORKERS" , default = " auto" },
194- " --junitxml" , " {toxworkdir}{/}junit.{env_name}.xml" ,
195- " --no-cov-on-fail" ,
196- " --cov" , " {env_site_packages_dir}{/}pytest_envx" ,
197- " --cov" , " {tox_root}{/}tests" ,
198- " --cov-config" , " {tox_root}{/}pyproject.toml" ,
199- " --cov-context" , " test" ,
200- " --cov-report" , " term-missing" ,
201- " --cov-report" , " html:{env_tmp_dir}{/}htmlcov" ,
202- " --cov-report" , " xml:{env:COVERAGE_XML}"
203- ] }
204- ],
205- [
206- " diff-cover" , " --compare-branch" , " {env:DIFF_AGAINST:origin/master}" , " {env:COVERAGE_XML}"
207- ]
208- ]
209-
210-
211- [tool .tox .env .lint ]
212- description = " Format code according to style guidelines and report unfixable issues"
213- skip_install = true
214- dependency_groups = [" lint" ]
215- pass_env = [{ replace = " ref" , of = [" env_run_base" , " pass_env" ], extend = true }, " PROGRAMDATA" , " DISABLE_PRE_COMMIT_UV_PATCH" ]
216- commands = [
217- [" pre-commit" , " run" , " --all-files" , " --show-diff-on-failure" , { replace = " posargs" , extend = true }]
218- ]
219-
220- [tool .tox .env .type_hints ]
221- description = " Perform static type checking on the code base"
222- skip_install = true
223- dependency_groups = [" type" ]
224- commands = [
225- [" mypy" , " src{/}pytest_envx" , " tests" ]
226- ]
227-
228- [tool .tox .env .pkg-meta ]
229- description = " Validate package metadata and build artifacts"
230- skip_install = true
231- dependency_groups = [" pkg_meta" ]
232- commands = [
233- [" uv" , " build" , " --sdist" , " --wheel" , " --out-dir" , " {env_tmp_dir}" , " ." ],
234- [" twine" , " check" , " {env_tmp_dir}{/}*" ],
235- [" check-wheel-contents" , " --no-config" , " {env_tmp_dir}" ]
236- ]
0 commit comments