Change GraphHopper to make use of EU-DEM (European Digital Elevation Model)


I would like to use EU-DEM (European Digital Elevation Model) as the elevation data at my instance of ORS (using Docker containers). From reading other posts, the way to do it is by making changes to ORS itself and the GraphHopper libraries used by it.

I’ve identified the repository of ORS to use (GitHub - GIScience/openrouteservice: 🌍 The open source route planner api with plenty of features.) and the GraphHopper fork used with it (GitHub - GIScience/graphhopper: An open source route planning library and server using OpenStreetMap.).

I’ve also identified the module and classes at GraphHopper that are responsible for reading the elevation files. It is the graphhopper-core module and my target classes are at graphhopper/core/src/main/java/com/graphhopper/reader/dem/. For now, it looks like I only have to make changes here, by creating a dedicated class to read the EU-DEM files (and integrate that new class in the remaining processes).

Currently, I’m not sure on which branch I should do the changes. From the pom.xml file at the ORS project, it uses the following version for graphhopper-core:


At the GitHub repo for GraphHopper (the GIScience’s fork) there is a release with the tag v0.13.15, which looks like it was made from the branch ors_0.13. This branch has changes specific for ORS, marked with comments // ORS-GH MOD START.

My problem:
I’ve tried to build the graphhopper-core module from the branch ors_0.13 (by running mvn package -pl :graphhopper-core -am at the project’s root) but 365 tests failed and the build failed as well.
When building from the branch master all tests pass and the build is successful.

Which branch should I use to make my changes? It doesn’t looks like using the branch master is the correct approach, because I may “lose” important changes for ORS.