https://git.schokokeks.org/derivepassphrase.git/tree/187a871b384a0b282f5bcfb0875d7d71b0f09afc Recent commits to derivepassphrase.git (187a871b384a0b282f5bcfb0875d7d71b0f09afc) 2026-08-30T21:09:44+02:00 tag:gitlist.org,2012:commit/187a871b384a0b282f5bcfb0875d7d71b0f09afc Merge branch 'documentation-fixes' 2026-08-30T21:09:44+02:00 Marco Ricci software@the13thletter.info <pre>Fix more instances of the common typo at "interchangeable". * documentation-fixes: Fix more instances of the common typo at "interchangeable" &lt;/pre&gt; tag:gitlist.org,2012:commit/f9248f3673cf3524a3db3f7ec67059bd8dc729cd Fix more instances of the common typo at "interchangeable" 2026-08-30T21:09:35+02:00 Marco Ricci software@the13thletter.info <pre>&lt;/pre&gt; tag:gitlist.org,2012:commit/6c695933bde25c31658685f8a61516e9f69cd1da Merge branch 'extract-fakesshagent-sshagentsocketprovider-subprojects' 2026-08-30T21:02:29+02:00 Marco Ricci software@the13thletter.info <pre>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 &lt;/pre&gt; tag:gitlist.org,2012:commit/750ba9c11d07b1c28803f7b98456efb064ebd029 *Really* add the SSH agent socket provider API to the documentation 2026-08-30T21:01:06+02:00 Marco Ricci software@the13thletter.info <pre>Like, actually add the files to git, and stuff. &lt;/pre&gt; tag:gitlist.org,2012:commit/c411344bb5e9723960d66a4481f407de65d03586 Merge branch 'documentation-fixes' 2026-08-30T20:56:36+02:00 Marco Ricci software@the13thletter.info <pre>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 &lt;/pre&gt; tag:gitlist.org,2012:commit/590397fc298ed11a6d6cc033beba7e188cc8e78b Merge branch 'extract-fakesshagent-sshagentsocketprovider-subprojects' 2026-08-30T20:18:27+02:00 Marco Ricci software@the13thletter.info <pre>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 &lt;/pre&gt; tag:gitlist.org,2012:commit/11972bb4b1d161d9dc68a02144785a9ea403eef5 Release 1.0 of the SSH agent socket API 2026-08-30T20:17:57+02:00 Marco Ricci software@the13thletter.info <pre>&lt;/pre&gt; tag:gitlist.org,2012:commit/91a07da403bba49ad5d98f36ca0dc6a8680483f8 Add the SSH agent socket provider API to the documentation 2026-08-30T20:05:37+02:00 Marco Ricci software@the13thletter.info <pre>...and fix some typos/omissions encountered during preview. &lt;/pre&gt; tag:gitlist.org,2012:commit/0917c48c7e120853ea0eb8ba7a903da1fd00fe66 Build a full example SSH agent socket provider, and integration test it 2026-08-30T18:14:44+02:00 Marco Ricci software@the13thletter.info <pre>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. &lt;/pre&gt; tag:gitlist.org,2012:commit/ffed19d11cd8428f4b51aa0fc7c1b86080c77794 Apply usability fixes to the SSH agent socket provider API 2026-08-30T17:33:11+02:00 Marco Ricci software@the13thletter.info <pre>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. &lt;/pre&gt;