Releases: HSLdevcom/OpenTripPlanner
Releases · HSLdevcom/OpenTripPlanner
14.4.2026
Digitransit OTP Release Summary
Changelog 20260311 vs 20260414
Custom changes
- Support for coordinate visit via locations in access, egress and direct routing
Added PRs
- Add select/not filters to estimatedCalls in Transmodel #7305
- Cleanup regular transfer build parameters #7425
- Add CostlyAssertions feature that should be turned off in production and improve performance of via routing with coordinates #7301
- Added carpooling as an access/egress mode #7341
- Cache TransferIndexGenerator results to skip redundant regeneration #7355
- Improve compatibility with Swiss NeTEx data #7427
- fix: Introduce stable order for fareZones (tariffZones) #7434
- Prevent long routes mistakenly getting grouped across service-date #7452
- Migrate away from deprecated FeedScopedId.parse() #7457
- Expose GTFS feed version in the GTFS GraphQL API #7445
- Fix MC Raptor Pareto comparator performance regression #7440
- Use A* traversal distance for flex access/egress #7490
- Update to Java 25 #7246
- Add distance for stop-to-stop shapes,
PointsOnLinkin Transmodel API #6982 - Support
DestinationDisplayfor SIRIRecordedCall#7007 - Add transit service validity dates and CPU cores to GraphQL ServerInfo and transitInfo #6996
- Fix missing transfers #7042
- Add Transmodel
carpoolstreet mode #7084 - Add native scooter preference parameters to TransModel GraphQL API #7035
- Support
gml:LineStringformat with list ofgml:poselements #7135 - Add Route/Trip/TripOnServiceDate replacement to query APIs #7126
- Allow missing arrival time on the first stop in a GTFS-RT TripUpdate #7245
- Support for SIRI ArrivalStatus.ARRIVED on EstimatedCalls #7299
- Mark RecordedCall without ActualDepartureTime as not departed #7336
- Reject SIRI messages with missing Order attribute on calls #7324
- Add running days to flex routing #7281
- Fix booking time calculation for multi-day flex trip searches #7255
- Fix empty string handling for
banned.routesandbanned.agenciesin GTFS API #7340 - Improve stop connectivity check #7375
- Infer vehicle position's service date for ADDED trip #7179
- Fix walk steps for escalators leading directly to a station entrance #7361
- Reduce Raptor on-board optimal set by using strict less-than for tripSortIndex #7417
- fix: Return NO_TRANSIT_CONNECTION_IN_SEARCH_WINDOW when transit search finds no trips #7398
- Fix findTripTimesOnDate filters using wrong route mode and applying filters after limit #7408
11.3.2026
Digitransit OTP Release Summary
Changelog 20251106 vs 20260311
Custom changes
- Fix for subway entrance not showing up
Added PRs
- Multiplicative stairs and turn reluctance #6783
- Update contribution guidelines #6869
- Add estimated calls on same service and day in Transmodel API #6930
- Debug UI: Fix/enforce up to date package lock #6959
- Debug client itinerary compare #6882
- doc: add CLAUDE.md file #6939
- Correctly parse GTFS-Flex
priorNoticePeriod#6941 - Reduce graph size when processing turn restrictions #6908
- Allow refetching legs for trips with changed calling pattern #6902
- Use GBFS 3 manifest for feed discovery in rental service directory #6900
- Gracefully handle exceptions during GBFS updater setup #6954
- Fix RAPTOR data generation for additional search days in the past #6958
- Fix strange detours when street leg starts from the boundary of an area #6970
- Add
bikesAllowedStopMaxTransferDurationto build config to limit bike transfers #6787 - Crosswalk naming #6918
- Add distance for stop-to-stop shapes, PointsOnLink in Transmodel API #6982
- Support DestinationDisplay for SIRI RecordedCall #7007
- Fix duplicates in paging due to cost truncation in token #6973
- Added transit service validity dates and CPU cores to GraphQL ServerInfo and transitInfo #6996
- SIRI-ET updater via MQTT #6851
- Support for ETag and If-Not-Modified in GBFS updater #6963
- Visualize elevator edges and vertices in Debug UI #6885
- Check for NO_VALUE when mapping GTFS booking rules #7029
- Make
railway=platform_edgea boarding location #7037 - Upgrade to GraphiQL 5 #7025
- Add paging departure-time window fields to Transmodel API metadata #6975
- Fix duplicate labels for elevator vertices #7048
- Add a map popup to select from multiple features if they are overlapping #6928
- Don't fail the whole search if direct, flex or transit search generates a routing validation exception #7051
- Fix missing transfers #7042
- Fix coordinate fallback when linking locations in the street graph #7056
- Handle barrier entrances correctly #7067
- Fix default via vertex name translation mapping #7046
- To fix arriveBy searches always set arriveBy property to false in transfer requests #7089
- Improve handling of realtime updated StopPatterns #6909
- Refactor
ElevatorProcessorand add tests for elevators #7079 - Add Transmodel
carpoolstreetMode #7084 - Add information to GraphQL schemas about if a place in an itinerary is a via location #7090
- Fix NeTEx graph builder crash on duplicate StopPointInJourneyPattern #7092
- Propulsion type aware bike and scooter routing #7098
- Add support for the snow and ice NeTEx transport mode #7114
- Improve GTFS-RT backwards earliness propagation when update starts with
NO_DATA#7106 - Add native scooter preference parameters to TransModel GraphQL API #7035
- Normalize ServiceJourney/DatedServiceJourney ID prefixes in SIRI updates #7128
- Add information about the use of elevators, escalators, and stairs to queries with steps in the GTFS GraphQL API #6897
- Support gml:LineString format with list of gml:pos elements #7135
- Add Entur specific link on Emission type in transmodel API #7148
- Simplify handling of safety values #6767
- Change elevator cost calculation, add
reluctancefor elevators, and deprecateelevatorHopCost#7111 - Fix elevator ways with multiple intersection nodes #7181
- Improve indoor routing information in debug UI #7174
- Clear timetables after withdrawn NEW trips #6280
- Undeprecate car/bikepark nearest filters which were deprecated by accident #7209
- Fix SIRI-SX affects resolver #7210
- Add support for via-location visits in Raptor access and egress paths #7101
- Fix car routing using stations or multi-modal stations as locations #7151
- Add modes filter and totalCount to the canceled trips query in the GTFS API #7200
- Make sure flex transfers are indexed exactly once #7218
- Fix SIRI ET ExtraJourney trips not appearing in departure/arrival boards #7052
- Add
CarRequestto cache key inRaptorRequestTransferCache#7194 - Add booking time parameter to the GTFS API #7221
- Add HTTP response time metric #7133
- Add second criteria to the Raptor heuristics #7165
- Add Route/Trip/TripOnServiceDate replacement to query apis #7126
- Make filters for the canceled trips query in the GTFS API a list #7235
- Allow setting
maxThreadslower thanMIN_THREADSwhen using parameter #7224 - Allow missing arrival time on the first stop in a GTFS RT Trip Update #7245
- Direct transit search #7145
- Add ability to start a Raptor search from on-board a trip in MC range raptor #7241
- Change
@timingDataannotations in GTFS GraphQL API #7261 - Account for DST and multi-day trips in departure boards #7250
- Add publiccode.yml for OpenTripPlanner #7212
- Expose boolean extraCall field on EstimatedCall in Transmodel API #7272
- Fix mapping of
banned.tripin GTFS API #7288 - Add trip's
carsAllowedproperty to GTFS GraphQL API #7282 - Use only the closest vertices for each mode when linking with multiple street modes to improve performance [opentripplanner#7309](https://gith...
9.12.2025
- Pull from upstream
- Bug fix: entrances correctly allow barrier pass through
6.11.2025
- New changes pulled from upstream
- Bug fix: indoor car routing is no longer allowed by default
30.9.2025
- New changes pulled from upstream
- Fix incorrect speed tram icon and color in HSL routing
31.8.2025
OTP features required by digitransit UI release 1.9.2025 (new filter API, map layer update)
26.8.2025
- Improved performance of trip updates
11.8.2025
- Improved support for GraphQL metrics
- New upstream changes (no API changes)
8.6.2025
- Searching later or earlier itineraries no longer skips valid itineraries
- Turn restrictions no longer confuse car routing
- Pull from upstream
26.5.2025 custom release
This release is based on the release 1st April. Java version has been upgraded to OpenJdk@24.