osm2pgsql-dev / osm2pgsql

OpenStreetMap data to PostgreSQL converter
https://osm2pgsql.org
GNU General Public License v2.0
1.48k stars 473 forks source link

Planning for backwards incompatible changes #1502

Open joto opened 3 years ago

joto commented 3 years ago

At some point in the not too far future (not the next version as I write this) we want to make a backwards incompatible change to the pgsql middle which means everybody has to do a re-import. If we have a breaking change anyway, this might be the chance to do some other changes, too. This issue is here to collect the different things we might want do, see individual issues for discussions and details.

Planned or possible changes:

Are there some other things "we always wanted to do" but didn't for compatibility?

joto commented 3 years ago

Just to make this clear: There is no decision yet how to make this backwards incompatible change. It might be possible to do some kind of phased change over a longer time. But that has some cost (mainly in development time), too. So maybe a clear breaking change is better. But to figure this out it is good to collect ideas how such a change could look and what else we might want to do. That's why I created this issue.

joto commented 1 year ago
joto commented 1 year ago
joto commented 1 year ago

It is unclear how the -b, --bbox option is supposed to work and how well it works, especially with updates. There are better solutions. i.e. creating an extract first and feeding that to osm2pgsql.

Maybe it is time to get rid of it.

Anybody using this option?

joto commented 1 year ago

Not really a compatibility problem but fits in here: We currently have a limit of 32767 members per relation (enforced in https://github.com/openstreetmap/osm2pgsql/blob/master/src/osmdata.cpp#L119-L124) due to #713. The new middle doesn't have this problem any more. In addition the API has now a limit of 32000 members per relation, so this shouldn't be a problem in the future.

joto commented 1 year ago

We can probably remove support for Proj4 soon. Ubuntu 18.04 has reached EOL in April 2023, it was the last major distribution we might care about still using a version 4 proj. Debian 10 (Buster) uses version 5 which is EOL sometime in 2024, everybody else uses 6 or above.

joto commented 7 months ago

There are many command line option combinations which make no sense and should be illegal. I am currently working on creating warnings for many of them. Eventually these warnings should be turned into errors.