You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by Pat Ferrel <pa...@occamsmachete.com> on 2015/05/26 22:53:38 UTC

Release and branching

Today at a dev hangout we decided:
1) target next end-of-week for 0.10.1 release. This will basically have what is in the master now and some package slimming changes.
2) Once things are cleaned up, the master will be the next major release snapshot until the actual release at which time a 0.y.x branch will be made
3) All changes/PRs that require the next major release will be made against master. 
4) Changes that do not require the next major release can be created as a PR towards the most likely branch to be next released but would be merged with both 

A Major Release has changes that have at least one of these aspects
* require a major Mahout API change
* require a major dependency version change, meaning the dependency’s API changed significantly
* requires breaking backward compatibility in some non-trivial way.
* is a large important feature that may redefine how people see Mahout.

A Minor release is mostly for bug fixes and minor dependency version changes, new features are incremental.

To use some upcoming work as an example: Much of Dmitriy’s private branch work runs on Spark 1.2 and so will go into the 0.10.x branch probably after next week’s release. Getting the Mahout Shell to work on Spark 1.3 will require a major release (0.11.0) since it will not be backward compatible. The change to the sequence file io requires Spark 1.3 and so will go into the master/next major release.

When the dust settles by next week:
* if a user requires Spark 1.3 they will need to use the 0.11.0-snapshot in the master and build from source.
* if a user wants a binary release they will pick up the version of 0.10.x that suffices, for Spark <= 1.2.2 that will be Mahout 0.10.1—next week’s release.

I hope I got that right...



Re: Release and branching

Posted by Suneel Marthi <sm...@apache.org>.
Thanks Pat, minor correction below

On Tue, May 26, 2015 at 4:53 PM, Pat Ferrel <pa...@occamsmachete.com> wrote:

> Today at a dev hangout we decided:
> 1) target next end-of-week for 0.10.1 release. This will basically have
> what is in the master now and some package slimming changes.
>

target next 0.10.1 release for end of this week to be packaged with planned
BigTop 1.0 RC.


> 2) Once things are cleaned up, the master will be the next major release
> snapshot until the actual release at which time a 0.y.x branch will be made
> 3) All changes/PRs that require the next major release will be made
> against master.
> 4) Changes that do not require the next major release can be created as a
> PR towards the most likely branch to be next released but would be merged
> with both
>
> A Major Release has changes that have at least one of these aspects
> * require a major Mahout API change
> * require a major dependency version change, meaning the dependency’s API
> changed significantly
> * requires breaking backward compatibility in some non-trivial way.
> * is a large important feature that may redefine how people see Mahout.
>
> A Minor release is mostly for bug fixes and minor dependency version
> changes, new features are incremental.
>
> To use some upcoming work as an example: Much of Dmitriy’s private branch
> work runs on Spark 1.2 and so will go into the 0.10.x branch probably after
> next week’s release. Getting the Mahout Shell to work on Spark 1.3 will
> require a major release (0.11.0) since it will not be backward compatible.
> The change to the sequence file io requires Spark 1.3 and so will go into
> the master/next major release.
>
> When the dust settles by next week:
> * if a user requires Spark 1.3 they will need to use the 0.11.0-snapshot
> in the master and build from source.
> * if a user wants a binary release they will pick up the version of 0.10.x
> that suffices, for Spark <= 1.2.2 that will be Mahout 0.10.1—next week’s
> release.
>
> I hope I got that right...
>
>
>