https://git.schokokeks.org/derivepassphrase.git/tree/de8a116ceb0a86a13c38266088eedb5f53713d91 Recent commits to derivepassphrase.git (de8a116ceb0a86a13c38266088eedb5f53713d91) 2025-01-23T10:51:36+01:00 tag:gitlist.org,2012:commit/de8a116ceb0a86a13c38266088eedb5f53713d91 Make the notes instruction text and marker translatable 2025-01-23T10:51:36+01:00 Marco Ricci software@the13thletter.info <pre>The instruction text for editing notes is natural language text, and should therefore be translated, but was overlooked when determining translatable messages. To ensure that the instruction text and the marker cannot be mismatched, the marker is translated separately and inserted verbatim after the instruction text. &lt;/pre&gt; tag:gitlist.org,2012:commit/6d9d005af10253c3ebdc4f6b2bda3d196fb739bb Merge topic branch 'code-cleanup' into master 2025-01-22T16:46:06+01:00 Marco Ricci software@the13thletter.info <pre>* t/code-cleanup: Fix improper use of `assert_never` Fix outdated test config specification Refactor pytest fixtures concerning SSH agent spawning Refactor vault config validity checking and falsy value cleanup functions Check at runtime if deprecated keyword arguments are used &lt;/pre&gt; tag:gitlist.org,2012:commit/4f4a484f760953687ebd96d3bfdc105b10bd2dcf Fix improper use of `assert_never` 2025-01-21T21:02:31+01:00 Marco Ricci software@the13thletter.info <pre>&lt;/pre&gt; tag:gitlist.org,2012:commit/6360edaffe920cdeae6a661bcf477f8496225212 Fix outdated test config specification 2025-01-21T21:02:31+01:00 Marco Ricci software@the13thletter.info <pre>The set of "consistently testable vault configurations" is determined by a specific settings to the validator function. The validator function no longer accepts the `allow_derivepassphrase_extensions` keyword parameter, but the vault test config selection logic was not yet updated to reflect this. &lt;/pre&gt; tag:gitlist.org,2012:commit/d0d1b6c0c5508419c327dd9e5e0fe3f783757d38 Refactor pytest fixtures concerning SSH agent spawning 2025-01-21T21:02:31+01:00 Marco Ricci software@the13thletter.info <pre>The two pytest fixtures `running_ssh_agent` and `spawn_ssh_agent` both deal with providing access to SSH agents, spawning them if necessary. They differ in the data they provide to the test functions (just the environment setup, or an actual connected `SSHAgentClient`) and in their parametrization (`running_ssh_agent` spawns any one, `spawn_ssh_agent` spawns all). However, despite the spawning logic being basically identical, both methods contained incompatible implementations of the logic, separately for named agent spawning and for system agent spawning. So, consolidate these functions into a single spawning function, and move all necessary supporting code (context manager for subprocess termination, typing protocol for spawn function) to the top level. &lt;/pre&gt; tag:gitlist.org,2012:commit/2cc4e4fffab112760803e80084f665d87b468069 Refactor vault config validity checking and falsy value cleanup functions 2025-01-21T21:02:31+01:00 Marco Ricci software@the13thletter.info <pre>Introduce a new workhorse class that provides the validity checking and the falsy value cleanup functionality. The existing top-level functions are now mere facades. The primary reason is to keep the complexity and the nesting level of these functions low-ish: they still trigger linting errors that need to be silenced, but the nesting is tamer, and some common functionality (e.g., tree traversal) can be usefully extracted. &lt;/pre&gt; tag:gitlist.org,2012:commit/387941e06b2539a702c22139d1f7475f30217c62 Check at runtime if deprecated keyword arguments are used 2025-01-21T21:02:31+01:00 Marco Ricci software@the13thletter.info <pre>The `warnings.deprecated` decorator sadly does not do anything at runtime if merely one of several overloads is deprecated. And it seems to fail even if the deprecated signature is actively used; see `_types.is_vault_config`. Implement a known working solution to check if the deprecated keyword argument was supplied. (No tests yet, so excluded from coverage.) &lt;/pre&gt; tag:gitlist.org,2012:commit/80810bd4eaa1dd9db8434d95682347ae36ce8b07 Merge topic branch 'pathlib' into master 2025-01-20T18:00:28+01:00 Marco Ricci software@the13thletter.info <pre>* t/pathlib: Use `pathlib` for path or filename operations &lt;/pre&gt; tag:gitlist.org,2012:commit/65725c82b8466edb0c90061e0750a3d9aaa9f53b Use `pathlib` for path or filename operations 2025-01-20T18:00:12+01:00 Marco Ricci software@the13thletter.info <pre>The interface was already supported by all the user-facing code (interestingly enough) and by almost all of the internal code. Using `pathlib.Path` objects directly instead of manually dealing with string or byte string collections does cut down on a lot of the otherwise explicit bookkeeping and context management. Some changes to the tests are necessary because other (or more) functions need to be mocked, or other ways of testing successful or ensuring unsuccessful operations are needed. &lt;/pre&gt; tag:gitlist.org,2012:commit/c539203b53c4317342f311d3ef2f1f9f50009e26 Merge topic branch 'documentation-fixes' into master 2025-01-20T15:27:30+01:00 Marco Ricci software@the13thletter.info <pre>* t/documentation-fixes: Make `T_Buffer` type variable visible at runtime again Adapt "storeroom" tests to use new names for helper functions &lt;/pre&gt;