[dpdk-dev] DPDK Stable Releases and Long Term Support

Mcnamara, John john.mcnamara at intel.com
Thu Jul 28 14:33:18 CEST 2016


This document sets out the guidelines for DPDK Stable Releases and Long Term
Support releases (LTS) based on the initial RFC and comments:
http://dpdk.org/ml/archives/dev/2016-June/040256.html.

In particular it incorporates suggestions for a Stable Release structure as
well as a Long Term Support release.


Introduction
------------

The purpose of the DPDK Stable Releases will be to maintain releases of DPDK
with backported fixes over an extended period of time. This will provide
downstream consumers of DPDK with a stable target on which to base
applications or packages.

The Long Term Support release (LTS) will be a designation applied to a Stable
Release to indicate longer support.


Stable Releases
---------------

Any major release of DPDK can be designated as a Stable Release if a
maintainer volunteers to maintain it.

A Stable Release will be used to backport fixes from a N release back to a N-1
release, for example, from 16.11 to 16.07.

The duration of a stable release should be one complete release cycle. It can
be longer, up to 1 year, if a maintainer continues to support the stable
branch, or if users supply backported fixes, however the explicit commitment
should be for one release cycle.

The release cadence can be determined by the maintainer based on the number of
bugfixes and the criticality of the bugs. However, releases should be
coordinated with the validation engineers to ensure that a tagged release has
been tested.


LTS Release
-----------

A stable release can be designated as an LTS release based on community
agreement and a commitment from a maintainer. An LTS release will have a
maintenance duration of 2 years.

It is anticipated that there should be at least 4 releases per year of the LTS
or approximately 1 every 3 months. However, the cadence can be shorter or
longer depending on the number and criticality of the backported
fixes. Releases should be coordinated with the validation engineers to ensure
that a tagged release has been tested.


Initial Stable Release
----------------------

The initial DPDK Stable Release will be 16.07. It will be viewed as a trial of
the Stable Release/LTS policy to determine what are the best working practices
for DPDK.

The maintainer for the initial release will be Yuanhan Liu
<yuanhan.liu at linux.intel.com>. It is hoped that other community members will
volunteer as maintainers for other Stable Releases.

The initial targeted release for LTS is proposed to be 16.11 based on the
results of the work carried out on the 16.07 Stable Release.

A list has been set up for Stable Release/LTS specific discussions:
<stable at dpdk.org>. This address can also be used for CCing maintainers on bug
fix submissions.


What changes should be backported
---------------------------------

The backporting should be limited to bug fixes.

Features should not be backported to stable releases. It may be acceptable, in
limited cases, to back port features for the LTS release where:

* There is a justifiable use case (for example a new PMD).
* The change is non-invasive.
* The work of preparing the backport is done by the proposer.
* There is support within the community.


Testing
-------

Stable and LTS releases should be tested before release/tagging.

Intel will provide validation engineers to test the 16.07 Stable Release and
the initial LTS tree. Other community members should provide testing for other
stable releases.

The validation will consist of compilation testing on the range of OSes
supported by the master release and functional/performance testing on the
current major/LTS release of the following OSes:

* Ubuntu
* RHEL
* SuSE
* FreeBSD


Releasing
---------

A Stable Release will be released by:

* Tagging the release with YY.MM.nn (year, month, number) or similar.
* Uploading a tarball of the release to dpdk.org.
* Sending an announcement to the <announce at dpdk.org> list.


ABI
---

The Stable Release should not be seen as a way of breaking or circumventing
the DPDK ABI policy.


Review of the Stable Release/LTS guidelines
-------------------------------------------

This document serves as a set of guidelines for the planned Stable
Releases/LTS activities. However, the actual process can be reviewed and
amended over time, based on experiences and feedback.




More information about the dev mailing list