Skip to content

fix(node): keep odd versions Current through maintenance window#242

Merged
CalvinAllen merged 1 commit intomainfrom
fix/node/odd-version-status
Apr 20, 2026
Merged

fix(node): keep odd versions Current through maintenance window#242
CalvinAllen merged 1 commit intomainfrom
fix/node/odd-version-status

Conversation

@CalvinAllen
Copy link
Copy Markdown
Contributor

Summary

  • dtvem list-all node was marking v25.x as EOL even though Node.js still lists it as Current (v26 hasn't released yet, v25's actual end date is 2026-06-01).
  • Root cause: in src/runtimes/node/lifecycle.go, any odd (non-LTS) release that passed its maintenance date was short-circuited to EOL, skipping the ~2-month maintenance window before end.
  • Fix: for odd versions, treat the post-maintenance / pre-end window as Current to match nodejs.org's release schedule page. Even versions still transition to Maintenance LTS, and any version past end is still EOL.

Resolves DTVEM-241

Test plan

  • Updated TestLifecycleProvider_VersionStatus/v23_odd_version_in_maintenance_window_is_still_Current
  • Added regression case v25_past_maintenance_but_before_end_is_Current (now=2026-04-20, v25.9.0)
  • ./rnr check passes (format, lint, full test suite)
  • Run dtvem list-all node against a real install and confirm v25.x rows now read Current

Odd-numbered Node.js release lines (e.g., v25) have a maintenance date
several weeks before their end date, but no LTS phase. The lifecycle
resolver was mapping that window directly to EOL, so v25.9.0 rendered
as EOL despite still being the Current release per nodejs.org.

Treat the post-maintenance, pre-end window as Current for odd versions
to match nodejs.org's release schedule page.
@CalvinAllen CalvinAllen merged commit 3aaeef4 into main Apr 20, 2026
12 checks passed
@CalvinAllen CalvinAllen deleted the fix/node/odd-version-status branch April 20, 2026 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Node status is listing current version as EOL

1 participant