Recent commits to derivepassphrase.git (187a871b384a0b282f5bcfb0875d7d71b0f09afc) https://git.schokokeks.org/derivepassphrase.git/tree/187a871b384a0b282f5bcfb0875d7d71b0f09afc Recent commits feed provided by GitList. Merge branch 'documentation-fixes' Fix more instances of the common typo at "interchangeable". * documentation-fixes: Fix more instances of the common typo at "interchangeable" https://git.schokokeks.org/derivepassphrase.git/commit/187a871b384a0b282f5bcfb0875d7d71b0f09afc software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 21:09:44 +0200 187a871b384a0b282f5bcfb0875d7d71b0f09afc Fix more instances of the common typo at "interchangeable" https://git.schokokeks.org/derivepassphrase.git/commit/f9248f3673cf3524a3db3f7ec67059bd8dc729cd software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 21:09:35 +0200 f9248f3673cf3524a3db3f7ec67059bd8dc729cd Merge branch 'extract-fakesshagent-sshagentsocketprovider-subprojects' Amend the previous like-named pull request such that it actually *has* the documentation it already claims to have. * extract-fakesshagent-sshagentsocketprovider-subprojects: *Really* add the SSH agent socket provider API to the documentation https://git.schokokeks.org/derivepassphrase.git/commit/6c695933bde25c31658685f8a61516e9f69cd1da software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 21:02:29 +0200 6c695933bde25c31658685f8a61516e9f69cd1da *Really* add the SSH agent socket provider API to the documentation Like, actually add the files to git, and stuff. https://git.schokokeks.org/derivepassphrase.git/commit/750ba9c11d07b1c28803f7b98456efb064ebd029 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 21:01:06 +0200 750ba9c11d07b1c28803f7b98456efb064ebd029 Merge branch 'documentation-fixes' This pull request fixes several typos in the documentation, including one systematic mistake. * documentation-fixes: Correct a common typo: interchangeable, not "interchangable" Fix typos in the documentation https://git.schokokeks.org/derivepassphrase.git/commit/c411344bb5e9723960d66a4481f407de65d03586 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 20:56:36 +0200 c411344bb5e9723960d66a4481f407de65d03586 Merge branch 'extract-fakesshagent-sshagentsocketprovider-subprojects' This work-in-progress topic branch extracts the stubbed SSH agent from the test suite into a separate Python package. While currently specific to the test suite, packaging it as a separate package will allow it to evolve into a more featureful SSH agent in its own right, perhaps even outside of Python-only usage. At the moment, only the SSH agent socket provider API has been extracted, which is a necessary first step to eliminate reverse dependencies of the stubbed SSH agent on `derivepassphrase`. Both `derivepassphrase` and the future stubbed SSH agent package can then depend on the API, instead of depending directly on each other. The API package contains three example socket providers, and an integration test asserting that these three examples actually correctly register. The `derivepassphrase` test suite currently also attempts to load the stubbed SSH agent from the `fakesshagent` package (the intended name for the extracted stubbed SSH agent package), and if successful, then it deactivates its own versions in the test suite, aliasing the `fakesshagent` versions for compatibility. * extract-fakesshagent-sshagentsocketprovider-subprojects: Release 1.0 of the SSH agent socket API Add the SSH agent socket provider API to the documentation Build a full example SSH agent socket provider, and integration test it Apply usability fixes to the SSH agent socket provider API Adapt `derivepassphrase` to use `derivepassphrase-sshagentsocketprovider` Extract the SSH agent socket provider API to a separate PyPI package Fix project metadata errors Co-exist peacefully with the fakesshagent variant of the stubbed SSH agent Restructure testing data and testing machinery tests for better coverage https://git.schokokeks.org/derivepassphrase.git/commit/590397fc298ed11a6d6cc033beba7e188cc8e78b software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 20:18:27 +0200 590397fc298ed11a6d6cc033beba7e188cc8e78b Release 1.0 of the SSH agent socket API https://git.schokokeks.org/derivepassphrase.git/commit/11972bb4b1d161d9dc68a02144785a9ea403eef5 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 20:17:57 +0200 11972bb4b1d161d9dc68a02144785a9ea403eef5 Add the SSH agent socket provider API to the documentation ...and fix some typos/omissions encountered during preview. https://git.schokokeks.org/derivepassphrase.git/commit/91a07da403bba49ad5d98f36ca0dc6a8680483f8 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 20:05:37 +0200 91a07da403bba49ad5d98f36ca0dc6a8680483f8 Build a full example SSH agent socket provider, and integration test it There is a three-part example project for how to write an SSH agent socket provider; the project is a full-fledged Python package in its own right. (One of the three variants is also presented in the README.) There is also a single integration test in the SSH agent socket provider API package that verifies that this example project can be installed (into an isolated virtual environment), and that it correctly exposes the three SSH agent socket providers. Preparing this example package alone and getting the test to pass has already uncovered several misconfigurations and misspecifications in both the API package and the example package. We also set up a separate, reduced pytest configuration for the SSH agent socket provider API package, because otherwise pytest determines the wrong root directory, and the example project package files cannot be correctly installed. We explicitly mention that we currently do not measure coverage, because the test runs inside a temporary virtual environment (which coverage measurement would have to account for, both when measuring and when looking up configuration) and because there are currently no code branches in the API package, so the coverage information is uninteresting if we already know the example project was installable. https://git.schokokeks.org/derivepassphrase.git/commit/0917c48c7e120853ea0eb8ba7a903da1fd00fe66 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 18:14:44 +0200 0917c48c7e120853ea0eb8ba7a903da1fd00fe66 Apply usability fixes to the SSH agent socket provider API The API definition actually requires the `typing-extensions` package, but we forgot to declare that in `pyproject.toml`. While it likely makes no typing difference, it is much better for runtime checks to have `SSHAgentSocketProvider` be a runtime-checkable protocol, instead of a string-valued type alias. Among other things, `isinstance(provider, SSHAgentSocketProvider)` fails if a string-valued type alias is used. https://git.schokokeks.org/derivepassphrase.git/commit/ffed19d11cd8428f4b51aa0fc7c1b86080c77794 software@the13thletter.info (Marco Ricci) Sun, 30 Aug 2026 17:33:11 +0200 ffed19d11cd8428f4b51aa0fc7c1b86080c77794