[libvirt] [PATCH] Bump release to 2.0.0 and document release schedule & versioning

This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>. -AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) diff --git a/docs/downloads.html.in b/docs/downloads.html.in index 13a6db1..32cc2ec 100644 --- a/docs/downloads.html.in +++ b/docs/downloads.html.in @@ -32,20 +32,71 @@ <li><a href="http://libvirt.org/sources/libvirt-git-snapshot.tar.gz">libvirt.org HTTP server</a></li> </ul> + <h2><a name="schedule">Primary release schedule</a></h2> + + <p> + Libvirt follows a time based plan, with releases made once a month + on the 1st of each month give or take a few days. The only exception + is at the start of the year where there are two 6 weeks gaps, giving + a total of 11 releases a year. Expect to see releases on approx: + </p> + + <ul> + <li>Jan 15th</li> + <li>Mar 1st</li> + <li>Apr 1st</li> + <li>May 1st</li> + <li>Jun 1st</li> + <li>Jul 1st</li> + <li>Aug 1st</li> + <li>Sep 1st</li> + <li>Oct 1st</li> + <li>Nov 1st</li> + <li>Dec 1st</li> + </ul> + + <h2><a name="numbering">Release numbering</a></h2> + + <p> + Since libvirt 2.0.0, a time based version numbering rule + is applied. As such, the changes in version number have + do not have any implications wrt the scope of features + or bugfixes included, the stability of the code, or the + API / ABI compatibility (libvirt API / ABI is guaranteed + stable forever). The rules applied for changing the libvirt + version number are: + </p> + + <ul> + <li><code>major</code> - incremented by 1 for the first release of the year (the Jan 15th release)</li> + <li><code>minor</code> - incremented by 1 for each monthly release from git master</li> + <li><code>micro</code> - always 0 for releases from git master, incremented by 1 for each stable maintenance release</li> + </ul> + + <p> + Prior to to 2.0.0 the major/minor numbers were incremented + fairly arbitrarily, and maintenance releases appended a + fourth digit. + </p> + <h2><a name="maintenance">Maintenance releases</a></h2> <p> In the git repository are several stable maintenance branches, matching the - pattern <code>v<i>major</i>.<i>minor</i>.<i>micro</i>-maint</code>; + pattern <code>v<i>major</i>.<i>minor</i>-maint</code>; these branches are forked off the corresponding - <code>v<i>major</i>.<i>minor</i>.<i>micro</i></code> formal + <code>v<i>major</i>.<i>minor</i>.0</code> formal release, and may have further releases of the - form <code>v<i>major</i>.<i>minor</i>.<i>micro</i>.<i>rel</i></code>. + form <code>v<i>major</i>.<i>minor</i>.<i>micro</i></code>. These maintenance branches should only contain bug fixes, and no new features, backported from the master branch, and are supported as long as at least one downstream distribution expresses interest in a given branch. These maintenance - branches are considered during CVE analysis. + branches are considered during CVE analysis. In contrast + to the primary releases which are made once a month, there + is no formal schedule for the maintenance releases, which + are made whenever there is a need to make available key + bugfixes to downstream consumers. </p> <p> diff --git a/src/libvirt_lxc.syms b/src/libvirt_lxc.syms index 56c24c0..9b418ee 100644 --- a/src/libvirt_lxc.syms +++ b/src/libvirt_lxc.syms @@ -21,7 +21,7 @@ LIBVIRT_LXC_1.0.4 { virDomainLxcEnterSecurityLabel; } LIBVIRT_LXC_1.0.2; -LIBVIRT_LXC_1.3.6 { +LIBVIRT_LXC_2.0.0 { global: virDomainLxcEnterCGroup; } LIBVIRT_LXC_1.0.4; -- 2.5.5

On Mon, Jun 13, 2016 at 18:34:48 +0100, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering
The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) diff --git a/docs/downloads.html.in b/docs/downloads.html.in index 13a6db1..32cc2ec 100644 --- a/docs/downloads.html.in +++ b/docs/downloads.html.in ... + <ul> + <li><code>major</code> - incremented by 1 for the first release of the year (the Jan 15th release)</li> + <li><code>minor</code> - incremented by 1 for each monthly release from git master</li> + <li><code>micro</code> - always 0 for releases from git master, incremented by 1 for each stable maintenance release</li> + </ul>
This should use <dl/>, i.e., <dl> <dt><code>major</code></dt> <dd>incremented by 1 for the first release of the year (the Jan 15th release)</dd> ... </dl> ... ACK with the above fixed and the following patch squashed. Jirka diff --git i/docs/formatdomain.html.in w/docs/formatdomain.html.in index fb3ec5e..1b9eed6 100644 --- i/docs/formatdomain.html.in +++ w/docs/formatdomain.html.in @@ -5360,7 +5360,7 @@ qemu-kvm -net nic,model=? /dev/null of the first forward dev will be used. </p> </dd> - <dt><code>socket</code> <span class="since">since 1.3.6 (QEMU only)</span></dt> + <dt><code>socket</code> <span class="since">since 2.0.0 (QEMU only)</span></dt> <dd> <p> This listen type tells a graphics server to listen on unix socket. @@ -5376,7 +5376,7 @@ qemu-kvm -net nic,model=? /dev/null attribute all <code>listen</code> elements are ignored. </p> </dd> - <dt><code>none</code> <span class="since">since 1.3.6 (QEMU only)</span></dt> + <dt><code>none</code> <span class="since">since 2.0.0 (QEMU only)</span></dt> <dd> <p> This listen type doesn't have any other attribute. Libvirt supports diff --git i/src/libxl/libxl_driver.c w/src/libxl/libxl_driver.c index 9e9957e..0644f60 100644 --- i/src/libxl/libxl_driver.c +++ w/src/libxl/libxl_driver.c @@ -5700,7 +5700,7 @@ static virHypervisorDriver libxlHypervisorDriver = { .domainMigrateConfirm3Params = libxlDomainMigrateConfirm3Params, /* 1.2.6 */ .nodeGetSecurityModel = libxlNodeGetSecurityModel, /* 1.2.16 */ .domainInterfaceAddresses = libxlDomainInterfaceAddresses, /* 1.3.5 */ - .connectGetDomainCapabilities = libxlConnectGetDomainCapabilities, /* 1.3.6 */ + .connectGetDomainCapabilities = libxlConnectGetDomainCapabilities, /* 2.0.0 */ }; static virConnectDriver libxlConnectDriver = { diff --git i/src/vz/vz_driver.c w/src/vz/vz_driver.c index bb0d1b9..bb96fa0 100644 --- i/src/vz/vz_driver.c +++ w/src/vz/vz_driver.c @@ -2756,7 +2756,7 @@ static virHypervisorDriver vzHypervisorDriver = { .domainIsUpdated = vzDomainIsUpdated, /* 1.2.21 */ .domainGetVcpusFlags = vzDomainGetVcpusFlags, /* 1.2.21 */ .domainGetMaxVcpus = vzDomainGetMaxVcpus, /* 1.2.21 */ - .domainSetUserPassword = vzDomainSetUserPassword, /* 1.3.6 */ + .domainSetUserPassword = vzDomainSetUserPassword, /* 2.0.0 */ .connectDomainEventRegisterAny = vzConnectDomainEventRegisterAny, /* 1.2.10 */ .connectDomainEventDeregisterAny = vzConnectDomainEventDeregisterAny, /* 1.2.10 */ .nodeGetCPUMap = vzNodeGetCPUMap, /* 1.2.8 */

