11[build-system ]
2- requires = [" hatchling " ]
3- build-backend = " hatchling.build "
2+ requires = [" pdm-backend " ]
3+ build-backend = " pdm.backend "
44
55[project ]
66name = " quivr"
@@ -17,7 +17,10 @@ dependencies = [
1717 " mmh3" ,
1818 " typing_extensions>=4.0.0"
1919]
20- dynamic = [ " version" ]
20+ dynamic = [" version" ]
21+
22+ [project .urls ]
23+ Source = " https://github.com/B612-Asteroid-Institute/quivr"
2124
2225[project .optional-dependencies ]
2326docs = [
@@ -28,19 +31,16 @@ docs = [
2831 " furo==2023.08.17" ,
2932]
3033
31- [project .urls ]
32- Source = " https://github.com/spenczar/quivr"
33-
34- [tool .hatch .build .targets .sdist ]
35- include = [
36- " /quivr" ,
37- ]
34+ [tool .pdm .build ]
35+ includes = [" quivr" ]
3836
39- [tool .hatch .version ]
40- path = " quivr/__version__.py"
37+ [tool .pdm .version ]
38+ source = " scm"
39+ write_to = " quivr/__version__.py"
40+ write_template = " __version__ = '{}'"
4141
42- [tool . hatch . envs . dev ]
43- dependencies = [
42+ [dependency-groups ]
43+ dev = [
4444 " black" ,
4545 " isort" ,
4646 " mypy" ,
@@ -51,39 +51,7 @@ dependencies = [
5151 " ipython"
5252]
5353
54- [tool .hatch .envs .dev .scripts ]
55- check = [
56- " lint" ,
57- " typecheck" ,
58- " test" ,
59- ]
60- fix = [
61- " ruff ./quivr ./test --fix"
62- ]
63- lint = [
64- " ruff check ./quivr ./test" ,
65- " black --check ./quivr ./test" ,
66- " isort --check-only ./quivr ./test"
67- ]
68- format = [
69- " black ./quivr ./test" ,
70- " isort ./quivr ./test"
71- ]
72- typecheck = [
73- " mypy --strict ./quivr ./examples ./test/typing_tests" ,
74- ]
7554test = [
76- " pytest --benchmark-disable ./test {args}" ,
77- ]
78- doctest = [
79- " pytest --doctest-modules ./quivr {args}"
80- ]
81- benchmark = [
82- " pytest --benchmark-only ./test {args}"
83- ]
84-
85- [tool .hatch .envs .test ]
86- dependencies = [
8755 " black" ,
8856 " isort" ,
8957 " mypy" ,
@@ -93,49 +61,27 @@ dependencies = [
9361 " ruff" ,
9462]
9563
96- [[tool .hatch .envs .test .matrix ]]
97- python = [" 3.10" , " 3.11" ]
98-
99- [tool .hatch .envs .test .scripts ]
100- all = [
64+ [tool .pdm .scripts ]
65+ check = { composite = [" lint" , " typecheck" , " test" ] }
66+ fix = " ruff check ./quivr ./test --fix"
67+ lint = { composite = [
10168 " ruff check ./quivr ./test" ,
10269 " black --check ./quivr ./test" ,
103- " isort --check-only ./quivr ./test" ,
104- " mypy --strict ./quivr ./examples ./test/typing_tests" ,
105- " pytest --benchmark-disable ./test {args}" ,
106- " pytest --doctest-modules ./quivr" ,
107- ]
108-
109- benchmark = [
110- " pytest --benchmark-only ./test"
111- ]
112-
113- [tool .hatch .envs .docs ]
114- dependencies = [
115- " sphinx==7.2.2" ,
116- " sphinx-autodoc-typehints" ,
117- " sphinx-copybutton" ,
118- " sphinx-toolbox" ,
119- " furo==2023.08.17" ,
120- ]
121-
122- [tool .hatch .envs .docs .scripts ]
123- make-html = [
124- " make -C docs html"
125- ]
126-
127- open-html = [
128- " open docs/build/html/index.html"
129- ]
130-
131- clean = [
132- " make -C docs clean"
133- ]
134-
135- rebuild = [
136- " make -C docs clean" ,
137- " make -C docs html"
138- ]
70+ " isort --check-only ./quivr ./test"
71+ ] }
72+ format = { composite = [
73+ " black ./quivr ./test" ,
74+ " isort ./quivr ./test"
75+ ] }
76+ typecheck = " mypy --strict ./quivr ./examples ./test/typing_tests"
77+ test = " pytest --benchmark-disable ./test {args}"
78+ doctest = " pytest --doctest-modules ./quivr {args}"
79+ benchmark = " pytest --benchmark-only ./test {args}"
80+
81+ docs-html = " make -C docs html"
82+ docs-open = " open docs/build/html/index.html"
83+ docs-clean = " make -C docs clean"
84+ docs-rebuild = { composite = [" docs-clean" , " docs-html" ] }
13985
14086[tool .black ]
14187line-length = 110
0 commit comments