Skip to content

Release 0.23 #9588

Closed
Closed
@emilk

Description

@emilk

TODO

Current changelog

🪵 Log API

  • Migrate file format to protobuf #8995
  • Move rerun.components.blueprint.Visible to rerun.components.Visible #9067
  • Infer column partition size from shape in Scalar.columns() #9068
  • Infer partition size for FixedSizeList-backed components #9210
  • Recording properties for naming recordings and adding information #9249
  • Provide APIs to log arbitrary data to recording properties #9316
  • Deprecate SeriesLine/SeriesPoint/Scalar in favor of SeriesLines/SeriesPoints/Scalars #9338
  • Add serve_grpc API #9447
  • Add experimental send_recording python api #9148
  • Example showcasing send_table from notebooks #9522
  • Add experimental send_table to Python SDK #9538

🌊 C++ API

  • Migrate SDK comms to gRPC #8838
  • New C++ API for timestamp/duration indices #9200
  • Remove deprecated C++ connect APIs #9212
  • Rename set_index to set_time #9291
  • Add detach_process option to spawn #9400 (thanks @imstevenpmwork!)
  • Consistent constructor naming of Asset3D across C++ and Rust #9239 (thanks @abhishek47kashyap!)
  • Use consistent time unit names for our API #9343
  • CMake: Use find_dependency for Arrow #9548 (thanks @BillyONeal!)
  • Set RERUN_ARROW_LINK_SHARED_DEFAULT based on found Arrow build #9550 (thanks @BillyONeal!)

🐍 Python API

  • Migrate SDK comms to gRPC #8838
  • Update maturin to 1.8.1 and fix pyproject.toml #9104
  • Add rr.set_index to replace rr.set_time_* #9166
  • Fix support for numpy-2 #9109
  • Add rr.IndexColumn #9179
  • Python SDK spring cleaning: 3.9, no more monkey patching, more lints #9182
  • Enable a bunch of ruff lints #9201
  • Remove deprecated Python APIs: log_components, connect, connect_tcp #9197
  • Remove deprecated rr.serve() #9207
  • Deprecate rr.new_recording() in favour of rr.RecordingStream() and improve type checking of the Rust bindings #9206
  • Archetype based overrides & defaults #9209
  • Fix several typing annotations in the SDK and run mypy on snippets #9260
  • Correct truncation of AnyValues when using strings or bytes #9269 (thanks @timsaucer!)
  • Rename set_index to set_time #9291
  • New EntityBehavior archetype for easy visible/interactive blueprint overrides #9281
  • Fix the string representation of archetypes #9297
  • Initial python wrapper for the new catalog API #9301
  • Change signature of set_time_ctrl to match set_time #9342
  • Add detach_process option to spawn #9400 (thanks @imstevenpmwork!)
  • Use consistent time unit names for our API #9343
  • Allow passing url to notebook viewer #9493
  • Add rr.serve_web_viewer #9540
  • Import rerun.notebook lazily #9557

🦀 Rust API

  • Migrate SDK comms to gRPC #8838
  • Document default-log level change #8988
  • Transposed RecordBatch formatter and other niceties #9056
  • Fix insta crate leaking into regular (non-testing) builds #9092
  • Update MSRV to 1.84 #9216
  • Remove deprecated Rust connect APIs #9219
  • Introduce IndexCell #9226
  • Add RecordingStream::set_index #9236
  • Rename set_index to set_time #9291
  • Add Rust Viewer Callbacks example #9346
  • Make BinaryStream::read produce full RRD files #9352
  • Add detach_process option to spawn #9400 (thanks @imstevenpmwork!)
  • Consistent constructor naming of Asset3D across C++ and Rust #9239 (thanks @abhishek47kashyap!)
  • Use consistent time unit names for our API #9343

🪳 Bug fixes

  • Fix time series marker sizes not being able to vary over time #9035
  • Fix shader compilation failure in Chrome 131 #9152 (thanks @yakunouyang!)
  • Fix setting visible time range from overrides #9151
  • Speed up 2d spawn heuristic for many entities & fix heuristic creating overlapping views for EncodedImage #9308
  • Fix time series display range being affected by invisible plots #9353
  • Improve rerun.notebook.Viewer constructor #9495

🌁 Viewer improvements

  • Make SeriesLine visualizer work with several scalars per time #9033
  • Load depth images from Le Robot datasets #9049
  • Fix inconsistencies in plot highlights #9061
  • Add command palette action for resetting to the default blueprint #9088
  • Plot series visibility separarate from entity visibility, handle multi-series visibility #9079
  • Support Unitree LeRobot dataset naming format #9100
  • Add context menu action to copy entity paths to clipboard #9137
  • Copy description of selection (entity path, store id, etc.) via cmd/ctrl + c #9172
  • Editable time control & time context menus #9174
  • Check dataset version when loading LeRobot dataset #9233
  • Enable scalar arrays per time point for scatter plots #9327
  • Double clicking plots focuses them now in other panels #9333
  • Use multi-dimensional scalar values when loading LeRobot dataset #9402
  • Infer image/video channel index from LeRobot metadata #9435
  • Implement send_table in re_grpc_server and re_viewer #9510

🧑‍🏫 Examples

  • Add example for python notebook with partial & columnar updates #8956
  • IMU data example #9102
  • Add Mast3r_slam Example #9242 (thanks @pablovela5620!)

📚 Docs

  • Add link to Snap Store in Gettting Started #8972 (thanks @artivis!)
  • Document testing in Rerun #8989
  • Fix rustdocs for re_video #9295
  • Callbacks: Update APIs, improve docs #9312
  • Update __ as reserved entity path in docs #9387
  • Update cpp/eigen_opencv README snippets #9463 (thanks @ExpertOfNil!)
  • Include field names in Archetype docs #9563

🖼 UI improvements

  • Improve redap:// connection UX and error messages #9045
  • First iteration of a dedicated UI and communication for the Redap server/catalog/collection browser #9018
  • Persist servers and allow adding/removing them from the UI #9086
  • Show EXIF data for JPEG/TIFF images #9153
  • Add entity search to the add/remove entity modal #9120
  • Streamline the help view shortcuts with the shortcuts in the menu #9268
  • Prevent automatic opening of views for archetypes in RecordingProperties #9315
  • Group open recordings by origin, dataset/appid and examples #9377
  • Implement basic UI to display recording properties #9381
  • Better distinction and explanation of reserved namespaces in the UI #9390
  • Add TableStore for table/dataframe entries + basic UI #9437
  • Display thumbnail in tables by generating content-based hash for Blob components #9500

🕸️ Web

  • Add selection change and time(line) change callbacks to Jupyter Notebook and JS APIs #9147

🎨 Renderer improvements

  • Fix Bazel build: shader reloading only on in Rerun workspace #9414

🧑‍💻 Dev-experience

  • Run mypy on the contents of scripts/ #9214

📦 Dependencies

🤷‍ Other

  • Identify timelines uniquely by name (ignore type) #9097
  • Revert log level to info for everything except Python sdk #9231
  • Split TimeType::Time; changing dataloader API #9292

Metadata

Metadata

Assignees

No one assigned

    Labels

    ⛴ releaseRelated to shipping or publishing

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions