Category Archives: osm.org

Le groupe de travail « Ingénierie » fait le point sur l’état d’avancement des tuiles vectorielles

Le groupe de travail sur l’ingénierie de la fondation OpenStreetMap fait le point sur les efforts déployés pour créer des tuiles vectorielles pour openstreetmap.org. Lisez la suite pour savoir pourquoi ce travail est important, ce qui a été fait jusqu’à présent et la manière dont les commentaires de la communauté sont pris en compte, ainsi que les détails techniques pour ceux qui veulent en savoir plus.

Le contexte

Actuellement, le site web openstreetmap.org propose des tuiles matricielles, qui sont des tuiles d’images composées de pixels – comme une image téléchargée d’une partie d’une carte. Mais des efforts ont été entrepris pour créer des tuiles vectorielles pour le site, ce qui permettra d’améliorer l’aspect et le fonctionnement de la carte. Pour en savoir plus sur l’historique du projet, cliquez ici.

Les tuiles vectorielles présentent les cartes sous forme de vecteurs : points, lignes et polygones. Elles stockent des données géographiques (comme celles qui composent OpenStreetMap) dans un format qui permet une mise en forme et une interactivité dynamiques. Pour les utilisateurs, les tuiles vectorielles sont synonymes d’un nouveau style de carte à l’aspect moderne, avec un zoom continu sur openstreetmap.org. La carte peut être mise à jour plus rapidement lorsque les données changent, et elle devrait être plus performante pour les utilisateurs.

À plus long terme, l’aspect le plus excitant est ce que ce projet de tuiles vectorielles rendra facile pour les volontaires et les utilisateurs de tuiles : des cartes en 3D, des mélanges et des correspondances de données plus efficaces et l’intégration d’autres ensembles de données, des styles thématiques, des cartes multilingues, des vues différentes pour les frontières administratives, des points d’intérêt interactifs, des cartes plus accessibles pour les utilisateurs malvoyants, et certainement beaucoup d’autres idées que personne n’a encore imaginées. Vous vous souviendrez peut-être que nombre d’entre elles intéressent depuis longtemps les membres de la communauté OSM.

Le projet

L’objectif du projet vectoriel est de fournir une configuration vectorielle qui puisse fonctionner pour openstreetmap.org – c’est-à-dire un site mondial de cartes de base complexes, très demandé par les utilisateurs et les services du monde entier, où les données sous-jacentes à la carte changent en permanence.

Ou, pour le dire techniquement, de créer une configuration pour une carte de base mondiale complexe soumise à une forte charge et nécessitant des mises à jour minutieuses.

Paul Norman pilote le projet de tuiles vectorielles.

Il s’efforce de compléter son projet Tilekiln qui génère des tuiles vectorielles à partir d’une base de données PostgreSQL (comme celle d’OpenStreetMap), en utilisant la fonction du modèle Shortbread, qui est un format de données permettant de nommer les couches et les propriétés d’une tuile vectorielle, et l’amélioration de Themepark, qui permet d’ajouter des données OSM à une base de données Postgres.

Le travail est divisé en trois étapes : 

1. Première série d’améliorations de Tilekiln et de Shortbread Themepark

2. Amélioration du parallélisme

3. Shortbread disponible publiquement en production

Les deux premières étapes sont presque achevées. Tilekiln génère désormais des tuiles en parallèle, ce qui permet de générer des tuiles pour le monde entier. L’étape suivante consiste à lancer le déploiement dans le serveur de l’OSMF afin de préparer la production. 

Détails techniques sur l’étape 1

Pour ceux qui s’intéressent aux détails techniques de ce qui est en cours de réalisation, la première étape ci-dessus comporte cinq éléments principaux.

        1.        Packaging automatisé de Tilekiln

        2.        Publication des métriques Tilekiln avec un exportateur Prometheus

        3.        Themepark Shortbread revu et corrigé

        4.        Mise en place d’un serveur de démonstration fonctionnant avec des mises à jour minutieuses des tuiles Shortbread, rendant les tuiles à la demande.

        5.        Démonstration présentée à la communauté

Les points 1 et 2 sont achevés sans qu’il soit nécessaire de les examiner plus avant. Pour le point 3, Paul a constaté que l’implémentation osm2pgsql Themepark Shortbread nécessitait plus de travail que prévu car il manquait une couche et présentait quelques problèmes. 

Les points 4 et 5 sont achevés. Le serveur de démonstration de Paul fonctionne avec des mises à jour constantes et les exigences matérielles sont plus modestes que prévu. 

La communauté a également fourni un retour d’information utile, notamment sur le message de Paul sur le forum communautaire OSM.

