Since those branches are made to match a given geoapi version we could include it in the version number :

  * master    : "1.0-SNAPSHOT"
  * geoapi-3.1: "GEOAPI-3.1-SNAPSHOT"
  * geoapi-4.0: "GEOAPI-4.X-SNAPSHOT"

It would make it obvious and avoid conflicts with any futur geoapi versions 
branches.

Johann



On 10/05/2019 11:06, Martin Desruisseaux wrote:
Hello all

Apache SIS currently has 3 branches, but only one of them is released.
For understanding the purpose of those 3 branches, we need to remind the
status of GeoAPI:

   * GeoAPI 3.0.1 is the latest release published by OGC.
   * GeoAPI 3.1 is in development, not yet released by OGC, and aimed to
     be fully backward compatible with GeoAPI 3.0.1.
   * GeoAPI 4.0 is in development, not yet released by OGC, and contains
     two kinds of incompatible changes:
       o Incompatible changes in ISO/OGC standards (e.g. some classes
         renamed, or some information reorganized in a different class
         hierarchy).
       o Incompatible changes if we want to leverage evolution of Java
         language (e.g. use of java.time in replacement of
         java.util.Date, or use of java.util.Optional).

The 3 branches of Apache SIS reflect those 3 three versions of GeoAPI:

   * Apache SIS "master" branch implements GeoAPI 3.0.1 interfaces. This
     is the only branch used for making Apache SIS releases. The next
     planed release is Apache SIS 1.0.
   * Apache SIS "geoapi-3.1" branch implements GeoAPI 3.1 interfaces.
     This is a branch for developers, not to be released before OGC
     publishes GeoAPI 3.1. When ready for a release, the version number
     would be "Apache SIS 1.something" where "something" is currently
     unknown.
   * Apache SIS "geoapi-4.0" branch implements GeoAPI 4.0 interfaces.
     This is a branch for developers, not to be released before OGC
     publishes GeoAPI 4.0 (but snapshots and milestones are deployed on a
     Maven repository outside Apache for use by Geotk - a sandbox for
     future SIS features). When ready for a release, the version number
     would be "Apache SIS 2.0".

The pom.xml files currently declare the following version numbers for
each branch:

   * master: "1.0-SNAPSHOT"
   * geoapi-3.1: "dev-1.0-SNAPSHOT"
   * geoapi-4.0: "dev-1.0-SNAPSHOT" (same as geoapi-3.1).

I propose to change as below. Those changes would apply to versions
declared in pom.xml files only; the branch names would stay unchanged.

   * master: "1.0-SNAPSHOT" (unchanged)
   * geoapi-3.1: "1.future-SNAPSHOT"
   * geoapi-4.0: "2.0-SNAPSHOT"

Though?

     Martin


Reply via email to