Skip to content

Releases: rerun-io/rerun

v0.5.0

20 Apr 15:07
Compare
Choose a tag to compare

0.5.0 - Jupyter MVP, GPU-based picking & colormapping, new datastore!

23-04-20_17.08.46.patched.mp4

Updating

Python: pip install -U rerun-sdk
Rust library: rerun = "0.5.0"
Rust binary: cargo install rerun

Overview & Highlights

This new release adds MVP support for embedding Rerun in Jupyter notebooks, and brings significant performance improvements across all layers of the stack.

  • Rerun can now be embedded in Jupyter notebooks
    • Tested with Jupyter Notebook Classic, Jupyter Lab, VSCode & Google Colab; checkout our How-to guide
    • Try it out live on Google Colab
  • All colormapping tasks are now done directly on the GPU
    • This yields very significant performance improvements for colormapping heavy workload (e.g. segmentation)
    • Try it out in our new segment_anything example that shows off the latest models from Meta AI
  • GPU picking & hovering now works with all of our primitives, including meshes & depth clouds
    • This fixes all the shortcomings of the previous CPU-based system
    • Rerun's automatic backprojection of depth textures ("depth clouds") is now feature complete
    • Try it out in our updated nyud example
  • Our datastore has been completely revamped to more closely match our latest data model
    • This yields very significant performance improvements for workloads with many events
    • Checkout this post for a detailed walkthrough of the changes

In Detail

🐍 Python SDK

  • Document that we also accept colors in 0-1 floats #1740
  • Don't initialize an SDK session if we are only going to be launching the app #1768
  • Allow torch tensors for log_rigid3 #1769
  • Always send recording_id as part of LogMsg #1778
  • New reset_time API #1826 #1854
  • Always flush when we remove a sink #1830
  • More robust wait for exit condition during .serve() #1939

🪳 Bug Fixes

  • Fix broken outlines (hover/select effect) for lines #1724
  • Fix logged obb being displayed with half of the requested size #1749 (thanks @BenjaminDev!)
  • Fix log_obb usage #1761
  • Always create the log_time timeline #1763
  • Fix undo/redo selection shortcut/action changing selection history without changing selection #1765
  • Fix various crashes #1780
  • Fix crash when trying to do picking on depth clouds d94ca3dd35e73e1984ccb969d0c7abd0d3e0faa9
  • ci: fix benchmarks #1799
  • ci: fix cargo deny #1806
  • Fix "too many points" crash #1822
  • Allow re-use of RowIds if no conflict is possible #1832
  • Reduce memory used by staging belts on Web #1836
  • Test and handle all tensor dtypes as images #1840
  • Fix the python build when running without web_viewer enabled #1856
  • Error instead of expect inside msg_encode #1857
  • Fix shutdown race condition in re_sdk_comms client #1861
  • Fix broken instance picking in presence of images #1876
  • Make sure JPEGs are always decoded #1884
  • Fix crash when saving store to file #1909
  • Don't clean up LogDbs that only contain a BeginRecordingMsg #1914
  • Fix picking entities with image + another object (or label) twice #1908
  • Fix double clicking camera no longer focusing on said camera #1911
  • Fix annotation images sometimes drawn in the background #1933
  • Use zipfile python library instead of unzip command in arkitscene demo #1936
  • Fix backslashes in arkitscene rigid transformation path #1938
  • Fix hover/select highlights when picking single points in a scene with multiple point clouds #1942
  • Fix hovering depth clouds #1943

🚀 Performance Improvements

  • batching 4: retire MsgBundle + batching support in transport layer #1679
  • Optimize the depth-cloud shader when depth=0 #1729
  • arrow2_convert primitive (de)serialization benchmarks #1742
  • arrow2 estimated_bytes_size benchmarks #1743
  • arrow2 erased refcounted clones benchmarks #1745
  • benchmarks for common vector ops across smallvec/tinyvec/std #1747
  • Columnar TimePoints in data tables and during transport #1767
  • Compile with panic = "abort" #1813
  • Process 2D points per entities like 3D points #1820
  • re_query: use latest data types (DataRow/DataCell) #1828
  • Depth cloud textures are now cached frame-to-frame #1913

