Recent commits to derivepassphrase.git (00a343fa41fb7f5c79fe7764f7da3f8b36e7b9d2) https://git.schokokeks.org/derivepassphrase.git/tree/00a343fa41fb7f5c79fe7764f7da3f8b36e7b9d2 Recent commits feed provided by GitList. Merge branch 'economic-test-suite' This pull request fixes further issues with the documentation, the project metadata and the project tooling, discovered while working on further improving the economics of the test suite. * economic-test-suite: Fix typing and linting errors after tool upgrade Update hatch use to "hatch check", and ruff to >= 0.16.0 Fix minor mistakes in old changelog entries Document recent test suite changes in the changelog Update compatibility info for Python 3.15 https://git.schokokeks.org/derivepassphrase.git/commit/00a343fa41fb7f5c79fe7764f7da3f8b36e7b9d2 software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 20:32:42 +0200 00a343fa41fb7f5c79fe7764f7da3f8b36e7b9d2 Fix typing and linting errors after tool upgrade https://git.schokokeks.org/derivepassphrase.git/commit/ac34e6c40a56671408768c19c0cd41eadde9bfc3 software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 18:45:38 +0200 ac34e6c40a56671408768c19c0cd41eadde9bfc3 Update hatch use to "hatch check", and ruff to >= 0.16.0 As part of the ruff upgrade, the hatch configuration uses rule names now instead of rule codes. The code still uses the rule codes, because these are currently the only non-tool-specific notation available. https://git.schokokeks.org/derivepassphrase.git/commit/5276e72ac685e9dac43372dee273f0f5d384738c software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 18:35:09 +0200 5276e72ac685e9dac43372dee273f0f5d384738c Fix minor mistakes in old changelog entries - The `"correctness"/"regression" split` phrase does not break properly in the browser when used with quotes. The browser appears to have trouble finding the word boundaries in this case. - The entry for the introduction of SSH agent socket providers mentions that an Annoying OS-specific provider is yet to be written, even though two entries further down, that same socket provider is being introduced. https://git.schokokeks.org/derivepassphrase.git/commit/677616ff0f82e91293ae0a14dafa10dbffebceab software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 18:03:13 +0200 677616ff0f82e91293ae0a14dafa10dbffebceab Document recent test suite changes in the changelog - Mention the "import unavailable" simulation, and the resulting reduction in test configurations. - Mention that Python 3.15 is now supported (and tested). https://git.schokokeks.org/derivepassphrase.git/commit/94ad2e5b3e6a2a82fc136d8f5c101126cee90aa2 software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 18:01:11 +0200 94ad2e5b3e6a2a82fc136d8f5c101126cee90aa2 Update compatibility info for Python 3.15 https://git.schokokeks.org/derivepassphrase.git/commit/27d47606610d2a44be4ebb3c7e6721aac35c25ce software@the13thletter.info (Marco Ricci) Sat, 29 Aug 2026 17:32:01 +0200 27d47606610d2a44be4ebb3c7e6721aac35c25ce Merge branch 'economic-test-suite' This pull request fixes some issues with the test suite setup, which ultimately speed up running the suite almost by a factor of two. 1. We repair the PYTHONPATH setting during invocation, and document why we need those entries in the configuration: to support the use of multiprocessing ("spawn" method) in the heavy-duty configuration mutex test. 2. We set up mocking/monkeypatching to block loading of `cryptography`, so we can test the fallback logic in `derivepassphrase export vault` without needing a separate virtualenv/hatch environment, effectively cutting our test matrix in half. This is where the two-fold speedup comes from. The `--version` test for `derivepassphrase export vault` turned out to also need accommodation: parametrization, and the mocking of `importlib.metadata.version`. We left these in a separate commit because they were discovered after-the-fact, and because the changes to that test are somewhat less straightforward than those for the other "no cryptography available" tests. 3. We test on CPython 3.15, which is at release candidate 1 now. 4. We fix installation issues with hypothesis on PyPy 3.10, and presumably on PyPy 3.9 as well, because they nominally require a Rust toolchain, but the Rust toolchain cannot install the library on PyPy 3.10 or lower. * economic-test-suite: Repair the --version output test for derivepassphrase export vault Officially support and test on Python 3.15 Fix hypothesis dependency on PyPy 3.9 and PyPy 3.10 Always test the "no cryptography support" scenario, shrinking the test matrix Set the Python path correctly during pytest invocation, round two https://git.schokokeks.org/derivepassphrase.git/commit/c1af507f59fffc54c7bb5217fdb9726d72e7dd92 software@the13thletter.info (Marco Ricci) Mon, 24 Aug 2026 06:46:44 +0200 c1af507f59fffc54c7bb5217fdb9726d72e7dd92 Repair the --version output test for derivepassphrase export vault The test was no longer triggering the fallback behavior for when the "export" extra/the "cryptography" library was not available. Partially, this was because we now need to parametrize this test for both cases, but forgot to do so. Partially, this was *also* because querying the installed version of "cryptography" needs to be separately mocked, beyond just blocking the import. https://git.schokokeks.org/derivepassphrase.git/commit/25d4b90f83405a030224b2f52cb0951c76e75ef6 software@the13thletter.info (Marco Ricci) Sun, 23 Aug 2026 17:23:09 +0200 25d4b90f83405a030224b2f52cb0951c76e75ef6 Officially support and test on Python 3.15 Currently at release candidate 1. https://git.schokokeks.org/derivepassphrase.git/commit/caddac1d8b253aa4cb561016904bc26dfb3cc3c2 software@the13thletter.info (Marco Ricci) Sun, 23 Aug 2026 14:58:43 +0200 caddac1d8b253aa4cb561016904bc26dfb3cc3c2 Fix hypothesis dependency on PyPy 3.9 and PyPy 3.10 Because `hypothesis` requires a Rust toolchain for building 6.156 and higher, and because this is not installable on PyPy 3.10 and lower, pin `hypothesis` to 6.155.* and lower on PyPy 3.9 and 3.10. This was already broken for quite some time, but cropped up again after redoing the virtualenvs in commit 4fbfed4a4de887bd35f295863ea7548989024bf7. https://git.schokokeks.org/derivepassphrase.git/commit/9897a0ee0a6a8093813ec4b797811c9058fa4c8c software@the13thletter.info (Marco Ricci) Sun, 23 Aug 2026 12:56:29 +0200 9897a0ee0a6a8093813ec4b797811c9058fa4c8c