Skip to content

Bump package versions to latest upstream releases - #64

Open
github-actions[bot] wants to merge 1 commit into
mainfrom
bump-versions-20260920
Open

github-actions[bot] wants to merge 1 commit into
mainfrom
bump-versions-20260920

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Automated bump from check-releases.yml. Merging rebuilds and republishes the apt repository.

@gafferongames

Copy link
Copy Markdown
Contributor

Code Review: PR #64 (Automated version bump)

  • Head SHA: df85041a149cbdcf092920c5a593761068709ce4 (branch bump-versions-20260920)
  • Base SHA: 8ba166a51f3a0d7761d73f3e64d285f3c8ab256d (origin/main)
  • Score: 4/10
  • Verdict: HOLD (Changes Required)

Executive Summary

PR #64 is an automated version bump generated by check-releases.yml updating 5 package versions in versions.env:

  • SERIALIZE_VERSION: 1.15.0 -> 1.17.0
  • RELIABLE_VERSION: 1.4.0 -> 1.4.5
  • NETCODE_VERSION: 1.4.3 -> 1.4.8
  • YOJIMBO_VERSION: 1.10.1 -> 1.13.5
  • SCHEMA_VERSION: 2.0.0 -> 2.5.0

While all 5 upstream versions are legitimate, published, and their source tarballs exist on GitHub, the PR fails CI across all 10 matrix build jobs (Debian 12/13, Ubuntu 22.04/24.04/26.04 on both amd64 and arm64). Upstream yojimbo 1.13.5 moved its built test binary from <source>/bin to ${CMAKE_BINARY_DIR}/bin and added native CTest wiring, which breaks packages/yojimbo/debian/rules's hardcoded override_dh_auto_test call to $(CURDIR)/bin/test.


Verification Evidence

1. 3-Way Merge & Git Status

  • Clean fast-forward / merge against origin/main (8ba166a51f3a0d7761d73f3e64d285f3c8ab256d).
  • Command:
    git merge-tree --write-tree origin/main df85041a149cbdcf092920c5a593761068709ce4
    Result: Tree b29a89813c730f307eb547db1f51834460e5bb6f, exit code 0.
  • Diff is cleanly isolated to versions.env (+5 / -5 lines).

2. Upstream Release & Manifest Verification

Queried GitHub API for latest releases on all 5 repositories:

  • mas-bandwidth/serialize: tag v1.17.0, created 2026-09-08 (HTTP 200)
  • mas-bandwidth/reliable: tag v1.4.5, created 2026-09-14 (HTTP 200)
  • mas-bandwidth/netcode: tag v1.4.8, created 2026-09-13 (HTTP 200)
  • mas-bandwidth/yojimbo: tag v1.13.5, created 2026-09-14 (HTTP 200)
  • mas-bandwidth/schema: tag v2.5.0, created 2026-09-07 (HTTP 200)

All source archive tarballs (https://github.com/mas-bandwidth/<repo>/archive/refs/tags/v<ver>.tar.gz) resolved HTTP 200.
Executed ./scripts/check-releases.sh on head df85041a149cbdcf092920c5a593761068709ce4:

  • Output: all pinned versions are current, exit code 0.

3. Negative Control / Red-Test

  • Release check sensitivity test: Intentionally modified versions.env locally with an outdated version (SERIALIZE_VERSION=1.15.0). ./scripts/check-releases.sh correctly detected the mismatch, printed serialize: pinned 1.15.0, latest 1.17.0, and exited with status 1.
  • Tarball URL check sensitivity test: Verified requesting non-existent tag v99.99.99 returns HTTP 404.

4. CI Failure & Root Cause Analysis

In workflow run 35502273010 (triggered on branch bump-versions-20260920):

  • autopkgtest-schema: Passed (54s).
  • All 10 matrix build jobs (build (debian:12, amd64), build (debian:12, arm64), etc.) failed during scripts/build-all.sh while building yojimbo:
    debian/rules override_dh_auto_test
    make[1]: /__w/apt/apt/build/yojimbo/yojimbo-1.13.5/bin/test: No such file or directory
    make[1]: *** [debian/rules:20: override_dh_auto_test] Error 127
    dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
    
  • Root Cause:
    In packages/yojimbo/debian/rules:
    # yojimbo has no ctest wiring; run its test binary directly (executables
    # are written to bin/ at the source root). Must print "ALL TESTS PASS".
    override_dh_auto_test:
    ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
    	$(CURDIR)/bin/test
    endif
    Upstream yojimbo 1.13.5 updated its CMakeLists.txt (commit YJ-06):
    • Changed runtime output: set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"). Executables are placed in the build tree (obj-${DEB_HOST_GNU_TYPE}/bin), never in the source root ($(CURDIR)/bin).
    • Added native CTest wiring: enable_testing() and add_test(NAME yojimbo_test COMMAND yojimbo_test).
      As a result, $(CURDIR)/bin/test does not exist, causing dpkg auto-test to fail immediately.

Required Fix

To land this version bump, packages/yojimbo/debian/rules must be updated alongside versions.env:

  1. Remove or update override_dh_auto_test in packages/yojimbo/debian/rules so that dh_auto_test can run CTest natively (similar to packages/reliable/debian/rules).
  2. Re-trigger CI to confirm all 10 builds and smoke tests pass.

READ-COST: reader=Emma model=gemini-2.5-pro seconds=230 tokens=unknown plan=max

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant