Skip to content

0.6.1

Compare
Choose a tag to compare
@rustprooflabs rustprooflabs released this 30 Oct 15:28
· 253 commits to main since this release
f79eb1c

PgOSM Flex 0.6.1

Commit hash: f79eb1c

The commit hash from this git repo shows up with the PgOSM Flex version number in SELECT pgosm_flex_version FROM osm.pgosm_flex;

Data changes

  • Geometry columns set to NOT NULL for all tables #261

Documentation changes

  • Add Code of Conduct #263
  • Improve quality control queries #259

Backend changes

These backend changes should have zero impact to data loaded to PostGIS.

  • Update Docker base image to Postgis w/ Postgres 15 #260
  • Update Lua styles to use improvements made in osm2pgsql 1.7.0 and 1.7.1, code cleanup, remove unproductive comments #261
  • Bump Python requirements for psycopg and osmium #258

Notes for --append users

PgOSM Flex 0.6.1 now creates all geometry columns as NOT NULL, while 0.6.0 and prior were NULLable. It is recommended (but not required) to run the ALTER TABLE commands below to update your table's definitions with the NOT NULL constraint.

ALTER TABLE osm.amenity_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.amenity_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.amenity_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.building_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.indoor_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.indoor_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.indoor_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.infrastructure_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.place_polygon_nested ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.infrastructure_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.infrastructure_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.landuse_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.leisure_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.leisure_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.natural_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.landuse_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.natural_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.place_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.natural_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.place_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.place_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.poi_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.poi_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.poi_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.building_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.public_transport_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.public_transport_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.public_transport_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.road_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.road_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.shop_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.shop_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.traffic_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.road_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.traffic_line ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.traffic_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.water_point ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.water_polygon ALTER COLUMN geom SET NOT NULL;
ALTER TABLE osm.water_line ALTER COLUMN geom SET NOT NULL;

Generating above statements

The above alter table queries were generated using the PgDD extension.

SELECT FORMAT('ALTER TABLE %s.%s ALTER COLUMN %s SET NOT NULL;',
                s_name, t_name, c_name)
    FROM dd.columns
    WHERE source_type = 'table'
        AND s_name = 'osm'
        AND c_name = 'geom'
;

Full Changelog: 0.6.0...0.6.1