Recent commits to derivepassphrase.git (f7608463671f7220e5fc9c1585a3af94b1496390) https://git.schokokeks.org/derivepassphrase.git/tree/f7608463671f7220e5fc9c1585a3af94b1496390 Recent commits feed provided by GitList. Fix multiple small issues with the CLI messages * Otherwise empty translators comments were being prefixed with `TRANSLATORS:`, making them non-empty. * `Label.DERIVEPASSPHRASE_VAULT_NOTES_INSTRUCTION_TEXT` is actually pre-wrapped, but it was missing the "no wrap" marker. * In `ErrMsgTemplate.CANNOT_UPDATE_SETTINGS_NO_SETTINGS`, `--notes` is also a valid setting to specify. * The previous locale code `en_DEBUG` suggests that "DEBUG" is [a territory, not a modifier or variant][1]. [1]: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html https://git.schokokeks.org/derivepassphrase.git/commit/f7608463671f7220e5fc9c1585a3af94b1496390 software@the13thletter.info (Marco Ricci) Tue, 11 Feb 2025 15:13:16 +0100 f7608463671f7220e5fc9c1585a3af94b1496390 Allow forcing the branch name on the automatic quality control script Allow forcing the branch name via the `GIT_CURRENT_BRANCH` environment variable. This is useful when the script doubles as a pre-commit hook, and when we want to run the full set of checks normally reserved for 'master' only. https://git.schokokeks.org/derivepassphrase.git/commit/0eb4c387b975bc396a46731f8da33368978a005f software@the13thletter.info (Marco Ricci) Tue, 11 Feb 2025 13:57:22 +0100 0eb4c387b975bc396a46731f8da33368978a005f Make the manpages installable under pipx When using `pipx` to install `derivepassphrase`, `pipx` will now correctly locate the `derivepassphrase` manpages and make them available to the user. https://git.schokokeks.org/derivepassphrase.git/commit/fb7d17d3c5629869cae528ce72f80dca4f433acf software@the13thletter.info (Marco Ricci) Tue, 11 Feb 2025 00:57:53 +0100 fb7d17d3c5629869cae528ce72f80dca4f433acf Merge topic branch 'quality-control-automation' into master * t/quality-control-automation: Document the addition of quality control tools in the changelog Fix automatic quality control handling of too-long lines Fix minor message deviations in the source tree and phrasing in the manpages Add message IDs (and missing entries) to the manpage diagnostics listings Add quality control scripts Prepare `bump-my-version` for this project Store the version only in pyproject.toml https://git.schokokeks.org/derivepassphrase.git/commit/6eed9899514c22872a8663e3e3016329f0f1a723 software@the13thletter.info (Marco Ricci) Mon, 10 Feb 2025 00:20:26 +0100 6eed9899514c22872a8663e3e3016329f0f1a723 Document the addition of quality control tools in the changelog https://git.schokokeks.org/derivepassphrase.git/commit/b07a5d00772ffb89628ab3ce8d251eaef76a01f1 software@the13thletter.info (Marco Ricci) Mon, 10 Feb 2025 00:15:57 +0100 b07a5d00772ffb89628ab3ce8d251eaef76a01f1 Fix automatic quality control handling of too-long lines In general, we want the formatter to deal with too-long lines (E501) as much as possible by itself, and the linter to warn us on E501 lines the formatter *cannot* deal with. However, just naively running the linter and formatter causes the linter to abort on any E501 lines it encounters, because the linter cannot auto-fix them. So we want to run the linter twice, once before the formatter and once after the formatter, while ignoring E501 violations in the first run. (But because E501 noqa markers are now treated as unnecessary noqa markers during the first linting run, we actually need to ignore both E501 and RUF100 in the first run.) https://git.schokokeks.org/derivepassphrase.git/commit/09205797f62a19bf3f7dd9f203cf10f6b541e0ee software@the13thletter.info (Marco Ricci) Sun, 09 Feb 2025 22:17:47 +0100 09205797f62a19bf3f7dd9f203cf10f6b541e0ee Fix minor message deviations in the source tree and phrasing in the manpages https://git.schokokeks.org/derivepassphrase.git/commit/947a212e444c7ccf03c5005b9ba270e9549794f2 software@the13thletter.info (Marco Ricci) Sun, 09 Feb 2025 20:58:40 +0100 947a212e444c7ccf03c5005b9ba270e9549794f2 Add message IDs (and missing entries) to the manpage diagnostics listings Using the new quality control scripts, add message IDs to all diagnostic messages described in the manpages, and add the entries missing from the manpages as well. https://git.schokokeks.org/derivepassphrase.git/commit/47322731c63f9323de73c468671f1ab77f21ee7e software@the13thletter.info (Marco Ricci) Sun, 09 Feb 2025 20:47:17 +0100 47322731c63f9323de73c468671f1ab77f21ee7e Add quality control scripts Add a quality control script `qc_auto.py` that calls the linter, the formatter, the type checker, the test suite and the documentation builder, depending on what branch we are on. It is intended to be usable as a pre-commit hook. Add another quality control script `man_diagnostics.py` that checks that the diagnostics documented in the manpages are complete, and match the enum values within `derivepassphrase`. It relies on annotations (comments) in the manpages to map description texts to the respective enum values (the mapping is not one-to-one). It also does a (rudimentary) check that every warning and error message is mentioned somewhere in the source tree (besides the messages module that defines those messages). https://git.schokokeks.org/derivepassphrase.git/commit/7ad6f085929dbe15d25b9e1885948fdfc752c1ee software@the13thletter.info (Marco Ricci) Sun, 09 Feb 2025 20:47:17 +0100 7ad6f085929dbe15d25b9e1885948fdfc752c1ee Prepare `bump-my-version` for this project Prepare and configure the use of `bump-my-version` to automate keeping version numbers synchronized everywhere. From a cursory search, this appears to be the most mature and actively developed tool of this kind with support for `pyproject.toml` and multiple files with file-specific replacements. Some minor warts remain (non-recursive globbing, duplication of the version number, incorrect calculation of the next release due to missing true support for pre-release segments), but they can be worked around, for now. https://git.schokokeks.org/derivepassphrase.git/commit/4aa3f0c0ecf1adc4e3907c7db1ecd6602a100b58 software@the13thletter.info (Marco Ricci) Sat, 08 Feb 2025 19:58:45 +0100 4aa3f0c0ecf1adc4e3907c7db1ecd6602a100b58