Apache SIS has 3 branches:

 * "master" or ("main") depends on the official OGC GeoAPI 3.0.2
   release and is the Apache SIS branch that is released.
 * "geoapi-3.1" is a branch using a GeoAPI development snapshot taken
   from OGC repository.
 * "geoapi-4.0" is like "geoapi-3.1" but using a different GeoAPI
   development branch.

The "geoapi-3.1/4.0" branches are for testing GeoAPI developments but are never released.

Problem: "geoapi-3.1/4.0" branches depend on snapshots of GeoAPI development branches at specific times. Those snapshots are never released on Maven Central because they are not OGC approved releases. For building the "geoapi-3.1/4.0" branch of Apache SIS, developers must first build locally the right GeoAPI branch on a checkout of the same day. This is very unconvenient, error-prone and make difficult to build an old commit.

Pull request https://github.com/apache/sis/pull/38 proposes to automatize the process by adding a git sub-module in Apache SIS "geoapi-3.1/4.0" branches. This sub-module references directly the OGC GeoAPI repository at the right commit (identified by the SHA1). "git pull --recurse-submodules" will automatically pull GeoAPI snapshot at the right version for the Apache SIS commit. A build of Apache SIS with gradle will first build GeoAPI (by delegating to Maven because the GeoAPI project uses Maven) if an only if some GeoAPI interfaces has changed since the last build. More information there:

https://github.com/apache/sis/tree/geoapi-submodule/geoapi

The proposal has no incidence on Apache SIS "master" (or "main") branch. That branch will NOT have sub-module and will continue to depend on GeoAPI 3.0.2 official release only.

I propose to keep the vote open until Friday evening.

    Martin

Reply via email to