@@ -69,23 +69,13 @@ version.raw-options.git_describe_command = [
6969 " --match" , " v*.[0-9][0-9][0-9]" ,
7070]
7171
72- [tool .mypy ]
73- files = [" src" , " tests" ]
74- python_version = " 3.9"
75- mypy_path = " typings"
76- disallow_untyped_defs = true
77- warn_return_any = true
78- warn_unused_ignores = true
79-
80- [tool .ruff ]
81- exclude = [" _version.py" , " tests/data" ]
82- lint.extend-select = [" I" ] # Enable ruffs isort rules (for compat with vscode ruff)
83-
84- [tool .coverage ]
85- run.source = [" src" , " tests" ]
86- run.omit = [" _version.py" ]
87- report.skip_covered = false
88- append = true
72+ # For Github Actions workflow - see https://github.com/tox-dev/tox-gh
73+ [tool .tox .gh .python ]
74+ "3.13" = [" clean" , " typing" , " lint" , " format" , " 3.13" ]
75+ "3.12" = [" 3.12" ]
76+ "3.11" = [" 3.11" ]
77+ "3.10" = [" 3.10" ]
78+ "3.9" = [" 3.9" ]
8979
9080# https://tox.wiki/en/latest/config.html#pyproject-toml-native
9181[tool .tox ]
@@ -101,13 +91,30 @@ env.lint.commands = [["ruff", "check"]]
10191env.format.commands = [[" ruff" , " format" , " --check" ]]
10292
10393# Default command and options for all the environments
94+ env_run_base.extras = [" littlefs" ] # Include optional dependencies
10495env_run_base.commands = [[" pytest" , {replace = " posargs" , extend = true }]]
10596env_run_base.dependency_groups = [" test" ] # Ensure test dependencies are installed
106- env_run_base.extras = [" littlefs" ] # Include optional dependencies
10797env_run_base.package = " editable" # Use the editable install mode
10898env_run_base.runner = " uv-venv-runner" # We love uv
109- env_run_base.skip_install = true
11099
111100# Overrides for the latest python version
112101env.3.13.commands = [[" pytest" , " --cov" , {replace = " posargs" , extend = true }]]
113102env.3.13.labels = [" cov" , " coverage" , " latest" ]
103+
104+ [tool .mypy ]
105+ files = [" src" , " tests" ]
106+ python_version = " 3.9"
107+ mypy_path = " typings"
108+ disallow_untyped_defs = true
109+ warn_return_any = true
110+ warn_unused_ignores = true
111+
112+ [tool .ruff ]
113+ exclude = [" _version.py" , " tests/data" ]
114+ lint.extend-select = [" I" ] # Enable ruffs isort rules (for compat with vscode ruff)
115+
116+ [tool .coverage ]
117+ run.source = [" src" , " tests" ]
118+ run.omit = [" _version.py" ]
119+ report.skip_covered = false
120+ append = true
0 commit comments