Publication de PostGIS 3.6 – La 3D, le raster et la topologie passent à la vitesse supérieure



Nouvelle version : PostGIS 3.6.0 (Publiée le 2 septembre 2025)

PostGIS 3.6.0 est disponible depuis le 2 septembre 2025. Elle est conçue pour fonctionner avec PostgreSQL 12 à 18 beta 3, nécessite GEOS 3.8+ (avec des optimisations pour GEOS 3.14+) et Proj 6.1+. Pour activer toutes les fonctionnalités de SFCGAL, la version 2.2.0+ est requise.(PostGIS)


Disponibilité et téléchargement de PostGIS

PostGIS est l’extension spatiale la plus utilisée pour PostgreSQL, mais sa disponibilité varie selon le système d’exploitation et la version de PostgreSQL. Il est important de choisir la version stable adaptée à votre environnement pour éviter les problèmes de compatibilité et assurer la fiabilité de vos traitements géospatiaux.

Le tableau ci-dessous résume les versions stables et expérimentales disponibles selon les principaux systèmes :

Système Version PostgreSQL Version PostGIS stable Version expérimentale / Beta Lien de téléchargement / Installation
Windows 15 3.5.3 3.6 (tests uniquement) Via StackBuilder inclus dans PostgreSQL : Extensions > Spatial Extensions > PostGIS 3.5.3 Documentation PostGIS Windows
Ubuntu / Debian 15 3.5 3.6 (compilation source) sudo apt install postgis postgresql-15-postgis-3.5 PostGIS packages Ubuntu/Debian
RedHat / CentOS / Fedora 15 3.5 3.6 (compilation source) sudo dnf install postgis31_15 PostGIS packages RPM
Linux (toutes distros) Toutes Compilation source Dernière version dev (3.6+) PostGIS source

Conseils pratiques

  • La version 3.6 n’est pas encore officiellement disponible sur Windows.
  • Les versions expérimentales sont destinées uniquement aux tests et à la découverte des nouvelles fonctionnalités.
  • Sur Windows, StackBuilder facilite l’installation et la mise à jour des dépendances.
  • Sur Linux, la compilation depuis les sources permet d’accéder aux dernières fonctionnalités, mais nécessite une configuration correcte de PostgreSQL et des bibliothèques de développement.


Compatibilité & environnements requis

  • Version compatibles : PostgreSQL 12 → 18 beta 3
  • Pré-requis essentiels :

    • GEOS ≥ 3.8, idéalement 3.14+ pour performance et nouvelles fonctions
    • PROJ ≥ 6.1
    • SFCGAL ≥ 2.2 pour exploiter pleinement les fonctions 3D (PostGIS)


Nouvelles fonctionnalités marquantes

3D / SFCGAL :

  • CG_Simplify, CG_3DAlphaWrapping pour la manipulation d’éléments 3D
  • Transformations géométriques : mise à l’échelle, rotation, translation, buffer 3D, etc. (PostGIS)

Couverture & topologie :

  • ST_CoverageClean(...) : assure une couverture propre (sans chevauchements, bords alignés, remplissage des écarts). Exemple d’utilisation : CREATE TABLE example_clean AS SELECT id, ST_CoverageClean(geom) OVER () AS geom FROM example; Utile pour valider la géométrie d’un coverage. (PostGIS)

Traitements raster :

  • ST_AsRasterAgg : convertit efficacement une géométrie en raster durant l’agrégation.
  • ST_ReclassExact : reclassification rapide et précise des valeurs de raster.
  • ST_IntersectionFractions : calcul des fractions de superposition des cellules raster avec UE géométrique (nécessite GEOS 3.14).
  • postgis.gdal_cpl_debug (GUC) : journalisation des messages GDAL dans PostgreSQL. (PostGIS)


Changements majeurs / Breaking changes à noter

  • ST_TileEnvelope : les enveloppes sont désormais restreintes à l’étendue des tuiles (tile plane extent). (PostGIS)
  • geometry_columns : suppression des vérifications de contraintes, impactant anciens workflows. (PostGIS)
  • Dépréciation des fonctions topologiques integer : désormais remplacées par leur version bigint. (PostGIS)
  • Changement pour TIN / PolyhedralSurface : utiliser ST_NumPatches et ST_PatchN à la place de ST_NumGeometries, qui ne renvoient plus les sous-geometries. (PostGIS)
  • Suppression de st_approxquantile(raster, double precision), inutilisable dans la pratique. (PostGIS)


Processus de mise à jour

Pour migrer vers PostGIS 3.6 (3.0 à 3.6) :

SELECT postgis_extensions_upgrade();

Pour les versions ≤ 2.5 :

ALTER EXTENSION postgis UPDATE;
SELECT postgis_extensions_upgrade();
« ` :contentReference[oaicite:10]{index=10}

Nota : lancer ces commandes après migration PostgreSQL ou restauration des extensions.

Cas d’usage avancés

Nettoyage de couverture impure

WITH dirty AS (
SELECT id, geom FROM coverage_table
)
SELECT id, ST_AsText(ST_CoverageInvalidEdges(geom) OVER ()) AS invalid_geom
FROM dirty;

CREATE TABLE coverage_clean AS
SELECT id, ST_CoverageClean(geom) OVER () FROM dirty;

SELECT id, ST_AsText(ST_CoverageInvalidEdges(geom) OVER ()) FROM coverage_clean;

Reclassification de raster

SELECT ST_ReclassExact(rast, '[(1,10,100),(11,20,200)]') AS reclass_rast
FROM raster_table;

Simulation 3D simple

SELECT CG_3DAlphaWrapping(geom) FROM building_wall;


Si cet article vous a intéressé et que vous pensez qu'il pourrait bénéficier à d'autres personnes, n'hésitez pas à le partager sur vos réseaux sociaux en utilisant les boutons ci-dessous. Votre partage est apprécié !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *