[SCM] PostGIS branch master updated. 3.6.0rc2-174-g3910b8618
git at osgeo.org
git at osgeo.org
Thu Oct 30 13:14:08 PDT 2025
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "PostGIS".
The branch, master has been updated
via 3910b861812e6db7c25004cb3a7f20533403592e (commit)
from d19e312fccf56ee6b50e1e90f1dfeffadb0eb336 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3910b861812e6db7c25004cb3a7f20533403592e
Author: Darafei Praliaskouski <me at komzpa.net>
Date: Fri Oct 31 00:13:52 2025 +0400
[doc] Clean up mentions of legacy software versions
diff --git a/doc/extras_address_standardizer.xml b/doc/extras_address_standardizer.xml
index d80ff7e5f..287151ca4 100644
--- a/doc/extras_address_standardizer.xml
+++ b/doc/extras_address_standardizer.xml
@@ -314,7 +314,7 @@ into includes in the future for easier maintenance.</para></listitem>
<varlistentry>
<term><varname>QUINT</varname></term>
<listitem>
- <para>(28). A 5 digit number. Identifies a Zip Code</para>
+ <para>(28). A 5 digit number. Identifies a ZIP code</para>
</listitem>
</varlistentry>
@@ -387,7 +387,7 @@ into includes in the future for easier maintenance.</para></listitem>
<varlistentry>
<term><varname>POSTAL</varname></term>
<listitem>
- <para>(token number "13"). (SADS elements "ZIP CODE" , "PLUS 4" ). This attribute is used for both the US Zip and the Canadian Postal Codes.</para>
+ <para>(token number "13"). (SADS elements "ZIP CODE" , "PLUS 4" ). This attribute is used for both the US ZIP and the Canadian postal codes.</para>
</listitem>
</varlistentry>
</variablelist>
diff --git a/doc/extras_tigergeocoder.xml b/doc/extras_tigergeocoder.xml
index ffacaeaf3..8ddd36ab8 100644
--- a/doc/extras_tigergeocoder.xml
+++ b/doc/extras_tigergeocoder.xml
@@ -9,10 +9,10 @@
<para>A plpgsql based geocoder written to work with the <link xlink:href="https://www2.census.gov/geo/tiger/">TIGER (Topologically Integrated Geographic Encoding and Referencing system ) / Line and Master Address database export</link> released by the US Census Bureau. </para>
<para>There are four components to the geocoder: the data loader functions, the address normalizer, the address geocoder, and the reverse geocoder. </para>
<para>Although it is designed specifically for the US, a lot of the concepts and functions are applicable and can be adapted to work with other country address and road networks.</para>
- <para>The script builds a schema called <varname>tiger</varname> to house all the tiger related functions, reusable lookup data such as road type prefixes, suffixes, states, various control tables for managing data load, and skeleton base tables from which all the tiger loaded tables inherit from.</para>
- <para>Another schema called <varname>tiger_data</varname> is also created which houses all the census data for each state that the loader downloads from Census site and loads into the database. In the current model, each set of state tables is
- prefixed with the state code e.g <varname>ma_addr</varname>, <varname>ma_edges</varname> etc with constraints to enforce only that state data. Each of these tables inherits from the tables <varname>addr</varname>, <varname>faces</varname>, <varname>edges</varname>, etc located in the <varname>tiger schema</varname>. </para>
- <para>All the geocode functions only reference the base tables, so there is no requirement that the data schema be called <varname>tiger_data</varname> or that data can't be further partitioned into other schemas -- e.g a different schema
+ <para>The script builds a schema called <varname>tiger</varname> to house all the TIGER-related functions, reusable lookup data such as road type prefixes, suffixes, states, various control tables for managing data load, and skeleton base tables from which all the TIGER-loaded tables inherit.</para>
+ <para>Another schema called <varname>tiger_data</varname> is also created which houses all the census data for each state that the loader downloads from the Census site and loads into the database. In the current model, each set of state tables is
+ prefixed with the state code e.g <varname>ma_addr</varname>, <varname>ma_edges</varname> etc with constraints to enforce only that state data. Each of these tables inherits from the tables <varname>addr</varname>, <varname>faces</varname>, <varname>edges</varname>, etc located in the <varname>tiger</varname> schema. </para>
+ <para>All the geocode functions only reference the base tables, so there is no requirement that the data schema be called <varname>tiger_data</varname> or that data can't be further partitioned into other schemas -- e.g. a different schema
for each state, as long as all the tables inherit from the tables in the <varname>tiger</varname> schema.</para>
@@ -26,8 +26,7 @@ you can upgrade the scripts using the accompanying upgrade_geocoder.bat
</para></note>
<note>
- <para>New in PostGIS 2.2.0 release is support for TIGER 2015 data and inclusion of Address Standardizer as part of PostGIS.</para>
- <para>New in PostGIS 2.1.0 release is ability to install the TIGER Geocoder with the PostgreSQL extension model. Refer to <xref linkend="install_tiger_geocoder_extension"/> for details.</para></note>
+ <para>You can install the TIGER Geocoder with the PostgreSQL extension model. Refer to <xref linkend="install_tiger_geocoder_extension"/> for details.</para></note>
</para>
<para>The <xref linkend="Pagc_Normalize_Address"/> function as a drop in replacement for in-built <xref linkend="Normalize_Address"/>. Refer to <xref linkend="installing_pagc_address_standardizer"/> for compile and installation instructions.</para>
@@ -841,9 +840,9 @@ rm -f ${TMPDIR}/*.*
<para><varname>loader_lookuptables</varname> each record defines a kind of table (state, county), whether to process records in it and how to load them in. Defines the steps to import data, stage data, add, removes columns, indexes, and constraints for each. Each table is prefixed with the state and inherits from a table in the tiger schema. e.g. creates <varname>tiger_data.ma_faces</varname> which inherits from <varname>tiger.faces</varname></para>
</listitem>
</orderedlist>
- <para role="enhanced" conformance="2.4.1">Enhanced: 2.4.1 zip code 5 tabulation area (zcta5) load step was fixed and when enabled, zcta5 data is loaded as a single table called zcta5_all as part of the nation script load.</para>
+ <para role="enhanced" conformance="2.4.1">Enhanced: 2.4.1 ZIP Code 5 tabulation area (zcta5) load step was fixed and when enabled, zcta5 data is loaded as a single table called zcta5_all as part of the nation script load.</para>
<para role="availability" conformance="2.1.0">Availability: 2.1.0 </para>
- <note><para>If you want zip code 5 tabulation area (zcta5) to be included in your nation script load, do the following:</para> <programlisting>UPDATE tiger.loader_lookuptables SET load = true WHERE table_name = 'zcta510';</programlisting></note>
+ <note><para>If you want ZIP Code 5 tabulation area (zcta5) to be included in your nation script load, do the following:</para> <programlisting>UPDATE tiger.loader_lookuptables SET load = true WHERE table_name = 'zcta510';</programlisting></note>
<note><para>If you were running <varname>tiger_2010</varname> version and you want to reload as state with newer tiger data, you'll need to for the very first load generate and run drop statements <xref linkend="Drop_Nation_Tables_Generate_Script"/> before you run this script.</para></note>
</refsection>
@@ -980,7 +979,7 @@ CREATE INDEX idx_tiger_data_ma_faces_countyfp ON tiger_data.ma_faces USING btree
<para><varname>parsed</varname> boolean - denotes if address was formed from normalize process. The normalize_address function sets this to true before returning the address.</para>
</listitem>
<listitem>
- <para><varname>zip4</varname> last 4 digits of a 9 digit zip code. Availability: PostGIS 2.4.0.</para>
+ <para><varname>zip4</varname> last 4 digits of a 9 digit ZIP Code. Availability: PostGIS 2.4.0.</para>
</listitem>
<listitem>
<para><varname>address_alphanumeric</varname> Full street number even if it has alpha characters like 17R. Parsing of this is better using <xref linkend="Pagc_Normalize_Address"/> function. Availability: PostGIS 2.4.0.</para>
@@ -1084,7 +1083,7 @@ CREATE INDEX idx_tiger_data_ma_faces_countyfp ON tiger_data.ma_faces USING btree
<para><varname>parsed</varname> boolean - denotes if address was formed from normalize process. The normalize_address function sets this to true before returning the address.</para>
</listitem>
<listitem>
- <para><varname>zip4</varname> last 4 digits of a 9 digit zip code. Availability: PostGIS 2.4.0.</para>
+ <para><varname>zip4</varname> last 4 digits of a 9 digit ZIP Code. Availability: PostGIS 2.4.0.</para>
</listitem>
<listitem>
<para><varname>address_alphanumeric</varname> Full street number even if it has alpha characters like 17R. Parsing of this is better using <xref linkend="Pagc_Normalize_Address"/> function. Availability: PostGIS 2.4.0.</para>
diff --git a/doc/performance_tips.xml b/doc/performance_tips.xml
index 9d991f600..5b21f5842 100644
--- a/doc/performance_tips.xml
+++ b/doc/performance_tips.xml
@@ -8,7 +8,7 @@
<section>
<title>Problem description</title>
- <para>Current PostgreSQL versions (including 9.6) suffer from a query
+ <para>Current PostgreSQL versions suffer from a query
optimizer weakness regarding TOAST tables. TOAST tables are a kind of
"extension room" used to store large (in the sense of data size) values
that do not fit into normal data pages (like long texts, images or
diff --git a/doc/reference_output.xml b/doc/reference_output.xml
index 795ff71a5..f09888e38 100644
--- a/doc/reference_output.xml
+++ b/doc/reference_output.xml
@@ -1710,7 +1710,7 @@ SELECT ST_AsTWKB(array_agg(geom), array_agg(gid)) FROM mytable;
<para>Below is how we currently map PostGIS 2D/3D types to X3D types</para>
</note>
- <para>The 'options' argument is a bitfield. For PostGIS 2.2+, this is used to denote whether to represent coordinates with X3D GeoCoordinates Geospatial node and also whether to flip the x/y axis. By default, <code>ST_AsX3D</code> outputs in database form (long,lat or X,Y), but X3D default of lat/lon, y/x may be preferred.</para>
+ <para>The 'options' argument is a bitfield that denotes whether to represent coordinates with the X3D GeoCoordinates geospatial node and whether to flip the x/y axis. By default, <code>ST_AsX3D</code> outputs in database form (long,lat or X,Y), but the X3D default of lat/lon, y/x may be preferred.</para>
<itemizedlist>
<listitem>
diff --git a/doc/reference_raster.xml b/doc/reference_raster.xml
index dc1e99c9b..3ddd3e373 100644
--- a/doc/reference_raster.xml
+++ b/doc/reference_raster.xml
@@ -3419,7 +3419,7 @@ FROM dummy_rast;
<title>Description</title>
<para>Returns the spatial reference identifier of the raster object as defined in the spatial_ref_sys table.</para>
- <note><para>From PostGIS 2.0+ the srid of a non-georeferenced raster/geometry is 0 instead of the prior -1.</para></note>
+ <note><para>Non-georeferenced rasters and geometries use SRID 0.</para></note>
</refsection>
<refsection>
diff --git a/extensions/postgis_extension_helper.sql.in b/extensions/postgis_extension_helper.sql.in
index d5f473d16..d9c648683 100644
--- a/extensions/postgis_extension_helper.sql.in
+++ b/extensions/postgis_extension_helper.sql.in
@@ -27,45 +27,26 @@ DECLARE
var_result boolean := false;
var_class text := '';
var_is_aggregate boolean := false;
- var_sql_list text := '';
- var_pgsql_version integer := pg_catalog.current_setting('server_version_num');
+ var_sql_list text := '';
BEGIN
var_class := CASE WHEN pg_catalog.lower(param_type) OPERATOR(pg_catalog.=)'function' OR pg_catalog.lower(param_type) OPERATOR(pg_catalog.=) 'aggregate' THEN 'pg_catalog.pg_proc' ELSE '' END;
var_is_aggregate := CASE WHEN pg_catalog.lower(param_type) OPERATOR(pg_catalog.=) 'aggregate' THEN true ELSE false END;
- IF var_pgsql_version OPERATOR(pg_catalog.<) 110000 THEN
- var_sql_list := $sql$SELECT 'ALTER EXTENSION ' OPERATOR(pg_catalog.||) e.extname OPERATOR(pg_catalog.||) ' DROP ' OPERATOR(pg_catalog.||) $3 OPERATOR(pg_catalog.||) ' ' OPERATOR(pg_catalog.||) COALESCE(proc.proname OPERATOR(pg_catalog.||) '(' OPERATOR(pg_catalog.||) oidvectortypes(proc.proargtypes) OPERATOR(pg_catalog.||) ')' ,typ.typname, cd.relname, op.oprname,
- cs.typname OPERATOR(pg_catalog.||) ' AS ' OPERATOR(pg_catalog.||) ct.typname OPERATOR(pg_catalog.||) ') ', opcname, opfname) OPERATOR(pg_catalog.||) ';' AS remove_command
- FROM pg_catalog.pg_depend As d INNER JOIN pg_catalog.pg_extension As e
- ON d.refobjid OPERATOR(pg_catalog.=) e.oid INNER JOIN pg_catalog.pg_class As c ON
- c.oid OPERATOR(pg_catalog.=) d.classid
- LEFT JOIN pg_catalog.pg_proc AS proc ON proc.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_type AS typ ON typ.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_class As cd ON cd.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_operator As op ON op.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_cast AS ca ON ca.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_type AS cs ON ca.castsource OPERATOR(pg_catalog.=) cs.oid
- LEFT JOIN pg_catalog.pg_type AS ct ON ca.casttarget OPERATOR(pg_catalog.=) ct.oid
- LEFT JOIN pg_opclass As oc ON oc.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_opfamily As ofa ON ofa.oid OPERATOR(pg_catalog.=) d.objid
- WHERE d.deptype OPERATOR(pg_catalog.=) 'e' and e.extname OPERATOR(pg_catalog.=) $1 and c.relname OPERATOR(pg_catalog.=) $2 AND COALESCE(proc.proisagg, false) OPERATOR(pg_catalog.=) $4;$sql$;
- ELSE -- for PostgreSQL 11 and above, they removed proc.proisagg among others and replaced with some func type thing
- var_sql_list := $sql$SELECT 'ALTER EXTENSION ' OPERATOR(pg_catalog.||) e.extname OPERATOR(pg_catalog.||) ' DROP ' OPERATOR(pg_catalog.||) $3 OPERATOR(pg_catalog.||) ' ' OPERATOR(pg_catalog.||) COALESCE(proc.proname OPERATOR(pg_catalog.||) '(' OPERATOR(pg_catalog.||) oidvectortypes(proc.proargtypes) OPERATOR(pg_catalog.||) ')' ,typ.typname, cd.relname, op.oprname,
- cs.typname OPERATOR(pg_catalog.||) ' AS ' OPERATOR(pg_catalog.||) ct.typname OPERATOR(pg_catalog.||) ') ', opcname, opfname) OPERATOR(pg_catalog.||) ';' AS remove_command
- FROM pg_catalog.pg_depend As d INNER JOIN pg_catalog.pg_extension As e
- ON d.refobjid OPERATOR(pg_catalog.=) e.oid INNER JOIN pg_catalog.pg_class As c ON
- c.oid OPERATOR(pg_catalog.=) d.classid
- LEFT JOIN pg_catalog.pg_proc AS proc ON proc.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_type AS typ ON typ.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_class As cd ON cd.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_operator As op ON op.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_cast AS ca ON ca.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_catalog.pg_type AS cs ON ca.castsource OPERATOR(pg_catalog.=) cs.oid
- LEFT JOIN pg_catalog.pg_type AS ct ON ca.casttarget OPERATOR(pg_catalog.=) ct.oid
- LEFT JOIN pg_opclass As oc ON oc.oid OPERATOR(pg_catalog.=) d.objid
- LEFT JOIN pg_opfamily As ofa ON ofa.oid OPERATOR(pg_catalog.=) d.objid
- WHERE d.deptype OPERATOR(pg_catalog.=) 'e' and e.extname OPERATOR(pg_catalog.=) $1 and c.relname OPERATOR(pg_catalog.=) $2 AND (proc.prokind OPERATOR(pg_catalog.=) 'a') OPERATOR(pg_catalog.=) $4;$sql$;
- END IF;
+ var_sql_list := $sql$SELECT 'ALTER EXTENSION ' OPERATOR(pg_catalog.||) e.extname OPERATOR(pg_catalog.||) ' DROP ' OPERATOR(pg_catalog.||) $3 OPERATOR(pg_catalog.||) ' ' OPERATOR(pg_catalog.||) COALESCE(proc.proname OPERATOR(pg_catalog.||) '(' OPERATOR(pg_catalog.||) oidvectortypes(proc.proargtypes) OPERATOR(pg_catalog.||) ')' ,typ.typname, cd.relname, op.oprname,
+ cs.typname OPERATOR(pg_catalog.||) ' AS ' OPERATOR(pg_catalog.||) ct.typname OPERATOR(pg_catalog.||) ') ', opcname, opfname) OPERATOR(pg_catalog.||) ';' AS remove_command
+ FROM pg_catalog.pg_depend As d INNER JOIN pg_catalog.pg_extension As e
+ ON d.refobjid OPERATOR(pg_catalog.=) e.oid INNER JOIN pg_catalog.pg_class As c ON
+ c.oid OPERATOR(pg_catalog.=) d.classid
+ LEFT JOIN pg_catalog.pg_proc AS proc ON proc.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_catalog.pg_type AS typ ON typ.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_catalog.pg_class As cd ON cd.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_operator As op ON op.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_catalog.pg_cast AS ca ON ca.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_catalog.pg_type AS cs ON ca.castsource OPERATOR(pg_catalog.=) cs.oid
+ LEFT JOIN pg_catalog.pg_type AS ct ON ca.casttarget OPERATOR(pg_catalog.=) ct.oid
+ LEFT JOIN pg_opclass As oc ON oc.oid OPERATOR(pg_catalog.=) d.objid
+ LEFT JOIN pg_opfamily As ofa ON ofa.oid OPERATOR(pg_catalog.=) d.objid
+ WHERE d.deptype OPERATOR(pg_catalog.=) 'e' and e.extname OPERATOR(pg_catalog.=) $1 and c.relname OPERATOR(pg_catalog.=) $2 AND (proc.prokind OPERATOR(pg_catalog.=) 'a') OPERATOR(pg_catalog.=) $4;$sql$;
FOR var_r IN EXECUTE var_sql_list USING param_extension, var_class, param_type, var_is_aggregate
LOOP
diff --git a/libpgcommon/lwgeom_pg.h b/libpgcommon/lwgeom_pg.h
index 6474de8c4..aacb4eab0 100644
--- a/libpgcommon/lwgeom_pg.h
+++ b/libpgcommon/lwgeom_pg.h
@@ -218,7 +218,7 @@ Datum BOX2D_union(PG_FUNCTION_ARGS);
Datum LWGEOM_same(PG_FUNCTION_ARGS);
-/** needed for sp-gist support PostgreSQL 11+ **/
+/** needed for SP-GiST support **/
Datum BOX3D_construct(PG_FUNCTION_ARGS);
Datum LWGEOM_to_BOX2DF(PG_FUNCTION_ARGS);
-----------------------------------------------------------------------
Summary of changes:
doc/extras_address_standardizer.xml | 4 +--
doc/extras_tigergeocoder.xml | 19 ++++++-----
doc/performance_tips.xml | 2 +-
doc/reference_output.xml | 2 +-
doc/reference_raster.xml | 2 +-
extensions/postgis_extension_helper.sql.in | 51 ++++++++++--------------------
libpgcommon/lwgeom_pg.h | 2 +-
7 files changed, 31 insertions(+), 51 deletions(-)
hooks/post-receive
--
PostGIS
More information about the postgis-tickets
mailing list