-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpyproject.toml
138 lines (123 loc) · 3.34 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
138
# Poetry pyproject.toml: https://python-poetry.org/docs/pyproject/
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.masonry.api"
[tool.poetry]
name = "Tidal Gauge API"
version = "0.1.0"
description = "A Python wrapper for the Tidal Gauge API from the UK Environment Agency"
readme = ".github/README.rst"
authors = ["marksie1988 <[email protected]>"]
repository = "https://github.com/totaldebug/pydalgauge"
homepage = "https://github.com/totaldebug/pydalgauge"
# Keywords description https://python-poetry.org/docs/pyproject/#keywords
keywords = [ "tidal", "gauge", "environment", "agency" ]
# Pypi classifiers: https://pypi.org/classifiers/
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Operating System :: OS Independent",
"Topic :: Software Development :: Libraries :: Python Modules",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.12",
]
[tool.poetry.group.dev.dependencies]
python = "^3.12"
[tool.poetry.dev-dependencies]
bandit = "^1.7.0"
black = {version = "^22.12.0", allow-prereleases = true}
darglint = "^1.8.0"
flake8 = "^3.9.2"
autoflake = "^1.7.8"
isort = "^5.12.0"
mypy = "^0.910"
mypy-extensions = "^0.4.3"
pre-commit = "^2.14.0"
pydocstyle = "^6.1.1"
pylint = "^2.10.2"
commitizen = "^3.13.0"
pyupgrade = "^2.24.0"
safety = "^1.10.3"
Sphinx = "^4.5.0"
sphinx-argparse = "^0.3.2"
sphinx-autobuild = "^2021.3.14"
sphinx-rtd-theme = "^1.2.0"
nox = "^2022.11.21"
python-semantic-release = "^8.7.0"
[tool.black]
# https://github.com/psf/black
target-version = ["py312"]
line-length = 88
color = true
exclude = '''
/(
\.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
| env
| venv
)/
'''
[tool.isort]
# https://github.com/timothycrosley/isort/
py_version = 312
line_length = 88
known_typing = ["typing", "types", "typing_extensions", "mypy", "mypy_extensions"]
sections = ["FUTURE", "TYPING", "STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
include_trailing_comma = true
profile = "black"
multi_line_output = 3
indent = 4
color_output = true
skip = [".cache", ".nox"]
[tool.autoflake]
check = true
remove-unused-variables = true
remove-all-unused-imports = true
remove-duplicate-keys = true
[tool.mypy]
# https://mypy.readthedocs.io/en/latest/config_file.html#using-a-pyproject-toml-file
python_version = 3.12
pretty = true
show_traceback = true
color_output = true
warn_return_any = true
warn_unused_configs = true
[[tool.mypy.overrides]]
module = "tidal_gauge_api"
disallow_untyped_defs = true
[tool.semantic_release]
version_toml = [
"pyproject.toml:tool.poetry.version",
]
branch = "main"
upload_to_pypi = true
upload_to_repository = false
upload_to_release = true
build_command = "pip install poetry && poetry build"
version_source = "tag"
commit_version_number = true
commit_message = "chore(release): v{version} [skip ci]"
[tool.interrogate]
ignore-init-method = true
ignore-init-module = false
ignore-magic = false
ignore-semiprivate = false
ignore-private = false
ignore-property-decorators = false
ignore-module = true
ignore-nested-functions = false
ignore-nested-classes = true
ignore-setters = false
fail-under = 100
exclude = ["setup.py", "docs", "build", ".devcontainer", ".nox", ".cache"]
ignore-regex = ["^get$", "^mock_.*", ".*BaseClass.*"]
verbose = 0
quiet = false
color = true