137 lines
4.4 KiB
TOML
137 lines
4.4 KiB
TOML
[package]
|
|
name = "rerun_py" # name of the rust crate
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
publish = false
|
|
rust-version.workspace = true
|
|
version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[lib]
|
|
crate-type = ["cdylib"]
|
|
name = "rerun_bindings" # name of the .so library that the Python module will import
|
|
|
|
|
|
[features]
|
|
default = ["extension-module", "perf_telemetry"]
|
|
|
|
## Extra features that aren't ready to be included in release builds yet.
|
|
extra = []
|
|
|
|
## The features we turn on when building the `rerun-sdk` PyPi package
|
|
## for <https://pypi.org/project/rerun-sdk/>.
|
|
pypi = ["extension-module", "nasm", "web_viewer", "server", "perf_telemetry"]
|
|
|
|
## We need to enable the `pyo3/extension-module` when building the SDK,
|
|
## but we cannot enable it when building tests and benchmarks, so we
|
|
## must make it an optional feature.
|
|
## * <https://pyo3.rs/latest/faq.html#i-cant-run-cargo-test-or-i-cant-build-in-a-cargo-workspace-im-having-linker-issues-like-symbol-not-found-or-undefined-reference-to-_pyexc_systemerror>
|
|
## * <https://pyo3.rs/main/building-and-distribution#building-python-extension-modules>
|
|
extension-module = ["pyo3/extension-module"]
|
|
|
|
## Enable faster native video decoding with assembly.
|
|
## You need to install [nasm](https://github.com/netwide-assembler/nasm) to compile with this feature.
|
|
nasm = ["re_video/nasm"]
|
|
|
|
## Enables integration with `re_perf_telemetry` (OpenTelemetry, Jaeger).
|
|
##
|
|
## This only works on native.
|
|
perf_telemetry = [
|
|
"dep:re_perf_telemetry",
|
|
"re_redap_client/perf_telemetry",
|
|
"re_perf_telemetry/session_id_reader",
|
|
]
|
|
|
|
## Add support for the in-memory OSS server.
|
|
server = ["re_sdk/server", "dep:re_grpc_server"]
|
|
|
|
## Support serving a web viewer over HTTP with `serve()`.
|
|
##
|
|
## Enabling this adds quite a bit to the binary size,
|
|
## since it requires bundling the viewer as wasm.
|
|
web_viewer = ["re_sdk/web_viewer", "dep:re_web_viewer_server", "dep:re_grpc_server"]
|
|
|
|
|
|
[dependencies]
|
|
re_arrow_util.workspace = true
|
|
re_auth.workspace = true
|
|
re_build_info.workspace = true
|
|
re_chunk.workspace = true
|
|
re_lenses_core.workspace = true
|
|
re_lenses.workspace = true
|
|
re_chunk_store.workspace = true
|
|
re_format.workspace = true
|
|
re_importer.workspace = true
|
|
re_datafusion.workspace = true
|
|
re_error.workspace = true
|
|
re_redap_client.workspace = true
|
|
re_grpc_client.workspace = true
|
|
re_grpc_server = { workspace = true, optional = true }
|
|
re_log = { workspace = true, features = ["setup"] }
|
|
re_log_encoding.workspace = true
|
|
re_log_types.workspace = true
|
|
re_mcap.workspace = true
|
|
re_mp4_reader.workspace = true
|
|
re_parquet.workspace = true
|
|
re_memory.workspace = true
|
|
re_quota_channel.workspace = true
|
|
re_sdk = { workspace = true, features = ["importers"] }
|
|
re_sorbet.workspace = true
|
|
re_tracing = { workspace = true, features = ["server"] }
|
|
re_tuid.workspace = true
|
|
re_types_core.workspace = true
|
|
re_uri.workspace = true
|
|
re_video.workspace = true
|
|
re_web_viewer_server = { workspace = true, optional = true }
|
|
re_server = { workspace = true, features = ["lance"] }
|
|
|
|
anyhow.workspace = true
|
|
arrow = { workspace = true, features = ["pyarrow"] }
|
|
chrono.workspace = true #TODO(#9317): migrate to jiff
|
|
comfy-table.workspace = true
|
|
crossbeam.workspace = true
|
|
datafusion.workspace = true
|
|
datafusion-ffi.workspace = true
|
|
document-features.workspace = true
|
|
futures.workspace = true
|
|
itertools.workspace = true
|
|
jiff.workspace = true
|
|
memmap2.workspace = true
|
|
infer.workspace = true
|
|
mimalloc = { workspace = true, features = ["local_dynamic_tls"] }
|
|
numpy.workspace = true
|
|
parking_lot.workspace = true
|
|
pyo3 = { workspace = true, features = [
|
|
"abi3-py310", # Require at least Python 3.10
|
|
"chrono", #TODO(#9317): migrate to jiff
|
|
] }
|
|
rand = { workspace = true, features = ["std", "std_rng"] }
|
|
rustls = { workspace = true, features = ["ring"] }
|
|
strum.workspace = true
|
|
strum_macros.workspace = true
|
|
tracing.workspace = true
|
|
uuid.workspace = true
|
|
|
|
# Deps for remote feature
|
|
re_protos = { workspace = true, features = ["py"] }
|
|
tokio = { workspace = true, features = ["rt-multi-thread"] }
|
|
tokio-stream.workspace = true
|
|
tonic = { workspace = true, default-features = false, features = ["transport"] }
|
|
url.workspace = true
|
|
thiserror.workspace = true
|
|
|
|
# Native dependencies:
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
re_perf_telemetry = { workspace = true, features = ["session_id_reader"], optional = true }
|
|
|
|
|
|
[dev-dependencies]
|
|
tempfile.workspace = true
|
|
|
|
|
|
[build-dependencies]
|
|
re_build_tools.workspace = true
|
|
pyo3-build-config.workspace = true
|