🧑‍🏫 Examples

  • Add new ARKitScenes example #1538 (thanks @pablovela5620!)
  • New example code for Facebook research's segment-anything #1788
  • Add minimal_options example for Rust SDK #1773 (thanks @h3mosphere!)
  • Remove manual depth projection from car and nyud examples #1869
  • Always spawn instead of fork in multiprocessing example #1922
  • Add --num-frames arg to canny (webcam) example #1923
  • Add argument parsing to rerun_demo #1925
  • Join threads at end of multithreading example #1934

📚 Docs

  • Add typing_extensions to requirements-doc.txt #1786
  • Fix typos in notebook readme #1852
  • Update docs related to notebook #1915

🖼 UI Improvements

  • Hover rays for tracked 3D cameras #1751
  • Collapse space-view by default if there is only one child #1762
  • Option to show scene bounding box #1770
  • Assign default colors to class-ids when annotation context is missing #1783
  • Add Restart command and keyboard shortcut for moving time to start of timeline #1802 (thanks @h3mosphere!)
  • New option to disable persistent storage #1825
  • Show previews of colormaps when selecting them #1846
  • Smooth out scroll wheel input for camera zooming #1920

🤷‍♂️ Other Viewer Improvements

  • Change EntityPathHash to be 64 bit #1723
  • Central GpuReadback handling for re_viewer, experimental space view screenshots #1717
  • Readback depth from GPU picking #1752
  • Use GPU picking for points, streamline/share picking code some more #1814
  • Use GPU picking for line(like) primitives, fix interactive flags #1829
  • Use GPU colormapping when showing images in the GUI #1865

🕸️ Web

  • Make CI publish latest tagged web-viewer to app.rerun.io #1725
  • Implement...
Read more

v0.5.0-alpha.0

19 Apr 16:59
Compare
Choose a tag to compare
v0.5.0-alpha.0 Pre-release
Pre-release
publish_crates.sh: fix crate ordering

Development Build

14 Apr 22:53
625d2bd
Compare
Choose a tag to compare
Development Build Pre-release
Pre-release

Installing the pre-release Python SDK

  1. Download the correct .whl.
  2. Run pip install rerun_sdk<...>.whl (replace <...> with the actual filename)
  3. Test it: rerun --version

