"Fossies" - the Fresh Open Source Software Archive

Member "graphhopper-1.0/core/files/changelog.txt" (22 May 2020, 20882 Bytes) of package /linux/misc/graphhopper-1.0.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. For more information about "changelog.txt" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 1.0-pre39_vs_1.0.

    1 1.0
    2     changes to config.yml:
    3       properties have to follow the snake_case, #1918, easy convert via https://github.com/karussell/snake_case
    4       all routing profiles have to be configured when setting up GraphHopper, #1958, #1922
    5       for developing with JavaScript, npm and the web UI it is important to change your assets overrides to web/target/classes/assets/, see #2041
    6     moved SPTEntry and ShortcutUnpacker to com.graphhopper.routing(.ch)
    7     renamed PathWrapper to ResponsePath
    8     removed min_one_way_network_size parameter, #2042
    9     moved package from core/src/test/java/com/graphhopper/routing/profiles to ev
   10     removed HintsMap
   11     removed /change endpoint
   12     removed vehicle,weighting and edge_based from GraphHopper class, replaced with new profile parameter, #1958
   13     there no longer is a default vehicle, not setting the vehicle now only works if there is exactly one profile that matches the other parameters. anyway you should use the new profile rather than the vehicle parameter.
   14     removed IPFilter. Use a firewall instead.
   15     PMap refactored. It is recommended to use putObject(String, Object) instead of put, #1956
   16     removed UnsafeDataAccess as not maintained, see #1620
   17     add profiles parameter and replace prepare.ch/lm.weightings and prepare.ch.edge_based with profiles_ch/lm config parameters, #1922
   18     GraphHopper class no longer enables CH by default, #1914
   19     replaced command line arguments -Dgraphhopper.. with -Ddw.graphhopper.. due to #1879, see also #1897
   20     GraphHopper.init(CmdArgs)->GraphHopper.init(GraphHopperConfig), see #1879
   21     removed GenericWeighting and DataFlagEncoder as a normal CarFlagEncoder does the job too. Or use the new CustomWeighting see #1841
   22     remove TurnWeighting, see #1863
   23     speed up path simplification with path details/instructions, see #1802
   24     revert compression of landmark preparation data, see #1749 and #1376
   25     add required EncodedValues like road_class to EncodingManager if not added from user
   26     removed PathNative,PathBidirRef,Path4CH,EdgeBasedPathCH and moved path extraction code out of Path class, added PathExtractor,BidirPathExtractor(+subclasses for CH) instead, #1730
   27     conditional turn restrictions now supported, #1683
   28     added new `curbside` feature, #1697
   29     moved QueryGraph to new routing.querygraph package
   30     removed GraphExtension, #1783, renamed TurnCostExtension to TurnCostStorage
   31     removed `heading`, `pass_through` and `ch.force_heading` parameters for speed mode/CH, #1763
   32 
   33 0.13
   34     removed docker compose file
   35     PathDetails return null instead of -1 for Infinity by default
   36     replaced AverageSpeedDetails by DecimalDetails
   37     moved TagParser into new package: com.graphhopper.routing.util.parsers
   38     removed FlagEncoderFactory.DEFAULT
   39     removed forestry and motorroad from RoadClass
   40     SpatialRule.AccessValue replaced by RoadAccess
   41     removed EncodedValueLookup.hasEncoder, use hasEncodedValue instead
   42     removed MappedDecimalEncodedValue: should be replaced with FactoredDecimalEncodedValue
   43     DataFlagEncoder: it is now required to add EncodedValues before. graph.encoded_values: max_speed,road_class,road_environment,road_access
   44     instead of EncodingManager.ROUNDABOUT use Roundabout.KEY
   45     changed output format of result=pointlist and moved it into separate endpoint /spt
   46     removed TraversalMode.EDGE_BASED_1DIR and TraversalMode.EDGE_BASED_2DIR_UTURN, renamed TraversalMode.EDGE_BASED_2DIR to TraversalMode.EDGE_BASED
   47     to prevent u-turns when using edge-based algorithms it is now required to use TurnWeighting, #1640
   48     GraphHopperStorage.getGraph(Class) was replaced by GraphHopperStorage.getBase/CHGraph(), #1669
   49     CHGraph.shortcut(int, int) was removed (use .shortcut(int, int, ...) and/or .shortcutEdgeBased(int, int, ...) instead, #1693
   50     CH graphs are now identified using CHProfile instead of Weighting, #1670
   51     removed the 'traversal_mode` request parameter for /route, instead of 'traversal_mode=edge_based_2dir' use edge_based=true
   52     removed GraphHopper.set/getTraversalMode() methods, #1705
   53     edge-based CH is now chosen by default if it was prepared, #1706
   54     it is now possible to specify finite u-turn costs for CH preparation, #1671
   55     removed distances from CH shortcuts, reduces memory consumption per shortcut by 4 bytes (about 8-10%), #1719
   56 
   57 0.12
   58     renamed VirtualEdgeIteratorState.getOriginalEdgeKey to more precise getOriginalEdgeKey #1549
   59     access refactoring #1436 that moves AccessValue into SpatialRule.Access
   60     refactoring of EncodingManager to use builder pattern. Migration should be simple. Replace new EncodingManager with EncodingManager.create
   61 	The methods GraphHopper.setEnableInstructions/setPreferredLanguage is now in EncodingManager.Builder
   62     EncodingManager.supports renames to hasEncoder
   63     big refactoring #1447: to increase 64bit limit of flags, make reverse direction handling easier, to allow shared EncodedValues,
   64         remove reverseFlags method, much simpler property access, simplify FlagEncoder (maybe even deprecate this interface at a later stage)
   65     moved shp-reader into separate repository: https://github.com/graphhopper/graphhopper-reader-shp    
   66 
   67 0.11
   68     web resources for dropwizard web framework (no servlets anymore) #1108
   69     prefix -Dgraphhopper. for command line arguments necessary, see docs/web/quickstart.md or docs/core/quickstart-from-source.md#running--debbuging-with-intellij for details
   70     delegated reading properties to dropwizard, i.e. the new format yml is not read again in GraphHopper.init
   71     changed file format for landmarks #1376
   72     convert properties into new yml format via: https://gist.github.com/karussell/dbc9b4c455bca98b6a38e4a160e23bf8
   73 
   74 0.10
   75     introduce path details
   76     added handcoded API java client to this repository
   77 
   78 0.9
   79     remove war bundling support #297
   80     rename of DefaultModule to GraphHopperModule and GHServletModule to GraphHopperServletModule
   81     EncodedValue uses Math.round(value/factor). This can change the retrieved values for EncodedValues #954
   82     EncodedDoubleValue and EncodedValue requires maxValue/factor to be a natural number #954
   83     default base algorithm for all modes is bidirectional A* (except speed mode)
   84     introduced landmarks based hybrid mode, #780
   85     moving all prepare.xy configs to prepare.ch.xy and e.g. disallow the old
   86     removed deprecated methods in GraphHopper (setCHWeighting, setCHWeightings, getCHWeightings, setCHWeightings, getCHPrepareThreads, setCHPrepareThreads), Path.calcMillis, findID of LocationIndex and all implementations
   87 
   88 0.8
   89     refactoring to Weighting class, see #807
   90     removed FlagEncoder from parameters as weighting.getFlagEncoder can and is used
   91     all properties with prefix "osmreader." changed to "datareader." and osmreader.osm changed to datareader.file
   92     maven/gradle dependency graphhopper is now splitted into graphhopper-core and graphhopper-reader-osm, i.e. if you previouls depend on 'graphhopper' artificat you should now use graphhopper-reader-osm except environments like Android where you just load the graph and do no import
   93     use GraphHopperOSM as base class instead of GraphHopper
   94     OSM reader separated from core, use new graphhopper-core package
   95     moved subnetwork code into own package com.graphhopper.routing.subnetwork
   96     moved weighting code into own package com.graphhopper.routing.weighting
   97     code format has changed, so it is important to change your PRs too before you merge master, see discussion #770
   98 
   99 0.7        
  100     added snapped points to output JSON for every path
  101     the foot routing is now much smoother and only considers safe paths, to use beautiful roads (i.e. prefer hiking routes etc) use the new 'hike' profiles, see #633
  102     vehicle constants have moved to FlagEncoderFactory
  103     several constants changed to under score notation see #719 with a few breaking changes, e.g. use lower case names for flag encoders or jsonp_allowed instead of the jsonpAllowed annotation
  104     moving all string parameter constants into the Parameters class
  105     no more acceptedRailways set see #662 for more information
  106     web API: content type of gpx export is now application/gpx+xml if not explicitly specified
  107     use prepare.ch.weightings instead of prepare.chWeighting e.g. for disabling CH use prepare.ch.weightings=no
  108     GraphHopper class is refactored regarding RoutingAlgorithmFactory in order to fix problem when integrating flexibility routing, most of the CH related stuff is moved into CHAlgoFactoryDecorator, several methods are deprecated to use the methods of the decorator, see #631
  109     WeightingMap is now named HintsMap
  110     use the correct graphHopperFolder as no automatic fallback to 'folder-gh' is happening anymore, see #704
  111     refactored FlagEncoder.handleFerryWay to getFerrySpeed to make it possible to fix #665
  112     removed setWeightLimit as too unspecific for arbitrary weights, use setMaxVisitedNodes instead
  113     missing renames for Path.setEdgeEntry -> setSPTEntry and AbstractAlgorithm.createEdgeEntry -> createSPTEntry
  114 
  115 0.6
  116     removed methods deprecated in 0.4 and 0.5
  117     renamed EdgeEntry to SPTEntry and AStar.AStarEdge to AStar.AStarEntry
  118     parameter force removed from AbstractFlagEncoder.applyMaxSpeed
  119     GHResponse now wraps multiple PathWrapper; renamed GraphHopper.getPaths to calcPaths as 'get' sounded too cheap; a new method RoutingAlgorithm.calcPaths is added; see #596
  120     moving lgpl licensed file into own submodule graphhopper-tools-lgpl
  121     renaming of Tarjans algorithm class to TarjansSCCAlgorithm
  122     more strict naming for Weighting enforced and more strict matching to select Weighting (equals check), #490
  123     specify the preferred-language for way names during graph import (ISO 639-1 or ISO 639-2)
  124     renaming of getCHWeighting to getCHWeightings due to supporting multiple CH weightings, #623
  125     deprecation of setCHWeighting, please use setCHWeightings instead, #623
  126 
  127 0.5
  128     Several names have changed see #466, #467, #468
  129     GraphHopper.optimize removed use postProcessing instead
  130     method GraphHopper.getGraph() changed to getGraphHopperStorage()
  131     the interface GraphStorage does no longer extend from the Graph interface. Use GraphHopperStorage (which implements the Graph interface via the base graph) or only Graph instead
  132     now it is necessary to call baseGraph/chGraph.freeze in order to use the chGraph (to simply determine when an edgeId is a shortcut)    
  133     LevelGraphStorage is now a GraphHopperStorage with an additional ch graph (CHGraphImpl)
  134     GraphHopperStorage implements now the Graph interface and delegates all necessary methods to the underlying base graph. To do routing you call getGraph(CHGraph.class or Graph.class) where the parameter Graph.class returns the base graph and the behaviour is identical to GraphHopperStorage itself
  135     renamed LevelGraph* to CHGraph*
  136     renamed NoGraphExtension to NoOpExtension
  137     removed visitedNodes method in GraphHopper replaced with per response information: response.getHints().getLong("visited_nodes.sum", 0)
  138     added ability to store hints in GHResponse which will be forwarded to the json too
  139     breaking change in HTTP API: error JSON format changed to be message:"" instead of within info.errors, see updated api documentation
  140     made GHResponse.getMillis, Path.getMillis, GPXEntry.getMillis deprecated, use getTime instead
  141     in AbstractFlagEncoder, parse*() and getStr() are now deprecated, use properties.get* instead
  142 
  143 0.4
  144     translation key turn changed and merged with left etc into turn_left, turn_right etc
  145     create location index before preparation in the GraphHopper class
  146     encodingManager.getSingle() is removed and flagEncoder list is no longer sorted, the first vehicle is used for CH preparation    
  147     removed LocationIndexTreeSC, use new LocationIndexTree(levelGraph.getBaseGraph(), directory) instead
  148     getLevel and setLevel do no longer automatically increase node count, use getNodeAccess.ensureNode for that
  149     normal algorithms are now possible on prepared graph use getBaseGraph, see #116
  150     GHResponse no longer has isFound method, use !hasErrors instead
  151     merged unused Edge class into EdgeEntry
  152     astar and astarbi are now both none-heuristic and take parameters for beeline approximation: astar.approximation=BeelineSimplification|BeelineAccurate or astarbi.approximation=...
  153     making GPX export according to the schema to support import from various tools like basecamp
  154     refactoring: AllEdgesIterator.getMaxId is now named getCount
  155     major change of internal API: moved method "Path RoutingAlgorithm.calcPath(QueryResult,QueryResult)" to a helper method QueryGraph.lookup, call queryResult.getClosestNode for the calcPath(nodeFrom,nodeTo) method
  156     no cachedWays and cachedPoints in Path anymore
  157     Path.findInstruction was moved to InstructionList.find
  158     if start and end point are identical an algorithm will find the path consisting only of one node, one point and one instruction (finish instruction), but without edges
  159     astarbi has new default values for approximation (false) and approximation_factor (1.2) in RoutingAlgorithmFactorySimple
  160     instead of strings use the variables in AlgorithmOptions to specify an algorithm
  161     use RoutingAlgorithmFactorySimple instead of RoutingAlgorithmFactory, also more constistent algorithm preparation handling due to new AlgorithmOptions, therefor removed NoOpAlgorithmPreparation
  162     GHResponse.getXX methods now fail fast (throw an exception) if an error while route calculation occured. See #287
  163     renamed less often used URL parameter 'min_path_precision' to way_point_max_distance which makes it identical to the setWayPointMaxDistance method used for simplification at OSMImport
  164     removed douglas.minprecision from Java API ghRequest.hints => use wayPointMaxDistance instead
  165     encoder.supportTurnCost is replaced by encoder.supports(TurnWeighting.class)
  166     CmdArgs is now a Map<String, String> instead Map<String, Object>. The value will be parsed up on every getXY call, makes storing string vs. object less error-prone
  167     removed GHRequest.getHint, instead use the provided methods in GHRequest.getHints().getXY and GHRequest.getHints().put
  168     important graph incompatibility as properties cannot be loaded. renamed osmreader.bytesForFlags to graph.bytesForFlags, renamed config property osmreader.acceptWay to graph.flagEncoders
  169     default weighting is now fastest, fixing #261
  170     moved method GraphHopper.main into tools module and class com.graphhopper.tools.Import, see #250
  171     refactored GraphHopper.createWeighting to accept more than one configuration option, see #237
  172     refactored GraphHopper.disableCHShortcuts to setCHEnable(boolean)
  173     moving the boolean parameter of GraphHopper.setInMemory into a separate method setStoreOnFlush
  174     renaming of GraphHopper.setCHShortcuts to setCHWeighting, as well as the property prepare.chShortcuts to prepare.chWeighting
  175     jsonp is disabled by default. You need to enable it in the config.properties, see the config-example.properties
  176     EncodingManager cannot be null in GraphHopperStorage. If you need to parse EncodingManager configuration from existing graph use EncodingManager.create
  177     no reflection done in EncodingManager which improves portability and makes configuration of encoders possible before adding to manager
  178     removed dijkstraNativebi as no performance advantage but maintenance disadvantage and similar to oneToManyDijkstra
  179     to provide context for turn costs we needed to add prevEdgeId into Weighting.calcWeight, see new documentation
  180     with the introduction of lock protection mechanism (see #112) GraphHopper needs always write access, see also #217
  181     new GraphHopper.clean method to remove the graph directory via Java API    
  182 
  183 0.3.0
  184     introduced prefer bits, now bike uses more bits and 3 bike encoder do not fit into 32 bit anymore, will be fixed later
  185     moved Translation argument into Path.calcInstruction for more fine grained control, instructions are now uncached and GHRequest: new locale parameter
  186     CoordTrig and the like are removed, GHPlace is mostly replaced by GHPoint and so GHRequest has now methods ala addPoint instead
  187     removed isBoth from AbstractFlagEncoder, moved canBeOverwritten and associated test to PrepareEncoder
  188     removed unused directory.rename
  189     refactor edge.copyProperties into copyPropertiesTo to have similar semantics as Graph.copyTo
  190     calcWeight now contains reverse boolean to calculate correct direction dependent weight
  191     completely different web API response format. see docs/web
  192     swapDirections is renamed to reverseFlags (EncodingManager and FlagEncoders)
  193     edgeState.detach has now a reverse parameter, just use false to get previous results
  194     web api: buildDate contains now timezone, algoType is replaced with weighting
  195     dijkstraNative is now dijkstraNativebi
  196     fixed #151
  197     calcWeight now contains reverse boolean to calculate correct direction dependent weight
  198     EncodingManager always takes the encoders in constructor, to force always init
  199     GraphHopper.setMemory(true, true/false) was refactored to GraphHopper.setMemory(true/false), use mmap config via GraphHopper.setMemoryMapped()
  200     incompatible edges => you need to re-import data and/or update the edges file
  201     the instructions of the web response does not contain times (string) but instead millis (long)
  202     PrepareContractionHierarchies.setPeriodicUpdates is now in percentage not in absolute counts
  203     improved bike routing #132, #138, #139, #150
  204     gpx export via API, HTTP (route?type=gpx) and web interface is possible: #113, #136, #141   
  205 
  206 0.2.0
  207 23 Nov 2013
  208 
  209     change inconsistent default settings for contraction hierarchies in the API - see https://lists.openstreetmap.org/pipermail/graphhopper/2013-December/000585.html
  210     fixed issues with android:
  211         graphhopper: use maps from 0.2 path; updated maps
  212         mapsforge: use mapsforge-map dependency; merged #461; avoid duplicates otherwise mapsforge-core would be duplicate (?)
  213     refactored/renamed classes and methods:
  214         refactor 'flags' from int to long (still only int is stored)
  215         replacing Graph.edge(a,b,dist,edgeFlags) by Graph.edge(a,b).setDistance().setFlags()
  216         FlagEncoder.flags => use FlagEncoder.setProperties or separate setAccess and setSpeed method
  217         renamed LocationIDResult to QueryResult and Location2NodesNtree to LocationIndexTree
  218         renamed Location2IDIndex to LocationIndex
  219         renamed WeightCalculation to Weighting and getWeight to calcWeight        
  220             the URL parameter algoType in web module is now deprecated and 'weighting' should be used
  221         removed GHDijkstraHeap, GHDijkstraHeap2    
  222         made DistanceCalc into interface (new DistanceCalcEarth implementation)
  223         made GraphStorage into interface (new GraphHopperStorage implementation) move some methods from Graph into GraphStorage -> optimize + node removal stuff -> not necessary in algorithms
  224     incompatible storage layout due to:
  225         pluggable endianness (#103) -> changed default endianess to LITTLE
  226     add highly experimental UnsafeDataAccess to speed up search ~15%
  227     several small bug fixes and improvements
  228     different edge insert
  229     important bug fix for edge retrieval which leads to massive speed up in prepare + CH algos
  230     finally fixed major feature request #27 to allow gps-to-gps queries instead of only junction-to-junction ones.
  231         follow up in #52 and #115
  232         slower but more precise and necessary edge distance calculation
  233     fixed bug #105 for disconnected areas    
  234     fix which made CH preparation ~5% faster
  235     more align API for all algorithms. and initCollection is called via 1000 not something depending on the graph size
  236     API changed
  237         case of vehicle now case does not matter
  238         returned distance is in meter now
  239     better i18n support
  240     fixed major bug #102 when removing subnetworks
  241     fixed bug #89 for trams on roads
  242     completed improvement #93 for ferries
  243     edge explorer makes none-CH algorithms ~8% faster
  244     link to all closed issues: https://github.com/graphhopper/graphhopper/issues?milestone=2&state=closed
  245 
  246 
  247 0.1.1
  248 06 August 2013
  249 
  250     correct maven bundling and some more issues
  251     more i18n
  252 
  253 
  254 0.1
  255 23 July 2013
  256 
  257     initial version with lots of features 
  258     24 closed issues:
  259         https://github.com/graphhopper/graphhopper/issues?milestone=3&state=closed
  260     e.g.:
  261     Route instructions
  262     Implement OSM import for bike/foot/car
  263     More compact graph (nodes along a way are stored in a separate storage => faster and reduced RAM usage)
  264     Made routing working world wide. Make German-sized networks working on Android.
  265     Made routing faster via bidirectional algorithms, contraction hierarchies, graph sorting, better OSM integration and some fine tuning.