Ajouts bornes de vélo « levélo » manquantes à Marseille

Bonjour,

j’ai voulu rajouter les bornes manquantes des nouveaux vélos municipaux de la ville de Marseille.
J’ai fait un mini-script pour détecter les bornes manquantes :

Script JS de diff entre OSM et données OpenData
const fs = require('fs');
const exportOsm = JSON.parse(fs.readFileSync("./export_OSM_levélo_08052023.geojson"))
const exportAmpm = JSON.parse(fs.readFileSync("./gbfs-extract-station-information.geojson"))

console.log(`OSM: ${exportOsm.features.length}`)
console.log(`AMPM: ${exportAmpm.features.length}`)

const missing = exportAmpm.features.filter((dock) => {
  const exists = exportOsm.features.find((existing) => {
    return existing.properties.name == dock.properties.name ||
      existing.properties.ref == dock.properties.ref || (
      Math.abs(existing.geometry.coordinates[0] - dock.geometry.coordinates[0]) < 0.0001 &&
        Math.abs(existing.geometry.coordinates[1] - dock.geometry.coordinates[1]) < 0.0001
    )
  })
  return !exists
})

const toImport = missing.map(dock => {
  dock.properties = {
    "amenity": "bicycle_rental",
    "bicycle_rental": "docking_station",
    "capacity": dock.properties.capacity,
    "name": dock.properties.name,
    "network": "levélo",
    "operator": "Inurba Mobility",
    "ref": dock.properties.station_id,
    "website": "https://levelo.ampmetropole.fr/"
  }

  return dock
})

console.log(toImport.length)

// convert JSON object to a string
const data = JSON.stringify({
  "type": "FeatureCollection",
  "features": toImport
})

// write file to disk
fs.writeFile('./toImport_missing_dock.geojson', data, 'utf8', err => {
  if (err) {
    console.log(`Error writing file: ${err}`)
  } else {
    console.log(`File is written successfully!`)
  }
})

Et uploadé les modifications via JOSM.

Cependant j’ai fait une erreur sur le premier changement (j’avais raté l’attribut ref avec l’ID de la station des données initiales).

Est-ce possible d’annuler un changeset sur OSM ?
J’aimerai annuler le changeset Changeset: 135845333 | OpenStreetMap au profit de celui-ci qui est correct : Changeset: 135845732 | OpenStreetMap

Merci beaucoup pour votre aide !

Il y a plusieurs propositions sur le wiki : FR:Annulation des modifications - OpenStreetMap Wiki

Le plus simple est sans doute osm-revert: https://revert.monicz.dev/

1 Like

Merci @benoitdd, c’est bon j’ai aussi nettoyé 3 doublons qui étaient passés dans les filets de mon script.

C’est tout bon.