Recent commits to derivepassphrase.git (672943aac976f3272c72a1d5e5608b1e3c4fd183) https://git.schokokeks.org/derivepassphrase.git/tree/672943aac976f3272c72a1d5e5608b1e3c4fd183 Recent commits feed provided by GitList. Merge topic branch 'usage-fixes' into master * t/usage-fixes: Consolidate and slightly simplify some warning message emittances Add tests for help and version options, and color forcing Fix check of empty service name for `derivepassphrase vault` https://git.schokokeks.org/derivepassphrase.git/commit/672943aac976f3272c72a1d5e5608b1e3c4fd183 software@the13thletter.info (Marco Ricci) Tue, 07 Jan 2025 11:13:37 +0100 672943aac976f3272c72a1d5e5608b1e3c4fd183 Consolidate and slightly simplify some warning message emittances https://git.schokokeks.org/derivepassphrase.git/commit/7949b4328e1fe1c210ba7a3c16105113187920b7 software@the13thletter.info (Marco Ricci) Tue, 07 Jan 2025 11:09:38 +0100 7949b4328e1fe1c210ba7a3c16105113187920b7 Add tests for help and version options, and color forcing These sections no longer need be excluded from coverage. https://git.schokokeks.org/derivepassphrase.git/commit/ca43b9971f58117d4c5b3126eb159a39cb36bf59 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 14:08:48 +0100 ca43b9971f58117d4c5b3126eb159a39cb36bf59 Fix check of empty service name for `derivepassphrase vault` We asserted in c1bf00eadd1bf733ac25a25eafbe110d61936c54 that an empty service name is both diagnosed, then treated as if it were missing later on. This wasn't actually strictly true: the checks for a missing or superfluous service name tested for truthy service names instead of non-missing service names, and the key selection and passphrase entry dialogs happen before the check for a non-empty service name. Fix these two issues by checking for non-missing service names in the former case, and moving the non-empty service name check further to the front in the latter case. https://git.schokokeks.org/derivepassphrase.git/commit/3d4d9589cea07c62c5c22029e7bd76d49baac3a3 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 02:02:43 +0100 3d4d9589cea07c62c5c22029e7bd76d49baac3a3 Merge topic branch 'no-color-force-color' into master * t/no-color-force-color: Add a changelog entry for the color suppressing/forcing support Support suppressing or forcing color output https://git.schokokeks.org/derivepassphrase.git/commit/4b0cfe2631b1699a456ec3465405db4f7ca65376 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:57:42 +0100 4b0cfe2631b1699a456ec3465405db4f7ca65376 Add a changelog entry for the color suppressing/forcing support https://git.schokokeks.org/derivepassphrase.git/commit/ceaebdbcd7b01b25cfc76948ced6445079fa109c software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:56:43 +0100 ceaebdbcd7b01b25cfc76948ced6445079fa109c Support suppressing or forcing color output We implement this with an eager, hidden "pseudo" option that checks for the `NO_COLOR` and `FORCE_COLOR` options and sets the context's color setting appropriately. To actually make use of this color setting, all output must query the context's color setting, as must all log output. For the log output specifically, we arrange to pass the `click` context in the extra dict of each logging call, so that the handler has access to the color setting too. https://git.schokokeks.org/derivepassphrase.git/commit/43a9458b3a76dbf9a8785d59d297d8366b532fd7 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:47:57 +0100 43a9458b3a76dbf9a8785d59d297d8366b532fd7 Merge topic branch 'shell-completion' into master * t/shell-completion: Add changelog entry for the new explicit shell completion support Add shell completion support to derivepassphrase https://git.schokokeks.org/derivepassphrase.git/commit/1d3e8b434e1d4e5774652731a25e8792f1f460bf software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:30:14 +0100 1d3e8b434e1d4e5774652731a25e8792f1f460bf Add changelog entry for the new explicit shell completion support https://git.schokokeks.org/derivepassphrase.git/commit/3918c376b11e8e13bd6ee97684aac86c962ccc06 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:28:20 +0100 3918c376b11e8e13bd6ee97684aac86c962ccc06 Add shell completion support to derivepassphrase `click` already includes shell completion out of the box, so what remained to be done was to tell `click` what kind of values the arguments expect: * The `path` argument for `derivepassphrase export vault` will be completed with a filename or the string `VAULT_PATH`. Because this is not (as a whole) a supported standard category of completion items, we must generate the completion items ourselves in this case, including the partial filtering of results. * The `path` argument to the `--import` and `--export` options of `derivepassphrase vault` will be completed with a filename. `click` handles this for us. * The `service` argument to `devirepassphrase vault` will be completed with a service name, which we must manually extract and filter. The shell completion has so far only been tested interactively; in particular, it is currently excluded from coverage testing. https://git.schokokeks.org/derivepassphrase.git/commit/8f9fa0e9819f814b7638a3dd8f705ac6b84d2611 software@the13thletter.info (Marco Ricci) Wed, 01 Jan 2025 00:21:55 +0100 8f9fa0e9819f814b7638a3dd8f705ac6b84d2611