https://git.schokokeks.org/derivepassphrase.git/tree/f76e05eff8a52e7287461c56995b329bc09ffb79Recent commits to derivepassphrase.git (f76e05eff8a52e7287461c56995b329bc09ffb79)2024-09-02T01:23:14+02:00tag:gitlist.org,2012:commit/f76e05eff8a52e7287461c56995b329bc09ffb79Clean up testing machinery (types, helper functions)2024-09-02T01:23:14+02:00Marco Riccim@the13thletter.info
<pre>- Submit all input to, and read all output from, `click`-based
command-line interfaces via the textual streams. This includes the
`.stdout`/`.output` and `.stderr` properties of a test runner result,
and the input to the command-line call.
- Write a new `typing.NamedTuple`-based interface for collecting the
test runner result in a readable fashion, because the
`click.testing.Result` `repr` output is really unhelpful. This also
allows to define a higher-level API to check whether a `click`
application ran successfully, with certain expected output, or whether
it ran unsuccessfully, with certain expected error output.
- Annotate all pytest `monkeypatch` fixtures as `pytest.MonkeyPatch`.
</pre>
tag:gitlist.org,2012:commit/abadc0d0b8f8e910d31073a0dfcd8e82509daab6Remove `click` handling of command-line "path" arguments2024-09-01T18:08:20+02:00Marco Riccim@the13thletter.info
<pre>Stop using the `click` facilities to run checks on command-line
arguments or option values that are to be treated as paths; treat them
like normal strings instead. `click`'s path checking functionality
misdiagnoses its own failure cases, is racy, and does not document its
own raciness.
Instead, use `click`'s `open_file` function to handle the standard
streams (an actual useful feature), and use bog-standard operating
system calls for everything else. As an added bonus, this makes writing
unit tests much easier, because we no longer have to work around
`click`'s functionality and can use simpler counterexamples/failure
cases.
This change was originally prompted by a silently failing test, which
did not test the expected error message because it was subject to
translation, so `click` could silently sidestep the whole code under
test. We now test for the operating system-provided error message
directly, via standard operating system facilities that are integrated
into the translation/locale system.
</pre>
tag:gitlist.org,2012:commit/d081a2bc4dc00c67e84bdd90c239e5c814d84a8dAdd man page for `derivepassphrase_export`2024-09-01T16:46:57+02:00Marco Riccim@the13thletter.info
<pre>The help text/docstring was missing a mention of which configuration
formats are supported, which has now been added.
</pre>
tag:gitlist.org,2012:commit/32d3a91a0576b369553422da5c368236cd793a8aStreamline documentation file structure and linking2024-09-01T16:27:34+02:00Marco Riccim@the13thletter.info
<pre>Use the "index page" functionality and the unpruned navigation list from
MkDocs/Material, and use the module autorefs on the documentation overview
page.
</pre>
tag:gitlist.org,2012:commit/d7b090cc6c5fc3f05387d8999821aaf44f25ead7Add exporter modules to the documentation2024-09-01T16:19:55+02:00Marco Riccim@the13thletter.info
<pre>The two exporter submodules `storeroom` and `vault_native` are short
enough and thematically related, so they are placed on a common page
"Exporters for vault".
</pre>
tag:gitlist.org,2012:commit/9e46d4ec795267558b155c5260c5a37205bf9af1Add vault_native exporter function and module docstrings2024-09-01T16:13:48+02:00Marco Riccim@the13thletter.info
<pre>Add an all-in-one exporter function to the
`derivepassphrase.exporter.vault_native` module, similar to the function
in the `derivepassphrase.exporter.storeroom` module. These two functions
now define the public API of the respective module, and the other
visible names are considered non-public (though documented, because they
explain the inner workings of the respective exporters). The module
docstrings have been appropriately expanded, and the tests have been
adapted and expanded for the new function.
</pre>
tag:gitlist.org,2012:commit/e6cfc21fcaf6afac8f32d137c1ce37dddd657724Rename `vault_v03_and_below` submodule to `vault_native`2024-09-01T15:01:07+02:00Marco Riccim@the13thletter.info
<pre></pre>
tag:gitlist.org,2012:commit/a9ce95dae2a203edfe8e00adf5fa2ab45d4fbfefSupport text string services names in Vault internal API2024-09-01T14:55:36+02:00Marco Riccim@the13thletter.info
<pre></pre>
tag:gitlist.org,2012:commit/d23dd1ed824ba3112f9be11a5659838edbe43b39Fix the docstring of the vault native v0.2 exporter class2024-09-01T14:28:13+02:00Marco Riccim@the13thletter.info
<pre>The previous docstring was accidentally copy-pasted from the v0.3 class.
</pre>
tag:gitlist.org,2012:commit/4701b329098224a8b84ab1826b312bd937de942aRename `derivepassphrase.vault` test file to match naming convention2024-09-01T14:00:30+02:00Marco Riccim@the13thletter.info
<pre></pre>