[package]
edition = "2024"
name = "versatiles_core"
version = "4.2.2"
authors = ["Michael Kreil <versatiles@michael-kreil.de>"]
build = false
exclude = [
".githooks/",
".github/",
".gitignore",
".prettierignore",
".vscode/",
"/docker",
"/scripts",
"/testdata",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A toolbox for converting, checking and serving map tiles in various formats."
homepage = "https://versatiles.org"
readme = "README.md"
keywords = [
"versatiles",
"mbtiles",
"pmtiles",
"tiles",
"map",
]
categories = [
"command-line-utilities",
"science::geo",
"web-programming::http-server",
]
license = "MIT"
repository = "https://github.com/versatiles-org/versatiles-rs"
resolver = "2"
[features]
cli = [
"dep:colored",
"dep:clap",
]
default = []
ssh2 = [
"dep:ssh2",
"dep:ssh2-config",
"dep:socket2",
]
test = []
[lib]
name = "versatiles_core"
path = "src/lib.rs"
[[bench]]
name = "byte_iterator"
path = "benches/byte_iterator.rs"
harness = false
[[bench]]
name = "cache_performance"
path = "benches/cache_performance.rs"
harness = false
[[bench]]
name = "csv"
path = "benches/csv.rs"
[[bench]]
name = "multithreading_optimizations"
path = "benches/multithreading_optimizations.rs"
harness = false
[dependencies.anyhow]
version = "1.0.102"
features = ["std"]
default-features = false
[dependencies.async-trait]
version = "0.1.89"
default-features = false
[dependencies.brotli]
version = "8.0.4"
features = ["std"]
default-features = false
[dependencies.byteorder]
version = "1.5.0"
features = ["std"]
default-features = false
[dependencies.clap]
version = "4.6.1"
features = [
"default",
"derive",
"wrap_help",
"derive",
]
optional = true
[dependencies.colored]
version = "3.1.1"
optional = true
default-features = false
[dependencies.dashmap]
version = "6.2"
[dependencies.enumset]
version = "1.1.13"
default-features = false
[dependencies.flate2]
version = "1.1.9"
features = ["default"]
default-features = false
[dependencies.futures]
version = "0.3.32"
features = ["default"]
[dependencies.itertools]
version = "0.15.0"
default-features = false
[dependencies.log]
version = "0.4.32"
default-features = false
[dependencies.lru]
version = "0.18"
[dependencies.num-traits]
version = "0.2.19"
[dependencies.num_cpus]
version = "1.17.0"
default-features = false
[dependencies.percent-encoding]
version = "2"
[dependencies.regex]
version = "1.12.4"
features = [
"std",
"unicode-case",
"unicode-perl",
]
default-features = false
[dependencies.reqwest]
version = "0.13.4"
features = ["default-tls"]
default-features = false
[dependencies.socket2]
version = "0.6"
optional = true
[dependencies.ssh2]
version = "0.9"
optional = true
[dependencies.ssh2-config]
version = "0.7"
optional = true
default-features = false
[dependencies.tokio]
version = "1.52.3"
features = [
"rt-multi-thread",
"sync",
]
[dependencies.versatiles_derive]
version = "4.2.2"
default-features = false
[dependencies.zstd]
version = "0.13.3"
default-features = false
[dev-dependencies.approx]
version = "0.5.1"
features = ["std"]
default-features = false
[dev-dependencies.assert_fs]
version = "1.1.4"
[dev-dependencies.criterion]
version = "0.8.2"
[dev-dependencies.rstest]
version = "0.26.1"
default-features = false
[dev-dependencies.tempfile]
version = "3.27.0"
[dev-dependencies.tokio]
version = "1.52.3"
features = [
"rt-multi-thread",
"sync",
"macros",
]
[dev-dependencies.wildmatch]
version = "2.6.1"
default-features = false
[target."cfg(unix)".dev-dependencies.arc-swap]
version = "1.9"
[target."cfg(unix)".dev-dependencies.dashmap]
version = "6.2"
[target."cfg(unix)".dev-dependencies.moka]
version = "0.12"
features = ["future"]
[target."cfg(unix)".dev-dependencies.parking_lot]
version = "0.12"
[target."cfg(unix)".dev-dependencies.russh]
version = "0.61"
[target."cfg(unix)".dev-dependencies.russh-sftp]
version = "2.3"
[lints.clippy]
cast_precision_loss = "allow"
doc_markdown = "allow"
duration_suboptimal_units = "allow"
ignored_unit_patterns = "allow"
items_after_statements = "allow"
iter_without_into_iter = "allow"
match_wildcard_for_single_variants = "allow"
missing_errors_doc = "allow"
missing_fields_in_debug = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "deny"
return_self_not_must_use = "allow"
similar_names = "allow"
trivially_copy_pass_by_ref = "allow"
unnecessary_debug_formatting = "allow"
unnecessary_literal_bound = "allow"
unnecessary_wraps = "allow"
unreadable_literal = "allow"
used_underscore_binding = "allow"
[lints.clippy.pedantic]
level = "deny"
priority = -1
[lints.rust]
unused_imports = "deny"