xref: /freebsd/sys/contrib/openzfs/RELEASES.md (revision c6767dc1f236f20eecd75790afd42829345153da)
116038816SMartin MatuskaOpenZFS uses the MAJOR.MINOR.PATCH versioning scheme described here:
216038816SMartin Matuska
316038816SMartin Matuska  * MAJOR - Incremented at the discretion of the OpenZFS developers to indicate
416038816SMartin Matuska    a particularly noteworthy feature or change. An increase in MAJOR number
516038816SMartin Matuska    does not indicate any incompatible on-disk format change. The ability
616038816SMartin Matuska    to import a ZFS pool is controlled by the feature flags enabled on the
716038816SMartin Matuska    pool and the feature flags supported by the installed OpenZFS version.
816038816SMartin Matuska    Increasing the MAJOR version is expected to be an infrequent occurrence.
916038816SMartin Matuska
1016038816SMartin Matuska  * MINOR - Incremented to indicate new functionality such as a new feature
1116038816SMartin Matuska    flag, pool/dataset property, zfs/zpool sub-command, new user/kernel
1216038816SMartin Matuska    interface, etc. MINOR releases may introduce incompatible changes to the
1316038816SMartin Matuska    user space library APIs (libzfs.so). Existing user/kernel interfaces are
1416038816SMartin Matuska    considered to be stable to maximize compatibility between OpenZFS releases.
1516038816SMartin Matuska    Additions to the user/kernel interface are backwards compatible.
1616038816SMartin Matuska
1716038816SMartin Matuska  * PATCH - Incremented when applying documentation updates, important bug
1816038816SMartin Matuska    fixes, minor performance improvements, and kernel compatibility patches.
1916038816SMartin Matuska    The user space library APIs and user/kernel interface are considered to
2016038816SMartin Matuska    be stable. PATCH releases for a MAJOR.MINOR are published as needed.
2116038816SMartin Matuska
2216038816SMartin MatuskaTwo release branches are maintained for OpenZFS, they are:
2316038816SMartin Matuska
2416038816SMartin Matuska  * OpenZFS LTS - A designated MAJOR.MINOR release with periodic PATCH
2516038816SMartin Matuska    releases that incorporate important changes backported from newer OpenZFS
2616038816SMartin Matuska    releases. This branch is intended for use in environments using an
2716038816SMartin Matuska    LTS, enterprise, or similarly managed kernel (RHEL, Ubuntu LTS, Debian).
2816038816SMartin Matuska    Minor changes to support these distribution kernels will be applied as
2916038816SMartin Matuska    needed. New kernel versions released after the OpenZFS LTS release are
3016038816SMartin Matuska    not supported. LTS releases will receive patches for at least 2 years.
31*c6767dc1SMartin Matuska    The current LTS release is OpenZFS 2.2.
3216038816SMartin Matuska
3316038816SMartin Matuska  * OpenZFS current - Tracks the newest MAJOR.MINOR release. This branch
3416038816SMartin Matuska    includes support for the latest OpenZFS features and recently releases
3516038816SMartin Matuska    kernels.  When a new MINOR release is tagged the previous MINOR release
3616038816SMartin Matuska    will no longer be maintained (unless it is an LTS release). New MINOR
3716038816SMartin Matuska    releases are planned to occur roughly annually.
38