Commit graph

1969 commits

Author SHA1 Message Date
Loup-Garou911XD
0bd564785e
1.1.13 2026-08-23 17:53:35 +05:30
Loup-Garou911XD
1047903957 [ci] apply-version-metadata 2026-08-23 12:03:55 +00:00
Loup-Garou911XD
b03ab3a88b
1.1.12 release 2026-08-23 17:33:02 +05:30
Loup
0cf28c6290
Merge pull request #477 from Loup-Garou911XD/main
Update 1.1.11
2026-08-23 15:43:57 +05:30
Loup-Garou911XD
1981a2b90a
Merge remote-tracking branch 'upstream/main' 2026-08-23 15:38:35 +05:30
Loup
461f2c360f
Merge pull request #478 from Loup-Garou911XD/fix/pr-checkout-security
Split ci.yml to close a pull_request_target pwn-request hole
2026-08-23 15:35:56 +05:30
Loup-Garou911XD
3e0dfccea6
fix a loophole 2026-08-15 15:36:27 +05:30
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
Loup-Garou911XD
bc5c5aafc8
Split ci.yml to close a pull_request_target pwn-request hole
pull_request_target checked out fork PR branches with the repo's
write-scoped GITHUB_TOKEN and ran autopep8/metadata scripts/tests
against that fork content, letting a malicious PR rewrite test/*.py
for arbitrary code execution with push access and secrets. It's also
been failing outright for weeks since actions/checkout now blocks
unsafe fork checkouts here without explicit opt-in.

Split into ci-check.yml (plain pull_request, GitHub's read-only
no-secrets token, safe to run fork code) which uploads a diff
artifact, and ci-apply.yml (workflow_run, privileged) which only
applies that diff via `git apply`, never executing fork content.
ci.yml keeps just the push-to-main job as the strict integrity check.

Because GitHub runs the PR's own copy of ci-check.yml for
pull_request events, that artifact is attacker-authored: ci-apply.yml
therefore resolves PR identity from the workflow_run payload plus the
API rather than the artifact, passes every dynamic value through env:
instead of ${{ }} in run: blocks (which the runner substitutes before
the shell parses, so quotes don't contain it), and validates branch,
repo, sha and PR-number shapes before use. The patch itself stays
untrusted input: allowlist-validated and applied only to the fork's
own branch.

test_checks.py adds an env-gated lenient mode so ci-check.yml's
preview run doesn't fail on a brand-new plugin's not-yet-existing
commit sha, while history and push-to-main stay strict.
2026-08-09 22:56:49 +05:30
Loup-Garou911XD
06886ff232
update action versions to latest stable releases 2026-08-09 18:35:18 +05:30
Loup-Garou911XD
b0cca24114 [ci] apply-version-metadata 2026-08-09 12:59:28 +00:00
Loup-Garou911XD
a74246d6a6 [ci] apply-plugin-metadata-and-formatting 2026-08-09 12:59:26 +00:00
Loup-Garou911XD
454eb35194
forgot to update the version and date in CHANGELOG.md 2026-08-09 18:28:26 +05:30
Loup-Garou911XD
587f0c65d4
improved networking and threadpool handling 2026-08-09 18:25:16 +05:30
FluffyPal0
fad2e493e3 [ci] apply-plugin-metadata-and-formatting 2026-07-17 17:14:43 +00:00
FluffyPal
dfa13959fd update plugman's async getter; and lil type fixes 2026-07-18 01:12:48 +08:00
Loup
d442c44ea8
Merge pull request #469 from bombsquad-community/fix_119
Some checks failed
CI / build (push) Has been cancelled
Create Release / Create Release (push) Has been cancelled
fix for 1.1.9 breaking on older versions
2026-06-12 11:12:04 +05:30
Loup-Garou911XD
7acd7a87ab [ci] apply-version-metadata 2026-06-12 05:41:53 +00:00
Loup-Garou911XD
a1baa5fca2
fix for 1.1.9 breaking on older versions 2026-06-12 11:10:44 +05:30
Loup
c2c2a04891
Merge pull request #466 from GeoHnlol/patch-1
Updated export shortcuts
2026-06-12 01:49:59 +05:30
Loup
b6ccdb12ef
Merge pull request #468 from MrParadox1691/main
Minor bug fix for Vanishing tiles
2026-06-12 01:49:06 +05:30
MrParadox1691
f1c02ae85a [ci] apply-version-metadata 2026-06-11 15:16:45 +00:00
MrParadox1691
5d7d22245b [ci] apply-plugin-metadata-and-formatting 2026-06-11 15:16:42 +00:00
Mr.Paradox
b8dee8f224
Update vanishing_tiles.py 2026-06-11 20:43:39 +05:30
Mr.Paradox
710dbebee4
Merge branch 'bombsquad-community:main' into main 2026-06-11 20:25:43 +05:30
Mr.Paradox
643ac51a08
Update vanishing_tiles.py 2026-06-11 20:23:25 +05:30
GeoHnlol
d0df37d764 [ci] apply-version-metadata 2026-06-11 09:35:34 +00:00
GeoHnlol
3adfe38e55
Changed version number to 1.1.9 2026-06-11 12:35:04 +03:00
Loup
2660a8d973
Merge pull request #467 from MrParadox1691/main
Vanishing tiles minigame update
2026-06-10 22:05:13 +05:30
Loup
767fbe3a28
Delete version 1.0.2 from minigames.json
Removed version 1.0.2 details from minigames.json
2026-06-10 22:02:11 +05:30
MrParadox1691
18dbcbbe3f [ci] apply-version-metadata 2026-06-10 16:12:15 +00:00
MrParadox1691
0749053077 [ci] apply-plugin-metadata-and-formatting 2026-06-10 16:12:12 +00:00
Mr.Paradox
4804a55ca0
Update vanishing_tiles.py 2026-06-10 21:41:40 +05:30
Mr.Paradox
2e2ff3656a
Update utilities.json 2026-06-10 21:21:21 +05:30
Loup
55c3fe5af4
Merge pull request #465 from FluffyPal0/main
Added fluffyplaylisteditor
2026-06-10 20:33:54 +05:30
MrParadox1691
7fcb9b4468 [ci] apply-version-metadata 2026-06-10 07:05:09 +00:00
MrParadox1691
edaed70235 [ci] apply-plugin-metadata-and-formatting 2026-06-10 07:05:08 +00:00
Mr.Paradox
e091fb6983
Update and rename vanishing_tiles.py to vanishing_tiles.py 2026-06-10 09:18:14 +05:30
GeoHnlol
d88d0e149d
Updated export shortcuts
Replaced all instances of EXPORT_CLASS_NAME_SHORTCUTS with _DEPRECATED_EXPORT_SHORTCUTS for bs version 1.7.63
2026-06-08 14:27:28 +03:00
FluffyPal0
7e249c1181 [ci] apply-version-metadata 2026-06-08 05:14:51 +00:00
FluffyPal0
99cf837498 [ci] apply-plugin-metadata-and-formatting 2026-06-08 05:14:50 +00:00
FluffyPal
1662980eea
Adding fluffyplaylisteditor 2026-06-08 13:12:31 +08:00
Vishyyy
929ce3f26f
Merge pull request #464 from Scriptz1/main
Volley Punch
2026-06-02 11:55:34 +05:30
Scriptz1
d35b78326b [ci] apply-version-metadata 2026-06-02 00:27:00 +00:00
Scriptz1
a6d11fd8ce [ci] apply-plugin-metadata-and-formatting 2026-06-02 00:26:59 +00:00
Scriptz1
d517d47f3e
Update volley_punch.py 2026-06-01 20:26:09 -04:00
Scriptz1
811e151c81
Update volley_punch.py 2026-06-01 20:25:17 -04:00
Loup
a1b809bc80
Merge pull request #463 from bombsquad-community/revert-462-main
Revert "volley_punch"
2026-06-01 20:42:35 +05:30
Loup
7c718cf4a3
Revert "Volley Punch"
This reverts commit f6c0fd5fbe.
2026-06-01 08:21:09 +05:30
Scriptz1
8fba8c8ab5
Update volley_punch.py 2026-05-31 21:11:03 -04:00