Releases: maplibre/martin
v0.11.1
What's Changed
- Add compression and query to martin-cp by @nyurik in #1019
- Rename dst-type to mbtiles-type by @nyurik in #1014
- Update document file names for outside links by @sharkAndshark in #1018
- Rename MartinError, benchmarks, streamline get_tile by @nyurik in #1016
Full Changelog: v0.11.0...v0.11.1
v0.11.0
What's New
- Add
martin-cp
tool to bulk-copy tiles from any Martin-supported sources by @nyurik in #1011 - Add
mbtiles summary
tool to print MBTiles statistics by @sharkAndshark in #986
Configuration
Documentation changes
- Separate supported MBTiles schema doc by @sharkAndshark in #961
- Include readme as docs for all crates by @nyurik in #981
Minor changes
Full Changelog: v0.10.0...v0.11.0
v0.10.0
Breaking Changes
Auto bounds calculation methods
Martin startup should now be much faster by default. See #958 by @nyurik, fixing #955
- Remove
--disable-bounds
flag anddisable_bounds
config parameters. - Add
--auto-bounds
/-b
CLI parameter andauto_bounds
config value:quick
: Compute table geometry bounds, but skips it if it takes longer than 5 seconds (default)calc
: Compute table geometry bounds. The startup time may be significant. Make sure all GEO columns have indexesskip
: Skip bounds calculation. The bounds will be set to the whole world
-b
is now mapped to--auto-bounds
param, but it will fail if used by itself because it now requires a value.
What's New
- Catalog shows sprites and fonts info by @nyurik in #951
- Add dynamic font support
/font/<name>/<start>-<end>
by @nyurik in #755
Fonts allow glyph fallback: list font names as comma-separated values, and whichever font first has the glyph, that's the glyph that will be included. This way you can specify fallback fonts -/font/Font1,Font2,Font3/0-255
MBTiles
- Add
--apply-patch
to copy, rename apply-diff by @nyurik in #945 - Rename martin-mbtiles crate to mbtiles by @nyurik in #976
Miscellaneous
- Better error reporting for config and other params by @nyurik in #957
- Fix cargo publish warning about README by @DarhkVoyd in #960
- pg func discovery ignore sys schemas by @nyurik in #946
- remove unneeded btree sorting by @nyurik in #970
- Simplify conf parsing, separate func & tbl configs by @nyurik in #956
- Update doc file names and title levels by @sharkAndshark in #972
- Fix grcov CI workflow by @nyurik in #968
- Fix martin integration tests by @nyurik in #952
New Contributors
- @DarhkVoyd made their first contribution in #960
Full Changelog: v0.9.3...v0.10.0
v0.9.3: Homebrew auto-release
What's Changed
No code changes, fixing CI processes related to homebrew. Now auto-creates PRs in the maplibre/homebrew-martin repo
- Move homebrew by @nyurik in #933
- Updat doc about homebrew installation by @sharkAndshark in #934
- Auto-update homebrew on release by @nyurik in #935
Full Changelog: v0.9.2...v0.9.3
v0.9.2
What's Changed
- Update Homebrew for 0.9.0 by @rubenpoppe in #932
- Fixing Homebrew release
New Contributors
- @rubenpoppe made their first contribution in #932
Full Changelog: v0.9.1...v0.9.2
v0.9.1
What's Changed
- Many significant changes to the
mbtiles
tool (see below) - Rename homebrew formula subdirctory by @sharkAndshark in #923
- Log a warning if PG startup takes too long by @pjsier in #924
MBTiles tool
- New testing infrastructure, internal refactoring, fixes in diffing and copying by @nyurik in #916
- Metadat is now copied as part of the copy/apply-diff by @nyurik in #921
- add encoding=UTF8 pragma by @nyurik in #919
Full Changelog: v0.9.0...v0.9.1
v0.9.0
What's New
- TileJSON configuration can now be provided by PostgreSQL sources using
COMMENT ON FUNCTION
andCOMMENT ON TABLE
. - Multi-platform Docker support - new image work on
linux/arm64
andlinux/amd64
platforms. - New build packages: Debian amd64, and statically linked (musl) for ARM64 and AMD64.
- Use Rustls instead of OpenSSL. Keep an eye on any PostgreSQL connection issues with SSL.
- A lot of improvements with
mbtiles
tool, includingapply-diff
,validate
,meta-all
, andmeta-set
commands, and the ability to validate each tile and the entire mbtiles.
BREAKING
- API: Change
/catalog
JSON structure by @nyurik in #754 - Config files: rename
id_format
tosource_id_format
, refactor by @nyurik in #794 - Use Rustls instead of OpenSSL by @nyurik in #474 (also sqlx-rustls support by @pka in #720)
- Add
metrics
to reserved list, docs by @nyurik in #802
Configuration
- PostgreSQL sources can now provide additional TileJSON configuration using
COMMENT ON FUNCTION
andCOMMENT ON TABLE
by @sharkAndshark in #829 and #871 - Adds support for id_column in tables for auto_publish by @Binabh in #790
- Only save configured auto_publish settings with
--save-config
, aliasfrom_schemas
asfrom_schema
by @nyurik in #795 - Add
clip_geom
,buffer
andextent
underauto_publish
conf by @sharkAndshark in #887
ARM-64, Docker, packaging, and CI improvements
- Rework CI to build ARM64 by @nyurik in #889
- Implement Multi-arch Docker images with both x64 and arm64 by @nyurik in #891
- CI-Test everything on SSL connections by @nyurik in #900
- Debian packaging by @sharkAndshark in #730 and by @nyurik in #893
- In deb package, include ssl and mbtiles tool by @nyurik in #895
- Add basic support for systemd by @sharkAndshark in #761
mbtiles
tool changes
- add mbtiles
meta-all
command by @nyurik in #865 - Add diff-with-file option to copy command by @upsicleclown in #729
- Add apply-diff command by @upsicleclown in #747
- Add ability to copy to existing mbtiles files by @upsicleclown in #778
- Create primary keys on metadata and tiles tables when copying with force-simple by @upsicleclown in #786
- Add flat hashing table format by @upsicleclown in #808
- Add ability to set mbtiles metadata value by @upsicleclown in #817
- Add tiles_with_hash view to normalized mbtiles files by @upsicleclown in #834
- Add integrity and global hash check to validation by @upsicleclown in #851
- Minor cleanup mbtiles tools by @upsicleclown in #833
- Fix mbtiles validate uppercase hash by @nyurik in #882
Debug tools
- fix debug.html sources by @nyurik in #853
- Rewrite
debug.html
to show and inspect all layers by @sharkAndshark in #820 - Show tile boundaries in debug.html by @sharkAndshark in #858
Other
- Downgrade log level for unknown MBTiles metadata by @sharkAndshark in #800 and #867
- Demo site upgrade and fixes by @nyurik in #770, #809, #841
- Warn when source IDs are renamed by @nyurik in #839
- Hide pg connection password by @nyurik in #907
New Contributors
Full Changelog: v0.8.7...v0.9.0
v0.8.7
What's New
Sprite serving
Dynamic sprites support was added by @nyurik in #715. Given a directory with SVG images, Martin will dynamically generate a sprite index and a PNG image, for both low and high resolution displays. This feature is made possible by the spreet crate from @flother (thank you!). Per MapLibre sprites API, the new feature supports
/sprite/<sprite_id>.json
metadata about the sprite file - all coming from a single directory/sprite/<sprite_id>.png
all images combined into a single PNG/sprite/<sprite_id>@2x.json
same but for high DPI devices/sprite/<sprite_id>@2x.png
copy mbtiles tool
mbtiles
tool now lets users partially copy an mbtiles file, filtering to specific zooms, and to convert de-duplicated to a flat mbtiles format.
by @upsicleclown in #712, #723
New Contributors
Full Changelog: v0.8.6...v0.8.7
v0.8.6: Massive PG query performance improvements
What's Changed
Full Changelog: v0.8.5...v0.8.6
v0.8.5 new docs site, mbtiles tool
Documentation!
This release mostly focused on documentation improvements -- me now have a new greatly improved MDBook documentation site and updated demo site, made possible by @sharkAndshark, @birkskyum, and @nyurik.
- Create mdbook documentation by @sharkAndshark in #681
- Auto-publish mdbook by @nyurik in #684
- adjust book style by @sharkAndshark in #691
- simplify readme by @sharkAndshark in #693
- Implement rudimentary mbtiles binary by @nyurik in #696
- Cleaning up mdbook by @nyurik in #697
- Simplify demo - remove nginx by @birkskyum in #692
- Moved maplibre/martin-landing-page git repo into
/demo
directory, preserving history.
New Features
There is now a rudimentary mbtiles
tool that can be used to inspect and extract data from mbtiles files. This is a work in progress.
- Add
meta-get
functionality by @upsicleclown in #701
Internal Refactoring
- Refactor mbtiles lib, mbtiles tool tests & CI by @nyurik in #702
- Consolidate all crate dependencies by @nyurik in #694
- Service startup await clippy lint by @nyurik in #700
- Move Martin crate to its own subdir by @nyurik in #699
New Contributors
- @birkskyum made their first contribution in #692
- @upsicleclown made their first contribution in #701
Full Changelog: v0.8.4...v0.8.5