-
Notifications
You must be signed in to change notification settings - Fork 373
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
rerun
library has native_viewer
feature on by default
#1997
Labels
😤 annoying
Something in the UI / SDK is annoying to use
🧑💻 dev experience
developer experience (excluding CI)
🚀 performance
Optimization, memory use, etc
🦀 Rust API
Rust logging API
Comments
emilk
added
🦀 Rust API
Rust logging API
🧑💻 dev experience
developer experience (excluding CI)
😤 annoying
Something in the UI / SDK is annoying to use
🚀 performance
Optimization, memory use, etc
labels
Apr 28, 2023
emilk
added a commit
that referenced
this issue
May 9, 2023
This improves compile-times for users that use an external rerun binary. The `rerun` binary, on the other hand, now has `native_viewer` as a _required_ feature. In is an unhappy compromise. Closes #1997
1 task
emilk
added a commit
that referenced
this issue
May 9, 2023
This improves compile-times for users that use an external rerun binary. The `rerun` binary, on the other hand, now has `native_viewer` as a _required_ feature. In is an unhappy compromise. Closes #1997
jprochazk
pushed a commit
that referenced
this issue
May 11, 2023
This improves compile-times for users that use an external rerun binary. The `rerun` binary, on the other hand, now has `native_viewer` as a _required_ feature. In is an unhappy compromise. Closes #1997
emilk
added a commit
that referenced
this issue
May 20, 2023
Closes #1997 Most of our users only use the `rerun` library as a logging library but are still paying the cost of compiling the native viewer. With this PR, the `rerun` crate will not have the `native_viewer` (not `web_viewer`) feature on by default. This halves the compilation time on my computer. The `native_viewer` feature is only for users using the `show` or `spawn` features, which will hopefully be removed soon anyay: * #2109 To install the `rerun` binary with `native_viewer` and `web_viewer`, you now have to run `cargo install rerun --features binary`. This will be improved by: * #2108 To make things nicer for us developers, I've added `cargo rerun` as a shorthand for compiling and running `rerun` with the `native_viewer` feature, but NOT the `web_viewer` feature.
emilk
added a commit
that referenced
this issue
May 20, 2023
Closes #1997 Most of our users only use the `rerun` library as a logging library but are still paying the cost of compiling the native viewer. With this PR, the `rerun` crate will not have the `native_viewer` (not `web_viewer`) feature on by default. This halves the compilation time on my computer. The `native_viewer` feature is only for users using the `show` or `spawn` features, which will hopefully be removed soon anyay: * #2109 To install the `rerun` binary with `native_viewer` and `web_viewer`, you now have to run `cargo install rerun --features binary`. This will be improved by: * #2108 To make things nicer for us developers, I've added `cargo rerun` as a shorthand for compiling and running `rerun` with the `native_viewer` feature, but NOT the `web_viewer` feature.
1 task
emilk
added a commit
that referenced
this issue
May 22, 2023
Closes #1997 Most of our users only use the `rerun` library as a logging library but are still paying the cost of compiling the native viewer. With this PR, the `rerun` crate will not have the `native_viewer` (not `web_viewer`) feature on by default. This halves the compilation time on my computer. The `native_viewer` feature is only for users using the `show` or `spawn` features, which will hopefully be removed soon anyay: * #2109 To install the `rerun` binary with `native_viewer` and `web_viewer`, you now have to run `cargo install rerun --features binary`. This will be improved by: * #2108 To make things nicer for us developers, I've added `cargo rerun` as a shorthand for compiling and running `rerun` with the `native_viewer` feature, but NOT the `web_viewer` feature.
emilk
added a commit
that referenced
this issue
May 23, 2023
* Remove `native_viewer` from the default features of `rerun` crate Closes #1997 Most of our users only use the `rerun` library as a logging library but are still paying the cost of compiling the native viewer. With this PR, the `rerun` crate will not have the `native_viewer` (not `web_viewer`) feature on by default. This halves the compilation time on my computer. The `native_viewer` feature is only for users using the `show` or `spawn` features, which will hopefully be removed soon anyay: * #2109 To install the `rerun` binary with `native_viewer` and `web_viewer`, you now have to run `cargo install rerun --features binary`. This will be improved by: * #2108 To make things nicer for us developers, I've added `cargo rerun` as a shorthand for compiling and running `rerun` with the `native_viewer` feature, but NOT the `web_viewer` feature. * Add rerun-cli Users will now install the `rerun` binary with `cargo install rerun-cli` * Add a README.md * better text about how to run examples Co-authored-by: Andreas Reich <[email protected]> * Improve docs * Update RELEASES.md * Add checking of the docs to the release process --------- Co-authored-by: Andreas Reich <[email protected]>
emilk
added a commit
that referenced
this issue
May 25, 2023
* Remove `native_viewer` from the default features of `rerun` crate Closes #1997 Most of our users only use the `rerun` library as a logging library but are still paying the cost of compiling the native viewer. With this PR, the `rerun` crate will not have the `native_viewer` (not `web_viewer`) feature on by default. This halves the compilation time on my computer. The `native_viewer` feature is only for users using the `show` or `spawn` features, which will hopefully be removed soon anyay: * #2109 To install the `rerun` binary with `native_viewer` and `web_viewer`, you now have to run `cargo install rerun --features binary`. This will be improved by: * #2108 To make things nicer for us developers, I've added `cargo rerun` as a shorthand for compiling and running `rerun` with the `native_viewer` feature, but NOT the `web_viewer` feature. * Add rerun-cli Users will now install the `rerun` binary with `cargo install rerun-cli` * Add a README.md * better text about how to run examples Co-authored-by: Andreas Reich <[email protected]> * Improve docs * Update RELEASES.md * Add checking of the docs to the release process --------- Co-authored-by: Andreas Reich <[email protected]>
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
🧑💻 dev experience
developer experience (excluding CI)
🚀 performance
Optimization, memory use, etc
🦀 Rust API
Rust logging API
A lot of users of the
rerun
rust library will never want to call thespawn
method, yet thenative_viewer
is a default feature, pulling in a huge dependency tree leading to very long compile times.We have it as a default dependency, because that's what we want for the
rerun
binary, i.e. when usingcargo install rerun
.Solutions
Different default features for library and binary
Ideally we would have different default features for the library and the binary, but that is not yet possible:
default
features for each [[bin]] rust-lang/cargo#10409Tell people to use opt-out of
native_viewer
We can add a
library
feature set with everything except thenative_viewer
and ask people to do:Downsides:
cargo add rerun
orrerun = "0.6"
Push people towards using
re_sdk
as a libraryWe can push users towards using
re_sdk
instead of using thererun
crate as a library.Downsides:
native_viewer
Remove
native_viewer
from defaultsAnd change our install instructions to suggest
cargo install rerun --all-features
Downsides:
cargo r -p rerun
no longer has the native viewer--all-features
because that will enable experimental features, butcargo install rerun --features native_viewer
is quite the mouthfulRemove
native_viewer
from defaults, add to[[bin]] required-features
That is:
Downsides:
rerun
binary without thenative_viewer
feature.cargo install rerun
won't work. Users will need to runcargo install rerun --features native_viewer
(Revert "native_viewer
is now an opt-in feature of thererun
library" #2067)The text was updated successfully, but these errors were encountered: