Background information
We currently work around some version dependencies and run Kartotherian on Node 10, by using a custom node-mapnik build deployed under the kartotherian GitHub org.
A way to get rid of that fork is described and explored in T327396: Migrate Kartotherian to node-mapnik v4.2.1 and unfork. Getting back to upstream node-mapnik will allow us to further upgrade to versions more compatible to libmapnik v3.1.x
What & How
The following dependencies need to upgrade node-mapnik to the latest version. All of these are compatible with node-mapnik v4.2.1. That's the version of our current fork:
- kartotherian/node-mapnik => Unforked see T327396: Migrate Kartotherian to node-mapnik v4.2.1 and unfork
- kartotherian/tilelive-bridge => Unforked
- kartotherian/tilelive-vector => forked due to custom changes making getTile async
- kartotherian/abaculus => forked due to custom fixes
- wikimedia/makizushi => forked due to a custom build icon set
- wikimedia/geojson-mapnikify => forked depends on wikimedia/makizushi
- wikimedia/tilelive-overlay => forked depends on wikimedia/geojson-mapnikify
One third-party dependency incompatible to mapnik v3.1.x, seems to be mapnik-reference. But de-facto we're don't execute code that's using it. See notes in T327396: Migrate Kartotherian to node-mapnik v4.2.1 and unfork
Open questions
- Check for additional changes suggested by https://github.com/mapnik/mapnik/wiki/API-changes-between-v3.0-and-v3.1
Is that going to be a straight forward upgrade for our dependencies? Some libraries we use are outdated and upgrade them might bring incompatibilities, this will need more tests when mapnik v3.1.x is available.
Acceptance criteria
- Backport to Debian stretch mapnik v3.1.x when released
-
Wait for mapnik-reference to be updated on upstreamSeems that we do not reach that code anywhere. - Upgrade node-mapnik in all dependencies
- Test and deploy