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 |