What's Changed

  • Post-release cleanup by @emilk in #1726
  • batching 4: retire MsgBundle + batching support in transport layer by @teh-cmc in #1679
  • Change EntityPathHash to be 64 bit by @Wumpf in #1723
  • Central GpuReadback handling for re_viewer, experimental space view screenshots by @Wumpf in #1717
  • GPU based picking with points by @Wumpf in #1721
  • improved renderer label handling by @Wumpf in #1731
  • Datastore: revamp bench suite by @teh-cmc in #1733
  • Make CI publish latest tagged web-viewer to app.rerun.io by @emilk in #1725
  • Optimize the depth-cloud shader when depth=0 by @emilk in #1729
  • remove unnecessary dependencies by @vsuryamurthy in #1711
  • Improved readback data handling by @Wumpf in #1734
  • GPU based mesh picking in viewer by @Wumpf in #1737
  • arrow2_convert primitive (de)serialization benchmarks by @teh-cmc in #1742
  • Fix logged obb being displayed with half of the requested size by @BenjaminDev in #1749
  • benchmarks for common vector ops across smallvec/tinyvec/std by @teh-cmc in #1747
  • Hover rays for tracked 3D cameras by @Wumpf in #1751
  • Improve dealing with raw buffers for texture read/write by @Wumpf in #1744
  • arrow2 erased refcounted clones benchmarks by @teh-cmc in #1745
  • arrow2 estimated_bytes_size benchmarks by @teh-cmc in #1743
  • Readback depth from GPU picking by @Wumpf in #1752
  • Add new ARKitScenes example by @pablovela5620 in #1538
  • Fix log_obb usage by @emilk in #1761
  • Python SDK: document that we also accept colors in 0-1 floats by @emilk in #1740
  • Collapse space-view by default if there is only one child by @emilk in #1762
  • Always create the log_time timeline by @jleibs in #1763
  • Columnar timepoints in data tables and during transport by @teh-cmc in #1767
  • Fix undo/redo selection shortcut/action changing selection history without changing selection by @Wumpf in #1765
  • Don't initialize an SDK session if we are only going to be launching the app by @jleibs in #1768
  • Allow torch tensors for log_rigid3 by @jleibs in #1769
  • Option to show scene bounding box by @emilk in #1770
  • Fix a whole lot of crashes, all at once by @emilk in #1780
  • Add typing_extensions to requirements-doc.txt by @jleibs in #1786
  • auto_color class-ids if they are present by @jleibs in #1783
  • Don't run 3rd party bench suites on CI by @teh-cmc in #1787
  • Use copilot markers in PR template by @emilk in #1784
  • re_format: barebone support for custom formatting by @teh-cmc in #1776
  • Always send recording_id as part of LogMsg by @jleibs in #1778
  • Refactor: Add new helper crate re_log_encoding by @emilk in #1772
  • New example code for facebook research segment anything by @jleibs in #1788
  • Implement re_tuid::Tuid::random() on web by @emilk in #1796
  • ci: fix benchmarks by @teh-cmc in #1799
  • Add minimal_options example for Rust SDK by @h3mosphere in #1773
  • setup_web.sh supports pacman package manager by @urholaukkarinen in #1797
  • ci: fix cargo deny (crossbeam-channel outdated since yesterday's release) by @teh-cmc in #1806
  • Compile with panic = "abort" by @emilk in #1813
  • Add rerun --strict: crash if any warning or error is logged by @emilk in #1812
  • Refactor: Remove TensorTrait by @emilk in #1819
  • End-to-end testing of python logging -> store ingestion by @emilk in #1817
  • Fix e2e test on CI: Don't try to re-build rerun-sdk by @emilk in #1821
  • Use gpu picking for points, streamline/share picking code some more by @Wumpf in #1814
  • Process 2D points per entities like 3D points by @Wumpf in #1820
  • New option to disable persistant storage by @jleibs in #1825
  • New API to reset_time by @jleibs in #1826
  • Datastore revamp 1: new indexing model & core datastructures by @teh-cmc in #1727
  • Datastore revamp 2: serialization & formatting by @teh-cmc in #1735
  • Datastore revamp 3: efficient incremental stats by @teh-cmc in #1739
  • Datastore revamp 4: sunset MsgId by @teh-cmc in #1785
  • Datastore revamp 5: DataStore::to_data_tables() by @teh-cmc in #1791
  • Datastore revamp 6: sunset LogMsg storage + save store to disk by @teh-cmc in #1795
  • Datastore revamp 7: garbage collection by @teh-cmc in #1801
  • Don't assert if inserting a rowid with a matching timepoint does not create a conflict by @jleibs in #1832
  • re_query: up to date with latest data types and structures by @teh-cmc in #1828
  • datastore: incremental metadata registry stats by @teh-cmc in #1833
  • RFC: datastore state of the union & end-to-end batching by @teh-cmc in #1610
  • Fix too many points crash by @Wumpf in #1822
  • Use GPU picking for line(like) primitives, fix interactive flags by @Wumpf in #1829
  • Reduce memory used by staging belts on Web by @Wumpf in #1836
  • Always flush when we remove a sink by @jleibs in #1830
  • GPU colormapping, first step by @emilk in #1835
  • Test and handle all tensor dtypes as images by @emilk in #1840
  • Install the rerun-sdk in CI using --no-index and split out linux wheel build to run first. by @jleibs in #1838
  • GPU tensor colormapping by @emilk in #1841
  • Show previews of colormaps when selecting them by @emilk in #1846
  • Implement billinear filtering of textures by @emilk in #1850
  • MVP Support for inline-rendering of Rerun within jupyter notebooks by @jleibs in #1798
  • Disable wheel tests for x86_64-apple-darwin by @jleibs in #1853
  • Fix typos in notebook readme by @jleibs in #1852
  • Fix the python build when running without web_viewer enabled by @jleibs in #1856
  • Error instead of expect inside msg_encode. by @jleibs in #1857
  • Restore: New API to reset_time (#1826) by @jleibs in #1854
  • Revert "Implement billinear filtering of textures (#1850)" by @jleibs in #1859

New Contributors

Full Changelog: v0.2.0...prerelease

v0.4.0

28 Mar 13:56
Compare
Choose a tag to compare
release.0.4.0.mp4

Overview & Highlights

  • Add support for mesh vertex colors #1671
  • Lower memory use #1535
  • Improve garbage collection #1560
  • Improve the web viewer #1596 #1594 #1682 #1716
  • Nice outlines when hovering/selecting
  • Add an example of forever-streaming a web-camera image to Rerun #1502
  • Fix crash-on-save on some versions of Linux #1402
  • And a lot of other bug fixes
  • Many performance improvements

We now host an experimental and unpolished web-viewer at https://app.rerun.io/ for anyone to try out!

In Detail

🐍 Python SDK

  • Expose all Rerun enums and types to main module scope #1598
  • Make log_point more forgiving and update docstring #1663
  • Add support for mesh vertex colors #1671

🦀 Rust SDK

  • ⚠️ Session::new has been replaced with SessionBuilder #1528
  • ⚠️ session.spawn(…) -> rerun::native_viewer::spawn(session, …) #1507
  • ⚠️ session.show() -> rerun::native_viewer::show(session) #1507
  • ⚠️ session.serve(…) -> rerun::serve_web_viewer(session, …); #1507
  • ⚠️ rerun::global_session is now hidden behind the global_session feature flag #1507
  • Add support for mesh vertex colors #1671

🪳 Bug Fixes

  • datastore: disable compaction (fixes 2x memory issue) #1535
  • Fix garbage collection #1560
  • Avoid using undefined extern "C" on windows #1577
  • Fix crash on decoding old .rrd files #1579
  • datastore: stabilize dataframe sorts #1549
  • Stop using infinities in wgsl shaders #1594
  • Workaround for alpha to coverage state leaking on (Web)GL renderer #1596
  • Use a patched wasm-bindgen-cli with fix for 2GiB bug #1605
  • Misc: make example in log_pinhole runable #1609 (thanks @Sjouks!)
  • Early-out on zero-sized space-views to prevent crashes #1623
  • Print our own callstack on panics #1622
  • Handle ctrl+c to gracefully shutdown the server(s) #1613
  • Fix crash on serve exit, second attempt #1633
  • Fix wrong remove-tooltip for entities and groups #1637
  • Fix requiring requiring focus for shutdown via ctrl+c when starting viewer from command line #1646
  • Fix eye spin after eye reset #1652
  • Fix crash on negative radii by instead warning #1654
  • Fix crash when trying to listen on a taken TCP port #1650
  • Don't show 2D labels in 3D space views. #1641
  • Fix Z fighting with improved depth offset math #1661
  • Whether a spatial view is 2d or 3d is now reevaluated over time unless picked explicitly #1660
  • Update wgpu to v0.15.3, fixing meshes on Windows Chrome #1682
  • Fix a bug in the image hover code, causing the wrong RGBA values to be printed #1690
  • Fix a bug that caused points to be render too large #1690
  • Fix web crash on missing uniform buffer padding #1699
  • Fix memory_usage example relying on implicit recursive features #1709
  • Track changed state in nav mode combo box #1703
  • Fix crash-on-save by switching file-picker dialog to xdg-portal #1402
  • Change roll-shortcut from ALT to SHIFT #1715
  • Fix CpuWriteGpuReadBelt producing unaligned gpu buffer offsets #1716
  • Fix arrows requiring a radius to be visible #1720

🚀 Performance Improvements

  • Add re_arrow_store profile scopes #1546
  • datastore: early exit missing components at table level #1554
  • datastore: track bucket count in store stats & mem panel #1555
  • LogDb: dont split on index bucket size #1558
  • Introduce a simpler cache dedicated to just decode JPEGs #1550
  • Implement outlines for points 2d/3d/depth & use them for select & hover in Viewer #1568
  • Simplify ImageCache #1551
  • New time panel density graph #1557
  • Refactor the Arrow Mesh3D type to use zero-copy Buffers #1691
  • Remove the redundant costly transform check during categorization #1695
  • batching 3: DataRow & DataTable + no bundles outside of transport #1673

🧑‍🏫 Examples

  • Very simple example streaming from an opencv camera #1502
  • Initial TurtleBot subscriber demo #1523

📚 Docs

  • Link to the Python SDK build instructions in rerun_py/README.md #1565

🖼 UI Improvements

  • Fix combining outline mask for selection & hover #1552
  • Implement outlines for rectangles & use them for select & hover of image primitives in Viewer #1559
  • Show log messages in egui toast notifications #1603
  • Adapt UI for smaller screens #1608
  • Nicer toast notifications #1621
  • Don't hover things in 2D/3D views if we are dragging something #1643
  • Allow rolling 3D camera with primary mouse button + alt modifier #1659
  • Name space views after the space and indicate duplicate names #1653
  • Add banner about mobile browsers being unsupported #1674
  • Improve ui for tensors and color map selection #1683
  • Only show the mobile OS warning banner on web #1685
  • Improve the depth backprojection feature #1690
  • Swap overlay order of selection & hover outlines #1705
  • Turn on depth cloud backprojection by default #1710
  • Add radius boost for depth clouds on outline #1713

🤷‍♂️ Other Viewer Improvements

  • Fix web feature name in error messages #1521
  • Use outlines for mesh selections instead of highlight colors #1540
  • Implement outlines for line renderer & use them for select & hover of "line-like" primitives in Viewer #1553
  • Load .rrd file over HTTP #1600
  • Revert "Handle ctrl+c to gracefully shutdown the server(s)" #1632
  • More eager GC, and remove --fast-math optimization for wasm #1656
  • Detect failure to install GUI log callback #1655
  • Warn when most of the RAM has been used up by Rerun #1651
  • Apply color maps to all types of depth tensors #1686
  • Size boosted outlines for points & lines, color & size tweaking #1667
  • Default point radius to 1.5 ui points #1706
  • When streaming an rrd from http: play it...
Read more

v0.3.1

13 Mar 20:40
Compare
Choose a tag to compare

0.3.1 - Remove potentially sensitive analytics

Commits

Remove potentially sensitive analytics, including path to rerun source code on panics, and rerun branch name when building from source #1563

v0.3.0

07 Mar 09:56
e0655be
Compare
Choose a tag to compare

After a successful launch a couple of weeks ago, we're back with our second release!
With a few exceptions this release focuses on internal refactors & improving our processes.
However, we think you'll enjoy these goodies that made it in nonetheless!

23-03-02_18.44.38.patched.mp4

You can now generate point clouds directly from depth textures and choose a wide variety of color maps.
Check out this video on how to use it.
This is a lot faster and more convenient than doing so manually in your own code
Some caveats: Picking is not yet working and visible history may behave differently (related to #723)

Other highlights:

  • Viewer
    • Improved formatting of date-times in plots #1356
    • Labels for 3D objects have now a color can now be selected & hovered #1438
    • Scale factor is saved across sessions and more persistent between screens #1448
    • Showing tensors in the viewer is now faster
  • SDK
    • Python packages now work with Ubuntu-20.04 #1334
    • u8 segmentation stay u8 now (they converted to u16 before) #1376
    • 2D Line strips can now be logged directly #1430
    • Add a strict mode to the Python SDK where misuses of the API result in exceptions being raised.#1477
    • Fix disabling Python API through init not working #1517
  • General
    • We build now with fewer build dependencies (there is however still more work to do!).
      Notably, we previously used a version of the time crate which had a security issue (CVE-2020-26235), thanks @mpizenberg for helping out!
    • Print more information & troubleshooting info on crash

Meanwhile, we did a bunch of improvements to our manual. If you had trouble running Rerun so far, check our updated troubleshooting page (and as always, please open an issue if something doesn't work).

⚠️ BREAKING: old .rrd files no longer load ⚠️

In Detail

New Features

  • Generate point clouds directly from depth textures
    • re_renderer: implement depth cloud renderer #1415
    • Integrate depth clouds into Rerun #1421
    • CPU & GPU color maps #1484
    • Integrate GPU color maps into depth clouds #1486
  • Python SDK: Add strict mode #1477
  • OS independent Zoom factor & serialization thereof #1448
  • Labels for 3D objects have now a color can now be selected & hovered #1438
  • Add 2d support for linestrips #1430
  • Add signal handler on *nix with troubleshooting and stacktrace #1340
    • Point users to our troubleshooting page on panic #1338

Performance

  • Speed up conversions for color arrays in Python #1454
  • Speed up fixed-sized array iteration #1050
  • Speed up tensor handling by padding data through more directly
    • Direct conversion to dynamic image from Tensors #1455
    • Convert view_tensor to use the new native Tensors #1439
  • Add option to show performance metrics in the UI in release builds too #1444
  • Faster stable diffusion sample #1364
  • SDK: stream to disk with save feature #1405
  • re_renderer has now a direct CPU->GPU copy mechanism
    • CpuWriteGpuReadBelt for fast frame by frame memory transfers #1382
    • Uniform buffer utility using CpuWriteGpuReadBelt #1400
    • Use CpuWriteGpuReadBelt for mesh data gpu upload #1416

Small improvements & Bugfixes

  • UI
    • Add scroll-bars the "Add/Remove entities" window #1445
    • Unify the time formatting between the time panel and the plot #1369
    • Timeline
      • Fix precision issue when zooming in on the timeline #1370
      • Improve the gap-detector #1363
    • Better time axis on plot view #1356
    • Prevent wrap on 'Streams' text #1308
    • Update to eframe 0.21.3 with fix for web text input #1311
  • re_renderer
    • Fix crash due to always expecting Rgba8Unorm backbuffer on Web & Bgra8Unorm on native #1413
    • Allow controlling the graphics backend & power preference through standard wgpu env vars #1332
  • Heuristic for camera frustum length is now based on scene size #1433
  • Fix python type signature for tensor names #1443
  • Don't convert u8 segmentation images to u16 #1376
  • Docs (excluding the manual)
    • Improve the docs of connect and serve #1450
    • Update log_mesh and log_meshes docs. #1286
    • Add guidelines for adding dependencies in a PR #1431
    • Add a few more sections to CODE_STYLE.md #1365
    • Fixup for some doc links #1314
    • Document undocumented environment variables on help page. #1335
    • Link to SDK operating modes doc in both SDK #1330
  • More information in --version #1388
  • Remove already broken show method from Python SDK #1429
  • Analytics
    • Send analytics events with callstacks on panics and signals #1409
    • Put all analytics to one bucket #1390
    • add event for when we serve the web-viewer .wasm #1379
    • register SDK language and data source #1371
    • Refactor analytics #1368
  • Versioned log streams streams #1420
  • Fix path issues when running debug viewer within workspace #1341
  • Detailed errors for re_renderer include_file! #1339
  • Limit logging in web-viewer to warn in order to workaround a crash issue (and reduce log spam) 1514
  • Fix disabling API through init not working #1517

CI, Testing & Build improvements

  • Reduce build dependencies
    • Get rid of time 0.1.* dependency #1408
    • Remove unnecessary ordered-float #1461
    • Remove extraneous image features and dependencies #1425
    • Replace reqwest with ureq #1407
    • Remove derive_more dependency #1406
  • Use different artifact names for wasm/js in debug builds #1428
  • Separate mac wheels & trigger wheel build from ui #1499
  • Add spell checking to CI #1492
  • Repo size
    • Always create new orphaned branch for gh-pages #1490
    • GitHub Action to prevent large files #1478
  • Python
    • Remove the python job path filters #1452
    • Use ruff for our python lints #1378
    • Use python3 in the jobs that weren't tested in PR #1348
  • Testing
    • Add a test of memory use when logging a lot of big images #1372
  • Switch ci_docker to a container based on ubuntu 20.04 #1334
  • Release handling
    • Switch release action to ncipollo #1489
    • Fix o...
Read more

v0.2.0

14 Feb 21:47
Compare
Choose a tag to compare

What's Changed

  • Good looking Blueprint View by @emilk in #962
  • Make buttons smaller, and everything a bit tighter by @emilk in #970
  • Widget hover effect by @emilk in #935
  • Select single objects directly and click through selection by @Wumpf in #964
  • Optimize loading of segmentation maps by @emilk in #978
  • Tweak store profile scopes by @emilk in #979
  • re_renderer: delegate 2D texture padding to Queue::write_texture by @teh-cmc in #975
  • Remove Classic Python SDK by @emilk in #977
  • New visibility buttons by @emilk in #983
  • Specify time for DataUi queries by @emilk in #980
  • Update to released versions of huggingface libs by @nikolausWest in #981
  • re_analytics: fixed salt for hashed props by @teh-cmc in #958
  • Prepare for switching to the re_int_histogram crate by @emilk in #984
  • Only run test benches rather than full bench on CI by @jleibs in #992
  • Remove a lot of classical stuff by @emilk in #988
  • Clean up component imports by @jondo2010 in #985
  • Hack depth offset in order to make objects not disappear by @Wumpf in #990
  • Fix crash when zooming out camera too far by @Wumpf in #986
  • Rust: rename objects and fields by @emilk in #993
  • Fix hovering bug introduced in The Great Removal by @emilk in #998
  • Update readme and remove the docs in favor of dedicated repo by @jleibs in #995
  • Update to Rust 1.67 by @emilk in #1000
  • Update all of the docstrings on public-facing APIs to numpy style by @jleibs in #1001
  • Refactor InstanceId by @emilk in #999
  • bind to all network interfaces by @teh-cmc in #1005
  • Rename Instance to InstanceKey by @emilk in #1002
  • use wasm target-dir for bacon wasm by @teh-cmc in #1009
  • Use Display for errors by @emilk in #1007
  • Better looking tabs by @emilk in #1011
  • Improve colmap example by @nikolausWest in #1008
  • Fix rendering empty batches of lines and points, needlessly generating draw calls by @Wumpf in #989
  • Less bright frustum by @Wumpf in #1015
  • Issue templates with "👀 needs triage" by @nikolausWest in #1016
  • Hide MsgId & InstanceId for on-hover ui by @Wumpf in #1017
  • Show Space View options in tab bar by @emilk in #1027
  • Nicer frustum ray by @Wumpf in #1019
  • Improved workflow for adding/removing objects by @Wumpf in #1013
  • Introduce Extension Components by @jleibs in #1023
  • Tensor view ui improvements by @Wumpf in #1022
  • lint against using dbg!() macro in production code by @emilk in #1029
  • Fix compilation failure due to bad merge by @Wumpf in #1030
  • rust SDK: raw 3D meshes and example by @teh-cmc in #1010
  • Click space view title to select it by @emilk in #1032
  • Switch to a generator for our common-API registry as well. by @jleibs in #1035
  • Catch it when we break the docs by @jleibs in #1040
  • python SDK: raw 3D meshes and example by @teh-cmc in #1026
  • CI: Attempt to apply cancel-on-progress only on PR:s, not on main by @emilk in #1051
  • Slightly nicer tensor view by @emilk in #1028
  • Skip data selection section for space views and data blueprint groups by @Wumpf in #1039
  • DataUI impls for rect/linestrip2d/linestrip3d/vec2d/vec3d by @Wumpf in #1038
  • Preview component data by @Wumpf in #1034
  • Add ComponentName::short_name helper function by @emilk in #1053
  • Improved text space view blueprint by @Wumpf in #1055
  • Build+Deploy Python Wheels in CI by @jondo2010 in #996
  • Show all instance values in the selection panel by @emilk in #1056
  • more spaceview blueprint improvements by @Wumpf in #1057
  • Speed up Point3D by @jleibs in #1064
  • Update gltf to 1.1 by @emilk in #1071
  • Misc code cleanup by @emilk in #1070
  • Nicer wait message by @emilk in #1069
  • Fix play/pause toggle annoyance by @emilk in #1066
  • Same height for tab bar and title bars of side panels by @emilk in #1072
  • Workflow fixes for Python Wheel release by @jondo2010 in #1059
  • Nicer collapsing sections in the selection view by @emilk in #1067
  • ui: use the crosshair for zoom previews everywhere by @teh-cmc in #1073
  • raw meshes: support albedo factors, clean up examples and acknowledge lack of support for .obj by @teh-cmc in #1081
  • Allow root space views transforms to other roots by @Wumpf in #1075
  • Update some Rust crates by @emilk in #1090
  • Improved tensor view settings by @Wumpf in #1082
  • expose egui debug options in debug menu by @Wumpf in #1089
  • Nicer ready text by @emilk in #1078
  • Improve tensor view margins by @emilk in #1091
  • Nicer top bar on web by @emilk in #1080
  • Timeline panel design details by @Wumpf in #1088
  • Ship rerun package inside of a rerun_sdk folder by @jleibs in #1085
  • Update to winit 0.28 by @emilk in #997
  • Increase maximum number of points from 1 Mi to 4 Mi by @emilk in #1093
  • Hide perf stats in release, + tweak separator lines by @emilk in #1095
  • Icons for space views and blueprint groups by @Wumpf in #1096
  • Fix python bridge preventing logging transforms to root child by @Wumpf in #1097
  • Use Selection color from design token by @Wumpf in #1092
  • Revert "Fix python bridge preventing logging transforms to root child" by @nikolausWest in #1098
  • Don't make top-level spaces their own children by @jleibs in #1100
  • Rename Selection to Item, MultiSelection to ItemCollection by @emilk in #1104
  • Simple boiler-plate idea for examples by @jondo2010 in #1058
  • Use less "arrow" in re_viewer by @emilk in #1105
  • Use a grid in entity properties ui by @emilk in #1106
  • Restore previous non-tracked camera pose on esc by @Wumpf in #1102
  • Default spaceview names are now last space path bit only unless it is root by @Wumpf in #1103
  • EntityPath::from_str must parse the given string by @teh-cmc in #1114
  • On push sync the docs to gh-pages by @jleibs in #1086
  • Rust SDK: introduce MsgSender builder-like interface for logging data by @teh-cmc in #1037
  • Better ComponentBundle invariants by @jondo2010 in #1112
  • Rust SDK: remove deprecated APIs & examples by @teh-cmc in #1107
  • Renamed spawn_and_connect to just spawn by @emilk in #1101
  • Windows/Linux: work towards replacing native window frame with our own custom buttons by @emilk in #1094
  • use forward/backwards icon in selection panel by @Wumpf in #1128
  • Generate an RRD file during the build which we inject into the wheel by @jleibs in #1087
  • gh-pages rust docs should redirect to rerun crate by @jleibs in https://github...
Read more