@@ -24,6 +24,7 @@ classifiers = [
2424 " Programming Language :: Python :: 3.11" ,
2525 " Programming Language :: Python :: 3.12" ,
2626 " Programming Language :: Python :: 3.13" ,
27+ " Programming Language :: Python :: 3.14" ,
2728]
2829dynamic = [ " version" ]
2930dependencies = [
@@ -47,24 +48,20 @@ optional-dependencies.dev = [
4748 " pre-commit" ,
4849 " twine>=4.0.2" ,
4950]
50-
5151optional-dependencies.doc = [
5252 " mkdocs-macros-plugin" ,
5353 " mkdocs-material" ,
5454 " mkdocstrings[python]" ,
5555 " mknotebooks" ,
5656 " pymdown-extensions" ,
5757]
58-
5958optional-dependencies.mapping = [
6059 " scarches>=0.6.1" ,
6160 " scvi-tools>=1.2" ,
6261]
63-
6462optional-dependencies.stats = [
6563 " decoupler>=1.6" ,
6664]
67-
6865optional-dependencies.test = [
6966 " coverage" ,
7067 " igraph>=0.11" ,
@@ -77,29 +74,21 @@ urls.Documentation = "https://devsystemslab.github.io/HNOCA-tools/"
7774urls.Homepage = " https://github.com/devsystemslab/HNOCA-tools"
7875urls.Source = " https://github.com/devsystemslab/HNOCA-tools"
7976
80- [tool .hatch .version ]
81- source = " vcs"
82-
83- [tool .hatch .envs .default ]
84- installer = " uv"
85- features = [ " dev" ]
86-
87- [tool .hatch .envs .hatch-test ]
88- features = [ " test" ]
89-
90- [tool .hatch .envs .docs ]
91- features = [ " doc" ]
92- scripts.build = " mkdocs build {args}"
93- scripts.serve = " mkdocs serve {args}"
94- scripts.clean = " rm -rf docs/*"
77+ [tool .hatch ]
78+ envs.default.installer = " uv"
79+ envs.default.features = [ " dev" ]
80+ envs.docs.features = [ " doc" ]
81+ envs.docs.scripts.build = " mkdocs build {args}"
82+ envs.docs.scripts.serve = " mkdocs serve {args}"
83+ envs.docs.scripts.clean = " rm -rf docs/*"
84+ envs.hatch-test.features = [ " test" ]
85+ version.source = " vcs"
9586
9687[tool .ruff ]
9788line-length = 120
9889src = [ " src" ]
9990extend-include = [ " *.ipynb" ]
100-
10191format.docstring-code-format = true
102-
10392lint.select = [
10493 " B" , # flake8-bugbear
10594 " BLE" , # flake8-blind-except
@@ -133,18 +122,18 @@ lint.per-file-ignores."docs/*" = [ "I" ]
133122lint.per-file-ignores."tests/*" = [ " D" ]
134123lint.pydocstyle.convention = " numpy"
135124
136- [tool .pytest . ini_options ]
137- testpaths = [ " tests" ]
138- xfail_strict = true
139- addopts = [
125+ [tool .pytest ]
126+ ini_options. testpaths = [ " tests" ]
127+ ini_options. xfail_strict = true
128+ ini_options. addopts = [
140129 " --import-mode=importlib" , # allow using test files with same name
141130]
142131
143- [tool .coverage .run ]
144- source = [ " hnoca" ]
145- omit = [
132+ [tool .coverage ]
133+ run.omit = [
146134 " **/test_*.py" ,
147135]
136+ run.source = [ " hnoca" ]
148137
149138[tool .cruft ]
150139skip = [
0 commit comments