Releases: graphhopper/graphhopper
Releases · graphhopper/graphhopper
GraphHopper 9.1
Bug fix release: 9.0...9.1
See full details compared to previous major version 9.0 here: https://github.com/graphhopper/graphhopper/releases/tag/9.0
GraphHopper 9.0
What's Changed
- move to JDK17 by @karussell in #2827
- Remove hidden evs by @easbar in #2891
- Allow querying for arbitrary geometry in location index by @easbar in #2890
- Fix indentation by @otbutz in #2896
- Unsychronized MMapDataAccess by @karussell in #2889
- Custom max_speed_calculator by @karussell in #2903
- removed wheelchair parsers by @karussell in #2900
- Add encoded value for mountainbike route relation handling by @ratrun in #2904
- Avoid deprecated constructor by @otbutz in #2892
- Calculate min weight only when necessary by @karussell in #2909
- Simplify import hooks by @karussell in #2917
- remove graph sorting by @karussell in #2919
- Ignore via-way restrictions that share the same via-way in the same direction by @easbar in #2921
- No longer allow built-in custom model file names by @easbar in #2922
- accept external EncodedValues in custom model by @karussell in #2923
- upgrade to dropwizard 2.1.11 by @karussell in #2926
- Create leg_time/distance entries for duplicate via-points by @easbar in #2924
- Remove the name property from vehicle parsers by @easbar in #2931
- bus access by @karussell in #2913
- Automatically add encoded values and tag parsers used in custom models by @easbar in #2935
- hov_access by @karussell in #2939
- Make conditional access restrictions configurable by @karussell in #2863
- Better instructions for motorway junctions by @karussell in #2947
- Move vehicle encoded values into custom model by @karussell in #2938
- ignore instructions if directions of a road are switching between explicitly <-> implicitly tagged by @karussell in #2953
- fix Arrival Polyline by @OlafFlebbeBosch in #2958
- polyline multiplier by @karussell in #2951
- Difference between bad highways for foot by @karussell in #2956
- Improve conditional access handling by @karussell in #2965
- Add missing setup call by @otbutz in #2968
- Disable automatic addition of encoded values by @karussell in #2966
- Add support tag combinations cycleway:left and cycleway:right, fixes #2969 by @ratrun in #2970
- Restrict access to "destination" for living streets in Hungary (by law) by @Yogurt4 in #2879
- fix: support Barrier Nodes for NavigateResponse by @OlafFlebbeBosch in #2975
- higher default precision for way geometry by @karussell in #2950
- Use eight bytes for the geo ref by @karussell in #2978
New Contributors
Full Changelog: 8.0...9.0
GraphHopper 8.0
What's Changed
- Add path details for the time, distance and weight of the single legs by @easbar in #2768
- Reuse polygon bbox by @otbutz in #2685
- Make use of node tags like 'highway' or 'crossing' by @easbar in #2705
- New "backward_xy" variable notation in custom models by @karussell in #2760
- New signature for encoded values and tag parsers by @easbar in #2740
- bike profile should allow reverse oneway roads and set walking speed by @karussell in #2774
- Improve bicycle handling: Now prioritise cycleways with SLIGHT_PREFER by @ratrun in #2785
- custom_model_files arrays by @karussell in #2787
- certain conditional tags allow to ignore max_weight by @karussell in #2788
- Check cycleway access tags by @bt90 in #2786
- removed parser options block_private and block_fords by @karussell in #2780
- removed motorcycle vehicle by @karussell in #2781
- Make the MiniGraphUI working again. by @ratrun in #2793
- Prefer bicycle_road/cycleway by @bt90 in #2790
- i18n: update da_DK by @OlafFlebbeBosch in #2794
- Improve surface parser by @otbutz in #2792
- Add timeout_ms parameter for routing requests by @easbar in #2795
- Upgrade to dropwizard 2.1.6 by @karussell in #2653
- bike: differentiate between bad highways by @karussell in #2796
- Update nl and cz translations by @boldtrn in #2799
- cleanup of EnumEncodedValue by @karussell in #2800
- Add editorconfig by @otbutz in #2791
- Prefer bigger roads for racebike by @ratrun in #2802
- B-tree: Make space for values configurable by @karussell in #2814
- clarify foot access parser by @lukasalexanderweber in #2801
- De-prioritise steps for bicycles by @ratrun in #2804
- Set empty custom model in custom profile constructor by @easbar in #2821
- Try latest JDK 20 by @karussell in #2789
- Process callables GHUtility.runConcurrently in batches to save memory by @easbar in #2828
- Overhauled Moving Average Elevation Smoothing by @christophlingg in #2772
- avoid incorrect urban_density classification for the USA by @karussell in #2832
- Country subdivision (state) by @karussell in #2830
- Use ForkJoinPool for concurrent processing by @otbutz in #2833
- Remove BitUtilBig by @easbar in #2811
- default speed limits by @karussell in #2810
- Use junction density to determine road network density by @easbar in #2842
- Make car speed parser bad surfaces consistent with surface encoded value by @easbar in #2843
- Do not ignore maxspeed:forward/backward when they are larger than maxpeed by @easbar in #2844
- Use fallback speed also for ways that are neither highways nor ferries by @easbar in #2845
- Make RoadEnvironment.FERRY overrule RoadEnvironment.FORD also for node tags by @easbar in #2846
- throw error for too small speed values by @karussell in #2847
- Remove headingPenaltyMillis by @easbar in #2563
- ferry_speed encoded value by @karussell in #2849
- Use same definition for ferries for road environment and speed parsers by @easbar in #2853
- move default custom models into jar by @karussell in #2854
- No more loop edges by @easbar in #2862
- Remove Weighting#calcWeightWithAccess by @easbar in #2864
- Remove optimization in CH iterator by @easbar in #2869
- heading penalty ignored for custom weighting by @karussell in #2852
- Github packages cleanup try by @rokcarl in #2871
- Stop using DefaultTurnCostProvider for low-level testing by @easbar in #2870
- Remove edgeHasNoAccess from Weighting interface by @easbar in #2872
- Remove shortest weighting from DefaultWeightingFactory class by @karussell in #2865
- Use a different action by @rokcarl in #2876
- Fix error logging for RouteResource by @karussell in #2837
- Remove fastest weighting from DefaultWeightingFactory class by @karussell in #2866
- Remove max_turn_costs encoder parameter by @easbar in #2880
- include osm data date as road_data_timestamp in response by @karussell in #2877
- Use boolean turn restriction enc instead of decimal turn cost enc by @easbar in #2882
- Separate turn cost and edge EncodedValues by @karussell in #2884
New Contributors
- @bt90 made their first contribution in #2786
- @christophlingg made their first contribution in #2772
Full Changelog: 7.0...8.0
GraphHopper 7.0
What's Changed
- read from GeoJSON export of boundaries.osm by @karussell in #2658
- use same names for the keys in the EdgeKVStorage by @karussell in #2661
- Move curvature EncodedValue out of MotorcycleTagParser by @karussell in #2665
- deprecate graph.flag_encoders and use custom weighting in example config by @karussell in #2667
- Remove VehicleTagParser#applyWayTags by @easbar in #2669
- remove Bike2WeightTagParser by @karussell in #2668
- Provide all intersections with additional information along a route via PathDetails by @boldtrn in #2590
- Remove YAML support for server-side custom models by @karussell in #2672
- Replace old with new maps client by @easbar in #2674
- Print warnings for odd restriction relations, handle no_exit, only_u_turn and multiple from-members by @easbar in #2680
- Upgrade dropwizard to 2.0.34 by @easbar in #2682
- Improve area check precision by @otbutz in #2684
- Treat segments tagged as "lcn=yes" the same way as a bicycle route relation with "network=lcn" by @ratrun in #2693
- Add support for (single) via-way restrictions by @lukasalexanderweber and @easbar in #2689
- Replace com.wdtinc MVT library with no.ecc by @easbar in #2698
- Support ";" access delimiter for bikes by @ratrun in #2676
- Remove LegacyProfileResolver by @karussell in #2679
- Create edges even if flags are empty by @easbar in #2700
- Add OSM way ID encoded value by @easbar in #2701
- Use explicit ignore list for highway values by @easbar in #2702
- Add footway encoded value by @easbar in #2707
- Use GitHub Actions for Maven Central deployment too by @karussell in #2709
- Remove name and turn cost encoded value from vehicle tag parsers by @easbar in #2713
- distance_influence should not get a default value if no value is specified by @karussell in #2716
- make custom areas available in custom models by @karussell in #2725
- improve handling of low speed by @karussell in #2726
- Maxspeed fix by @karussell in #2727
- Test access and speed instead of just flags.isEmpty() for foot and bike parsers by @easbar in #2728
- contributing no_NO and updating pl_PL while at it by @OlafFlebbeBosch in #2730
- Moving Bokmål locale to the correct nb_NO by @OlafFlebbeBosch in #2731
- Split vehicle tag parsers into access, speed and priority by @easbar in #2738
- Use multi-threading for subnetwork preparation by @easbar in #2737
- Remove block area by @easbar in #2741
- Make sure waypoints are not removed during path simplification by @easbar in #2742
- use FeatureCollection instead of String,Feature Map by @karussell in #2734
- minor bike improvement by @karussell in #2736
- i18n: updated sv_SE by @OlafFlebbeBosch in #2748
- handle 'permit' like 'private' by @karussell in #2749
- i18n: updated tr and fix typo in nb_NO by @OlafFlebbeBosch in #2750
- Extend Heading Documentation by @lukasalexanderweber in #2714
- Make sure LM approximation is never worse than beeline by @easbar in #2756
- remove hike vehicle by @karussell in #2759
- Remove block_area (again) by @easbar in #2755
- Fix snap issue by @karussell in #2752
- fix follow up snap issue by @karussell in #2769
- Allow skipping the creation of ReaderNodes/Ways/Relations for pbfs, skip nodes in first pass of OSM import by @easbar in #2770
- Show u-turn instruction for plain u-turns by @easbar in #2767
Full Changelog: 6.0...7.0
GraphHopper 6.2
Security fix release
Download graphhopper-web-6.2.jar from maven central.
See main release for more information.
Full Changelog: 6.0...6.2
GraphHopper 6.0
What's Changed
- Replace GraphHopperStorage by BaseGraph where it is not needed by @easbar in #2540
- Replace EncodingManager with TagParserManager where it is needed by @easbar in #2541
- Load encoded values from disk by @easbar in #2542
- Remove Weighting#getFlagEncoder by @easbar in #2549
- Avoid Pattern compilation by @otbutz in #2489
- No longer allow changing profiles between imports and loads by @easbar in #2550
- Remove EncodedValueFactory by @easbar in #2551
- use sdkman and switch to most recent JDK by @karussell in #2552
- minor cleanup by @karussell in #2554
- Skip emergency access by @otbutz in #2555
- Remove TagParser#createEncodedValues by @easbar in #2559
- Fix bias in map-matching by @michaz in #2560
- allow skipping the LM constraint check for A* by @karussell in #2544
- Clean up javadoc comments by @karussell in #2569
- Stop removing elements from the priority queue, speeds up flexible algorithms by @easbar in #2571
- Split flag encoders into encoded values and tag parsers by @easbar in #2561
- Log available country rules by @otbutz in #2579
- Use more recent node/npm versions to fix the build by @easbar in #2583
- update deployment guide by @karussell in #2576
- Replace deprecated dropwizard parameter types by @otbutz in #2574
- Consistent edge keys by @easbar in #2567
- Remove 'shared' encoded values with $ sign in name by @karussell in #2585
- Matrix client improvements by @karussell in #2587
- European toll fallback rules by @otbutz in #2450
- use for loop in PathDetailsBuilderFactory by @karussell in #2589
- Make motor vehicle and hgv properties configurable for roads vehicle EVs by @easbar in #2594
- Use separate deleted flag for SPTEntry, prevent exception when calculating routes with non-feasible approximator by @easbar in #2600
- Fix inconsistent took by @boldtrn in #2591
- windows does not need a separate documentation due to WSL by @karussell in #2599
- EdgeKVStorage: store more than Strings by @karussell in #2597
- Fix bug in non-CH AlternativeRoute by @karussell in #2603
- move quickstart info into more prominent installation of README by @karussell in #2605
- Remove GraphHopperStorage by @easbar in #2606
- Find strongly-connected components of station (stop) graph by @michaz in #2608
- Load EncodingManager from properties instead of config by @easbar in #2607
- Increase maximum edge-based CH key for preparation to 2^30 again by @easbar in #2612
- custom_model: introduce value expression by @karussell in #2568
- Update custom model editor: validation + auto-complete for rhs expressions by @easbar in #2615
- Use actual speed maximum rather than flagEncoder#getMaxSpeed() for weighting.getMinWeight() by @easbar in #2614
- Rename getMin/MaxInt -> getMin/MaxStorableInt, getMaxSetValueOrMax -> getMaxOrMaxStorable by @easbar in #2616
- Remove FlagEncoder#getMaxSpeed() by @easbar in #2619
- EdgeKVStorage: store name and ref tags separately by @karussell in #2598
- Remove FlagEncoder by @easbar in #2611
- Valid if PathDetail is null by @rafaelstelles in #2618
- Support for forward & backward key value pairs by @karussell in #2622
- make global time&distance values consistent with path details and instructions by @karussell in #2626
- Include destination in instructions by @karussell in #2624
- Make profile resolving more flexible for web API by @easbar in #2629
- EdgeKVStorage: allow 32 bits by @karussell in #2632
- Add hint to exception error message by @PanCakeConnaisseur in #2638
- new edge smoothing: "ramer" by @karussell in #2634
- New average_slope EV by @karussell in #2645
- removed defaultIsInfinity and fix bug in DecimalEncodedValueImpl by @karussell in #2646
- improvements for bike by @karussell in #2631
- consider multiple from members for no_entry by @karussell in #2648
- Maps: Add slope detail to elevation diagram by @easbar in #2654
- validate that ids are not negative by @lukasalexanderweber in #2652
- replace car4wd with roads and a custom_model by @karussell in #2651
- Add urban density encoded value to identify built-up areas by @easbar in #2637
- Support ";" access delimiter for car access. by @ratrun in #2655
- Map matching no longer depends on GraphHopper class by @easbar in #2657
New Contributors
- @rafaelstelles made their first contribution in #2618
- @PanCakeConnaisseur made their first contribution in #2638
- @lukasalexanderweber made their first contribution in #2652
Full Changelog: 5.3...6.0
GraphHopper 5.3
Identical to 5.1, but because of problems with our automatic build pipeline no Maven artifacts were published for 5.1.
5.2 was just a failed attempt to fix this.
Full Changelog: 5.1...5.3
GraphHopper 5.1
- bug fixes
Full Changelog: 5.0...5.1
GraphHopper 5.0
What's Changed
- Move nodes and edges storage out of BaseGraph by @easbar in #2399
- country_rules: fix documentation in example config by @karussell in #2414
- HMM-Lib: Bump Java version to 8 by @boldtrn in #2413
- Consider heading when snapping by @karussell in #2411
- Convert
Directory#find
toDirectory#create
by @easbar in #2412 - Register country rules in a map by @otbutz in #2418
- use jdk17 ga and jdk18 ea by @karussell in #2419
- Remove small segment size optimization for sea level elevation tiles by @easbar in #2417
- Remove DataAccess#setSegmentSize by @easbar in #2421
- Don't ignore parsed access by @otbutz in #2420
- Minor improvement to avoid changing the url by @boldtrn in #2428
- Remove AbstractFlagEncoder#encoderBit by @easbar in #2434
- Ignore barrier nodes at junctions by @easbar in #2433
- Improve LMPreparationHandler logging by @otbutz in #2426
- Remove ghLocation parameter from GraphHopper#load by @easbar in #2437
- OSMReader: Keep node tags until we create edges by @easbar in #2430
- Remove byteOrder option for Directory, always use little endianess for all DataAccess by @easbar in #2442
- Split ways at junctions first by @easbar in #2444
- Snap to tower nodes when they are close by @easbar in #2446
- Fix curbside handling at barrier nodes by @easbar in #2447
- Allow CountryRules to provide fallback values for toll by @otbutz in #2164
- Store DataAccess versions in headers instead of properties file by @easbar in #2436
- Extract WaySegmentParser from OSMReader by @easbar in #2448
- DataAccess config for type and load by @karussell in #2440
- Ignore too large mtb:scale values by @easbar in #2458
- Load CH preparations in parallel by @easbar in #2455
- Create edge flags per edge instead of per way by @easbar in #2457
- Remove RoadEnvironment.SHUTTLE_TRAIN by @easbar in #2466
- Remove ferry argument from TagParser#handleWayTags by @easbar in #2468
- Use a point along the edge geometry to determine areas by @otbutz in #2472
- Use geometric center to lookup areas for ways with only two points by @otbutz in #2474
- Remove the ch.prepare.done flag and separate CH and LM profile versions by @easbar in #2475
- removes graphhopper.sh script by @karussell in #2431
- Remove acceptWay optimization by @easbar in #2471
- Improve exceptions by @otbutz in #2464
- Cover MaximumNodesExceededException with unittest by @otbutz in #2478
- Fix HashMap related flaky tests by @shunfan-shao in #2480
- signed EncodedValues by @karussell in #2473
- Remove CH from GraphHopperStorage, allow delta import of CHs by @easbar in #2481
- Remove NotThreadSafe and ProgressListener by @easbar in #2486
- Rename web/com.graphhopper.http to web/com.graphhopper.application by @easbar in #2487
- Use a fixed number of maximum visited nodes for node-based CH by @easbar in #2491
- Do not ensure write access when there are no CHs/LMs to prepare by @easbar in #2500
- broken wheelchair routing - priority and elevation improvements by @karussell in #2503
- Do not use 'week year': YYYY by @karussell in #2505
- Node out of bounds error when using average_speed path detail by @easbar in #2517
- Speed up CH for foot by @easbar in #2514
- Transfer legs by @michaz in #2519
- Improve edge-based CH import performance by @easbar in #2522
- Roads as base by @michaz in #2523
- Make speedTwoDirections final by @easbar in #2525
- matrix and route client: allow usage of request gzipping by @karussell in #2511
- Make sure encoder max speed cannot be exceeded, add DecimalEncodedValue#getNextStorableValue by @easbar in #2524
- Move handleNodeTags from EncodingManager to AbstractFlagEncoder by @easbar in #2533
- Clean up FerrySpeedCalculator, use exact edge distance by @easbar in #2528
- Improve handling of short ferries without duration tag by @easbar in #2539
- Cleanup isBarrier method, fix ford=yes and locked=yes by @easbar in #2538
- Use Weighting instead of access for turn instructions by @karussell in #2536
- Move way name parsing from EncodingManager to OSMReader by @easbar in #2537
New Contributors
- @shunfan-shao made their first contribution in #2480
Full Changelog: 4.0...5.0