Re: [RFC] Introduce semantic versioning 2.0.0 to FreeBSD releases
vermaden <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.hackers |
|---|---|
| Message-ID | <myugmxwxaxnolxortvig@rdaz> |
> Historically, there were 1.1.5.1, 2.1.6.1 and 2.1.7.1. Yes - 0.0.0.0 as of 14.3.0.7 instead of 14.3.7 works for me. Temat: Re: [RFC] Introduce semantic versioning 2.0.0 to FreeBSD releases Data: 2026-02-25 22:58 Nadawca: "Tomoaki AOKI" <[email protected]> Adresat: "vermaden" <[email protected]>; DW: "Tomek CEDRO" <[email protected]>; "Minsoo Choo" <[email protected]>; "freebsd-hackers" <[email protected]>; > >> On Wed, 25 Feb 2026 20:26:29 +0100 > vermaden wrote: > >> Hi, >> >> I would prefer staying with what we have ... for consistency. >> >> All the tools/scripts/everything have already been 'taught' to interpret 14.3-RELEASE-p7 format. >> >> Switching *now* after more then 30 years of FreeBSD releases would only cause this: https://xkcd.com/927/ >> >> No one wants that confusion. > > +1. > > >> ... but I have better idea. >> >> We already have these: >> >> % sysctl kern | grep -e kern.osrelease -e kern.version >> kern.osrelease: 14.3-RELEASE-p7 >> kern.version: FreeBSD 14.3-RELEASE-p7 GENERIC >> >> Adding additional 'kern.dotrelease' which would be in 0.0.0 format will not hurt anyone - yet you will have your version. >> >> % sysctl kern | grep -e kern.osrelease -e kern.version >> kern.osrelease: 14.3-RELEASE-p7 >> kern.version: FreeBSD 14.3-RELEASE-p7 GENERIC >> kern.dotrelease: 14.3.7 > > Historically, there were 1.1.5.1, 2.1.6.1 and 2.1.7.1. > > https://github.com/freebsd/freebsd-src/blob/main/share/misc/bsd-family-tree > > Not sure about 1.1.5.1 (as at the moment I didn't know the exixtence > of FreeBSD yet), but IIRC, 2.1.6.1 and 2.1.7.1 were something > like current -p* point releases. > > So, if introducing 2 or more dot format as kern.dotrelease > sysctl, what I recommend here would be "kern.dotrelease: 14.3.0.7" > corresponding to "kern.osrelease: 14.3-RELEASE-p7". > > And if there happenes to require any security update breaking > backward compatibilities next to 14.3-RELEASE-p7, use > irregular 14.3.1-RELEASE with __FreeBSD_version bump. > > The next patch release for 14.3.1-RELEASE should be > 14.3.1-RELEASE-p1. > > I think this doesn't hurt current semantics of release tags > and would be safe for 4 2-dots release. > (I imagine __FreeBSD_version 1403100 for 14.3.1-RELEASE > and following point releases. Stable restarts from 1403500 > after 14.3-RELEASE, so using 1403100, 1403200, 1403300 and 1403400 > would be safe.) > > Regards. > > >> ... and I would also add '-d' flag for freebsd-version(*) to print FreeBSD version in '0.0.0' format. >> >> Regards, >> vermaden >> >> >> >> Temat: Re: [RFC] Introduce semantic versioning 2.0.0 to FreeBSD releases >> Data: 2026-02-25 17:42 >> Nadawca: "Tomek CEDRO" <[email protected]> >> Adresat: "Minsoo Choo" <[email protected]>; >> DW: "freebsd-hackers" <[email protected]>; >> >>>> On Wed, Feb 25, 2026 at 7:17 AM Minsoo Choo wrote: >>>> Currently FreeBSD uses a variant of semantic versioning for releases >> (e.g. 15.0-RELEASE-p1) where backward compatibility can be broken (e.g. >> deprecation of a utility) in a new major version, new features are added in >> minor versions, and security fixes are introduced in a new patch version. >>>> (..) >>> >>> +1 for simpler numbering like standard major.minor.patch: >>> 16.0-RELEASE -> 16.0.0. >>> 16.0-RELEASE-p1 -> 16.0.1. >>> 16.1-RELEASE -> 16.1.0. >>> 16.1-RELEASE-p1 -> 16.1.1. >>> >>> X.Y.Z numbering would imply release, maybe 16.0.0-RELEASE for clarity. >>> >>> 15-STABLE and 17-CURRENT could be left untouched or something like >>> 17.0.20260225-CURRENT to mark snapshot? >>> >>> :-) >>> >>> -- >>> CeDeROM, SQ7MHZ, http://www.tomek.cedro.info > > > -- > Tomoaki AOKI > > >