@@ -30,7 +30,7 @@ authors = [
3030 { name = "{{ author_name }}"{% if author_email %} , email = "{{ author_email }}"{% endif %} },
3131]
3232license = "{{ license }}"
33- requires-python = ">= 3.10 " # Adjust based on the minimum version of Python that you support
33+ requires-python = ">= 3.11 " # Adjust based on the minimum version of Python that you support
3434readme = {"file" = "README.md", "content-type" = "text/markdown"}
3535# Please consult https://pypi.org/classifiers/ for a full list.
3636classifiers = [
@@ -67,12 +67,10 @@ Documentation = "https://{{ project_slug }}.readthedocs.io"
6767Documentation = "{{ dev_platform_url }}/{{ username }}/{{ project_slug }}/blob/main/README.md"
6868{% - endif %}
6969{% - endif %}
70+ # Note: update this url when you have published your package to pypi. (or delete it)
7071Download = "https://pypi.org/project/{{ project_slug }}/#files"
7172
72- [project.optional-dependencies]
73- # The groups below should be in the [development-groups] table
74- # They are here now because hatch hasn't released support for them but plans to
75- # in Mid November 2025.
73+ [dependency-groups]
7674dev = [
7775 "hatch",
7876 "pre-commit",
@@ -90,11 +88,11 @@ docs = [
9088{% - if documentation == "sphinx" %}
9189 "sphinx~=8.0",
9290 "myst-parser>=4.0",
93- "pydata-sphinx-theme~ =0.16",
91+ "pydata-sphinx-theme> =0.16",
9492 "sphinx-autobuild>=2024.10.3",
9593 "sphinx-autoapi>=3.6.0",
96- "sphinx_design>=0.6.1",
9794 "sphinx-copybutton>=0.5.2",
95+ "sphinx-design>=0.6.1",
9896{% - elif documentation == "mkdocs" %}
9997 "mkdocs-material ~=9.5",
10098 "mkdocstrings[python] ~=0.24",
@@ -111,9 +109,6 @@ build = [
111109tests = [
112110 "pytest",
113111 "pytest-cov",
114- "pytest-raises",
115- "pytest-randomly",
116- "pytest-xdist",
117112]
118113{% - endif %}
119114
@@ -243,23 +238,7 @@ exclude = "_version.py"
243238{% - endif -%}
244239
245240{% if use_types %}
246- # TODO: Adjust mypy configuration.
247- #[tool.mypy]
248- #plugins = [
249- # "pydantic.mypy",
250- #]
251-
252- # Stop mypy from complaining about missing types from imports.
253- #[[tool.mypy.overrides]]
254- #module = [
255- # "pandas",
256- #]
257- #ignore_missing_imports = true
258-
259- #[tool.pydantic-mypy]
260- #init_forbid_extra = true
261- #init_typed = true
262- #warn_required_dynamic_aliases = true
241+ # Typing is not supported yet.
263242{% - endif %}
264243
265244{% - if use_hatch_envs %}
@@ -276,10 +255,11 @@ installer = "uv"
276255# This table installs the tools you need to test and build your package
277256[tool.hatch.envs.build]
278257description = """Test the installation the package."""
279- features = [
258+ dependency-groups = [
280259 "build",
281260]
282261detached = true
262+ builder = true
283263
284264# This table installs created the command hatch run install:check which will build and check your package.
285265[tool.hatch.envs.build.scripts]
@@ -293,12 +273,12 @@ check = [
293273{% - if use_test %}
294274[tool.hatch.envs.test]
295275description = """Run the test suite."""
296- features = [
297- "tests",
276+ dependency-groups = [
277+ "tests",
298278]
299279
300280[[tool.hatch.envs.test.matrix]]
301- python = ["3.10", "3. 11", "3.12", "3.13"]
281+ python = ["3.11", "3.12", "3.13"]
302282
303283[tool.hatch.envs.test.scripts]
304284run = "pytest {args:--cov={{ package_name }} --cov-report=term-missing --cov-report=xml}"
@@ -310,7 +290,7 @@ run = "pytest {args:--cov={{ package_name }} --cov-report=term-missing --cov-rep
310290[tool.hatch.envs.docs]
311291description = """Build or serve the documentation."""
312292# Install optional dependency test for docs
313- features = [
293+ dependency-groups = [
314294 "docs",
315295]
316296
@@ -333,7 +313,7 @@ serve = ["sphinx-autobuild docs --watch src/{{ package_name }} {args:-b html doc
333313
334314[tool.hatch.envs.style]
335315description = """Check the code and documentation style."""
336- features = [
316+ dependency-groups = [
337317 "style",
338318]
339319detached = true
@@ -349,7 +329,7 @@ check = ["docstrings", "code"]
349329
350330[tool.hatch.envs.audit]
351331description = """Check dependencies for security vulnerabilities."""
352- features = [
332+ dependency-groups = [
353333 "build",
354334]
355335
@@ -361,7 +341,7 @@ check = ["pip-audit"]
361341#--------------- Typing ---------------#
362342[tool.hatch.envs.types]
363343description = """Check the static types of the codebase."""
364- features = ["types"]
344+ dependency-groups = ["types"]
365345
366346[tool.hatch.envs.types.scripts]
367347check = "mypy src/{{ package_name }}"
0 commit comments