2016-09-28 03:34:10 -04:00
# 5.5.0
2016-09-28 03:40:25 -04:00
- Changes from 5.4.0
2016-10-18 16:20:42 -04:00
- API:
- `osrm-datastore` now accepts the parameter `--max-wait` that specifies how long it waits before aquiring a shared memory lock by force
- Shared memory now allows for multiple clients (multiple instances of libosrm on the same segment)
2016-11-07 15:11:21 -05:00
- Polyline geometries can now be requested with precision 5 as well as with precision 6
2016-09-28 03:06:44 -04:00
- Profiles
2016-11-17 12:21:15 -05:00
- the car profile has been refactored into smaller functions
- get_value_by_key() is now guaranteed never to return empty strings, nil is returned instead.
- debug.lua was added to make it easier to test/develop profile code.
2016-11-17 14:44:59 -05:00
- `car.lua` now depends on lib/set.lua and lib/sequence.lua
2016-09-09 06:34:04 -04:00
- `restrictions` is now used for namespaced restrictions and restriction exceptions (e.g. `restriction:motorcar=` as well as `except=motorcar` )
2016-09-28 03:06:44 -04:00
- replaced lhs/rhs profiles by using test defined profiles
2016-10-08 12:14:35 -04:00
- Handle `oneway=alternating` (routed over with penalty) separately from `oneway=reversible` (not routed over due to time dependence)
2016-10-19 11:45:04 -04:00
- Handle `destination:forward` , `destination:backward` , `destination:ref:forward` , `destination:ref:backward` tags
- Properly handle destinations on `oneway=-1` roads
2016-09-29 04:26:04 -04:00
- Guidance
- Notifications are now exposed more prominently, announcing turns onto a ferry/pushing your bike more prominently
2016-08-17 03:49:19 -04:00
- Improved turn angle calculation, detecting offsets due to lanes / minor variations due to inaccuracies
- Corrected the bearings returned for intermediate steps - requires reprocessing
- Improved turn locations for collapsed turns
2016-09-28 04:51:21 -04:00
- Trip Plugin
- changed internal behaviour to prefer the smallest lexicographic result over the largest one
2016-09-29 05:55:36 -04:00
- Bugfixes
- fixed a bug where polyline decoding on a defective polyline could end up in out-of-bound access on a vector
2016-09-30 05:44:19 -04:00
- fixed compile errors in tile unit-test framework
2016-10-20 06:15:36 -04:00
- fixed a bug that could result in inconsistent behaviour when collapsing instructions
2016-11-02 18:59:35 -04:00
- fixed a bug that could result in crashes when leaving a ferry directly onto a motorway ramp
2016-11-11 06:16:13 -05:00
- fixed a bug in the tile plugin that resulted in discovering invalid edges for connections
2016-09-30 08:33:43 -04:00
- Debug Tiles
- Added support for turn penalties
2016-11-11 08:54:12 -05:00
- Internals
- Internal/Shared memory datafacades now share common memory layout and data loading code
2016-11-10 19:19:21 -05:00
- Misc
- Progress indicators now print newlines when stdout is not a TTY
2016-09-28 03:06:44 -04:00
2016-11-07 09:53:14 -05:00
# 5.4.3
2016-11-08 17:38:15 -05:00
- Changes from 5.4.2
2016-11-07 09:53:14 -05:00
- Bugfixes
- #3254 Fixed a bug that could end up hiding roundabout instructions
2016-11-08 06:52:15 -05:00
- #3260 fixed a bug that provided the wrong location in the arrival instruction
2016-11-07 09:53:14 -05:00
2016-10-11 04:32:55 -04:00
# 5.4.2
- Changes from 5.4.1
- Bugfixes
- #3032 Fixed a bug that could result in emitting `invalid` as an instruction type on sliproads with mode changes
2016-10-19 05:18:10 -04:00
- #3085 Fixed an outdated assertion that could throw without a cause for concern
2016-10-26 12:53:16 -04:00
- #3179 Fixed a bug that could trigger an assertion in TurnInstruciton generation
2016-10-11 04:32:55 -04:00
2016-10-10 07:54:06 -04:00
# 5.4.1
- Changes from 5.4.0
- Bugfixes
- #3016: Fixes shared memory updates while queries are running
2016-06-24 10:06:45 -04:00
# 5.4.0
2016-09-16 02:45:08 -04:00
- Changes from 5.3.0
2016-06-24 10:06:45 -04:00
- Profiles
- includes library guidance.lua that offers preliminary configuration on guidance.
2016-07-26 15:44:17 -04:00
- added left_hand_driving flag in global profile properties
2016-09-06 12:07:00 -04:00
- modified turn penalty function for car profile - better fit to real data
2016-09-05 09:01:51 -04:00
- return `ref` and `name` as separate fields. Do no use ref or destination as fallback for name value
2016-09-21 05:48:50 -04:00
- the default profile for car now ignores HOV only roads
2016-07-08 04:44:49 -04:00
- Guidance
- Handle Access tags for lanes, only considering valid lanes in lane-guidance (think car | car | bike | car)
2016-09-21 06:45:59 -04:00
- Improved the detection of non-noticeable name-changes
2016-09-30 04:26:46 -04:00
- Summaries have been improved to consider references as well
2016-07-25 06:51:21 -04:00
- API:
- `annotations=true` now returns the data source id for each segment as `datasources`
2016-07-14 09:05:46 -04:00
- Reduced semantic of merge to refer only to merges from a lane onto a motorway-like road
2016-09-05 09:01:51 -04:00
- new `ref` field in the `RouteStep` object. It contains the reference code or name of a way. Previously merged into the `name` property like `name (ref)` and are now separate fields.
2016-08-22 12:46:37 -04:00
- Bugfixes
- Fixed an issue that would result in segfaults for viaroutes with an invalid intermediate segment when u-turns were allowed at the via-location
2016-08-31 09:22:36 -04:00
- Invalid only_* restrictions could result in loss of connectivity. As a fallback, we assume all turns allowed when the restriction is not valid
2016-09-05 04:08:52 -04:00
- Fixed a bug that could result in an infinite loop when finding information about an upcoming intersection
2016-09-02 09:49:25 -04:00
- Fixed a bug that led to not discovering if a road simply looses a considered prefix
2016-09-05 10:23:30 -04:00
- BREAKING: Fixed a bug that could crash postprocessing of instructions on invalid roundabout taggings. This change requires reprocessing datasets with osrm-extract and osrm-contract
2016-09-02 08:06:38 -04:00
- Fixed an issue that could emit `invalid` as instruction when ending on a sliproad after a traffic-light
- Fixed an issue that would detect turning circles as sliproads
2016-09-07 09:51:14 -04:00
- Fixed a bug where post-processing instructions (e.g. left + left -> uturn) could result in false pronunciations
2016-09-08 11:19:48 -04:00
- Fixes a bug where a bearing range of zero would cause exhaustive graph traversals
2016-09-12 18:14:50 -04:00
- Fixes a bug where certain looped geometries could cause an infinite loop during extraction
2016-09-13 07:17:18 -04:00
- Fixed a bug where some roads could be falsly identified as sliproads
2016-09-13 12:57:28 -04:00
- Fixed a bug where roundabout intersections could result in breaking assertions when immediately exited
2016-09-12 05:47:22 -04:00
- Infrastructure:
- Adds a feature to limit results in nearest service with a default of 100 in `osrm-routed`
2016-06-24 10:06:45 -04:00
2016-07-19 06:24:32 -04:00
# 5.3.0
2016-09-16 02:45:08 -04:00
- Changes from 5.3.0-rc.3
2016-07-18 05:24:41 -04:00
- Guidance
- Only announce `use lane` on required turns (not using all lanes to go straight)
2016-07-21 08:34:32 -04:00
- Moved `lanes` to the intersection objects. This is BREAKING in relation to other Release Candidates but not with respect to other releases.
2016-07-19 06:24:32 -04:00
- Bugfixes
- Fix BREAKING: bug that could result in failure to load 'osrm.icd' files. This breaks the dataformat
2016-07-21 10:36:00 -04:00
- Fix: bug that results in segfaults when `use lane` instructions are suppressed
2016-07-19 06:24:32 -04:00
2016-09-16 02:45:08 -04:00
- Changes form 5.2.7
2016-07-22 07:57:28 -04:00
- API
- Introduces new `TurnType` in the form of `use lane` . The type indicates that you have to stick to a lane without turning
- Introduces `lanes` to the `Intersection` object. The lane data contains both the markings at the intersection and a flag indicating if they can be chosen for the next turn
- Removed unused `-s` from `osrm-datastore`
- Guidance
- Only announce `use lane` on required turns (not using all lanes to go straight)
- Improved detection of obvious turns
- Improved turn lane detection
- Reduce the number of end-of-road instructions in obvious cases
- Profile:
- bicycle.lua: Surface speeds never increase the actual speed
- Infrastructure
- Add 32bit support
- Add ARM NEON/VFP support
- Fix Windows builds
- Optimize speed file updates using mmap
- Add option to disable LTO for older compilers
- BREAKING: The new turn type changes the turn-type order. This breaks the **data format** .
- BREAKING: Turn lane data introduces two new files (osrm.tld,osrm.tls). This breaks the fileformat for older versions.
- Bugfixes:
- Fix devide by zero on updating speed data using osrm-contract
2016-07-13 15:57:07 -04:00
# 5.3.0 RC3
2016-09-16 02:45:08 -04:00
- Changes from 5.3.0-rc.2
2016-07-13 15:57:07 -04:00
- Guidance
- Improved detection of obvious turns
- Improved turn lane detection
- Bugfixes
- Fix bug that didn't chose minimal weights on overlapping edges
2016-07-04 10:31:30 -04:00
2016-06-28 07:22:33 -04:00
# 5.3.0 RC2
2016-09-16 02:45:08 -04:00
- Changes from 5.3.0-rc.1
2016-07-13 15:57:07 -04:00
- Bugfixes
- Fixes invalid checks in the lane-extraction part of the car profile
2016-06-28 07:22:33 -04:00
# 5.3.0 RC1
2016-05-13 13:18:00 -04:00
- API
- Introduces new `TurnType` in the form of `use lane` . The type indicates that you have to stick to a lane without turning
2016-06-15 08:38:24 -04:00
- Introduces lanes to the route response. The lane data contains both the markings at the intersection and a flag indicating their involvement in the turn
2016-05-13 13:18:00 -04:00
- Infrastructure
- BREAKING: The new turn type changes the turn-type order. This breaks the **data format** .
2016-06-30 04:39:05 -04:00
- BREAKING: Turn lane data introduces two new files (osrm.tld,osrm.tls). This breaks the fileformat for older versions.
2016-05-13 13:18:00 -04:00
2016-06-22 16:25:22 -04:00
# 5.2.5
- Bugfixes
- Fixes a segfault caused by incorrect trimming logic for very short steps.
2016-06-21 08:37:20 -04:00
# 5.2.4
- Bugfixes:
- Fixed in issue that arised on roundabouts in combination with intermediate intersections and sliproads
2016-06-17 05:00:17 -04:00
# 5.2.3
- Bugfixes:
- Fixed an issue with name changes in roundabouts that could result in crashes
2016-06-13 15:59:42 -04:00
# 5.2.2
2016-06-13 12:01:04 -04:00
Changes from 5.2.1
- Bugfixes:
- Buffer overrun in tile plugin response handling
# 5.2.1
Changes from 5.2.0
- Bugfixes:
- Removed debug statement that was spamming the console
2016-06-13 15:59:42 -04:00
2016-06-13 11:27:53 -04:00
# 5.2.0
2016-06-13 12:01:04 -04:00
Changes from 5.2.0 RC2
2016-06-13 11:27:53 -04:00
- Bugfixes:
- Fixed crash when loading shared memory caused by invalid OSM IDs segment size.
- Various small instructions handling fixes
Changes from 5.1.0
- API:
- new parameter `annotations` for `route` , `trip` and `match` requests. Returns additional data about each
coordinate along the selected/matched route line per `RouteLeg` :
- duration of each segment
- distance of each segment
- OSM node ids of all segment endpoints
- Introducing Intersections for Route Steps. This changes the API format in multiple ways.
- `bearing_before` /`bearing_after` of `StepManeuver` are now deprecated and will be removed in the next major release
- `location` of `StepManeuvers` is now deprecated and will be removed in the next major release
- every `RouteStep` now has property `intersections` containing a list of `Intersection` objects.
- Support for destination signs. New member `destinations` in `RouteStep` , based on `destination` and `destination:ref`
- Support for name pronunciations. New member `pronunciation` in `RouteStep` , based on `name:pronunciation`
- Profile changes:
- duration parser now accepts P[n]DT[n]H[n]M[n]S, P[n]W, PTHHMMSS and PTHH:MM:SS ISO8601 formats.
- `result.destinations` allows you to set a way's destinations
- `result.pronunciation` allows you to set way name pronunciations
- `highway=motorway_link` no longer implies `oneway` as per the OSM Wiki
- Infrastructure:
- BREAKING: Changed the on-disk encoding of the StaticRTree to reduce ramIndex file size. This breaks the **data format**
- BREAKING: Intersection Classification adds a new file to the mix (osrm.icd). This breaks the fileformat for older versions.
- Better support for osrm-routed binary upgrade on the fly [UNIX specific]:
- Open sockets with SO_REUSEPORT to allow multiple osrm-routed processes serving requests from the same port.
- Add SIGNAL_PARENT_WHEN_READY environment variable to enable osrm-routed signal its parent with USR1 when it's running and waiting for requests.
- Disable http access logging via DISABLE_ACCESS_LOGGING environment variable.
- Guidance:
- BREAKING: modifies the file format with new internal identifiers
- improved detection of turning streets, not reporting new-name in wrong situations
- improved handling of sliproads (emit turns instead of 'take the ramp')
- improved collapsing of instructions. Some 'new name' instructions will be suppressed if they are without alternative and the segment is short
- Bugfixes
- fixed broken summaries for very short routes
2016-05-26 15:29:15 -04:00
# 5.2.0 RC2
Changes from 5.2.0 RC1
2016-05-25 09:24:11 -04:00
- Guidance:
- improved handling of sliproads (emit turns instead of 'take the ramp')
2016-05-30 11:42:28 -04:00
- improved collapsing of instructions. Some 'new name' instructions will be suppressed if they are without alternative and the segment is short
2016-05-26 15:29:15 -04:00
- BREAKING: modifies the file format with new internal identifiers
- API:
2016-05-26 18:47:46 -04:00
- paramater `annotate` was renamed to `annotations` .
- `annotation` as accidentally placed in `Route` instead of `RouteLeg`
2016-06-02 09:22:56 -04:00
- Support for destination signs. New member `destinations` in `RouteStep` , based on `destination` and `destination:ref`
2016-06-02 10:35:21 -04:00
- Support for name pronunciations. New member `pronunciation` in `RouteStep` , based on `name:pronunciation`
2016-06-01 17:44:26 -04:00
- Add `nodes` property to `annotation` in `RouteLeg` containing the ids of nodes covered by the route
2016-05-26 18:47:46 -04:00
- Profile changes:
- `result.destinations` allows you to set a way's destinations
2016-06-02 10:35:21 -04:00
- `result.pronunciation` allows you to set way name pronunciations
2016-06-02 09:22:56 -04:00
- `highway=motorway_link` no longer implies `oneway` as per the OSM Wiki
2016-05-25 09:24:11 -04:00
2016-05-28 04:36:25 -04:00
- Infrastructure
2016-05-26 18:47:46 -04:00
- BREAKING: Changed the on-disk encoding of the StaticRTree to reduce ramIndex file size. This breaks the **data format**
2016-05-28 04:36:25 -04:00
2016-06-01 10:21:26 -04:00
- Bugfixes
2016-06-02 09:22:56 -04:00
- fixed broken summaries for very short routes
2016-06-01 10:21:26 -04:00
2016-05-20 12:52:00 -04:00
# 5.2.0 RC1
2016-05-11 10:15:34 -04:00
Changes from 5.1.0
2016-05-09 01:58:13 -04:00
- API:
- new parameter `annotate` for `route` and `match` requests. Returns additional data about each
coordinate along the selected/matched route line.
2016-05-18 11:53:05 -04:00
- Introducing Intersections for Route Steps. This changes the API format in multiple ways.
- `bearing_before` /`bearing_after` of `StepManeuver` are now deprecated and will be removed in the next major release
- `location` of `StepManeuvers` is now deprecated and will be removed in the next major release
- every `RouteStep` now has property `intersections` containing a list of `Intersection` objects.
2016-05-09 01:58:13 -04:00
2016-05-14 02:46:21 -04:00
- Profile changes:
- duration parser now accepts P[n]DT[n]H[n]M[n]S, P[n]W, PTHHMMSS and PTHH:MM:SS ISO8601 formats.
2016-05-18 13:16:44 -04:00
- Infrastructure:
2016-05-18 14:06:02 -04:00
- Better support for osrm-routed binary upgrade on the fly [UNIX specific]:
2016-05-18 14:07:47 -04:00
- Open sockets with SO_REUSEPORT to allow multiple osrm-routed processes serving requests from the same port.
2016-05-18 14:06:02 -04:00
- Add SIGNAL_PARENT_WHEN_READY environment variable to enable osrm-routed signal its parent with USR1 when it's running and waiting for requests.
2016-05-10 02:37:45 -04:00
- BREAKING: Intersection Classification adds a new file to the mix (osrm.icd). This breaks the fileformat for older versions.
2016-05-19 20:31:50 -04:00
- Disable http access logging via DISABLE_ACCESS_LOGGING environment
variable.
2016-05-18 13:16:44 -04:00
2016-05-11 10:15:34 -04:00
- Guidance:
- improved detection of turning streets, not reporting new-name in wrong situations
2016-04-18 07:41:19 -04:00
# 5.1.0
2016-05-04 12:05:37 -04:00
Changes with regard to 5.0.0
2016-04-18 07:41:19 -04:00
- API:
2016-05-03 07:37:41 -04:00
- added StepManeuver type `roundabout turn` . The type indicates a small roundabout that is treated as an intersection
2016-04-18 07:41:19 -04:00
(turn right at the roundabout for first exit, go straight at the roundabout...)
2016-05-03 07:37:41 -04:00
- added StepManeuver type `on ramp` and `off ramp` to distinguish between ramps that enter and exit a highway.
2016-04-22 05:31:46 -04:00
- reduced new name instructions for trivial changes
- combined multiple turns into a single instruction at segregated roads`
- Profile Changes:
- introduced a suffix_list / get_name_suffix_list to specify name suffices to be suppressed in name change announcements
2016-05-02 12:36:38 -04:00
- street names are now consistently assembled for the car, bike and walk profile as: "Name (Ref)" as in "Berlin (A5)"
2016-05-04 12:05:37 -04:00
- new `car.lua` dependency `lib/destination.lua`
- register a way's .nodes() function for use in the profile's way_function.
2016-04-18 07:41:19 -04:00
- Infrastructure
2016-05-04 12:05:37 -04:00
- BREAKING: reordered internal instruction types. This breaks the **data format**
2016-05-07 17:50:54 -04:00
- BREAKING: Changed the on-disk encoding of the StaticRTree for better performance. This breaks the **data format**
2016-05-04 12:05:37 -04:00
- Fixes:
- Issue #2310: post-processing for local paths, fixes #2310
- Issue #2309: local path looping, fixes #2309
- Issue #2356: Make hint values optional
- Issue #2349: Segmentation fault in some requests
- Issue #2335: map matching was using shortest path with uturns disabled
- Issue #2193: Fix syntax error position indicators in parameters queries
- Fix search with u-turn
- PhantomNode packing in MSVC now the same on other platforms
- Summary is now not malformed when including unnamed roads
- Emit new-name on when changing fron unanmed road to named road
2016-04-18 07:41:19 -04:00
2016-04-20 14:51:45 -04:00
# 5.0.0
2016-04-22 08:28:45 -04:00
Changes with regard 5.0.0 RC2:
2016-04-20 14:51:45 -04:00
- API:
- if `geometry=geojson` is passed the resulting geometry can be a LineString or Point
depending on how many coordinates are present.
2016-04-21 16:47:05 -04:00
- the removal of the summary field was revered. for `steps=flase` the field will always be an empty string.
2016-04-20 14:51:45 -04:00
2016-04-22 08:28:45 -04:00
Changes with regard to 4.9.1:
- API:
- BREAKING: Complete rewrite of the HTTP and library API. See detailed documentation in the wiki.
- BREAKING: The default coordinate order is now `longitude, latidue` . Exception: Polyline geometry
which follow the original Google specification of `latitdue, longitude` .
- BREAKING: Polyline geometries now use precision 5, instead of previously 6
- BREAKING: Removed GPX support
- New service `tile` which serves debug vector tiles of the road network
- Completely new engine for guidance generation:
- Support for highway ramps
- Support for different intersection types (end of street, forks, merges)
- Instruction post-processing to merge unimportant instructions
- Improved handling of roundabouts
- Tools:
- BREAKING: Renamed osrm-prepare to osrm-contract
- BREAKING: Removes profiles from osrm-contract, only needed in osrm-extract.
- Abort processing in osrm-extract if there are no snappable edges remaining.
- Added .properties file to osrm-extract ouput.
- Enables the use of multiple segment-speed-files on the osrm-contract command line
- Profile changes:
- Remove movable bridge mode
- Add `maxspeed=none` tag to car profile.
- A `side_road` tag support for the OSRM car profile.
- Fixes:
- Issue #2150: Prevents routing over delivery ways and nodes
- Issue #1972: Provide uninstall target
- Issue #2072: Disable alternatives by default and if core factor < 1.0
- Issue #1999: Fix unpacking for self-loop nodes not in core.
- Infrastructure:
- Cucumber test suit is now based on cucumber-js, removes Ruby as dependency
- Updated to mapbox/variant v1.1
- Updated to libosmium v2.6.1
- Remove GeoJSON based debugging output, replaced by debug tiles
2016-04-12 11:15:16 -04:00
# 5.0.0 RC2
2016-04-12 17:17:47 -04:00
- Profiles:
- `properties.allow_uturns_at_via` -> `properties.continue_straight_at_waypoint` (value is inverted!)
2016-04-12 11:15:16 -04:00
- API:
- Removed summary from legs property
- Disable steps and alternatives by default
- Fix `code` field: 'ok' -> 'Ok'
- Allow 4.json and 4.3.json format
- Conform to v5 spec and support "unlimited" as radiuses value.
2016-04-12 16:23:13 -04:00
- `uturns` parameter was replaced by `continue_straight` (value is inverted!)
2016-04-12 11:15:16 -04:00
- Features:
- Report progress for gennerating edge expanded edges in the edge based graph factory
- Add maxspeed=none tag to car profile.
- Optimize StaticRTree code: speedup 2x (to RC1)
- Optimize DouglasPeucker code: speedup 10x (to RC1)
- Optimize WebMercator projection: speedup 2x (to RC1)
- Bugs:
- #2195: Resolves issues with multiple includedirs in pkg-config file
- #2219: Internal server error when using the match plugin
- #2027: basename -> filename
- #2168: Report correct position where parsing failed
- #2036: Add license to storage and storage config exposed in public API
- Fix uturn detection in match plugin
- Add missing -lz to fix linking of server-tests
2016-04-02 19:07:32 -04:00
# 5.0.0 RC1
2016-02-15 19:15:34 -05:00
- Renamed osrm-prepare into osrm-contract
2016-02-14 13:36:11 -05:00
- osrm-contract does not need a profile parameter anymore
2016-04-02 19:07:32 -04:00
- New public HTTP API, find documentation [here ](https://github.com/Project-OSRM/osrm-backend/wiki/New-Server-api )
- POST support is discontinued, please use library bindings for more complex requests
- Removed timestamp plugin
- Coordinate order is now Longitude,Latitude
- Cucumber tests now based on Javascript (run with `npm test` )
- Profile API changed:
- `forward_mode` and `backward_mode` now need to be selected from a pre-defined list
- Global profile properties are now stored in a global `properties` element. This includes:
- `properties.traffic_signal_penalty`
- `properties.use_turn_restrictions`
- `properties.u_turn_penalty`
- `properties.allow_u_turn_at_via`