neiam
/gitgud
Git Gud
public · Issues · Pulls · Labels · Forks · Compare · Actions success · Badges · Packages
⭐
1
Log in to mark this repository.
CI: leave jarsigner out of checks; the update script leaves others' commits alone
5fd85aa · Gabriel Morell · 2026-10-23 02:49
Message
{commit_body(@commit)}
Files changed
modified
.forgejo/workflows/checks.yml
+3
−1
@@ -77,5 +77,7 @@ jobs:
| 77 | 77 | - name: Compile |
| 78 | 78 | run: mix compile |
| 79 | 79 | |
| 80 | + # jarsigner (a JDK) isn't on the runner; the F-Droid signing test that | |
| 81 | + # shells out to it says to leave it out where that's so. | |
| 80 | 82 | - name: Test |
| 81 | − run: mix test | |
| 83 | + run: mix test --exclude jarsigner |
modified
scripts/dependency-update
+18
−1
@@ -12,7 +12,9 @@ date with the result:
| 12 | 12 | |
| 13 | 13 | The branch is force-pushed and its pull request refreshed in place, so |
| 14 | 14 | there is never a pile of them; once an ecosystem has nothing left to |
| 15 | −fix, its pull request is closed. Packages it can't fix — no fixed | |
| 15 | +fix, its pull request is closed. A branch someone else has pushed to — | |
| 16 | +a person fixing what a bump broke — is left alone: their commits aren't | |
| 17 | +the bot's to overwrite. Packages it can't fix — no fixed | |
| 16 | 18 | version yet, or one the manifest's constraint won't reach — are listed |
| 17 | 19 | in the pull request, not touched. |
| 18 | 20 |
@@ -216,6 +218,15 @@ def bump(ecosystem, lockfile, entries):
| 216 | 218 | return bumped, left, carried |
| 217 | 219 | |
| 218 | 220 | |
| 221 | +def authors_besides_bot(base, branch): | |
| 222 | + """Who other than the bot has commits on `branch` past `base`.""" | |
| 223 | + remote = f"refs/remotes/origin/{branch}" | |
| 224 | + if run(["git", "rev-parse", "--verify", "--quiet", remote], check=False).returncode != 0: | |
| 225 | + return [] | |
| 226 | + emails = run(["git", "log", "--format=%ae", f"origin/{base}..{remote}"]).stdout.split() | |
| 227 | + return sorted({e for e in emails if e != BOT_EMAIL}) | |
| 228 | + | |
| 229 | + | |
| 219 | 230 | # ── the forge ─────────────────────────────────────────────────────────── |
| 220 | 231 | |
| 221 | 232 |
@@ -329,6 +340,12 @@ def main():
| 329 | 340 | |
| 330 | 341 | existing = forge.open_pull(branch) |
| 331 | 342 | |
| 343 | + others = authors_besides_bot(base, branch) | |
| 344 | + if others: | |
| 345 | + run(["git", "checkout", "--force", base]) | |
| 346 | + print(f"{human}: {branch} has commits by {', '.join(others)}; leaving it alone") | |
| 347 | + continue | |
| 348 | + | |
| 332 | 349 | if not bumped: |
| 333 | 350 | run(["git", "checkout", "--force", base]) |
| 334 | 351 | if existing: |
Parents: 1e5369d