La communauté a fait de nombreuses suggestions, dont certaines ont déjà été prises en compte. Les problèmes restants de la communauté sont les suivants : le rendu des lignes courbes est irrégulier et les tuiles vectorielles sont trop grandes.

Le problème des lignes irrégulières est dû à la façon dont les courbes lisses sont représentées dans les tuiles vectorielles. Ce problème a été en grande partie résolu, mais on s’attend à ce que des problèmes similaires réapparaissent à l’avenir. Une échelle cible équivalente à l’échelle minimale de la couche de tuiles standard a été définie. Il est possible de zoomer à une échelle encore plus petite, mais des artefacts risquent d’apparaître.

La taille des tuiles vectorielles restera un problème sur lequel il faudra travailler en permanence, mais les tuiles actuelles sont particulièrement grandes. Depuis cette partie du test, des modifications ont été apportées qui ont permis de réduire la taille de moitié. L’optimisation de la taille des tuiles est une question qui nécessite un travail continu, car la taille des tuiles est le facteur le plus important dans l’expérience de l’utilisateur.

Les tuiles produites sont utilisables, mais il reste encore du travail à faire. Maintenant que le travail sur le parallélisme est terminé, il est possible de générer de grands ensembles de tuiles afin de les tester. Paul va donc se remettre à travailler sur les définitions des tuiles afin d’en améliorer la taille et de résoudre quelques problèmes restants, mais les tuiles actuelles sont utilisables.

Informations sur les outils utilisés

Voici quelques informations sur les différents outils utilisés pour ce projet.

Tilekiln est un logiciel écrit par Paul Norman pour générer des tuiles vectorielles à partir d’une base de données PostgreSQL. Les alternatives sont martin (ou peut-être t_rex). Tilekiln est en cours de développement, bien qu’il utilise de nombreuses fonctionnalités standard de PostgreSQL pour générer les données vectorielles des tuiles. La plupart des cartes basées sur OSM (y compris osm-carto sur osm.org) sont générées à partir de requêtes SQL provenant d’une base de données PostgreSQL. Tilekiln génère des tuiles vectorielles à partir de requêtes similaires.

Themepark fait partie de la suite d’outils osm2pgsql, pour permettre d’ajouter des données OSM à postgres, et de partager ces étapes de traitement entre d’autres projets. De nombreux styles de cartes OSM basés sur PostgreSQL (comme osm-carto) utilisent osm2pgsql 

osm2pgsql existe depuis plus de 15 ans dans OSM et est utilisé dans de nombreux domaines. Bien que Paul ait contribué au code, il n’en est pas le principal développeur. osm2pgsql est devenu plus avancé et meilleur au cours des dernières années. Une partie de sa force réside dans le prétraitement des données, et Themepark est une tentative de faciliter ces étapes de prétraitement.

Shortbread est un « schéma de tuiles vectorielles » créé par Geofabrik. Il s’agit d’un format de données permettant de nommer les couches et les propriétés d’une tuile vectorielle.

Ce billet contient des contributions d’Adam Hoyle, Mikel Maron, Amanda McCann, Paul Norman et Andrew Wiseman.

La Fondation OpenStreetMap est une organisation à but non lucratif, formée pour soutenir le projet OpenStreetMap. Elle se consacre à encourager la croissance, le développement et la distribution de données géospatiales gratuites que tout le monde peut utiliser et partager. La Fondation OpenStreetMap possède et entretient l’infrastructure du projet OpenStreetMap et est soutenue financièrement par les cotisations des membres et les dons, et organise la conférence internationale annuelle State of the Map (État de la carte). Nos groupes de travail bénévoles et notre petit noyau de personnel de base travaillent pour soutenir le projet OpenStreetMap. Rejoignez la Fondation OpenStreetMap pour seulement 15 £ par an ou gratuitement si vous êtes un contributeur actif d’OpenStreetMap.

Fermeture d’OAuth 1.0a et HTTP Basic Auth sur OpenStreetMap.org

En 2024, le groupe de travail OSMF Operations Working Group (OWG) retire OAuth 1.0a et HTTP Basic Auth sur OpenStreetMap.org. Il s’agit de moyens techniques permettant aux applications d’authentifier les utilisateurs auprès du site web OSM ou de l’API. OAuth 1.0a et HTTP Basic Auth sont obsolètes depuis 2023, car OAuth 2.0 est désormais la méthode d’autorisation standard pour la plupart des systèmes.

