Osm2pgsql project 2020-07

From OpenStreetMap Foundation

Jochen writes by email:

OSMF Support for osm2pgsql Development

Osm2pgsql is an important building block in the toolchain from OSM data to the maps on openstreetmap.org and many other maps. Development and maintenance has so far mostly been dependent on work of a few developers in their free time with some support from companies here or there. As the long list of open issues on Github shows, this has not been enough to keep moving osm2pgsql forward.

I have written up a draft road map that shows where osm2pgsql is now and where future development might go (attached). Approval from the maintainers on this is pending, so it might still change a bit.

Based on this road map I propose that OSMF funds my work on maintenance and development of osm2pgsql along the following lines:

I'll work for one person-month at 50 EUR/h (times 160 hours = 8000 EUR) spread over two to three months on osm2pgsql. Billing for the whole sum will be at the end of that time.

This is, of course, not enough time to tackle everything on the road map. But it should get us a good step forward. I propose work will focus on the following tasks (pending maintainer approval):

  • Ongoing maintenance as needed (looking at issues coming in, fixing bugs, cleaning up code, etc.)
  • Set up of osm2pgsql.org (*) as a new site for documentation and consolidate existing documentation there as well as write new documentation. (About 1 week.)
  • Rethink output of the program to make it more concise and useful and consolidate the code for that. (< 1 week.)
  • Tackle refactoring and cleanup of the "middle" code. This is an important part of the internal infrastructure of osm2pgsql that's needed for other improvements. (About 2 weeks.)
  • Other work from the road map as time permits in consultation with the maintainers.

I have written about my work on osm2pgsql in the lasts months on my blog at https://blog.jochentopf.com/ . While working for the OSMF I would continue to do so. I am also available to the community for questions, ideas, and discussions in the usual channels like the dev mailing list. I would also suggest that we organize some kind of online meeting with interested parties to discuss the mentioned road map and get feedback from the wider community.