Skip to content

Releases: Project-OSRM/osrm-backend

OSRM v5.18.0

10 May 13:08

Choose a tag to compare

Changes from 5.17.0:

  • Features:
    • ADDED: table plugin now optionally returns distance matrix as part of response #4990
    • ADDED: New optional parameter annotations for table that accepts distance, duration, or both distance,duration as values #4990
  • Infrastructure:
    • ADDED: Updated libosmium and added protozero and vtzero libraries #5037
    • CHANGED: Use vtzero library in tile plugin #4686
  • Profile:
    • ADDED: Bicycle profile now returns classes for ferry and tunnel routes. #5054
    • ADDED: Bicycle profile allows to exclude ferry routes (default to not enabled) #5054

v5.17.2

20 Apr 14:19

Choose a tag to compare

  • Changes from 5.17.0:
    • Bugfixes:
      • FIXED: Do not combine a segregated edge with a roundabout #5039

v5.17.1

20 Apr 10:50

Choose a tag to compare

  • Changes from 5.17.0:
    • Bugfixes:
      • FIXED: Do not combine a segregated edge with a roundabout #5039

v5.17.0

19 Apr 11:34

Choose a tag to compare

  • Changes from 5.16.0:
    • Bugfixes:
      • FIXED: deduplication of route steps when waypoints are used #4909
      • FIXED: Use smaller range for U-turn angles in map-matching #4920
      • FIXED: Remove the last short annotation segment in trimShortSegments #4946
      • FIXED: Properly calculate annotations for speeds, durations and distances when waypoints are used with mapmatching #4949
      • FIXED: Don't apply unimplemented SH and PH conditions in OpeningHours and add inversed date ranges #4992
      • FIXED: integer overflow in DynamicGraph::Renumber #5021
    • Profile:
      • CHANGED: Handle oneways in get_forward_backward_by_key #4929
      • FIXED: Do not route against oneway road if there is a cycleway in the wrong direction; also review bike profile #4943
      • CHANGED: Make cyclability weighting of the bike profile prefer safer routes more strongly #5015
    • Guidance:
      • CHANGED: Don't use obviousness for links bifurcations #4929
      • FIXED: Adjust Straight direction modifiers of side roads in driveway handler #4929
      • CHANGED: Added post process logic to collapse segregated turn instructions #4925
      • ADDED: Maneuver relation now supports straight as a direction #4995
      • FIXED: Support spelling maneuver relation with British spelling #4950
    • Tools:
      • ADDED: osrm-routed accepts a new property --memory_file to store memory in a file on disk. #4881
      • ADDED: osrm-datastore accepts a new parameter --dataset-name to select the name of the dataset. #4982
      • ADDED: osrm-datastore accepts a new parameter --list to list all datasets loaded into memory. #4982
      • ADDED: osrm-datastore accepts a new parameter --only-metric to only reload the data that can be updated by a weight update (reduces memory for traffic updates). #5002
      • ADDED: osrm-routed accepts a new parameter --dataset-name to select the shared-memory dataset to use. #4982
    • NodeJS:
      • ADDED: OSRM object accepts a new option memory_file that stores the memory in a file on disk. #4881
      • ADDED: OSRM object accepts a new option dataset_name to select the shared-memory dataset. #4982
    • Internals
      • CHANGED: Updated segregated intersection identification #4845 #4968
      • REMOVED: Remove .timestamp file since it was unused #4960
    • Documentation:
      • ADDED: Add documentation about OSM node ids in nearest service response #4436
    • Performance
      • FIXED: Speed up response time when lots of legs exist and geojson is used with steps=true #4936
      • FIXED: Return iterators instead of vectors in datafacade_base functions #4969
    • Misc:
      • ADDED: expose name for datasource annotations as metadata #4973

v5.16.4: - Changes from 5.16.3:

18 Mar 12:18
0a1418c

Choose a tag to compare

  • Bugfixes:
    • FIXED: Properly calculate annotations for speeds, durations and distances when waypoints are used with mapmatching #4949

OSRM v5.14.2

18 Dec 17:21

Choose a tag to compare

  • Bugfixes:
    • FIXED #4727: Erroring when a old .core file is present.
    • FIXED #4642: Update checks for EMPTY_NAMEID to check for empty name strings
    • FIXED #4738: Fix potential segmentation fault

OSRM v5.14.1

01 Dec 15:07