On Mon, Jun 13, 2016 at 18:34:48 +0100, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering
The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) diff --git a/docs/downloads.html.in b/docs/downloads.html.in index 13a6db1..32cc2ec 100644 --- a/docs/downloads.html.in +++ b/docs/downloads.html.in ... + <ul> + <li><code>major</code> - incremented by 1 for the first release of the year (the Jan 15th release)</li> + <li><code>minor</code> - incremented by 1 for each monthly release from git master</li> + <li><code>micro</code> - always 0 for releases from git master, incremented by 1 for each stable maintenance release</li> + </ul> + + <p> + Prior to to 2.0.0 the major/minor numbers were incremented
Oh, and s/to to/to/ Jirka

On Mon, 2016-06-13 at 18:34 +0100, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>. -AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) diff --git a/docs/downloads.html.in b/docs/downloads.html.in index 13a6db1..32cc2ec 100644 --- a/docs/downloads.html.in +++ b/docs/downloads.html.in @@ -32,20 +32,71 @@ <li><a href="http://libvirt.org/sources/libvirt-git-snapshot.tar.gz">libvirt.org HTTP server</a></li> </ul> + <h2><a name="schedule">Primary release schedule</a></h2> + + <p> + Libvirt follows a time based plan, with releases made once a month + on the 1st of each month give or take a few days. The only exception + is at the start of the year where there are two 6 weeks gaps, giving + a total of 11 releases a year. Expect to see releases on approx: ~~~~~~
Either use "approx." or, better yet, "approximately".
+ </p> + + <ul> + <li>Jan 15th</li> + <li>Mar 1st</li> + <li>Apr 1st</li> + <li>May 1st</li> + <li>Jun 1st</li> + <li>Jul 1st</li> + <li>Aug 1st</li> + <li>Sep 1st</li> + <li>Oct 1st</li> + <li>Nov 1st</li> + <li>Dec 1st</li> + </ul>
On the other hand, do we really need to be so specific, and even list specific dates? I'd go with something a bit more generic, along the lines of "we're going to do a release at the beginning of each month, but releases might slip a few days due to holidays and such".
+ <h2><a name="numbering">Release numbering</a></h2> + + <p> + Since libvirt 2.0.0, a time based version numbering rule + is applied. As such, the changes in version number have + do not have any implications wrt the scope of features ~~~
Please use the extended form.
+ or bugfixes included, the stability of the code, or the + API / ABI compatibility (libvirt API / ABI is guaranteed + stable forever). The rules applied for changing the libvirt + version number are: + </p> + + <ul> + <li><code>major</code> - incremented by 1 for the first release of the year (the Jan 15th release)</li> + <li><code>minor</code> - incremented by 1 for each monthly release from git master</li> + <li><code>micro</code> - always 0 for releases from git master, incremented by 1 for each stable maintenance release</li> + </ul>
These could be wrapped at ~80 columns. -- Andrea Bolognani Software Engineer - Virtualization Team

