0.37.0
rerun-io/rerun0.37.0Sep 1, 2026by rerun-bot
AI Summary
Renames the `datatypes` module to `encodings`, introduces assets into the catalog system, and significantly improves dataloader performance and decoding speed.
Key Highlights
- Assets in catalogs for data sharing across segments
- Export recordings and blueprints from the web Viewer
- `rerun rrd stats` command for optimization checks
- Faster video decoding for training
- Unified fetch and decode pipeline for dataloaders
Breaking Changes
- `datatypes` renamed to `encodings` (old spelling deprecated)
- Rust SDK now requires Rust 1.96 or later
- `Loggable` trait replaced by `ArrowDataType`, `ToArrow`, `ToArrowOpt`, `FromArrow`, `FromArrowOpt`
- Python: `rerun-sdk[datafusion]` and `rerun-sdk[dataplatform]` extras removed, use `rerun-sdk[catalog]`
- Python: `Mp4Reader` emits `VideoStream:is_keyframe` as a single sparse marker chunk
- Python: experimental dataloader windows list explicit offsets instead of inclusive range
- Setting a recording id no longer disables recording properties (use `send_properties(false)` to opt out)
New Features
- `datatypes` renamed to `encodings`
- Manifest support for map dataset
- Dataloader batch decoding
- Unified fetch and decode pipeline
- Faster video decoding (FFmpeg threading)
- Skip samples with decoders returning None
- Rely on keyframes for manifest
- Include assets in `segment_store()`
- `rrd::optimize_file` API
- Split importers into a la carte features
Full Release Notes
[Rerun](https://www.rerun.io/) is an easy-to-use database and visualization toolbox for multimodal and temporal data. Try it live at https://rerun.io/viewer. - Python: `pip install -U rerun-sdk` - Rust: `cargo add rerun` and `cargo install rerun-cli --locked` - Online demo: https://rerun.io/viewer - C++ FetchContent: https://github.com/rerun-io/rerun/releases/download/0.37.0/rerun_cpp_sdk.zip --- π§³ Migration guide: https://rerun.io/docs/changelog/changeset-0-37#breaking-changes ### β¨ Overview & highlights - Assets in catalogs, data shared across all segments - Improved selection panel navigation - State timeline view improvements - Export recordings and blueprints from the web Viewer - `rerun rrd stats` tells you whether a recording should be optimized - Experimental dataloaders use a unified fetch and decode pipeline - Faster video decoding for training - Faster manifest generation for video datasets π Release notes: https://rerun.io/docs/changelog/changeset-0-37#highlights ### β οΈ Breaking changes - **All SDKs**: `datatypes` is renamed to `encodings`. The old spelling still works, deprecated. - **Rust**: the SDK now requires Rust 1.96 or later. - **Rust, C++**: setting a recording id no longer disables recording properties. Opt out with `send_properties(false)`. - **Rust**: `Loggable` is replaced by `ArrowDataType`, `ToArrow`, `ToArrowOpt`, `FromArrow` and `FromArrowOpt`. - **Python**: the `rerun-sdk[datafusion]` and `rerun-sdk[dataplatform]` extras are removed, use `rerun-sdk[catalog]`. - **Python**: the experimental `Mp4Reader` emits `VideoStream:is_keyframe` as a single sparse marker chunk. - **Python**: experimental dataloader decoders now decode a whole fetch block at a time. - **Python**: experimental dataloader windows list explicit offsets instead of an inclusive range. π§³ Migration guide: https://rerun.io/docs/changelog/changeset-0-37#breaking-changes ### π Details #### π C++ API - Rename `datatypes` to `encodings` [582f273](https://github.com/rerun-io/rerun/commit/582f27394c071d4ae6464c60e75bc598fee013b1) - Send recording properties even when a recording id is set [f40451b](https://github.com/rerun-io/rerun/commit/f40451b0b6d1d0f5a1d251cd924b41ddebcd999f) #### π Python API - Rename `datatypes` to `encodings` [582f273](https://github.com/rerun-io/rerun/commit/582f27394c071d4ae6464c60e75bc598fee013b1) - Add manifest support for the map dataset [e5077f3](https://github.com/rerun-io/rerun/commit/e5077f3ec483e5ec083143d28a2a6c3eb4232e59) - dataloader: Batch decoding of fetched samples [132284c](https://github.com/rerun-io/rerun/commit/132284c2b2f6e46356ed9235e63bf857e58a7695) - Remove deprecated `rerun-sdk[datafusion]` and `rerun-sdk[dataplatform]` in favor of `rerun-sdk[catalog]` [b51a09a](https://github.com/rerun-io/rerun/commit/b51a09a66c4f6f6f212f4a57d121da395600af06) - Experimental dataloaders use a unified fetch and decode pipeline [ec9488e](https://github.com/rerun-io/rerun/commit/ec9488e46a424e4987c3da5f0d555fa16fb6ca19) - Make windows supported for all decoders, force `is_keyframe` for video fields [c7feeed](https://github.com/rerun-io/rerun/commit/c7feeedf966f64903c5ba293c06f8461914cb052) - Faster video decoding: frame views, YUV output, and FFmpeg threading [23d97be](https://github.com/rerun-io/rerun/commit/23d97beddc6fbd3a878d02c934d5c59dd8b19ed4) - dataloader: skip samples whose decoders return `None` [19dd869](https://github.com/rerun-io/rerun/commit/19dd869d9f38eee5ecd3fc92bdc8ac923fbaaed1) - Rely on keyframes only for the manifest [4dea0aa](https://github.com/rerun-io/rerun/commit/4dea0aada0ac2dea2e1a43462879b5b55ba91110) - Include assets in `segment_store()` [52a16b8](https://github.com/rerun-io/rerun/commit/52a16b8276c19e4a69abe246a56ccec5afeb3b06) #### π¦ Rust API - Rename `datatypes` to `encodings` [582f273](https://github.com/rerun-io/rerun/commit/582f27394c071d4ae6464c60e75bc598fee013b1) - Send recording properties even when a recording id is set [f40451b](https://github.com/rerun-io/rerun/commit/f40451b0b6d1d0f5a1d251cd924b41ddebcd999f) - Update to Rust 1.96.0 [dcfb289](https://github.com/rerun-io/rerun/commit/dcfb2891f7b29d61b0d29837c900a91744b3c1b5) - Replace `Loggable` with four (de)serialization traits [de85d2f](https://github.com/rerun-io/rerun/commit/de85d2f60c143cb69c3e3d34b10fbb0787e0383a) - Add a standalone `rrd::optimize_file` API to the `rerun` crate [7f4ee31](https://github.com/rerun-io/rerun/commit/7f4ee3143084d388dc9e0584d6a64111c5394cc0) - refactor: split importers into their own a la carte features to improve compile times [#12899](https://github.com/rerun-io/rerun/pull/12899) (thanks [@claytonwramsey](https://github.com/claytonwramsey)!) #### πͺ³ Bug fixes - fix: keep query_dataset response schemas consistent for empty results [0d6f3ec](https://github.com/rerun-io/rerun/commit/0d6f3eccbc4e37115416317f5ae4829cc4dde7eb) - Fix recovery of MCAP messages with truncated index [3a9622f](https://github.com/rerun-io/rerun/commit/3a9622fa60d4eae7e2b522c739b0bdce054fcda2) - Fixes broken state timeline when lanes end with `Clear` [c358596](https://github.com/rerun-io/rerun/commit/c35859670baa81c5e24fc164b367e4b966f64697) - Show 3D labels projected into 2D views [d1a572a](https://github.com/rerun-io/rerun/commit/d1a572a0bd0dc99908bb33453f05006055bde04b) (thanks [@chunibyo-wly](https://github.com/chunibyo-wly)!) - Show MCAP CLI processing time as float seconds [99ca6b4](https://github.com/rerun-io/rerun/commit/99ca6b44aee3db762f04c02418a6ceaa19698ee1) - Remove "Reset overrides to default blueprint" button [fda2f10](https://github.com/rerun-io/rerun/commit/fda2f1024d6efc77eabef10cccd7fde52018015a) - Fix dataframe API rejecting non-nullable outer list fields on MCAP-converted recordings [c44ca0c](https://github.com/rerun-io/rerun/commit/c44ca0cc4bd3d507f8c880ede2753eb56a69ef72) - Fix error messages for potentially recoverable MCAP files [56b5be0](https://github.com/rerun-io/rerun/commit/56b5be047bc354de4488d6423ddb0c2e26eb60bb) - Fix `TransformAxes3D` blanking the whole 3D view when one frame is unresolvable [7c76d0d](https://github.com/rerun-io/rerun/commit/7c76d0d67f034eccf820e0072d9bb88e67238328) (thanks [@lsy3](https://github.com/lsy3), [@luke-alloy](https://github.com/luke-alloy)!) - Skip unloadable meshes instead of failing import [a013fe4](https://github.com/rerun-io/rerun/commit/a013fe4245313aee500a85c657fe90614089e811) - Fix containers not re-layouting when views are hidden [afbb031](https://github.com/rerun-io/rerun/commit/afbb0311ab9d57356c15d1c5b9e859d91a7ac8bb) - Fixes click on state lanes not selecting the entity [de1f2c3](https://github.com/rerun-io/rerun/commit/de1f2c3a3b7c42e54a79630cd39cc88bde43f6cb) - Fix opening links [04e6e08](https://github.com/rerun-io/rerun/commit/04e6e086b16fe005d517036f3732cc67ea36fb99) - Reflect dynamic `Struct` proto into JSON and guard against recursion [1202ee7](https://github.com/rerun-io/rerun/commit/1202ee7a0ed54f3b91fdec2c0b446c837c610509) - fix: validate e-tags mid-registrations and on get_rrd_manifest [e0c458f](https://github.com/rerun-io/rerun/commit/e0c458fede4cb3508049366faec5cb7cd408739b) - Fix video playing when there's many samples at the same timestamp [31d6687](https://github.com/rerun-io/rerun/commit/31d6687dfde4853564c4a0fb47e4aca9919295fa) - Fixes incompatible visualizers showing up in context menu [c8a597c](https://github.com/rerun-io/rerun/commit/c8a597ce2af7bdbe4e3ee37b392d498267103fa5) - Pass through frame info with av1 decoder [2c579bb](https://github.com/rerun-io/rerun/commit/2c579bbe67ef408cf509a8848e310949cbcedb90) - Fix detecting various link types (s3, gs, ftp etc.) as things we can open [3fa4313](https://github.com/rerun-io/rerun/commit/3fa4313c87711fab586086015d0a68e3fa7ea1ca) - Failure to load will now stay in loading screen (with error) for all log sources [f30766b](https://github.com/rerun-io/rerun/commit/f30766b13c048a59ea6d59ce0d057e0a4e4344e6) - Don't warn if an open asset is removed [24ca9b5](https://github.com/rerun-io/rerun/commit/24ca9b5284fb7a2cacdbb2a3f987950261324be7) - Fix URDF prismatic joints sliding along the wrong axis [397a4a5](https://github.com/rerun-io/rerun/commit/397a4a583cf2ccfdd0f8eef8d100e3700c8925a1) #### π Viewer improvements - Visible time range control for state view [c4c0f03](https://github.com/rerun-io/rerun/commit/c4c0f03f942a770e985035d23fae3f0da2a90c05) - Viewer downloading asset chunks and caching them [c0e306c](https://github.com/rerun-io/rerun/commit/c0e306c8d6489fa4091be20b61a7f78c29a710de) - State Timeline accepts dropping entities [3cb5761](https://github.com/rerun-io/rerun/commit/3cb5761bcda3d69e85b616c8e6b21c6db70d29bb) - Dataset Asset UI [700cfe5](https://github.com/rerun-io/rerun/commit/700cfe5cf56130d35128987f033b89a493304084) - Use `/dataset/<entry_id>` for URI's leading to datasets [5025e20](https://github.com/rerun-io/rerun/commit/5025e207bc2753925b530c40a8297bbf269c1f43) - Pins time cursor to center of state timeline [e2df8f0](https://github.com/rerun-io/rerun/commit/e2df8f0d04edf863bbb2461027a7c0a1a24d745b) - Registering & Unregistering assets in viewer [5ab20d4](https://github.com/rerun-io/rerun/commit/5ab20d45ab61b4e30bb386a7bbbd3fc48b40012c) #### π Performance improvements - Speed up schema reflection of ROS 2 MCAP channels [7b1aa5f](https://github.com/rerun-io/rerun/commit/7b1aa5fdd8bbc940621ecf65e17138972301c9c8) - Support incremental ingest for SortedTemporalChunks [#12812](https://github.com/rerun-io/rerun/pull/12812) (thanks [@0n41rd4](https://github.com/0n41rd4)!) #### πΌ UI improvements - Improved selection panel navigation [3d82d44](https://github.com/rerun-io/rerun/commit/3d82d449a2c37886d40342ad7882bf5aff782d36) - Add back/forward history to the selection panel [2b9f5e4](https://github.com/rerun-io/rerun/commit/2b9f5e47ed085789e9e773abe4f0411651441141) #### πΈοΈ Web - Add `save_recording` & `save_blueprint` javascript APIs [a2660e5](https://github.com/rerun-io/rerun/commit/a2660e5047b065ab5c6f608c86c175e3bd7c4e8a) #### π§βπ» Dev-experience - Add an MP4Reader skill and fix a bug caught in reviewing the skill [e71975f](https://github.com/rerun-io/rerun/commit/e71975f92c45092ed1a6bc210773235a64fde004) #### π€·β Other - Chunk-index-based mergeability assessment [03c1a26](https://github.com/rerun-io/rerun/commit/03c1a26ed23fffa38820a54100e795fcdf913679) - Always put `IsKeyframe` into their own chunks [1e2790d](https://github.com/rerun-io/rerun/commit/1e2790d55b91856935134fd76ecc0b4ec1025ac4)