Opened 7 years ago

Closed 6 years ago

Last modified 6 years ago

#3807 closed defect (fixed)

Change PostGIS library name to drop the minor

Reported by: robe Owned by: robe
Priority: critical Milestone: PostGIS 3.0.0
Component: postgis Version: 2.3.x
Keywords: Cc:

Description

Repeated from my email: http://lists.osgeo.org/pipermail/postgis-devel/2017-August/026297.html

I was thinking about the issues that Devrim raised about how hard it is for people to upgrade from one PostGIS minor version to another when the same PostGIS minor is not installed in both the old and new cluster.

As I see it, the main reason this not possible is because we change the library name from minor to minor.

Solution, let's stop doing that and only change the name from Major version to Major version. Let's also agree that we will not bump the major version to 3 unless is we change the on-disc format. Which according to Paul in theory should not happen for a really really long time. So long, I would have died of natural causes by then.

Now I would still like the Minor feature we had of the library being called — postgis-2.3 for development reasons so I can install same version of PostGIS in same cluster. However such a feature to be honest is really only useful for testing and development.

So how do I eat my cake and still make life easy for people who don't like the taste of my cake.

Add a switch to configure called: —use-minor-versioning

Which by default from 2.4 moving forward would default to false.

The result of it being false would be

The PostGIS 2.4 library will have a library name of postgis-2.dll, postgis-2.so, postgis-2.whatever rtpostgis-2.whatever

I also propose we add such a feature in PostGIS 2.3.4 on, people might have a bit of issue with this, so thoughts welcome.

So that means when people upgrade to postgis 2.3.4, the new library will point at the new naming postgis-2.so, rtpostgis-2.so

And so when they pg_upgrade to a PostgreSQL 10 which will only have PostGIS 2.4.0, it won't break.

They'll just need to do a

ALTER EXTENSION UPDATE TO 2.4.0;

After the PostgreSQL 10 migration.

Anyone have thoughts on this. Anything I'm missing?

Change History (7)

comment:1 by robe, 7 years ago

pramsey how is this coming along. Itching to test it out.

comment:2 by robe, 7 years ago

Milestone: PostGIS 2.4.0PostGIS 2.5.0
Priority: blockercritical

Mark gave his -1 end of story for now. Perhaps instead of 2.5, we can make a 3.0.

comment:3 by robe, 6 years ago

Milestone: PostGIS 2.5.0PostGIS next

comment:4 by robe, 6 years ago

Milestone: PostGIS nextPostGIS 3.0.0

Milestone renamed

comment:5 by robe, 6 years ago

Owner: changed from pramsey to robe

comment:6 by robe, 6 years ago

Resolution: fixed
Status: newclosed

In 16854:

Add new configure switch —with-library-minor-version, change default behavior to not include minor version in extension library files.
Closes #3807

Also fix link in docs that points to old postgis.org

comment:7 by Raul Marin, 6 years ago

In 16855:

Fix configure switch —with-library-minor-version in topology

References #3807
Closes https://github.com/postgis/postgis/pull/312

Note: See TracTickets for help on using tickets.