diff --git a/docs/src/development-guide/debugging.md b/docs/src/development-guide/debugging.md index 2a48ea92..f6c89d55 100644 --- a/docs/src/development-guide/debugging.md +++ b/docs/src/development-guide/debugging.md @@ -11,4 +11,24 @@ ## Frame Profiling -* tracing crate \ No newline at end of file +maplibre-rs is set up to use the Tracy profiler (https://github.com/wolfpld/tracy). It's mainly designed for C++ but has some Rust support. + +The connection to Rust uses a project that connects to the tracing crate (https://github.com/nagisa/rust_tracy_client). This uses a set of three crates (tracing-tracy, tracy-client, tracy-client-sys). + +Unfortunately, the Tracy project does not use semantic versioning, whereas tracing-tracy, tracy-client, tracy-client sys do. + +The current version of the Rust client is at v0.8.1 of Tracy. See the correlating versions in the table below (original at https://github.com/nagisa/rust_tracy_client#version-support-table): + +| Tracy | tracy-client-sys | tracy-client | tracing-tracy | +| ----- | ---------------- | ------------ | ------------- | +| 0.7.1 | 0.9.0 | 0.8.0 | 0.2.0 | +| 0.7.3 | 0.10.0 | 0.9.0 | 0.3.0 | +| 0.7.4 | 0.11.0 | 0.10.0 | 0.4.0 | +| 0.7.5 | 0.12.0 | 0.11.0 | 0.5.0 | +| 0.7.6 | 0.13.0, 0.14.0 | 0.12.* | 0.6.* | +| v0.7.7 | 0.15.0 | 0.12.* | 0.6.* | +| v0.7.8 | 0.16.0 | 0.12.* | 0.6.* | +| v0.7.8 | 0.16.0 | 0.12.* | 0.7.* | +| v0.7.8 | 0.16.0 | 0.12.* | 0.8.* | +| v0.8.1 | 0.17.* | 0.13.* | 0.9.* | +| v0.8.1 | 0.17.* | 0.14.* | 0.10.* | \ No newline at end of file diff --git a/justfile b/justfile index 2e036c1c..2e1a99cb 100644 --- a/justfile +++ b/justfile @@ -4,7 +4,7 @@ set shell := ["bash", "-c"] -export NIGHTLY_TOOLCHAIN := "nightly-2022-07-03-x86_64-unknown-linux-gnu" +export NIGHTLY_TOOLCHAIN := "nightly-2022-07-03" export CARGO_TERM_COLOR := "always" export RUST_BACKTRACE := "1" diff --git a/maplibre/Cargo.toml b/maplibre/Cargo.toml index 5e858fe3..0367c17d 100644 --- a/maplibre/Cargo.toml +++ b/maplibre/Cargo.toml @@ -22,10 +22,10 @@ tokio = { version = "1.20.1", features = ["macros", "rt", "rt-multi-thread", "sy tokio-util = { version = "0.7.1", features = ["rt"] } env_logger = "0.9.0" reqwest = { version = "0.11.11", default-features = false, features = ["rustls-tls", "gzip"] } -reqwest-middleware-cache = "0.1.1" -reqwest-middleware = "0.1.6" -tracing-tracy = { version = "0.10.0", optional = true } -tracy-client = { version = "0.14.0", optional = true } +reqwest-middleware-cache = "0.1.1" # FIXME: Untrusted dependency +reqwest-middleware = "0.1.6" # FIXME: Untrusted dependency +tracing-tracy = { version = "0.10", optional = true } +tracy-client = { version = "0.14", optional = true } [target.'cfg(target_os = "android")'.dependencies] # Use rusttls on android because cross compiling is difficult