The major version number is becoming a date stamp
Node ties its next release to the calendar and Python and .NET ship one major a year on schedule. The integer stopped predicting breakage a while ago.
Node.js will number its 2027 release 27.0.0 and its 2028 release 28.0.0, aligning the major version to the calendar year. Read that as an admission. The major-version integer, once a promise about compatibility, has become a date stamp, and the projects that ship on trains are done pretending otherwise.

The convention it retires is semantic versioning's first digit, and the rule was clean: bump the major, break the contract. For a library that other code compiles against, that still holds, and abandoning it would be vandalism. A dependency that changes its public API without changing its major number is how build systems learn to distrust version ranges. That is not the case under discussion.
The case under discussion is runtimes and platforms that ship on a fixed calendar. There, the major number stopped describing anything a while ago. A .NET major lands every November whether or not the year produced a breaking change worth the ceremony. Python's October release increments by ritual, not by rupture, and most of its majors are gentler than the minor updates of a fast-moving library. When the cadence is the calendar rather than the changes, the number is already a date. Node just made it official by matching the digits to the year.

None of this is decline, and reading it as decline misses the point. Predictable trains are what let a shop schedule an upgrade a year out and staff it. A version that encodes its own release year is more honest than one implying a drama the changelog does not contain, because it stops a reader from bracing for a rewrite that was never in the release. The move trades a signal nobody could trust for a label everybody can read.
What gets lost is a signal that was already gone. The thing a builder actually needs to know, whether a release breaks existing code and how long it is supported, was never reliably carried in the major number. A major bump could be a rename, and a minor could be a landmine. The real information lives in two other places: the support window, which says when a version stops getting security fixes, and the deprecation notes, which say what will break and when.
The builder's read: stop treating the major-version bump as a risk signal and start reading the support calendar. The number now tells you when a release was cut, which is useful for planning and useless for danger. The end-of-life date tells you when you must move, and the deprecation page tells you what will hurt when you do. If an upgrade plan still triggers on the integer changing, it is watching the one field that was drained of meaning on purpose.
tags: #releases #versioning #editorial