Recent commits to derivepassphrase.git (aa0968564bd32aff89877e91cea4da237998aeae) https://git.schokokeks.org/derivepassphrase.git/tree/aa0968564bd32aff89877e91cea4da237998aeae Recent commits feed provided by GitList. Document the trimming of the `cli` module in the changelog https://git.schokokeks.org/derivepassphrase.git/commit/aa0968564bd32aff89877e91cea4da237998aeae software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 22:29:01 +0100 aa0968564bd32aff89877e91cea4da237998aeae Split off cli_helpers and cli_machinery internal modules Split off the `logging` and `click` support code (the "machinery") and the command-specific helper functions (the "helpers") into separate modules under `derivepassphrase._internals`. Change all functions, classes and attributes within those new modules to be public with respect to the module, since the module itself is already non-public. Also document all previously undocumented classes and functions: `cli_helpers.ORIGIN`, `cli_helpers.check_for_misleading_passphrase`, `cli_helpers.key_to_phrase` and `cli_helpers.print_config_as_sh_script`. Add a better default value (`cli_helpers.default_error_callback`) for the `error_callback` parameter of `cli_helpers.key_to_phrase`, and document that too. Finally, since the shell completion parts are now split across two modules, add an explicit TODO to the `cli_machinery.ZshComplete` class to add context. https://git.schokokeks.org/derivepassphrase.git/commit/623f749ed8245822f7b00520bd4096d008673685 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 22:23:26 +0100 623f749ed8245822f7b00520bd4096d008673685 Move CLI messages module into a new `_internals` subpackage Also adjust the headings in the development build of the documentation to clearly mark internal documentation as internal. (The absolute imports within the CLI messages module make the move itself relatively painless: only the callers need to be adjusted to the new path.) https://git.schokokeks.org/derivepassphrase.git/commit/733aeec69f03e5b8cfa025ee381dce10902f821c software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 20:34:40 +0100 733aeec69f03e5b8cfa025ee381dce10902f821c Merge topic branch 'vault-module-api' into master * t/vault-module-api: Document API changes in the vault module Adjust coverage on vault tests for error-only code paths Adjust docstrings for vault "symbol" character class Make the vault UUID and CHARSETS attributes public Let `Vault` accept Buffer-type values wherever it accepts bytes https://git.schokokeks.org/derivepassphrase.git/commit/258929497c5a8582f02e6b3fe3e42fad45e1bb86 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 16:35:02 +0100 258929497c5a8582f02e6b3fe3e42fad45e1bb86 Document API changes in the vault module https://git.schokokeks.org/derivepassphrase.git/commit/9cca65fc7dbc704b832332abdf441745e77b85b5 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 16:34:22 +0100 9cca65fc7dbc704b832332abdf441745e77b85b5 Adjust coverage on vault tests for error-only code paths Code paths in the tests that only do error handling due to factors beyond their control (here: unsatisfied hypothesis assumptions, or re-raising the error) should not be counted towards coverage. https://git.schokokeks.org/derivepassphrase.git/commit/a9025de171c37b4a8ba78945906e800616c1d9a3 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 15:36:12 +0100 a9025de171c37b4a8ba78945906e800616c1d9a3 Adjust docstrings for vault "symbol" character class The "dash" class is a subset of "symbol", so we can't talk about "all hitherto unlisted ASCII printable characters", but should list the exceptions explicitly. https://git.schokokeks.org/derivepassphrase.git/commit/45152120fe7dbcfdac8ba2786507a3bad882be53 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 15:33:36 +0100 45152120fe7dbcfdac8ba2786507a3bad882be53 Make the vault UUID and CHARSETS attributes public They are constants, they are not priviledged information, and having to keep indirectly referring to them instead of directly is rather irritating. https://git.schokokeks.org/derivepassphrase.git/commit/689cf84c5396b0d92909c554d5c2a75453c55c24 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 15:28:07 +0100 689cf84c5396b0d92909c554d5c2a75453c55c24 Let `Vault` accept Buffer-type values wherever it accepts bytes Any method that accepts `bytes` and `bytearray` now also accepts arbitrary Buffer-type classes such as `memoryview` and `array.array`. The return values (mostly `bytes`, sometimes `bytearray`) remain unchanged. https://git.schokokeks.org/derivepassphrase.git/commit/7dc1d96b25a124f2f599e261c168928bc375a677 software@the13thletter.info (Marco Ricci) Wed, 29 Jan 2025 15:07:21 +0100 7dc1d96b25a124f2f599e261c168928bc375a677 Merge topic branch 'equivalent-hmac-keys' into master * t/equivalent-hmac-keys: Document the vault "interchangable passphrases" artefact in the changelog Reformat "vault" tests Document the vault "interchangable passphrases" artefact as an FAQ Detect (and test for) pairs of interchangable vault passphrases Add hypothesis-based test for service name dependence of derived passphrases https://git.schokokeks.org/derivepassphrase.git/commit/4b53216d8b2115fb794a23a8b17d9c8a00af4ed2 software@the13thletter.info (Marco Ricci) Tue, 28 Jan 2025 14:30:28 +0100 4b53216d8b2115fb794a23a8b17d9c8a00af4ed2