mirror of
https://github.com/maplibre/martin.git
synced 2024-12-19 04:41:46 +03:00
8b34cd374c
* Fix metadata copying * Introduce a new metadata field `agg_tiles_hash_after_apply` for diff files * Added a lot of new info and debug logging * Simplified Copying interface - not much value in having all the complex builder pattern here it seems, might as well use a simple object. ## Testing * Generate SQLite DBs in memory on the fly to validate just what we need * Use `insta` for validating DB content There is now a function `dump(connection) -> Vec<Entry>` to dump the content of the entire SQLite DB into text with `serde`. At many steps through the testing, the DB content is validated with the corresponding .snap file with `insta` crate (which makes this process mega-simple, including a simple way to "bless" (update) any changes). ## Discovered bugs * Seems like normalized files do not get copied properly - they contain extras that should be removed.
51 lines
1.5 KiB
TOML
51 lines
1.5 KiB
TOML
[package]
|
|
name = "martin-mbtiles"
|
|
version = "0.6.0"
|
|
authors = ["Yuri Astrakhan <YuriAstrakhan@gmail.com>", "MapLibre contributors"]
|
|
description = "A simple low-level MbTiles access and processing library, with some tile format detection and other relevant heuristics."
|
|
keywords = ["mbtiles", "maps", "tiles", "mvt", "tilejson"]
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[features]
|
|
default = ["cli"]
|
|
cli = ["dep:anyhow", "dep:clap", "dep:env_logger", "dep:serde_yaml", "dep:tokio"]
|
|
|
|
[dependencies]
|
|
enum-display.workspace = true
|
|
futures.workspace = true
|
|
log.workspace = true
|
|
martin-tile-utils.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
sqlite-hashes.workspace = true
|
|
sqlx.workspace = true
|
|
thiserror.workspace = true
|
|
tilejson.workspace = true
|
|
|
|
# Bin dependencies
|
|
anyhow = { workspace = true, optional = true }
|
|
clap = { workspace = true, optional = true }
|
|
env_logger = { workspace = true, optional = true }
|
|
serde_yaml = { workspace = true, optional = true }
|
|
tokio = { workspace = true, features = ["rt-multi-thread"], optional = true }
|
|
|
|
[dev-dependencies]
|
|
# For testing, might as well use the same async framework as the Martin itself
|
|
actix-rt.workspace = true
|
|
ctor.workspace = true
|
|
env_logger.workspace = true
|
|
insta.workspace = true
|
|
pretty_assertions.workspace = true
|
|
rstest.workspace = true
|
|
|
|
[lib]
|
|
path = "src/lib.rs"
|
|
|
|
[[bin]]
|
|
name = "mbtiles"
|
|
path = "src/bin/main.rs"
|
|
required-features = ["cli"]
|