Choose a tag to compare

  • Changes from 5.14.0

    • Bugfixes:
      • FIXED: don't use removed alternative candidates in filterPackedPathsByCellSharing
  • Changes from 5.13

    • API:
      • ADDED: new RouteStep property driving_side that has either "left" or "right" for that step
    • Misc:
      • ADDED: Bundles a rough (please improve!) driving-side GeoJSON file for use with osrm-extract --location-dependent-data data/driving_side.geojson
      • CHANGED: Conditional turn parsing is disabled by default now
      • ADDED: Adds a tool to analyze turn instruction generation in a dataset. Useful for tracking turn-by-turn heuristic changes over time.
      • CHANGED: Internal refactoring of guidance code as a first step towards a re-runnable guidance pipeline
      • ADDED: Now publishing Node 8.x LTS binary modules
    • Profile:
      • CHANGED: Remove dependency on turn types and turn modifier in the process_turn function in the car.lua profile. Guidance instruction types are not used to influence turn penalty anymore so this will break backward compatibility between profile version 3 and 4.
    • Guidance:
      • ADDED: New internal flag on "segregated intersections" - in the future, will should allow collapsing of instructions across complex intersection geometry where humans only perceive a single maneuver
      • CHANGED: Decrease roundabout turn radius threshold from 25m to 15m - adds some "exit the roundabout" instructions for moderately sized roundabouts that were being missed previously
    • Docker:
      • CHANGED: switch to alpine 3.6, and use a multistage build to reduce image size
    • Build:
      • FIX: use LUA_LIBRARY_DIRS to propertly detect Lua on all platforms
    • Docs:
      • FIX: clarify description of roundabout exit instructions
    • Bugfixes:
      • FIXED: Fix bug where merge instructions got the wrong direction modifier (PR #4670)
      • FIXED: Properly use the profile.properties.left_hand_driving property, there was a typo that meant it had no effect
      • FIXED: undefined behaviour when alternative candidate via node is same as source node (#4691)
      • FIXED: ensure libosrm.pc is pushed to the correct location for pkgconfig to find it on all platforms
      • FIXED: don't consider empty names + empty refs as a valid name for u-turns

OSRM v5.13.0

01 Nov 13:51

Choose a tag to compare

5.13.0

This release has some exciting new features: We know have relation support in the lua profiles, and support using location dependent data. In addition to that we deprecated CoreCH, since MLD is superior.

  • Changes from 5.12:
    • Profile:
      • Append cardinal directions from route relations to ref fields to improve instructions; off by default see profile.cardinal_directions
      • Support of distance weight in foot and bicycle profiles
      • Support of relations processing
      • Added way:get_location_tag(key) method to get location-dependent tags https://github.com/Project-OSRM/osrm-backend/wiki/Using-location-dependent-data-in-profiles
      • Added forward_ref and backward_ref support
      • Left-side driving mode is specified by a local Boolean flag is_left_hand_driving in ExtractionWay and ExtractionTurn
      • Support literal values for maxspeeds in NO, PL and ZA
    • Infrastructure:
      • Lua 5.1 support is removed due to lack of support in sol2 ThePhD/sol2#302
      • Fixed pkg-config version of OSRM
      • Removed .osrm.core file since CoreCH is deprecated now.
    • Tools:
      • Because of boost/program_options#32 with boost 1.65+ we needed to change the behavior of the following flags to not accept ={true|false} anymore:
        • --use-locations-cache=false becomes --disable-location-cache
        • --parse-conditional-restrictions=true becomes --parse-conditional-restrictions
        • The deprecated options --use-level-cache and --generate-edge-lookup
    • Bugfixes:
      • Fixed #4348: Some cases of sliproads pre-processing were broken
      • Fixed #4331: Correctly compute left/right modifiers of forks in case the fork is curved.
      • Fixed #4472: Correctly count the number of lanes using the delimter in turn:lanes tag.
      • Fixed #4214: Multiple runs of osrm-partition lead to crash.
      • Fixed #4348: Fix assorted problems around slip roads.
      • Fixed #4420: A bug that would result in unnecessary instructions, due to problems in suffix/prefix detection
    • Algorithm
      • Deprecate CoreCH functionality. Usage of CoreCH specific options will fall back to using CH with core_factor of 1.0
      • MLD uses a unidirectional Dijkstra for 1-to-N and N-to-1 matrices which yields speedup.

OSRM v5.12.0

04 Oct 17:42
9912b26

Choose a tag to compare

This release brings some exciting new changes. On the guidance front we now emit additional exit roundabout and exit rotary instructions for roundabouts.
There is now an option to exclude certain road classes at runtime using the exclude= HTTP/Node option. By default we support exclude=motorway, exclude=toll and exclude=ferry in the car.lua profile. Keep in mind that each additional exclude combination impact the pre-processing and memory usage. This option is available both for CH and MLD.

  • Guidance
    • now announcing turning onto oneways at the end of a road (e.g. onto dual carriageways)
    • Adds new instruction types at the exit of roundabouts and rotaries exit roundabout and exit rotary.
  • HTTP:
    • New query parameter for route/table/match/trip plugings:
      exclude= that can be used to exclude certain classes (e.g. exclude=motorway, exclude=toll).
      This is configurable in the profile.
  • NodeJS:
    • New query option exclude for the route/table/match/trip plugins. (e.g. exclude: ["motorway", "toll"])
  • Profile:
    • New property for profile table: excludable that can be used to configure which classes are excludable at query time.
    • New optional property for profile table: classes that allows you to specify which classes you expect to be used.
      We recommend this for better error messages around classes, otherwise the possible class names are infered automatically.
  • Traffic:
    • If traffic data files contain an empty 4th column, they will update edge durations but not modify the edge weight. This is useful for
      updating ETAs returned, without changing route selection (for example, in a distance-based profile with traffic data loaded).
  • Infrastructure:
    • New file .osrm.cell_metrics created by osrm-customize.
  • Debug tiles:
    • Added new properties type and modifier to turns layer, useful for viewing guidance calculated turn types on the map

OSRM v5.11.0

17 Aug 22:14
1cd1d18

Choose a tag to compare

Fresh off the press is OSRM 5.11.0.

The main new feature in this release is support for conditional turn restrictions that use ways as the via elements. Via-way turn restrictions also now work when there is a traffic-light node on the via way.

There were also a collection of guidance improvements, and several cleanups to the build system (the API docs are now buildable again, we don't crash GCC6, and various Visual Studio problems were corrected).

Full Changelog