Difference between revisions of "Xen Project Maintenance Releases"

From Xen
(Stable Maintenance Branches)
 
(3 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
Each new Xen Project release X.Y.0 starts a new stable maintenance branch.
 
Each new Xen Project release X.Y.0 starts a new stable maintenance branch.
   
Each branch is maintained in the main [http://xenbits.xen.org/gitweb/?p=xen.git xen.git] repository in a ''stable-X.Y'' branch. See [[Xen Repositories]] for more information about the current branches.
+
Each branch is maintained in the main [http://xenbits.xen.org/gitweb/?p=xen.git xen.git] repository in a ''stable-X.Y'' branch. See [[Xen Project Repositories]] for more information about the current branches.
   
Releases are intended to happen roughly every 3 months. The first
+
Releases are intended to happen roughly every '''4 months'''. The first
 
release on a stable branch is often sooner and as the branch reaches
 
release on a stable branch is often sooner and as the branch reaches
 
the end of its life the interval may be longer.
 
the end of its life the interval may be longer.
   
In general XenProject.org supports the two most recent stable branches at any
+
In general XenProject.org supports stable branches for '''18 months full support plus 18 months security fixes'''. When a new X.Y.0 release is made there is usually one more
given time. When a new X.Y.0 release is made there is usually one more
 
 
release on the to-be-retired stable branch to mop up any loose patches
 
release on the to-be-retired stable branch to mop up any loose patches
 
sitting in the repository at which point the branch is retired.
 
sitting in the repository at which point the branch is retired.
 
For example at the time of writing we are in the 4.3 development cycle
 
and are supporting two stable branches: ''stable-4.1'' and
 
''stable-4.2''. After 4.2.0 was released there was one more release in
 
the ''stable-4.0'' stream (4.0.4) and then the 4.0 branch was retired (NB this was prior to the switch from Mercurial to git and so this branch was xen-4.0-testing.hg and is not present in git).
 
   
 
= Stable Branch Maintainer =
 
= Stable Branch Maintainer =
Line 23: Line 17:
 
Each stable branch has a maintainer who is nominated/volunteers
 
Each stable branch has a maintainer who is nominated/volunteers
 
according to the ''Maintainer Election'' process described in the
 
according to the ''Maintainer Election'' process described in the
[http://www.xen.org/projects/governance.html project governance]
+
[http://www.xenproject.org/governance.html project governance]
 
document. This will resulting in the MAINTAINERS file in the relevant
 
document. This will resulting in the MAINTAINERS file in the relevant
 
branch being patched to include the maintainer.
 
branch being patched to include the maintainer.

Latest revision as of 12:29, 10 November 2015

Stable Maintenance Branches

Each new Xen Project release X.Y.0 starts a new stable maintenance branch.

Each branch is maintained in the main xen.git repository in a stable-X.Y branch. See Xen Project Repositories for more information about the current branches.

Releases are intended to happen roughly every 4 months. The first release on a stable branch is often sooner and as the branch reaches the end of its life the interval may be longer.

In general XenProject.org supports stable branches for 18 months full support plus 18 months security fixes. When a new X.Y.0 release is made there is usually one more release on the to-be-retired stable branch to mop up any loose patches sitting in the repository at which point the branch is retired.

Stable Branch Maintainer

Each stable branch has a maintainer who is nominated/volunteers according to the Maintainer Election process described in the project governance document. This will resulting in the MAINTAINERS file in the relevant branch being patched to include the maintainer.

For the branches maintained by XenProject.org one of the regular xen-unstable committers or maintainers would usually step up as maintainer. However other community members can also step up to maintain a stable release, typically once Xen.org no longer does so.

The stable branch maintainer is responsible for identifying suitable candidates for inclusion in the stable branch both according to their own judgment and by evaluating requests from the community (see below).

Stable Branch Patch Inclusion Policy

No new development happens in the stable-X.Y branches, instead changesets are backported from xen-unstable (AKA the master branch). Where this is not possible (perhaps unstable has moved on such that the patch cannot be applied or the approach used in unstable is otherwise not valid for the stable branch) then a specific fix can be created for the stable branch. However it is a requirement that the issue will always be fixed in unstable first (this is to avoid regressions on the next major release).

In general only bug fixes are accepted into stable branches and new features are not normally accepted. (There can be exceptions, e.g. it was agreed that 4.2.1 would take a more relaxed approach to features which improved xl compatibility with xm). As time passes each stable branch becomes more conservative and the barrier to accepting a patch for backport becomes higher.

Changesets are included in the stable branch at the discretion of the branch maintainer.

Requesting A Backport

As well as changesets identified by the branch maintainer as being suitable for backport changes can also be nominated for inclusion in the stable branch by making a request to the stable maintainer on the xen-devel mailing list either by noting it as such in the submission of the original patch to xen-unstable or by a subsequent explicit email to xen-devel.

Backport requests should always be copied to the relevant stable maintainer. In addition as part of the the stable release process the stable maintainer will send one or more requests to xen-devel soliciting suggestions for patches which should be included.