Opened 7 days ago

Closed 7 days ago

Last modified 5 days ago

#5800 closed defect (fixed)

PROJ compiled with version seems to be reading the wrong minor and micro version

Reported by: robe Owned by: robe
Priority: medium Milestone: PostGIS 3.5.1
Component: postgis Version: 3.5.x
Keywords: Cc:

Description

I'm not sure if this is a bug in packaging or something about how we are reading proj versions.

I ran an apt update && apt upgrade pn one of my ubuntu noble servers that I had installed PostgreSQL 17 on.

To my great delight, the PostGIS version changed from 3.4.3 to 3.5.0. Before doing my SELECT postgis_extensions_upgrade() dance, the output of

SELECT postgis_full_version();

Looked like this:

POSTGIS="3.5.0 d2c3ca4" [EXTENSION] PGSQL="170" GEOS="3.12.1-CAPI-1.18.1" SFCGAL="SFCGAL 1.5.1, CGAL 5.6, BOOST 1.83.0" PROJ="9.4.0 NETWORK_ENABLED=OFF URL_ENDPOINT=https://cdn.proj.org USER_WRITABLE_DIRECTORY=/tmp/proj DATABASE_PATH=/usr/share/proj/proj.db" GDAL="GDAL 3.8.4, released 2024/02/08" LIBXML="2.9.14" LIBJSON="0.17" LIBPROTOBUF="1.4.1" WAGYU="0.5.0 (Internal)" (core procs from "3.4.3 e365945" need upgrade) TOPOLOGY (topology procs from "3.4.3 e365945" need upgrade) RASTER (raster procs from "3.4.3 e365945" need upgrade) (sfcgal procs from "3.4.3 e365945" need upgrade)

of course no surprise there since the compiled with version feature is new in PostGIS 3.5.0.

But once I ran

SELECT postgis_extensions_upgrade();

The version output shows:

POSTGIS="3.5.0 d2c3ca4" [EXTENSION] PGSQL="170" GEOS="3.12.1-CAPI-1.18.1" SFCGAL="SFCGAL 1.5.1, CGAL 5.6, BOOST 1.83.0" PROJ="9.4.0 NETWORK_ENABLED=OFF URL_ENDPOINT=https://cdn.proj.org USER_WRITABLE_DIRECTORY=/tmp/proj DATABASE_PATH=/usr/share/proj/proj.db" (compiled against PROJ 9.12.1) GDAL="GDAL 3.8.4, released 2024/02/08" LIBXML="2.9.14" LIBJSON="0.17" LIBPROTOBUF="1.4.1" WAGYU="0.5.0 (Internal)" TOPOLOGY RASTER

I checked https://proj.org/en/9.5/download.html

and I see no version 9.12.1. Latest version available is 9.5.

So where is this 9.12.1 reading coming from.

I thought maybe it's some sort of artifact of how ubuntu postgis is packaged, so I went to check my windows build. Guess what it shows the same bizarro difference. I haven't looked at the code, but based on looking at the 12 and 13s, it looks like it might be reading the Proj major version and the GEOS minor version and ascribing in to proj. So that would explain the 13 in my windows case since I compile against GEOS 3.13 and the 12 in the ubuntu which is going against GEOS 3.12

POSTGIS="3.5.0 3.5.0" [EXTENSION] PGSQL="150" GEOS="3.13.0-CAPI-1.19.0" SFCGAL="SFCGAL 1.5.2, CGAL 5.6.1, BOOST 1.84.0" PROJ="8.2.1 NETWORK_ENABLED=OFF URL_ENDPOINT=https://cdn.proj.org USER_WRITABLE_DIRECTORY=C:\Users\Administrator\AppData\Local/proj DATABASE_PATH=C:\Program Files\PostgreSQL\16\share\contrib\postgis-3.5\proj\proj.db" (compiled against PROJ 8.13.0) GDAL="GDAL 3.9.2, released 2024/08/13" LIBXML="2.12.5" LIBJSON="0.12" LIBPROTOBUF="1.2.1" WAGYU="0.5.0 (Internal)" TOPOLOGY RASTER

Change History (5)

comment:1 by robe, 7 days ago

Owner: changed from pramsey to robe

comment:2 by robe, 7 days ago

Summary: PROJ compiled with version seems to be reading the wrong minor versionPROJ compiled with version seems to be reading the wrong minor and micro version

comment:3 by Regina Obe <lr@…>, 7 days ago

In 44f50df6/git:

FIX copy paste error

in postgis_proj_compiled_version

References #5800 for PostGIS 3.6.0

comment:4 by Regina Obe <lr@…>, 7 days ago

Resolution: fixed
Status: newclosed

In 6b8ee4d/git:

FIX copy paste error

in postgis_proj_compiled_version

Closes #5800 for PostGIS 3.5.1

comment:5 by Paul Ramsey <pramsey@…>, 5 days ago

In 6bd6cf8e/git:

FIX copy paste error

in postgis_proj_compiled_version

References #5800 for PostGIS 3.6.0

Note: See TracTickets for help on using tickets.