[postgis-devel] Objects versioning

Sandro Santilli strk at keybit.net
Fri Feb 24 02:33:22 PST 2012

I think it is time to simplify and improve robustness of versioning.

The current situation is weak in that there's no version stored/checked
inside the raster library nor in the raster or topology scripts.
Also the current version stored/checked for core lib/scripts isn't
necessarely correct because it relies on SVN keyword substitution
performed on the main file and thus doesn't catch modifications
happening in included files. Not to mention that under git-svn
the keyword substitution doesn't happen...

I've created a ticket for this:

But it's probably better to discuss on the list first.
My proposal is as follows:

 1) PostGIS has a single version for all components.
    Such version is Major.Minor.Micro plus an optional
    revision number (for SVN snapshots)

 2) The PostGIS single version should be stored in all
    libraries (core,raster) and user-facing scripts
    (postigs.sql, rtpostgis.sql, topology.sql). 

 3) Each script should expose function to report
    the version it embeds. Scripts bound to libraries
    should also expose a function to report the version
    of the bound library (core, raster).

 4) The postgis_full_version() should check for the
    version reported by all the functions as being equal
    or suggest appropriate action to fix any discrepancy.

The worst case I can see with this approach is that people are
requested to run the "upgrade_minor" script more often than
otherwise needed, but I see absolutely no harm in doing that,
as long as our "upgrade_minor" scripts are working.

I'd like to get this done before beta, so please cast your votes ! 
Thank you.


  |   __/  |    Delivering high quality PostGIS 2.0 !
  |  / 2.0 |    http://strk.keybit.net - http://vizzuality.com

More information about the postgis-devel mailing list