New York Code Sprint – PostGIS

Cette année l’équipe de contributeurs réguliers présents sur le Sprint se réduit à Paul Ramsey et Olivier Courtin, avec le renfort très apprécié de deux développeurs d’Avencia venus spécialement pour l’occasion (David Zwarg et Jeff Adams) et la présence à distance de Sandro Santilli depuis l’Italie via IRC.

Prochaine version, la v2

Pour rappel, au niveau PostGIS la 1.4.1 et la 1.5.0 sont sorties récemment, le développement de la nouvelle branche (le trunk) est donc depuis début février sur la future 2.0.

En terme de prise de décision, les grandes lignes de la v2 de PostGIS ont été abordées, avec notamment la refonte bas niveau du parseur et des types de géométries (Paul), le support du type 3D PolyhedralSurface et du format CityGML (Olivier), et les index multidimensionnels (Paul)…

Cette v2 sera l’occasion de pouvoir (enfin) réaliser des opérations de fond dans le moteur qui (revers de la médaille) vont casser la compatibilité avec les clients utilisant l’API existante.

La sortie n’est pas prévue avant au mieux fin 2010, donc cela laisse encore du temps pour revenir sur ces points au fur et à mesure de leurs ajouts dans le trunk.

Refactoring, encore et toujours

Pendant la session elle même, le focus a été mis avant tout sur des tâches de maintenance et de refactoring, avec la réécriture partielle du format de sortie WKT par Paul, et la migration des fonctions d’export vers la librairie liblwgeom et la réécriture des tests unitaires afférents avec CUnit par Olivier.

Ces tâches peuvent sembler par moment peu valorisantes (en tout cas moins que de rajouter une toute nouvelle fonctionnalités so fun et désespérément utile), mais sont indispensables pour continuer à maintenir l’application avec un haut niveau de qualité.
Quelques bugs qui n’avaient encore jamais été détecté, ont par exemple pu être mis en évidence (et corrigés) grâce aux nouvelles batteries de tests unitaires.

Avencia joue les extras

Jeff Adams a de son côté ajouté une nouvelle fonction ST_AsLatLonText permettant de passer d’une géométrie POINT en lat/lon à sa notation textuelle en degré/minute/seconde. Sachant qu’il ne connaissait pas l’API de PostGIS au premier jour du sprint, c’est une jolie performance !
Il a ensuite contribué à simplifier le processus d’ajout de nouveaux tests unitaires (avec CUnit toujours)

David Zwarg quant à lui a participé sur WKT Raster (l’extension permettant de manipuler des rasters depuis le SQL), avec une avancée sur le concept de ST_MapAlgebra (assez similaire à celui de mapcalc GRASS par certains aspects). Là aussi chapeau bas sur la célérité de prise en main de l’API et de l’environnement.

ST_CleanGeometry et consort

Sandro Santilli a actuellement comme chantier de permettre de ‘cleaner’ ou à minima d’orienter vers des posts traitements les données géographiques non valides et pourtant déjà en base.
Pertinent lorsque le process de production de données n’est pas ’safe’ (saisies de géométries par des utilisateurs, fournisseurs de données aux process qualité pas suffisamment rigoureux…)
Une des fonctions récentes développée pendant le sprint, est ST_RemoveRepeatedPoints qui permet de supprimer les vertex redondants de certaines géométries.

Comments are closed.