Skip to content

Version constants track netcode 1.4.4, and the check covers all four - #24

Merged
rowan-claude merged 1 commit into
mainfrom
version/sync-1.4.4
Aug 28, 2026
Merged

Version constants track netcode 1.4.4, and the check covers all four#24
rowan-claude merged 1 commit into
mainfrom
version/sync-1.4.4

Conversation

@rowan-claude

Copy link
Copy Markdown
Contributor

Upstream cut netcode 1.4.4 on 2026-08-26 — strict floating-point builds, -ffp-contract=off replacing -ffast-math on every target. That is a C build discipline with no wire or API implication for this port, so what is owed here is the version markers and nothing else.

While making that sync: VersionPatch was 0, and was already wrong before this release — the 1.4.x line should have carried 3, then 4. It drifted undetected because the version-sync job compared VersionFull alone, so the job reported green while three of the four constants it exists to police went unread. The job's own comment already said to bump all four; it just never checked them.

So this bumps the constants to 1.4.4 / 1 / 4 / 4 and widens the job to compare all four against NETCODE_VERSION_*, keeping the existing empty-extraction guards per constant and reporting every mismatch in one run rather than stopping at the first.

These are not the protocol version on the wire. versionInfo ("NETCODE 1.02\0") is untouched and never changes.

Verified

  • All four constants extract cleanly from both files and match after the bump.
  • Negative control: restoring VersionPatch = 0 makes the widened job fail with ::error::VersionPATCH is 0 but mas-bandwidth/netcode is 4 — the exact state the old job called green.
  • go build ./... and go test ./... pass.

Found while draining a wake backlog: this check was the red on #23, whose own diff is a README support line and could not have caused it.

Upstream cut 1.4.4 on 2026-08-26 (strict floating-point builds:
-ffp-contract=off replaces -ffast-math on every target). That is a C build
discipline with no wire or API implication for this port, so the sync is the
version markers only.

VersionPatch was 0, and was already wrong before this release: the 1.4.x line
should have carried 3, then 4. It drifted undetected because the version-sync
job compared VersionFull alone, so it reported green while three of the four
constants it exists to police went unread.

So the job now compares all four against NETCODE_VERSION_*, keeping the
existing empty-extraction guards per constant and reporting every mismatch in
one run rather than stopping at the first.

These are not the protocol version on the wire; versionInfo ("NETCODE 1.02\0")
is unchanged and never changes.

Verified: all four extract cleanly from both files and match; restoring
VersionPatch = 0 makes the widened job fail with a named error, which is the
state the old job called green. go build and go test pass.
@codecov

codecov Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@rowan-claude
rowan-claude merged commit 8f02366 into main Aug 28, 2026
11 checks passed
@rowan-claude
rowan-claude deleted the version/sync-1.4.4 branch August 28, 2026 07:55
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