-
Notifications
You must be signed in to change notification settings - Fork 1
/
pyproject.toml
121 lines (108 loc) · 3.07 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
# package build
# https://peps.python.org/pep-0517/
[build-system]
requires = ["setuptools>=65", "wheel", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[tool.setuptools_scm]
# package basics
# https://peps.python.org/pep-0621/
[project]
name = "award-pynder"
description = "Award search and gathering"
keywords = []
readme = "README.md"
requires-python = ">=3.9"
license = { text = "MPLv2" }
authors = [
{ email = "evamxb@uw.edu", name = "Eva Maxfield Brown" },
]
classifiers = [
"Development Status :: 4 - Beta",
"Natural Language :: English",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
dynamic = ["version"]
dependencies = [
"beautifulsoup4>=4,<5",
"lxml>=5,<6",
"pandas>=1",
"python-dateutil>=2,<3",
"requests>=2,<3",
"tqdm>=4,<5",
]
[project.urls]
Homepage = "https://github.com/si2-urssi/award-pynder"
"Bug Tracker" = "https://github.com/si2-urssi/award-pynder/issues"
Documentation = "https://si2-urssi.github.io/award-pynder"
"User Support" = "https://github.com/si2-urssi/award-pynder/issues"
# extra dependencies
# https://peps.python.org/pep-0621/#dependencies-optional-dependencies
[project.optional-dependencies]
test = [
"pytest>=8,<9",
]
lint = [
"pre-commit>=2.20.0",
]
dev = [
"ipython",
"jupyterlab",
"pyarrow>=10",
]
# entry points
# https://peps.python.org/pep-0621/#entry-points
# [project.entry-points."console_scripts"]
# build settings
# https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html
[tool.setuptools]
zip-safe = false
include-package-data = true
[tool.setuptools.packages.find]
exclude = ["*docs/*", "*tests/*"]
[tool.setuptools.package-data]
"*" = ["*.yaml", "py.typed"]
# tools
[tool.black]
line-length = 88
target-version = ["py312"]
# https://github.com/charliermarsh/ruff
[tool.ruff]
line-length = 88
target-version = "py311"
extend-select = [
"E", # style errors
"F", # flakes
"D", # pydocstyle
"I001", # isort
"UP", # pyupgrade
"N", # pep8-naming
# "S", # bandit
"C", # flake8-comprehensions
"B", # flake8-bugbear
"A001", # flake8-builtins
"RUF", # ruff-specific rules
"RUF100", # Unused noqa directive
]
extend-ignore = [
"D100", # Missing docstring in public module
"D101", # Missing docstring in public class
"D103", # Missing docstring in public function
"D107", # Missing docstring in __init__
"D203", # 1 blank line required before class docstring
"D205", # 1 blank line required between summary line and description
"D212", # Multi-line docstring summary should start at the first line
"D213", # Multi-line docstring summary should start at the second line
"D413", # Missing blank line after last section
"D416", # Section name should end with a colon
]
[tool.ruff.per-file-ignores]
"**/notebooks/*" = ["E501"]
"**/tests/*.py" = ["D"]
[tool.mypy]
ignore_missing_imports = true
disallow_untyped_defs = true
check_untyped_defs = true
show_error_codes = true