Marco Ricci commited on 2025-01-31 15:37:32
Zeige 1 geänderte Dateien mit 44 Einfügungen und 41 Löschungen.
... | ... |
@@ -26,39 +26,41 @@ classifiers = [ |
26 | 26 |
"Programming Language :: Python :: Implementation :: PyPy", |
27 | 27 |
] |
28 | 28 |
dependencies = [ |
29 |
- # We use click for the command-line interface. We require version 8.1.0 |
|
30 |
- # or higher due to click issue #1985. |
|
29 |
+ # We use click for the command-line interface. We require version |
|
30 |
+ # 8.1.0 or higher due to click issue #1985. |
|
31 | 31 |
"click >= 8.1", |
32 |
- # We include type annotations, and use facilities that are not readily |
|
33 |
- # available in older Pythons (such as typing.Self). These are loaded from |
|
34 |
- # typing_extensions, instead of using explicit version guards. |
|
32 |
+ # We include type annotations, and use facilities that are not |
|
33 |
+ # readily available in older Pythons (such as typing.Self). These |
|
34 |
+ # are loaded from typing_extensions, instead of using explicit |
|
35 |
+ # version guards. |
|
35 | 36 |
"typing_extensions", |
36 |
- # We read configuration files in JSON and TOML format. The latter is |
|
37 |
- # unavailable in the Python standard library until Python 3.11. |
|
37 |
+ # We read configuration files in JSON and TOML format. The latter |
|
38 |
+ # is unavailable in the Python standard library until Python 3.11. |
|
38 | 39 |
'tomli; python_version < "3.11"' |
39 | 40 |
] |
40 | 41 |
dynamic = ['version'] |
41 | 42 |
|
42 | 43 |
[project.optional-dependencies] |
43 | 44 |
dev = [ |
44 |
- # Development uses the hatch build system, to isolate all tools in their |
|
45 |
- # own virtual environment... |
|
45 |
+ # Development uses the hatch build system, to isolate all tools in |
|
46 |
+ # their own virtual environment... |
|
46 | 47 |
"hatch ~= 1.10", |
47 |
- # ...but it is still sensible to have most static analysis tools available |
|
48 |
- # in the main virtual environment as well, so that your editor/IDE setup |
|
49 |
- # can access them as well. |
|
48 |
+ # ...but it is still sensible to have most static analysis tools |
|
49 |
+ # available in the main virtual environment as well, so that your |
|
50 |
+ # editor/IDE setup can access them as well. |
|
50 | 51 |
"mypy ~= 1.0", |
51 | 52 |
"ruff ~= 0.9.0", |
52 |
- # Test dependencies should be installed as well, to have static analysis |
|
53 |
- # in the test suite working too. |
|
53 |
+ # Test dependencies should be installed as well, to have static |
|
54 |
+ # analysis in the test suite working too. `packaging` is needed |
|
55 |
+ # because the test suite compares version numbers. |
|
54 | 56 |
"hypothesis >= 6.0", |
55 |
- "packaging", # The test suite compares version numbers. |
|
57 |
+ "packaging", |
|
56 | 58 |
"pytest ~= 8.1", |
57 | 59 |
] |
58 | 60 |
export = [ |
59 |
- # The vault configuration exporter relies on cryptography. Version 38 was |
|
60 |
- # the first to include the `algorithms.AES256` interface, instead of only |
|
61 |
- # the `algorithms.AES` interface. |
|
61 |
+ # The vault configuration exporter relies on cryptography. |
|
62 |
+ # Version 38 was the first to include the `algorithms.AES256` |
|
63 |
+ # interface, instead of only the `algorithms.AES` interface. |
|
62 | 64 |
"cryptography >= 38.0.0", |
63 | 65 |
] |
64 | 66 |
|
... | ... |
@@ -125,12 +127,12 @@ extra-dependencies = [ |
125 | 127 |
# Our documentation uses formatted function signatures (i.e. with |
126 | 128 |
# formatted type annotations), which requires `black`. |
127 | 129 |
"black", |
128 |
- # We actually use functionality from MkDocs 1.6, so ensure the version is |
|
129 |
- # at least this high. |
|
130 |
+ # We actually use functionality from MkDocs 1.6, so ensure the |
|
131 |
+ # version is at least this high. |
|
130 | 132 |
"mkdocs >= 1.6", |
131 | 133 |
# Our changelog is assembled from singular entries, orchestrated by |
132 | 134 |
# `scriv`. |
133 |
- "scriv >= 1.4" |
|
135 |
+ "scriv >= 1.4", |
|
134 | 136 |
] |
135 | 137 |
detached = false |
136 | 138 |
|
... | ... |
@@ -273,21 +275,22 @@ select = [ |
273 | 275 |
'T20', |
274 | 276 |
] |
275 | 277 |
"**/tests/**/*" = [ |
276 |
- # Suggested by hatch, assumingly because it may be important to verify |
|
277 |
- # that the value is exactly the empty string, and not just any falsy |
|
278 |
- # value. |
|
278 |
+ # Suggested by hatch, assumingly because it may be important to |
|
279 |
+ # verify that the value is exactly the empty string, and not just |
|
280 |
+ # any falsy value. |
|
279 | 281 |
'PLC1901', |
280 |
- # Suggested by hatch, assumingly because tests may use "magic values". |
|
282 |
+ # Suggested by hatch, assumingly because tests may use "magic |
|
283 |
+ # values". |
|
281 | 284 |
'PLR2004', |
282 |
- # Suggested by hatch, because tests are typically organized as classes |
|
283 |
- # and instance methods but may not really be using the `self` |
|
284 |
- # argument. |
|
285 |
+ # Suggested by hatch, because tests are typically organized as |
|
286 |
+ # classes and instance methods but may not really be using the |
|
287 |
+ # `self` argument. |
|
285 | 288 |
'PLR6301', |
286 |
- # Suggested by hatch, because these warnings may be precisely what the |
|
287 |
- # tests are supposed to test. |
|
289 |
+ # Suggested by hatch, because these warnings may be precisely what |
|
290 |
+ # the tests are supposed to test. |
|
288 | 291 |
'S', |
289 |
- # Suggested by hatch, because pytest-style tests conventionally import |
|
290 |
- # code from each other via relative imports. |
|
292 |
+ # Suggested by hatch, because pytest-style tests conventionally |
|
293 |
+ # import code from each other via relative imports. |
|
291 | 294 |
'TID252', |
292 | 295 |
# Our tests regularly use arguments named `input` to store an input |
293 | 296 |
# (text-/byte-)string. |
... | ... |
@@ -307,18 +310,18 @@ select = [ |
307 | 310 |
# really apply here. |
308 | 311 |
'PLR0904', 'PLR0911', 'PLR0912', 'PLR0913', 'PLR0914', 'PLR0915', |
309 | 312 |
'PLR0916', 'PLR0917', |
310 |
- # To fully test the `derivepassphrase.cli` module (and a couple other |
|
311 |
- # things), we need to call and to mock several internal functions, |
|
312 |
- # which would automatically trigger `SLF001`. |
|
313 |
+ # To fully test the `derivepassphrase.cli` module (and a couple |
|
314 |
+ # other things), we need to call and to mock several internal |
|
315 |
+ # functions, which would automatically trigger `SLF001`. |
|
313 | 316 |
'SLF001', |
314 |
- # pytest does not support sensible introspection of `assert all(...)` |
|
315 |
- # expressions in tests the same way it supports introspection in |
|
316 |
- # `asssert all([...])`. So the extra list comprehension actually |
|
317 |
- # improves debuggability in this case. |
|
317 |
+ # pytest does not support sensible introspection of |
|
318 |
+ # `assert all(...)` expressions in tests the same way it supports |
|
319 |
+ # introspection in `asssert all([...])`. So the extra list |
|
320 |
+ # comprehension actually improves debuggability in this case. |
|
318 | 321 |
'C419', |
319 | 322 |
# The tests sometimes include long strings (in non-Python formats) |
320 |
- # that should be included verbatim, without artificial line breaking, |
|
321 |
- # so they can be grepped for. |
|
323 |
+ # that should be included verbatim, without artificial line |
|
324 |
+ # breaking, so they can be grepped for. |
|
322 | 325 |
'E501', |
323 | 326 |
] |
324 | 327 |
|
325 | 328 |