-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpyproject.toml
137 lines (116 loc) · 3.52 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# --- MUST ADAPT THIS FILE FOR YOUR PROJECT ---
# --- Instructions below ---
#
# * Search and replace `jupyterhub-python-repo-template` with the name of your repository
# * Search after the `TODO` keyword and follow the instructions in the comment
# build-system
# - ref: https://peps.python.org/pep-0517/
#
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
# project
# - ref 1: https://peps.python.org/pep-0621/
# - ref 2: https://hatch.pypa.io/latest/config/metadata/#project-metadata
#
[project]
# TODO: Change the name below with the name of your project
name = "jupyterhub-python-repo-template"
# TODO: Change the description below with a description of your project
description = "JupyterHub Python repository template"
readme = "README.md"
# TODO: Change the Python version below with the one relevant to your project
requires-python = ">=3.8"
license = {file = "LICENSE"}
# TODO: Add more keywords to the list that are relevant to your project
keywords = ["jupyterhub"]
authors = [
{name = "Jupyter Contributors", email = "[email protected]"},
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Programming Language :: Python :: 3",
]
# TODO: List the packages and pin them to a version that your project depends on
dependencies = [
# NOTE: If lower bounds are updated, also update our test for the lower
# bounds in .github/workflows/test.yaml.
"jupyterhub>=2.0.0",
]
dynamic = ["version"]
# TODO: List the packages and pin them to a version that the tests in your project depend on
[project.optional-dependencies]
test = [
"pytest",
"pytest-cov",
"pytest-asyncio",
]
[project.urls]
Documentation = "https://jupyterhub-python-repo-template.readthedocs.io"
Source = "https://github.com/jupyterhub/jupyterhub-python-repo-template"
Issues = "https://github.com/jupyterhub/jupyterhub-python-repo-template/issues"
# hatch ref: https://hatch.pypa.io/latest/
#
[tool.hatch.version]
path = "jupyterhub-python-repo-template/_version.py"
# autoflake is used for autoformatting Python code
#
# ref: https://github.com/PyCQA/autoflake#readme
#
[tool.autoflake]
ignore-init-module-imports = true
remove-all-unused-imports = true
remove-duplicate-keys = true
remove-unused-variables = true
# black is used for autoformatting Python code
#
# ref: https://black.readthedocs.io/en/stable/
#
[tool.black]
skip-string-normalization = true
# target-version should be all supported versions, see
# https://github.com/psf/black/issues/751#issuecomment-473066811
target_version = [
"py38",
"py39",
"py310",
"py311",
]
# isort is used for autoformatting Python code
#
# ref: https://pycqa.github.io/isort/
#
[tool.isort]
profile = "black"
# pytest is used for running Python based tests
#
# ref: https://docs.pytest.org/en/stable/
#
[tool.pytest.ini_options]
addopts = "--verbose --color=yes --durations=10"
asyncio_mode = "auto"
testpaths = ["tests"]
# tbump is used to simplify and standardize the release process when updating
# the version, making a git commit and tag, and pushing changes.
#
# ref: https://github.com/your-tools/tbump#readme
#
[tool.tbump]
github_url = "https://github.com/jupyterhub/jupyterhub-python-repo-template"
[tool.tbump.version]
current = "0.0.1.dev0"
regex = '''
(?P<major>\d+)
\.
(?P<minor>\d+)
\.
(?P<patch>\d+)
(?P<pre>((a|b|rc)\d+)|)
\.?
(?P<dev>(?<=\.)dev\d*|)
'''
[tool.tbump.git]
message_template = "Bump to {new_version}"
tag_template = "{new_version}"
[[tool.tbump.file]]
src = "jupyterhub-python-repo-template/_version.py"