Skip to content

Commit 29c61e3

Browse files
authored
Move content of setup.cfg to pyproject.toml. (#444)
1 parent 326e589 commit 29c61e3

File tree

4 files changed

+124
-111
lines changed

4 files changed

+124
-111
lines changed

.pre-commit-config.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
repos:
22
- repo: https://github.com/pre-commit/pre-commit-hooks
3-
rev: v4.4.0
3+
rev: v4.5.0
44
hooks:
55
- id: check-added-large-files
66
args: ['--maxkb=25']
@@ -35,10 +35,10 @@ repos:
3535
- id: reorder-python-imports
3636
args: [--py38-plus]
3737
files: ^(docs_src/)
38-
- repo: https://github.com/asottile/setup-cfg-fmt
39-
rev: v2.5.0
40-
hooks:
41-
- id: setup-cfg-fmt
38+
# - repo: https://github.com/tox-dev/pyproject-fmt
39+
# rev: 1.2.0
40+
# hooks:
41+
# - id: pyproject-fmt
4242
- repo: https://github.com/psf/black
4343
rev: 23.9.1
4444
hooks:
@@ -59,7 +59,7 @@ repos:
5959
args: [-v, --fail-under=75]
6060
exclude: ^(tests/|docs/|scripts/|docs_src/)
6161
- repo: https://github.com/pre-commit/mirrors-mypy
62-
rev: 'v1.5.1'
62+
rev: v1.5.1
6363
hooks:
6464
- id: mypy
6565
additional_dependencies: [

docs/source/changes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ releases are available on [PyPI](https://pypi.org/project/pytask) and
99

1010
- {pull}`443` ensures that `PythonNode.name` is always unique by only handling it
1111
internally.
12+
- {pull}`444` moves all content of `setup.cfg` to `pyproject.toml`.
1213

1314
## 0.4.0 - 2023-10-07
1415

pyproject.toml

Lines changed: 117 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,14 @@
11
[build-system]
2-
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.0"]
32
build-backend = "setuptools.build_meta"
4-
3+
requires = [
4+
"setuptools>=45",
5+
"setuptools_scm[toml]>=6",
6+
"wheel",
7+
]
58

69
[tool.setuptools_scm]
710
write_to = "src/_pytask/_version.py"
811

9-
10-
[tool.mypy]
11-
files = ["src", "tests"]
12-
check_untyped_defs = true
13-
disallow_any_generics = true
14-
disallow_incomplete_defs = true
15-
disallow_untyped_defs = true
16-
no_implicit_optional = true
17-
warn_redundant_casts = true
18-
warn_unused_ignores = true
19-
20-
21-
[[tool.mypy.overrides]]
22-
module = "tests.*"
23-
disallow_untyped_defs = false
24-
ignore_errors = true
25-
26-
[[tool.mypy.overrides]]
27-
module = ["click_default_group", "networkx"]
28-
ignore_missing_imports = true
29-
30-
[[tool.mypy.overrides]]
31-
module = ["_pytask.hookspecs"]
32-
disable_error_code = ["empty-body"]
33-
34-
35-
[tool.codespell]
36-
ignore-words-list = "falsy, hist, ines, unparseable"
37-
38-
3912
[tool.ruff]
4013
target-version = "py38"
4114
select = ["ALL"]
@@ -88,7 +61,6 @@ ignore = [
8861
[tool.ruff.pydocstyle]
8962
convention = "numpy"
9063

91-
9264
[tool.pytest.ini_options]
9365
addopts = ["--doctest-modules"]
9466
testpaths = ["src", "tests"]
@@ -101,6 +73,118 @@ markers = [
10173
norecursedirs = [".idea", ".tox"]
10274
filterwarnings = ["ignore:'@pytask.mark.*. is deprecated:FutureWarning"]
10375

76+
[tool.mypy]
77+
files = ["src", "tests"]
78+
check_untyped_defs = true
79+
disallow_any_generics = true
80+
disallow_incomplete_defs = true
81+
disallow_untyped_defs = true
82+
no_implicit_optional = true
83+
warn_redundant_casts = true
84+
warn_unused_ignores = true
85+
86+
87+
[[tool.mypy.overrides]]
88+
module = "tests.*"
89+
disallow_untyped_defs = false
90+
ignore_errors = true
91+
92+
[[tool.mypy.overrides]]
93+
module = ["click_default_group", "networkx"]
94+
ignore_missing_imports = true
95+
96+
[[tool.mypy.overrides]]
97+
module = ["_pytask.hookspecs"]
98+
disable_error_code = ["empty-body"]
99+
100+
[tool.codespell]
101+
ignore-words-list = "falsy, hist, ines, unparseable"
104102

105103
[tool.refurb]
106104
python_version = "3.8"
105+
106+
[project]
107+
name = "pytask"
108+
description = "In its highest aspirations, pytask tries to be pytest as a build system."
109+
requires-python = ">=3.8"
110+
classifiers = [
111+
"Development Status :: 4 - Beta",
112+
"Environment :: Console",
113+
"Intended Audience :: Science/Research",
114+
"License :: OSI Approved :: MIT License",
115+
"Operating System :: MacOS :: MacOS X",
116+
"Operating System :: Microsoft :: Windows",
117+
"Operating System :: POSIX",
118+
"Programming Language :: Python :: 3 :: Only",
119+
"Programming Language :: Python :: 3.8",
120+
"Programming Language :: Python :: 3.9",
121+
"Programming Language :: Python :: 3.10",
122+
"Programming Language :: Python :: 3.11",
123+
"Programming Language :: Python :: 3.12",
124+
"Topic :: Scientific/Engineering",
125+
"Topic :: Software Development :: Build Tools",
126+
]
127+
dynamic = ["version"]
128+
dependencies = [
129+
"attrs>=21.3",
130+
"click",
131+
"click-default-group",
132+
"networkx>=2.4",
133+
"optree>=0.9",
134+
"packaging",
135+
"pluggy>=1",
136+
"rich",
137+
"sqlalchemy>=1.4.36",
138+
"tomli>=1",
139+
"typing-extensions",
140+
]
141+
142+
[project.readme]
143+
file = "README.md"
144+
content-type = "text/markdown"
145+
146+
[project.license]
147+
text = "MIT"
148+
149+
[[project.authors]]
150+
name = "Tobias Raabe"
151+
152+
153+
[project.optional-dependencies]
154+
docs = [
155+
"furo",
156+
"ipython",
157+
"myst-parser",
158+
"nbsphinx",
159+
"sphinx",
160+
"sphinx-click",
161+
"sphinx-copybutton",
162+
"sphinx-design>=0.3",
163+
"sphinx-toolbox",
164+
"sphinxext-opengraph",
165+
]
166+
[project.urls]
167+
Changelog = "https://pytask-dev.readthedocs.io/en/stable/changes.html"
168+
Documentation = "https://pytask-dev.readthedocs.io/en/stable"
169+
Github = "https://github.com/pytask-dev/pytask"
170+
Homepage = "https://pytask-dev.readthedocs.io/en/stable"
171+
Tracker = "https://github.com/pytask-dev/pytask/issues"
172+
173+
[project.scripts]
174+
pytask = "_pytask.cli:cli"
175+
176+
[tool.setuptools]
177+
include-package-data = true
178+
zip-safe = false
179+
platforms = ["unix", "linux", "osx", "win32"]
180+
license-files = ["LICENSE"]
181+
182+
[tool.check-manifest]
183+
ignore = ["src/_pytask/_version.py"]
184+
185+
[tool.setuptools.package-dir]
186+
"" = "src"
187+
188+
[tool.setuptools.packages.find]
189+
where = ["src"]
190+
namespaces = false

setup.cfg

Lines changed: 0 additions & 72 deletions
This file was deleted.

0 commit comments

Comments
 (0)