0.11.0 - C++ improvements & better Visible History
Rerun is an easy-to-use visualization toolbox for multimodal and temporal data
- Python:
pip install rerun-sdk
- Rust:
cargo add rerun
andcargo install rerun-cli
- Online demo: https://app.rerun.io/version/0.11.0/
- C++
FetchContent
: https://github.com/rerun-io/rerun/releases/download/0.11.0/rerun_cpp_sdk.zip
Release blog post: https://www.rerun.io/blog/cpp-sdk
visible.time.range.mp4
Overview & Highlights
- 🌊 C++ SDK improvements
- Reference docs are live!
- 2x-5x faster logging
- CMake install support and other CMake setup improvements
- Support for custom components & archetypes
- Zero copy logging for images, various API improvements
- 📈 Visual History -> Visual Time Range
- Time series plots can now limit its query to a range
- Much more powerful UI, allowing query ranges relative to time cursor
- 🕸️ The viewer can now be easily embedded in your web apps via our npm package
- 🐍
⚠️ Legacy Python API now removed, check the migration guide if you're not usingrr.log
yet - 🦀 The new
StoreSubscriber
trait allows to be notified of all changes in the datastore. This can be used to build custom indices and trigger systems, and serves as a foundation for upcoming performance improvements. Check out our example for more information.
- Time cursor sometimes stops scrolling correctly on plot window
- Still doesn't work with transforms
Special thanks to @Dvad & @dangush for contributing!
Details
🌊 C++ SDK
- Support std::chrono types for
set_time
onrerun::RecordingStream
#4134 - Improve rerun_cpp readme & CMakeLists.txt #4126
- Replace the many parameters of
rerun::spawn
/rerun::RecordingStream::spawn
with astruct
#4149 - Make on TextLogLevel PascalCase (instead of SCREAMING CASE) to avoid clashes with preprocessor defines #4152
- Reduce rerun_c library size (by depending on fewer unnecessary crates) #4147
- Fix unnecessary includes in code generated headers #4132
- Doxygen documentation & many doc improvements #4191
- Rename
rerun::ComponentBatch
torerun::Collection
(and related constructs) #4236 - Use
rerun::Collection
almost everywhere we'd usestd::vector
before #4247 - Significantly improve C++ logging performance by using C FFI instead of arrow IPC #4273
- Further improve C++ logging for many individual log calls by introducing a component type registry #4296
- All C++ datatypes & components now implement a new Loggable trait #4305
- Add C++ Custom Component example #4309
- Expose Rerun source/include dir in CMakeLists.txt (
RERUN_CPP_SOURCE_DIR
) #4313 - Support cmake install #4326
- Export TensorBuffer & TensorDimension to rerun namespace #4331
- C++ SDK sanity checks now header/source version against rerun_c binary version #4330
- Allow creating Image/Tensor/DepthImage/SegmentationImage directly from shape & pointer #4345
🐍 Python SDK
- Python: remove legacy APIs #4037
- Remove deprecated
rerun_demo
package #4293 - Python: don't catch
KeyboardInterrupt
andSystemExit
#4333 (thanks @Dvad!)
🪳 Bug Fixes
- Fix line & points (& depth clouds points) radii being unaffected by scale & projection via Pinhole #4199
- Fix inaccessible entities being incorrectly added to space view #4226
- Silence spammy blueprint warnings and validate blueprint on load #4303
- Fix markdown heading size #4178
🌁 Viewer Improvements
- Add command to copy direct link to fully qualified URL #4165
- Implement recording/last-modified-at aware garbage collection #4183
🖼 UI Improvements
- Improve Visible History to support more general time queries #4123
- Add support for Visible History to time series space views #4179
- Make Visible History UI more ergonomic and show inherited values #4222
- Display Visible History on timeline when the mouse hovers the UI #4259
- Improve the Selection Panel with better title, context, and Space View key properties #4324
🕸️ Web
- Put web viewer on
npm
#4003 - Auto-switch port when getting AddrInUse error #4314 (thanks @dangush!)
- Generate per-PR web apps #4341
🧑💻 Dev-experience
- Simple logging benchmarks for C++ & Rust #4181
- New debug option to show the blueprint in the streams view #4189
- Use pixi over setup scripts on CI + local dev #4302
- Run deploy docs jobs serially #4232
- fix windows test config on main #4242