Graphhopper v3.0 Release Notes

Release Date: 2021-05-17 // almost 3 years ago
    • ✂ removed the stable tag (was pointing to commit dd2c20c763e4c19b701e92386432b37713cd8dc5)
    • 🛠 fix location lookup with point hints for curved roads, #2319
    • custom_model_file only accepts file names without path. Use custom_model_folder instead.
    • 🚚 the load method in GraphHopperWeb (client-hc) was removed
    • 👍 routing.ch.disabling_allowed and routing.lm.disabling_allowed configuration options are no longer supported
    • 🚚 moved the graphhopper-reader-osm module into core, use the graphhopper-core module directly instead. GraphHopperOSM is deprecated, use GraphHopper instead.
    • subnetwork removal has changed and for every LocationIndex lookup one needs to explicitly include the new 'subnetwork' EncodedValue, see #2290
    • 0️⃣ DefaultEdgeFilter was renamed to AccessFilter. Use DefaultSnapFilter for the location lookup to make sure the query points do not snap to subnetworks. Previously subnetwork edges' access was set to zero, but this is no longer the case. Now subnetworks need to be identified by the subnetwork encoded value.
    • 🚚 moved the graphhopper-isochrone module into graphhopper-core
    • ✂ removed setEncodingManager use setProfiles instead or for more custom requirements use GraphHopper.getEncodingManagerBuilder
    • CustomWeighting language breaks old format but is more powerful and easier to read; it also allows factors >1 for server-side CustomModels
    • 📇 renamed GHUtilities.setProperties to setSpeed
    • 👀 Helper.createFormatter is using the ENGLISH Locale instead of UK, see #2186
    • the name of an encoded value can only contain lower letters, underscore or numbers. It has to start with a lower letter
    • 🔀 default for GraphHopperMatrixWeb (client for Matrix API) is now the sync POST request without the artificial polling delay in most cases
    • 🔨 refactored TransportationMode to better reflect the usage in source data parsing only
    • customizable routing is included in the endpoint /route (under the "custom_model" entry) and does not need to be enabled
    • 👀 the format of customizable routing completely changed but the maps demo includes a simple editor to learn it easily (#2239). See #2209 and #2251. See examples in this blog post: https://www.graphhopper.com/blog/2020/05/31/examples-for-customizable-routing/
    • ✂ removed Dockerfile
    • the second argument of the VirtualEdgeIteratorState constructor is now an edge key (was an edge id before)
    • ✂ removed instruction annotations(cycleway, off_bike, ford, ferry, private, toll)
    • the boundaries file is now expected to provide the countrycodes via the ISO3166-1:alpha3 property