# Quand la chaîne se brise : votre package NPM préféré est vérolé

Écrit par Valentin Marguerie

Les vecteurs d’attaques dans le monde du développement sont multiples, le facteur humain et le biais de confiance étant souvent l’un des plus exploités. 

Qui n’a jamais installé un package NPM sans se soucier de ses dépendances ou de son auteur, juste en se basant sur sa popularité ? 

Pourtant, ce mois-ci deux exemples ont ramené les développeurs à la réalité, si ce n’est pas votre code, alors vous ne le maitrisez pas. 

Tout a commencé avec l’usurpation du compte d’un célèbre créateur de package dénommé Qix, ce dernier est l’auteur de plusieurs packages très populaires et utilisés dans nombre de librairies. Résultat, des milliers de projets se sont retrouvés avec un crypto malware ayant pour objectif de détourner des transactions dans le wallet du pirate.

Le second épisode a frappé Tinycolor avec plus de 500 packages concernés, cette fois-ci le but de ce malware était d’exposer des secrets dans les pipelines des projets.

Ces deux épisodes coup sur coup doivent nous rappeler que maîtriser nos dépendances, et être à l’écoute des retours de la communauté sont des réflexes que tout développeur se doit d’adopter.

# GeoDataDays 2025

Écrit par Charles-Henry Vagner

Comme c’est le cas depuis la création de l’événement en 2018, c’est avec plaisir que nous avons participé activement aux GeoDataDays, les journées nationales Géonumériques organisées par l’Afigéo. L’événement se déroulait cette année au Parc Chanot à Marseille les 10 et 11 septembre et avait pour thème principal “Agir dans un monde en évolution : indispensables geodata”. Cette édition a une nouvelle fois été riche avec 1500 participants, une centaine d’exposants et 130 experts de la géographie numérique qui ont animé des conférences, débats, et réalisé des présentations… Autant vous dire que les échanges ont été riches sur notre stand et ailleurs.

Copyright Afigeo

Nous remercions l’Afigéo pour la qualité de l’organisation et pour les moments moins formels comme la soirée au Palais du Pharo qui permet d’échanger autrement.

Nous avons eu l’occasion d’intervenir pour présenter nos travaux au sujet des applications web progressives, les “PWA”, avec un focus sur la cartographie embarquée. En effet, la cartographie met en jeu des volumes importants de données et requiert une attention particulière. Plutôt que cibler une plateforme, le principe d’une PWA est de s’appuyer sur les capacités du périphérique. De ce fait, un développement web unique est nécessaire et l’application adressée par une URL est consultable dans son navigateur tout en étant installable pour un fonctionnement dans une fenêtre autonome. Une fois installée, elle est accessible comme n’importe quelle application classique.

Nous avons présenté deux manières de procéder à l’embarquement et à l’exploitation des fonds de plan. Dans le premier mode, l’application récupère elle-même les tuiles de données (images ou vectorielles) et n’a donc aucune dépendance avec un système externe autre que le serveur cartographique. Dans le second mode, c’est le serveur qui prépare les données qui sont regroupées dans un fichier unique : un fichier mbtiles qui sera interrogé en SQL ou un fichier pmtiles qui nécessitera des accès directs. Dans les deux cas, il est possible de charger plusieurs gigaoctets de données en exploitant l’API Origin private file system qui a également pour avantage de proposer un espace intimement lié à l’application.

Nous avons illustré notre propos avec l’application Ceratope, développée pour le compte de notre partenaire Biotope, acteur mondial de la préservation et de la conservation de la biodiversité. Cette application permet d’organiser et harmoniser le suivi environnemental de chantiers avec un workflow simplifié par le choix de la PWA. Les chefs de projets écologues préparent les visites terrain qui peuvent se dérouler en zone blanche avec l’ensemble des données embarquées : les données métiers structurées (projets, chantiers, visites, mesures à évaluer, contacts, référentiel, etc.) mais aussi les photos des visites précédentes et les données cartographiques (emprise de chantier, secteurs, fichiers personnalisés avec analyses thématiques et fonds de plan). Sur le terrain, les informations collectées comportent l’ensemble des saisies, les dessins qualifiés et annotés, les évaluations de mesures, les photos géolocalisées et des captures de cartes qui peuvent être directement intégrées dans des comptes-rendus transmis automatiquement au client concerné par le suivi. Ce dernier a également la possibilité de suivre ses chantiers avec une vision de plus haut niveau dans un tableau de bord qui présente les indicateurs clés.

Comme chaque année, l’Afigéo met à disposition les contenus sur le site officiel et ils ne devraient pas tarder. N’hésitez pas à les consulter, car c’est une mine d’informations !

Pour terminer, je vous invite également à consulter l’atlas Cartographier l’anthropocène produit par l’IGN avec comme thème cette année “le risque inondation” et à visionner le [Replay] Jean LEVEUGLE, Grand Témoin des GeoDataDays 2025. Diplômé en géographie de l’ENS et créateur de bande dessinée de vulgarisation scientifique, il nous a dévoilé les coulisses de la réalisation de l’album Geographia – L’odyssée cartographique de Ptolémée, en collaboration avec Emmanuelle Vagnon, historienne au CNRS et spécialiste de l’histoire de la cartographie occidentale du Moyen Âge et de l’époque moderne. Il a notamment insisté sur l’attention particulière qu’il a portée à la narration scientifique en nous révélant quelques astuces et son fil conducteur, l’humour, et évoqué la controverse scientifique sur les projections, “La manière de représenter le monde, la manière de déplier une sphère pour en faire un truc plat”.

# Sortie de PostgreSQL 18

Écrit par Aurélien Morlé

Nous vous en parlions dans un article précédent, mais cette fois-ci la version est sortie sur les canaux de distribution stable le 25 septembre. 

Pour ma part, je voulais surtout faire un focus sur les nouveautés accessibles aux développeurs, à savoir : 

PostgreSQL 18 introduit les colonnes générées virtuelles dont les valeurs sont calculées à la requête, et non stockées. À partir de cette version, il s’agit du comportement par défaut pour les colonnes générées. 

Cette version ajoute la possibilité d’accéder à la fois aux valeurs précédentes (OLD) et courantes (NEW) dans la clause RETURNING pour les commandes INSERT, UPDATE, DELETE et MERGE.

PostgreSQL 18 propose également la génération de UUIDv7 au travers de la fonction uuidv7() autorisant l’utilisateur à générer des UUIDs aléatoires ordonnés dans le temps, ce qui permet la mise en œuvre de meilleures stratégies de cache. Cela peut sembler assez insignifiant comme cela, mais ça ouvre bon nombre de possibilités afin d’extraire la date, je vous conseille un excellent article sur le sujet qui avait été présenté au PG day France 2025 par Florent Jardin. 

PostgreSQL 18 ajoute des contraintes temporelles, — contraintes sur intervalles — à la fois pour les contraintes PRIMARY KEY et UNIQUE en utilisant la clause WITHOUT OVERLAPS, et sur les contraintes FOREIGN KEY en utilisant la clause PERIOD.