New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
re_sdk
should not depend on ehttp
#6090
Labels
😤 annoying
Something in the UI / SDK is annoying to use
🌊 C++ API
C or C++ logging API
dependencies
concerning crates, pip packages etc
🧑💻 dev experience
developer experience (excluding CI)
Milestone
Comments
emilk
added
😤 annoying
Something in the UI / SDK is annoying to use
dependencies
concerning crates, pip packages etc
labels
Apr 24, 2024
A proper developer dashboard would have caught this: |
emilk
added
🌊 C++ API
C or C++ logging API
🧑💻 dev experience
developer experience (excluding CI)
labels
Apr 24, 2024
emilk
added a commit
that referenced
this issue
May 3, 2024
Split out parts of `re_data_source` to a new crate `re_data_loader`. This makes the dependency list of `re_sdk` much lighter. * Closes #6090 `scripts/ci/count_dependencies.py -p re_sdk --all-features` goes from 204 -> 185 dependencies. ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [x] I have tested the web demo (if applicable): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6210?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6210?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6210) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
😤 annoying
Something in the UI / SDK is annoying to use
🌊 C++ API
C or C++ logging API
dependencies
concerning crates, pip packages etc
🧑💻 dev experience
developer experience (excluding CI)
Proplem
Pulling in
ehttp
mean pulling inrustls
which adds dynamic linking to libssl on Linux, which has broken C++ builds for some of our users.Cause
The PR #5330 added 70 crates of dependencies to
re_sdk
, and despite the warnings of our bot, no human noticed until today, almost TWO MONTHS later.rerun_c/Cargo.toml
hasre_sdk = { workspace = true, features = ["data_loaders"]}
to supportlog_file_from_path
.The
data_loaders
feature pulls inre_data_source
as a dependency.rerun_c -> re_sdk -> re_data_source -> re_log_encoding -> ehttp -> ureq -> rustls
To support
log_file_from_path
we don't need all ofre_data_source
though. In particular, we only need the file loading part of it, NOT ehttp.Related
The text was updated successfully, but these errors were encountered: