Re: [RFC] Introduce semantic versioning 2.0.0 to FreeBSD releases

Philip Paeps <[email protected]>
Newsgroups gmane.os.freebsd.devel.hackers
Message-ID <[email protected]>
On 2026-02-25 14:17:28 (+0800), 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.
>
> FreeBSD's git repository reserves semantic versioning style patch 
> version (aka third version) in git tags but it has been unused for a 
> long time (e.g. 15.0.0-p1). This results in having two patch version 
> placeholders where one is unused and might​​ cause confusions for 
> some newcomers. The last git tag that contains patch version in 
> semantic versioning format is 5.2.1. After that, tags for both patch 
> version placeholders are missing until 13.4.0-p2 and 14.1.0-p6 (re@, 
> why are we missing these tags? Can we recover them?), and we cannot 
> track what happened in the past.

We only started adding the -pX tags in Git after 13.4-RELEASE-p2.  I 
never went back in time to create the tags before that.  It wouldn't be 
too difficult to do -- merely tedious.

See also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279416

Note that 13.4.1 would be "13.4.1-RELEASE".  We have not done a release 
like that for a very long time.

The -pX refer to patches released by the security team.  These are not 
releases.  The last time we had to re-do a release was (apparently) 
5.2.1-RELEASE.  I thought there was a more recent one but my memory is 
fuzzy.

> Thus, I propose using semantic versioning 2.0.0 [1] starting from 
> FreeBSD 16. Major and minor versions will have the same roles as 
> before. For patch versions, I propose including bug fixes as well as 
> security patches. For bugs, I mean existing things that do not produce 
> expected behaviour that has "Fixes: " metadata in git commit message.
>
> Many teams need to be involved in discussions and decisions for this 
> change. For now, I can name re@, clusteradm@, secteam@, and probably 
> core@. Once we reach community consensus, I will bring this topic to 
> those teams.
>
> [1] https://semver.org

I have no objection as long as we commit to one system and stick to it. 
:)

I suspect we can't start doing this until freebsd-update is dead and 
burried.

Philip
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.