re_log_encoding 0.20.1

Helpers for encoding and transporting Rerun log messages
Documentation
[package]
name = "re_log_encoding"
authors.workspace = true
description = "Helpers for encoding and transporting Rerun log messages"
edition.workspace = true
homepage.workspace = true
include.workspace = true
license.workspace = true
publish = true
readme = "README.md"
repository.workspace = true
rust-version.workspace = true
version.workspace = true

[lints]
workspace = true

[package.metadata.docs.rs]
all-features = true


[features]
default = []

## Enable loading data from an .rrd file.
decoder = ["dep:rmp-serde", "dep:lz4_flex", "re_log_types/serde"]

## Enable encoding of log messages to an .rrd file/stream.
encoder = ["dep:rmp-serde", "dep:lz4_flex", "re_log_types/serde"]

## Enable streaming of .rrd files from HTTP.
stream_from_http = [
  "decoder",
  "dep:ehttp",
  "dep:js-sys",
  "dep:wasm-bindgen-futures",
  "dep:wasm-bindgen",
  "dep:web-sys",
  "dep:web-time",
]

[dependencies]

# Rerun:
re_build_info.workspace = true
re_chunk.workspace = true
re_log_types.workspace = true
re_log.workspace = true
re_smart_channel.workspace = true
re_tracing.workspace = true

# External:
parking_lot.workspace = true
thiserror.workspace = true

# Optional external dependencies:
ehttp = { workspace = true, optional = true, features = ["streaming"] }
lz4_flex = { workspace = true, optional = true }
rmp-serde = { workspace = true, optional = true }
web-time = { workspace = true, optional = true }

# Web dependencies:
[target.'cfg(target_arch = "wasm32")'.dependencies]
js-sys = { workspace = true, optional = true }
wasm-bindgen = { workspace = true, optional = true }
wasm-bindgen-futures = { workspace = true, optional = true }
web-sys = { workspace = true, optional = true, features = ["Window"] }

[dev-dependencies]
re_types.workspace = true

criterion.workspace = true
mimalloc.workspace = true
serde_test.workspace = true

[lib]
bench = false

[[bench]]
name = "msg_encode_benchmark"
harness = false