|
1 | 1 | # Rerun changelog
|
2 | 2 |
|
3 |
| -## [Unreleased](https://github.com/rerun-io/rerun/compare/latest...HEAD) |
| 3 | +## [Unreleased](https://github.com/rerun-io/rerun/compare/0.21.0...HEAD) - Entity filter & improved partial update API |
| 4 | + |
| 5 | +TODO(andreas): add link to release video |
| 6 | + |
| 7 | +📖 Release blogpost: TODO(andreas): add link |
| 8 | + |
| 9 | +🧳 Migration guide: https://rerun.io/docs/reference/migration/migration-0-22?speculative-link |
| 10 | + |
| 11 | +### ✨ Overview & highlights |
| 12 | + |
| 13 | +#### Viewer |
| 14 | +* 🔎 Added entity filtering/searching |
| 15 | +* 🔔 Recent notifications show now in a dedicated panel |
| 16 | +* 🖱️ Entity ranges can now be selected with shift + click |
| 17 | + |
| 18 | +#### APIs |
| 19 | +* 🔄 [Much easier partial updates of archetypes](https://rerun.io/docs/howto/logging/send-partial-updates?speculative-link) |
| 20 | +* 📊 [Greatly improved ease of use of `send_columns`](https://rerun.io/docs/howto/logging/send-columns?speculative-link) |
| 21 | +* ⏱️ Python notebooks & JS can now control the timeline with `set_time_ctrl` TODO(#8894): link to the api/an example |
| 22 | +* 📝 Lots of [new snippets](https://github.com/rerun-io/rerun/blob/0.22.0/docs/snippets/INDEX.md?speculative-link) for demonstrating partial updates & custom data logging in Python/C++/Rust |
| 23 | + |
| 24 | +The API & related under-the-hood changes pave the way for better support for multiple archetypes on the same entity and components with generic types in future releases. |
| 25 | +Stay tuned! |
| 26 | + |
| 27 | +### ⚠️ Breaking changes |
| 28 | +TODO(andreas): fill in |
| 29 | +🧳 Migration guide: https://rerun.io/docs/reference/migration/migration-0-22?speculative-link |
| 30 | + |
| 31 | +### 🔎 Details |
| 32 | + |
| 33 | +#### 🪵 Log API |
| 34 | +- Tensor shape and dimension names are now separate arrow fields [#8376](https://github.com/rerun-io/rerun/pull/8376) |
| 35 | +- Remove deprecated `DisconnectedSpace` archetype & component [#8545](https://github.com/rerun-io/rerun/pull/8545) |
| 36 | +- Add `any_values` and `extra_values` snippets for rust [#8718](https://github.com/rerun-io/rerun/pull/8718) |
| 37 | +- Implement gRPC log sink [#8709](https://github.com/rerun-io/rerun/pull/8709) |
| 38 | +- Implement gRPC log stream [#8730](https://github.com/rerun-io/rerun/pull/8730) |
| 39 | + |
| 40 | +#### 🌊 C++ API |
| 41 | +- Fix compilation for GCC 13.3 (missing `cstdint` include) [#8609](https://github.com/rerun-io/rerun/pull/8609) (thanks [@plumonito](https://github.com/plumonito)!) |
| 42 | +- Introduce eager serialization & update/clear APIs in the C++ SDK [#8727](https://github.com/rerun-io/rerun/pull/8727) |
| 43 | +- Make all C++ archetypes eager serialized & provide generated update/clear APIs [#8779](https://github.com/rerun-io/rerun/pull/8779) |
| 44 | +- C++ `columns` method for convenient `send_columns` call through archetypes [#8828](https://github.com/rerun-io/rerun/pull/8828) |
| 45 | +- Add `with_many_` variants for C++ archetype mono fields & port remaining snippets [#8836](https://github.com/rerun-io/rerun/pull/8836) |
| 46 | +- Require descriptors to be provided on all log calls in C++ (either explicitly or implicitly via archetype) [#8853](https://github.com/rerun-io/rerun/pull/8853) |
| 47 | +- Deprecate C++ `TimeColumn::from_sequence_points` in favor of `TimeColumn::from_sequence` [#8882](https://github.com/rerun-io/rerun/pull/8882) |
| 48 | +- `AsComponents::serialize` is now `AsComponents::as_batches` and returns `Collection<ComponentBatch>` [#8884](https://github.com/rerun-io/rerun/pull/8884) |
| 49 | +- Make it easy to log custom arrow data in C++ [#8880](https://github.com/rerun-io/rerun/pull/8880) |
| 50 | +- Rerun CMake dependency now automatically ensures C++17 or newer [#8898](https://github.com/rerun-io/rerun/pull/8898) |
| 51 | + |
| 52 | +#### 🐍 Python API |
| 53 | +- Autogenerated partial updates APIs for Python [#8671](https://github.com/rerun-io/rerun/pull/8671) |
| 54 | +- Remove unused `num_instances()` method [#8702](https://github.com/rerun-io/rerun/pull/8702) |
| 55 | +- Tagged columnar updates: Python [#8792](https://github.com/rerun-io/rerun/pull/8792) |
| 56 | +- Include a python API for routing time control commands to the notebook instance [#8809](https://github.com/rerun-io/rerun/pull/8809) |
| 57 | +- Python: remove legacy `send_columns` and update everything left [#8799](https://github.com/rerun-io/rerun/pull/8799) |
| 58 | +- Deprecate Python's `log_components` [#8892](https://github.com/rerun-io/rerun/pull/8892) |
| 59 | + |
| 60 | +#### 🦀 Rust API |
| 61 | +- Update MSRV to 1.81 [#8529](https://github.com/rerun-io/rerun/pull/8529) |
| 62 | +- Fix `RecordingStream::log` implicitly requiring `Sized` [#8587](https://github.com/rerun-io/rerun/pull/8587) |
| 63 | +- Add example for extending the viewer with custom callbacks [#8284](https://github.com/rerun-io/rerun/pull/8284) |
| 64 | +- `EntityPathFilter` variable substitutions are now delegated to (new) `ResolvedEntityPathFilter` [#8543](https://github.com/rerun-io/rerun/pull/8543) |
| 65 | +- Specify, test, and fix all broken `AsComponents`<>`ComponentBatch` interactions from blanket impls [#8591](https://github.com/rerun-io/rerun/pull/8591) |
| 66 | +- New types and traits for (co-existing!) eager serialization [#8642](https://github.com/rerun-io/rerun/pull/8642) |
| 67 | +- Autogenerate tagging-compliant descriptor methods for all archetypes [#8643](https://github.com/rerun-io/rerun/pull/8643) |
| 68 | +- Automatically generate partial update APIs for eager archetypes [#8647](https://github.com/rerun-io/rerun/pull/8647) |
| 69 | +- Tagged columnar updates: Rust [#8764](https://github.com/rerun-io/rerun/pull/8764) |
| 70 | +- Make `Box`/`AssetVideo`/`ViewCoordinates`/`Asset3D` eager serialized in Rust [#8785](https://github.com/rerun-io/rerun/pull/8785) |
| 71 | +- Make `Pinhole` archetype in Rust eager serialized [#8789](https://github.com/rerun-io/rerun/pull/8789) |
| 72 | +- Make `Image` & `Mesh3D` archetypes in Rust eager serialized [#8793](https://github.com/rerun-io/rerun/pull/8793) |
| 73 | +- Make rust `Tensor` archetype eager serialized [#8801](https://github.com/rerun-io/rerun/pull/8801) |
| 74 | +- Rust: remove legacy `send_columns` and update everything left [#8804](https://github.com/rerun-io/rerun/pull/8804) |
| 75 | +- `ComponentBatch` doesn't implement `AsComponents` anymore [#8820](https://github.com/rerun-io/rerun/pull/8820) |
| 76 | + |
| 77 | +#### 🪳 Bug fixes |
| 78 | +- Fix WSL support, update troubleshooting guide [#8610](https://github.com/rerun-io/rerun/pull/8610) |
| 79 | +- Handle empty line strips in the viewer [#8653](https://github.com/rerun-io/rerun/pull/8653) |
| 80 | +- Fix clicking of links in markdown [#8794](https://github.com/rerun-io/rerun/pull/8794) |
| 81 | +- Fix CPU spike caused by hanging connection after socket closure (#8806) [#8810](https://github.com/rerun-io/rerun/pull/8810) (thanks [@goktug97](https://github.com/goktug97)!) |
| 82 | +- Make it possible to change the contents of a view multiple times per frame [#8854](https://github.com/rerun-io/rerun/pull/8854) |
| 83 | +- Fix playback issues with some h264 videos on native & Safari [#8850](https://github.com/rerun-io/rerun/pull/8850) |
| 84 | +- Fix handling null timestamps in the dataframe [#8897](https://github.com/rerun-io/rerun/pull/8897) |
| 85 | + |
| 86 | +#### 🌁 Viewer improvements |
| 87 | +- Remove all legacy Chunk iteration APIs [#8556](https://github.com/rerun-io/rerun/pull/8556) |
| 88 | +- Implement copy-screenshot-to-clipboard on Web [#8607](https://github.com/rerun-io/rerun/pull/8607) |
| 89 | +- Improve transform performance (by caching affine transforms resulting from transform components) [#8691](https://github.com/rerun-io/rerun/pull/8691) |
| 90 | + |
| 91 | +#### 🧑🏫 Examples |
| 92 | +- add prompt depth anything example [#8888](https://github.com/rerun-io/rerun/pull/8888) (thanks [@pablovela5620](https://github.com/pablovela5620)!) |
| 93 | + |
| 94 | +#### 📚 Docs |
| 95 | +- Add new `Transform3D` partial updates snippet for all languages [#8690](https://github.com/rerun-io/rerun/pull/8690) |
| 96 | +- doc: Update `annotation-context.rs` to use correct API [#8708](https://github.com/rerun-io/rerun/pull/8708) (thanks [@OlivierLDff](https://github.com/OlivierLDff)!) |
| 97 | + |
| 98 | +#### 🖼 UI improvements |
| 99 | +- Show the `GraphNode` as a label by default [#8542](https://github.com/rerun-io/rerun/pull/8542) |
| 100 | +- Short circuit graph simulation if all nodes are fixed [#8549](https://github.com/rerun-io/rerun/pull/8549) |
| 101 | +- Panel with recent notifications [#8465](https://github.com/rerun-io/rerun/pull/8465) |
| 102 | +- Fix tooltips being dragged along in graph view [#8573](https://github.com/rerun-io/rerun/pull/8573) |
| 103 | +- Restore the time panel help button [#8599](https://github.com/rerun-io/rerun/pull/8599) |
| 104 | +- Filter entities in the UI (part 0): Make `CustomContent` more useful [#8645](https://github.com/rerun-io/rerun/pull/8645) |
| 105 | +- Filter entities in the UI (part 1): Introduce a filter widget [#8652](https://github.com/rerun-io/rerun/pull/8652) |
| 106 | +- Filter entities in the UI (part 2): Introduce entity filtering in the time panel [#8654](https://github.com/rerun-io/rerun/pull/8654) |
| 107 | +- Filter entities in the UI (part 3): Move action to a menu in the blueprint panel and keep default blueprint when using heuristics [#8672](https://github.com/rerun-io/rerun/pull/8672) |
| 108 | +- Filter entities in the UI (part 4): Add entity filtering in the blueprint tree [#8706](https://github.com/rerun-io/rerun/pull/8706) |
| 109 | +- Draw nodes above edges in graph view [#8738](https://github.com/rerun-io/rerun/pull/8738) |
| 110 | +- Filter entities in the UI (part 5): Add snapshot tests for the blueprint tree [#8728](https://github.com/rerun-io/rerun/pull/8728) |
| 111 | +- Filter entities in the UI (part 6): Refactor `re_blueprint_tree` and add more tests [#8795](https://github.com/rerun-io/rerun/pull/8795) |
| 112 | +- Improve performance for Blueprint & Streams Panel for many entities [#8808](https://github.com/rerun-io/rerun/pull/8808) |
| 113 | +- The empty/full entity icon now reflects presence of component on the current timeline [#8839](https://github.com/rerun-io/rerun/pull/8839) |
| 114 | +- Show start of large arrow values instead of just their size [#8861](https://github.com/rerun-io/rerun/pull/8861) |
| 115 | +- Implement range selection with shift-click in the blueprint tree [#8852](https://github.com/rerun-io/rerun/pull/8852) |
| 116 | +- Filter entities in the UI (part 7): Refactor and optimize `re_time_panel` and add more tests [#8863](https://github.com/rerun-io/rerun/pull/8863) |
| 117 | +- Clickable URLs in named components / `AnyValues` [#8864](https://github.com/rerun-io/rerun/pull/8864) |
| 118 | +- Implement range selection with shift-click in the time panel [#8870](https://github.com/rerun-io/rerun/pull/8870) |
| 119 | +- Improve look of bar charts slightly [#8875](https://github.com/rerun-io/rerun/pull/8875) |
| 120 | + |
| 121 | +#### 🕸️ Web |
| 122 | +- Add JS timeline control and callback APIs [#8673](https://github.com/rerun-io/rerun/pull/8673) |
| 123 | + |
| 124 | +#### ✨ Other enhancement |
| 125 | +- Remove `Chunk::iter_component_arrays` [#8548](https://github.com/rerun-io/rerun/pull/8548) |
| 126 | +- Introduce new Chunk iteration APIs [#8553](https://github.com/rerun-io/rerun/pull/8553) |
| 127 | + |
| 128 | +#### 📈 Analytics |
| 129 | +- Add analytics for wgpu backend and whether the viewer runs in WSL [#8612](https://github.com/rerun-io/rerun/pull/8612) |
| 130 | + |
| 131 | +#### 📦 Dependencies |
| 132 | +- Update wgpu to 24.0.0 [#8743](https://github.com/rerun-io/rerun/pull/8743) |
| 133 | + |
| 134 | +#### 🤷 Other |
| 135 | +- Introduce snapshot unit tests for `re_component_ui` [#8546](https://github.com/rerun-io/rerun/pull/8546) |
| 136 | + |
4 | 137 |
|
5 | 138 | ## [0.21.0](https://github.com/rerun-io/rerun/compare/0.20.3...0.21.0) - Graph view, 3D Grid & UI/UX improvements
|
6 | 139 |
|
|
0 commit comments