33# SPDX-License-Identifier: MIT
44
55[build-system ]
6- requires = [
7- " setuptools>=43" ,
8- " setuptools_scm[toml]>=6.2" ,
9- ]
10- build-backend = " setuptools.build_meta"
6+ requires = [" hatchling" , " hatch-vcs" ]
7+ build-backend = " hatchling.build"
118
129[project ]
1310name = " cjdk"
1411dynamic = [" version" ]
1512description = " Auto-download JDK or JRE and run Java apps from Python or CLI"
1613readme = " README.md"
17- requires-python = " >=3.9 "
14+ requires-python = " >=3.10 "
1815license = " MIT"
1916license-files = [" LICENSE.txt" ]
2017keywords = [" Java" , " JDK" , " JRE" , " JVM" ]
@@ -23,6 +20,11 @@ authors = [
2320]
2421classifiers = [
2522 " Programming Language :: Python :: 3" ,
23+ " Programming Language :: Python :: 3.10" ,
24+ " Programming Language :: Python :: 3.11" ,
25+ " Programming Language :: Python :: 3.12" ,
26+ " Programming Language :: Python :: 3.13" ,
27+ " Programming Language :: Python :: 3.14" ,
2628 " Programming Language :: Java" ,
2729 " Topic :: Software Development" ,
2830]
@@ -33,22 +35,35 @@ dependencies = [
3335 " requests >= 2.24" ,
3436]
3537
36- [project .optional-dependencies ]
37- testing = [
38- " flask >= 2.0" ,
39- " pytest >= 7.0" ,
40- " werkzeug >= 2.0" ,
41- ]
42-
4338[project .urls ]
4439Documentation = " https://cachedjdk.github.io/cjdk/latest"
4540Repository = " https://github.com/cachedjdk/cjdk"
4641
4742[project .scripts ]
4843cjdk = " cjdk.__main__:main"
4944
50- [tool .setuptools_scm ]
51- write_to = " src/cjdk/_version.py"
45+ [dependency-groups ]
46+ test = [
47+ " flask >= 2.0" ,
48+ " pytest >= 7.0" ,
49+ " werkzeug >= 2.0" ,
50+ ]
51+ dev = [
52+ {include-group = " test" },
53+ ]
54+ docs = [
55+ " jgo >= 1.0" ,
56+ " jupyter-book >= 0.13, < 2.0" ,
57+ " jupyterlab >= 3.4" ,
58+ " jupytext >= 1.13" ,
59+ " sphinxcontrib-programoutput >= 0.17" ,
60+ ]
61+
62+ [tool .hatch .version ]
63+ source = " vcs"
64+
65+ [tool .hatch .build .hooks .vcs ]
66+ version-file = " src/cjdk/_version.py"
5267
5368[tool .pytest .ini_options ]
5469testpaths = [" tests" ]
@@ -62,5 +77,5 @@ select = ["E", "F", "UP", "B", "SIM", "I"]
6277ignore = [" B006" , " B007" , " B011" , " B017" , " E501" ]
6378
6479[tool .uv ]
65- # setuptools_scm compatibility
80+ # hatch-vcs compatibility
6681cache-keys = [{file = " pyproject.toml" }, {git = {commit = true , tags = true }}]
0 commit comments