Il y a trois dates clés dans le processus de transition :

  • 1er mars 2024 : les nouveaux enregistrements d’applications OAuth 1.0a ont été désactivés. Les applications existantes n’ont pas été affectées. L’authentification de base HTTP n’a pas été affectée.
  • 1er mai 2024 : les administrateurs de système commenceront à faire des recherches pour trouver les applications qui utilisent encore OAuth 1.0a ou HTTP Basic Auth.
  • 1er juin 2024 : OAuth 1.0a et HTTP Basic Auth seront supprimés.

La suppression de ces méthodes d’authentification est nécessaire pour des raisons de sécurité et en raison de la complexité de la maintenance d’un si grand nombre d’implémentations d’autorisation, y compris celles qui reposent sur des composants non maintenus.

Quel est l’impact pour moi en tant que développeur ?

Si vous êtes développeur d’une application utilisant OAuth 1.0a ou HTTP Basic Auth pour vous connecter au site OpenStreetMap.org, vous devrez peut-être effectuer quelques changements pour passer à OAuth 2.0. Heureusement, il s’agit là d’un standard qui est largement soutenu.

Si votre application n’effectue que des appels en lecture à l’API, l’autorisation est facultative. Pour des raisons de limitation du débit, il est toujours souhaitable d’ajouter une autorisation à vos demandes, mais ce n’est pas obligatoire. Si votre application est un site web utilisant OSM pour les connexions, il est beaucoup plus facile d’utiliser OAuth 2.0, qui est beaucoup mieux pris en charge parce que de nombreux autres sites l’utilisent. Cela permet également d’éviter les problèmes liés au fait que les utilisateurs se retrouvent avec de nombreux jetons dans leur liste sur le site web.

Si vous développez un logiciel qui édite à l’aide de l’API et qui est exécuté localement, il se peut que vous deviez modifier du code. Tous les langages courants disposent de bibliothèques qui gèrent OAuth 2, et les bibliothèques sont le meilleur choix pour toute autorisation. Vous pouvez également utiliser la bibliothèque d’outils de ligne de commande de Zverik ou écrire votre propre script shell d’une douzaine de lignes.

Vous devriez pouvoir trouver en ligne de nombreux exemples d’implémentations de clients OAuth 2 dans votre langue. Si vous souhaitez obtenir des informations plus détaillées ou poser des questions techniques, veuillez utiliser le ticket GitHub. Ici, l’OWG suit également les applications nécessitant une modification pour utiliser OAuth 2.0.

Quel est l’impact pour moi en tant que cartographe ?

La plupart des cartographes ne remarqueront aucun changement. La transition n’affectera pas la façon dont vous vous connectez à votre compte OSM ou dont vous utilisez le site web. L’iD et le JOSM supportent OAuth 2.0 comme méthode d’authentification par défaut depuis un certain temps. Si vous utilisez votre compte OSM pour vous connecter à un site tiers tel que HOT Tasking Manager, MapRoulette ou HDYC, vous ne serez pas affecté, car ces sites sont déjà passés à OAuth 2.0. L’accès à l’API en lecture seule ne nécessite aucune autorisation.

Tom Hughes sur la Liste d’honneurs 2024 d’OpenUK, une récompense pour ses contributions à OpenStreetMap

OpenUK célèbre Tom Hughes comme l’un des meilleurs contributeurs open source sur sa Liste d’honneurs du Nouvel An. C’est la quatrième fois que l’organisation britannique pour les technologies ouvertes publie cette liste pour honorer les influenceurs open source à travers le Royaume-Uni.

Tom est un administrateur système OSM et l’un des mainteneurs du code openstreetmap.org. Il maintient et améliore le projet de site web depuis environ 2006. Son inclusion dans la liste d’honneur 2024 d’OpenUK est une reconnaissance bien méritée pour près de deux décennies de travail acharné en tant que bénévole.

Félicitations Tom, et merci pour ton dévouement indéfectible à OpenStreetMap !

La Fondation OpenStreetMap est une organisation à but non lucratif, formée pour soutenir le projet OpenStreetMap . Elle se consacre à encourager la croissance, le développement et la distribution de données géospatiales gratuites que tout le monde peut utiliser et partager. La Fondation OpenStreetMap possède et entretient l’infrastructure du projet OpenStreetMap et est soutenue financièrement par les cotisations des membres et les dons, et organise la conférence internationale annuelle State of the Map (État de la carte) . Nos groupes de travail bénévoles et notre petit noyau de personnel de base travaillent pour soutenir le projet OpenStreetMap. Rejoignez la Fondation OpenStreetMap pour seulement 15 £ par an ou gratuitement si vous êtes un contributeur actif d’OpenStreetMap.