-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
129 lines (108 loc) · 2.06 KB
/
pyproject.toml
File metadata and controls
129 lines (108 loc) · 2.06 KB
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
[project]
name = "submitter"
version = "1.2.3"
requires-python = "~=3.12.0"
dependencies = [
"boto3",
"click",
"dspace-python-client",
"dspace-rest-client>=0.1.16",
"jsonschema",
"sentry-sdk",
"smart-open",
]
[project.scripts]
submitter = "submitter.cli:main"
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
packages = ["submitter"]
[tool.black]
line-length = 90
[dependency-groups]
dev = [
"black",
"boto3-stubs[essential]",
"coverage",
"coveralls",
"freezegun",
"moto[s3, server, sqs]",
"mypy",
"pip-audit",
"pre-commit",
"pytest",
"pytest-cov",
"pytest-env",
"requests-mock",
"ruff",
"safety",
"types-requests",
]
[tool.mypy]
disallow_untyped_calls = true
disallow_untyped_defs = true
exclude = ["tests/", "output/"]
ignore_missing_imports = true
[tool.uv]
package = true
override-dependencies = ["smart_open>=7.0.0"]
[[tool.uv.index]]
name = "pypi"
url = "https://pypi.org/simple"
[tool.uv.sources]
dspace-python-client = { git = "https://github.com/mitlibraries/dspace-python-client.git" }
[tool.pytest.ini_options]
log_level = "INFO"
env = [
"WORKSPACE=test"
]
[tool.ruff]
target-version = "py312"
# set max line length
line-length = 90
# enumerate all fixed violations
show-fixes = true
[tool.ruff.lint]
select = ["ALL", "PT"]
ignore = [
# default
"COM812",
"D107",
"N812",
"PTH",
# project-specific
"C90",
"D100",
"D101",
"D102",
"D103",
"D104",
"D200",
"D212",
"D415",
"EM101",
"EM102",
"G004",
"PLR0912",
"PLR0913",
"PLR0915",
"S321",
"TRY003",
]
# allow autofix behavior for specified rules
fixable = ["E", "F", "I", "Q"]
[tool.ruff.lint.flake8-annotations]
mypy-init-return = true
[tool.ruff.lint.flake8-pytest-style]
fixture-parentheses = false
[tool.ruff.lint.per-file-ignores]
"tests/**/*" = [
"ANN",
"ARG001",
"S101",
]
[tool.ruff.lint.pycodestyle]
max-doc-length = 90
[tool.ruff.lint.pydocstyle]
convention = "google"