v0.8.0
What's Changed
This release adds support for geoparquet sources like Overture Maps. It also adds support for writing custom Java profiles without any build tools. See https://github.com/onthegomap/planetiler-examples for instructions getting started and examples using OpenStreetMap and Overture data.
To run this release from Java, download the attached planetiler.jar
, or from docker use ghcr.io/onthegomap/planetiler:0.8.0
There is ongoing discussion about the project in the #planetiler channel on OSM-US slack. If you are interested in joining, get an invite here!
New Features and Improvements
- Add geoparquet/Overture support
- Iniitial geoparquet support by @msbarry in #888
- Remove primary geometry from parquet feature tags by @msbarry in #893
- Attach parquet schema to features by @msbarry in #897
- Avoid deserializing entire parquet geometry just to determine type by @msbarry in #898
- Make sure
FeatureCollector
can handle structs by @msbarry in #904 - Structured tag api by @msbarry in #895
- Add support for linear-referenced tags for Overture Maps Data by @msbarry in #900
- Java API improvements
- Min polygon area centroid by @msbarry in #720
- Add API for maximum inscribed circle/pole of inaccessibility centerpoint of a polygon by @msbarry in #723
- Add
setAttrWithMinSize
to feature API by @msbarry in #725 - add extraMetadata to profile interface [#794] by @bdon in #795
- Add whole-tile postprocess hook by @msbarry in #802
- Add omit() feature collector api and
--refresh-sources
arg by @msbarry in #810 - Add tile post-process hook to forwarding profile by @msbarry in #813
- Add firstCoordinate vector tile feature helper by @msbarry in #814
- Add polygon index intersection utility by @msbarry in #866
- Attach sources to fat jar to improve no-build IDE experience by @msbarry in #892
- Make VectorTile.Feature implement WithTags by @msbarry in #896
- Parquet/no-build-tool java profile usability improvements by @msbarry in #914
- Handle immutable output from post process layer/tile feature methods by @msbarry in #920
- YAML Schema improvements
- Generate deterministic output for the same input
- Add detailed jts debugging info by @msbarry in #703
- Archive compare by @msbarry in #780
- Deterministic merging by @msbarry in #785
- Make OSM polygon construction deterministic by @msbarry in #788
- Fix feature merge consistent ordering by @msbarry in #789
- Deterministic IDs on SimpleFeatures by @msbarry in #791
- Check for deterministic output in CI by @msbarry in #792
- Upgrade to OpenMapTiles 3.15 by @msbarry and @phanecak-maptiler in #764, #764, #835, #880, #923
- Use maven build time for docker image by @msbarry in #744
- Use push-down bbox filter for shapefiles by @msbarry in #757
- Add support for "files"-archive by @bbilger in #761
- Use snappy compression for
--compress-temp
flag by @msbarry in #905 - Log more details on feature processing errors by @msbarry in #884
Bugs
- Fix log4j log format by @msbarry in #697
- Logging fix by @msbarry in #699
- Add detailed jts debugging info by @msbarry in #703
- Fix buffer union unbuffer exceptions by @msbarry in #713
- Compute layer attr stats from actual vector tile features by @msbarry in #752
- fix center coordinates of pmtiles writer by @bdon in #769
- Remove log4j usage by @cmahnke in #776
- remove log4j-CloseShieldOutputStream usage by @bbilger in #779
- Fix comparison of multipolygons bounds check [#780] by @bdon in #793
- Attempt to fix IOException/GOAWAY happening within parseResults() by @phanecak-maptiler in #818
- Filter out null MultiExpression entries by @phanecak-maptiler in #822
- Safer natural earth unzip by @msbarry in #825
- Fix tile size stats memory leak by @msbarry in #861
- exclude slf4j-nop from geopackage to avoid SLF4J warning by @phanecak-maptiler in #874
- Ignore duplicate multipolygon relation members by @msbarry in #876
- Log more details on feature processing errors by @msbarry in #884
- Prevent double MultExpression matching by @msbarry in #916
Contributor/Documentation improvements
- Upgrade to Java 21 by @msbarry in #693
- Use some new Java 21 features by @msbarry in #695
- Upgrade eclipse formatter by @msbarry in #696
- Rewrite downloader using virtual threads by @msbarry in #702
- Updated benchmarks by @msbarry in #798
- Small benchmarks by @msbarry in #801
- Update GCP benchmarks by @msbarry in #803
- Add note about java update process by @wipfli in #807
- Remove quoting side-bars from planetiler-custommap/README.md by @zstadler in #844
- Fix typo by @wipfli in #907
Dependencies
Once again, @dependabot has been busy keeping dependencies up-to-date.
Dependency upgrades in this release
- Bump com.diffplug.spotless:spotless-maven-plugin from 2.39.0 to 2.40.0 by @dependabot in #678
- Bump styfle/cancel-workflow-action from 0.11.0 to 0.12.0 by @dependabot in #680
- Bump mil.nga.geopackage:geopackage from 6.6.2 to 6.6.3 by @dependabot in #681
- Bump com.google.protobuf:protobuf-java from 3.24.3 to 3.24.4 by @dependabot in #682
- Bump org.mockito:mockito-core from 5.5.0 to 5.6.0 by @dependabot in #683
- Bump com.google.guava:guava from 32.1.2-jre to 32.1.3-jre by @dependabot in #684
- Bump geotools.version from 29.2 to 30.0 by @dependabot in #685
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.1.2 to 3.2.1 in /.github/planetiler-examples-dependabot by @dependabot in #689
- Bump actions/setup-node from 3 to 4 by @dependabot in #688
- Bump jackson.version from 2.15.2 to 2.15.3 by @dependabot in #687
- Bump org.xerial:sqlite-jdbc from 3.43.0.0 to 3.43.2.1 by @dependabot in #692
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.1.2 to 3.2.1 in /.github/planetiler-examples-dependabot by @dependabot in #691
- Bump log4j.version from 2.20.0 to 2.21.1 by @dependabot in #694
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.1.2 to 3.2.1 by @dependabot in #698
- Bump org.xerial:sqlite-jdbc from 3.43.2.1 to 3.43.2.2 by @dependabot in #701
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.1.2 to 3.2.1 by @dependabot in #704
- Bump com.ibm.icu:icu4j from 73.2 to 74.1 by @dependabot in #705
- Bump com.google.protobuf:protobuf-java from 3.24.4 to 3.25.0 by @dependabot in #706
- Bump org.mockito:mockito-core from 5.6.0 to 5.7.0 by @dependabot in #707
- Bump junit.version from 5.10.0 to 5.10.1 by @dependabot in #710
- Bump org.junit.jupiter:junit-jupiter-api from 5.10.0 to 5.10.1 in /.github/planetiler-examples-dependabot by @dependabot in #709
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.1 to 3.2.2 by @dependabot in #711
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.1 to 3.2.2 in /.github/planetiler-examples-dependabot by @dependabot in #712
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.1 to 3.2.2 in /.github/planetiler-examples-dependabot by @dependabot in #718
- Bump org.jacoco:jacoco-maven-plugin from 0.8.10 to 0.8.11 by @dependabot in #717
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.0 to 3.6.2 by @dependabot in #719
- Bump actions/github-script from 6 to 7 by @dependabot in #721
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.1 to 3.2.2 by @dependabot in #722
- Bump org.xerial:sqlite-jdbc from 3.43.2.2 to 3.44.0.0 by @dependabot in #724
- Bump jackson.version from 2.15.3 to 2.16.0 by @dependabot in #726
- Bump log4j.version from 2.21.1 to 2.22.0 by @dependabot in #727
- Bump com.google.protobuf:protobuf-java from 3.25.0 to 3.25.1 by @dependabot in #730
- Bump org.projectnessie.cel:cel-bom from 0.3.21 to 0.4.3 by @dependabot in #732
- Bump geotools.version from 30.0 to 30.1 by @dependabot in #733
- Bump actions/setup-java from 3 to 4 by @dependabot in #734
- Bump org.xerial:sqlite-jdbc from 3.44.0.0 to 3.44.1.0 by @dependabot in #735
- Bump com.diffplug.spotless:spotless-maven-plugin from 2.40.0 to 2.41.0 by @dependabot in #737
- Bump com.diffplug.spotless:spotless-maven-plugin from 2.41.0 to 2.41.1 by @dependabot in #740
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.2 to 3.6.3 by @dependabot in #741
- Bump mil.nga.geopackage:geopackage from 6.6.3 to 6.6.4 by @dependabot in #743
- Bump org.mockito:mockito-core from 5.7.0 to 5.8.0 by @dependabot in #745
- Bump com.ibm.icu:icu4j from 74.1 to 74.2 by @dependabot in #748
- Bump dawidd6/action-download-artifact from 2 to 3 by @dependabot in #747
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.2 to 3.2.3 in /.github/planetiler-examples-dependabot by @dependabot in #751
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.2 to 3.2.3 by @dependabot in #750
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.2 to 3.2.3 in /.github/planetiler-examples-dependabot by @dependabot in #755
- Bump org.roaringbitmap:RoaringBitmap from 1.0.0 to 1.0.1 by @dependabot in #754
- Bump actions/upload-artifact from 3 to 4 by @dependabot in #753
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.2 to 3.2.3 by @dependabot in #756
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.11.0 to 3.12.0 by @dependabot in #758
- Bump com.google.guava:guava from 32.1.3-jre to 33.0.0-jre by @dependabot in #762
- Bump jackson.version from 2.16.0 to 2.16.1 by @dependabot in #766
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.12.0 to 3.12.1 by @dependabot in #767
- Bump log4j.version from 2.22.0 to 2.22.1 by @dependabot in #768
- Bump org.slf4j:slf4j-api from 2.0.9 to 2.0.10 by @dependabot in #770
- Bump org.slf4j:slf4j-api from 2.0.10 to 2.0.11 by @dependabot in #778
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.3 to 3.2.5 by @dependabot in #781
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.3 to 3.2.5 in /.github/planetiler-examples-dependabot by @dependabot in #782
- Bump org.msgpack:msgpack-core from 0.9.6 to 0.9.7 by @dependabot in #784
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.3 to 3.2.5 in /.github/planetiler-examples-dependabot by @dependabot in #783
- Bump org.projectnessie.cel:cel-bom from 0.4.3 to 0.4.4 by @dependabot in #787
- Bump org.mockito:mockito-core from 5.8.0 to 5.9.0 by @dependabot in #790
- Bump com.diffplug.spotless:spotless-maven-plugin from 2.41.1 to 2.42.0 by @dependabot in #796
- Bump com.google.protobuf:protobuf-java from 3.25.1 to 3.25.2 by @dependabot in #797
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.3 to 3.2.5 by @dependabot in #800
- Bump actions/cache from 3 to 4 by @dependabot in #799
- Bump org.codehaus.mojo:flatten-maven-plugin from 1.5.0 to 1.6.0 by @dependabot in #804
- Bump org.xerial:sqlite-jdbc from 3.44.1.0 to 3.45.0.0 by @dependabot in #805
- Bump styfle/cancel-workflow-action from 0.12.0 to 0.12.1 by @dependabot in #806
- Bump org.mockito:mockito-core from 5.9.0 to 5.10.0 by @dependabot in #808
- Bump org.msgpack:msgpack-core from 0.9.7 to 0.9.8 by @dependabot in #809
- Bump com.diffplug.spotless:spotless-maven-plugin from 2.42.0 to 2.43.0 by @dependabot in #811
- Bump org.junit.jupiter:junit-jupiter-api from 5.10.1 to 5.10.2 in /.github/planetiler-examples-dependabot by @dependabot in #815
- Fix dependabot by @msbarry in #828
- Bump org.yaml:snakeyaml from 1.33 to 2.2 by @dependabot in #829
- Bump com.google.protobuf:protobuf-java from 3.25.2 to 3.25.3 by @dependabot in #832
- Bump org.mockito:mockito-core from 5.10.0 to 5.11.0 by @dependabot in #833
- Bump junit.version from 5.10.1 to 5.10.2 by @dependabot in #834
- Bump org.slf4j:slf4j-api from 2.0.11 to 2.0.12 by @dependabot in #836
- Bump org.apache.maven.plugins:maven-assembly-plugin from 3.6.0 to 3.7.0 in /.github/planetiler-examples-dependabot by @dependabot in #838
- Bump softprops/action-gh-release from 1 to 2 by @dependabot in #837
- Bump org.roaringbitmap:RoaringBitmap from 1.0.1 to 1.0.5 by @dependabot in #839
- Bump log4j.version from 2.22.1 to 2.23.1 by @dependabot in #840
- Bump com.google.cloud.tools:jib-maven-plugin from 3.4.0 to 3.4.1 by @dependabot in #841
- Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre by @dependabot in #842
- Bump com.github.jnr:jnr-ffi from 2.2.15 to 2.2.16 by @dependabot in #843
- Bump org.apache.maven.plugins:maven-assembly-plugin from 3.7.0 to 3.7.1 in /.github/planetiler-examples-dependabot by @dependabot in #846
- Bump org.commonmark:commonmark from 0.21.0 to 0.22.0 by @dependabot in #845
- Bump jackson.version from 2.16.1 to 2.17.0 by @dependabot in #847
- Bump org.xerial:sqlite-jdbc from 3.45.0.0 to 3.45.2.0 by @dependabot in #849
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.12.1 to 3.13.0 by @dependabot in #851
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.1.0 to 3.2.1 by @dependabot in #852
- Bump org.sonarsource.scanner.maven:sonar-maven-plugin from 3.10.0.2594 to 3.11.0.3922 by @dependabot in #855
- Bump geotools.version from 30.1 to 31.0 by @dependabot in #856
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.1 to 3.2.2 by @dependabot in #858
- Bump org.apache.maven.plugins:maven-assembly-plugin from 3.6.0 to 3.7.1 by @dependabot in #860
- Bump com.google.cloud.tools:jib-maven-plugin from 3.4.1 to 3.4.2 by @dependabot in #862
- Bump org.jacoco:jacoco-maven-plugin from 0.8.11 to 0.8.12 by @dependabot in #863
- Bump mil.nga.geopackage:geopackage from 6.6.4 to 6.6.5 by @dependabot in #864
- Bump org.apache.maven.plugins:maven-source-plugin from 3.3.0 to 3.3.1 by @dependabot in #865
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.2 to 3.2.3 by @dependabot in #867
- Bump org.slf4j:slf4j-api from 2.0.12 to 2.0.13 by @dependabot in #868
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.3.0 to 3.4.0 by @dependabot in #869
- Bump org.xerial:sqlite-jdbc from 3.45.2.0 to 3.45.3.0 by @dependabot in #871
- Bump com.ibm.icu:icu4j from 74.2 to 75.1 by @dependabot in #872
- Bump org.apache.maven.plugins:maven-deploy-plugin from 3.1.1 to 3.1.2 by @dependabot in #875
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.0 to 3.4.1 by @dependabot in #877
- Bump org.roaringbitmap:RoaringBitmap from 1.0.5 to 1.0.6 by @dependabot in #881
- Bump com.google.guava:guava from 33.1.0-jre to 33.2.0-jre by @dependabot in #883
- Bump jackson.version from 2.17.0 to 2.17.1 by @dependabot in #885
- Bump org.mockito:mockito-core from 5.11.0 to 5.12.0 by @dependabot in #887
- Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.3 to 3.2.4 by @dependabot in #889
- Bump geotools.version from 31.0 to 31.1 by @dependabot in #891
- Bump blue.strategic.parquet:parquet-floor from 1.41 to 1.43 by @dependabot in #894
- Bump org.xerial:sqlite-jdbc from 3.45.3.0 to 3.46.0.0 by @dependabot in #903
- Bump com.google.cloud.tools:jib-maven-plugin from 3.4.2 to 3.4.3 by @dependabot in #906
- Bump org.apache.maven.plugins:maven-enforcer-plugin from 3.4.1 to 3.5.0 by @dependabot in #908
- Bump dawidd6/action-download-artifact from 3 to 4 by @dependabot in #909
- Bump dawidd6/action-download-artifact from 4 to 5 by @dependabot in #911
- Bump com.google.guava:guava from 33.2.0-jre to 33.2.1-jre by @dependabot in #910
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.3 to 3.7.0 by @dependabot in #913
- Bump dawidd6/action-download-artifact from 5 to 6 by @dependabot in #917
- Bump blue.strategic.parquet:parquet-floor from 1.43 to 1.44 by @dependabot in #915
- Bump org.sonarsource.scanner.maven:sonar-maven-plugin from 3.11.0.3922 to 4.0.0.4121 by @dependabot in #918
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.5 to 3.3.0 in /.github/planetiler-examples-dependabot by @dependabot in #922
- Bump geotools.version from 31.1 to 31.2 by @dependabot in #921
New Contributors
Full Changelog: v0.7.0...v0.8.0