bombsquad-plugin-manager/test
Loup-Garou911XD 44cffc5cb5
Make plugin metadata idempotent by comparing against the base branch
auto_apply_plugin_metadata.py asked "what version is already released?" by
reading the category manifest out of the PR's own working tree. Once
ci-apply.yml has pushed its "[ci] apply-plugin-metadata-and-formatting"
commit back to the PR branch, that tree already lists the version being
added - so the check compared the new version against itself and raised
"Version cant be lower or equal than the previous version."

That fires on every re-run of PR Check: the one ci-apply.yml's own push
triggers, and any run caused by a contributor pushing a follow-up commit.

Published state now comes from the base branch instead, read with
`git show $PLUGMAN_BASE_REF:<manifest>` (ci-check.yml supplies the PR base
sha; local runs fall back to origin/main, then to the working tree). The
writer is idempotent to match: a version entry that is already stamped and
still matches the plugin's md5sum is left alone rather than reset to null.

An entry whose md5sum has drifted is still reset, which implements the TODO
this replaces - a contributor can keep iterating on an unpublished version
during review without bumping it every round. Bump enforcement against
published versions is unchanged.

Version comparison and ordering switch to the existing
get_comparable_version_tuple_from_string; versioning_tools.semantic_to_str
ordered 1.0.10 below 1.0.9 and silently truncated 3-digit components.
2026-08-10 13:30:20 +05:30
..
__init__.py Add tests 2022-08-29 22:31:28 +05:30
auto_apply_plugin_metadata.py Make plugin metadata idempotent by comparing against the base branch 2026-08-10 13:30:20 +05:30
auto_apply_version_metadata.py [ci] auto-format 2025-05-26 06:25:33 +00:00
get_changelog.py autometa commit 2026-01-10 18:49:07 +05:30
get_latest.py autometa commit 2026-01-10 18:49:07 +05:30
pip_reqs.txt Add packaging dependency for running tests 2023-06-30 00:15:39 +05:30
test_checks.py Split ci.yml to close a pull_request_target pwn-request hole 2026-08-09 22:56:49 +05:30
versioning_tools.py autometa commit 2026-01-10 18:49:07 +05:30