On 13.06.2016 19:34, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering
The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux])> AC_CONFIG_HEADERS([config.h])
Does this mean that we can finally enable admin API? I think it would be awesome because the way I see it enabling it would certainly require minor bump at least. Michal

On 14/06/16 09:47, Michal Privoznik wrote:
On 13.06.2016 19:34, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering
The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux])> AC_CONFIG_HEADERS([config.h])
Does this mean that we can finally enable admin API? I think it would be awesome because the way I see it enabling it would certainly require minor bump at least.
Michal
I think the proposed change is completely independent of admin API. I think we could open a discussion in a separate thread and not pollute this one. Erik

On Tue, Jun 14, 2016 at 09:59:34AM +0200, Erik Skultety wrote:
On 14/06/16 09:47, Michal Privoznik wrote:
On 13.06.2016 19:34, Daniel P. Berrange wrote:
This bumps the release number of 2.0.0, to reflect the switch to a new time based release versioning scheme. The downloads page is updated to describe our policies for release schedules and release version numbering
The stable release docs are changed to reflect the fact that the stable version numbers are now just 3 digits long instead of 4.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- configure.ac | 2 +- docs/downloads.html.in | 59 ++++++++++++++++++++++++++++++++++++++++++++++---- src/libvirt_lxc.syms | 2 +- 3 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac index 827d9db..0114149 100644 --- a/configure.ac +++ b/configure.ac @@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU Lesser General Public dnl License along with this library. If not, see dnl <http://www.gnu.org/licenses/>.
-AC_INIT([libvirt], [1.3.6], [libvir-list@redhat.com], [], [http://libvirt.org]) +AC_INIT([libvirt], [2.0.0], [libvir-list@redhat.com], [], [http://libvirt.org]) AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_AUX_DIR([build-aux])> AC_CONFIG_HEADERS([config.h])
Does this mean that we can finally enable admin API? I think it would be awesome because the way I see it enabling it would certainly require minor bump at least.
Michal
I think the proposed change is completely independent of admin API. I think we could open a discussion in a separate thread and not pollute this one.
Agreed, lets discuss that independently Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
participants (5)
-
Andrea Bolognani
-
Daniel P. Berrange
-
Erik Skultety
-
Jiri Denemark
-
Michal Privoznik