diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bbfe730777e..239af1c67f7b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,26 +1,201 @@ # Rerun changelog -## Unreleased -[Commits since latest release](https://github.com/rerun-io/rerun/compare/latest...HEAD) +## [Unreleased](https://github.com/rerun-io/rerun/compare/latest...HEAD) +… -* Fixed a bug in the image hover code, causing the wrong RGBA values to be printed 😬 [#1690](https://github.com/rerun-io/rerun/pull/1356) -* Fixed a bug that caused points to be render too large [#1690](https://github.com/rerun-io/rerun/pull/1690) +## [0.4.0](https://github.com/rerun-io/rerun/compare/v0.3.1...v0.4.0) - Outlines, web viewer and performance improvements -## 0.3.1 - Remove potentially sensitive analytics -[Commits](https://github.com/rerun-io/rerun/compare/v0.3.1...v0.3.0) + + + +## Overview & Highlights +* Add support for mesh vertex colors [#1671](https://github.com/rerun-io/rerun/pull/1671) +* Lower memory use [#1535](https://github.com/rerun-io/rerun/pull/1535) +* Improve garbage collection [#1560](https://github.com/rerun-io/rerun/pull/1560) +* Improve the web viewer [#1596](https://github.com/rerun-io/rerun/pull/1596) [#1594](https://github.com/rerun-io/rerun/pull/1594) [#1682](https://github.com/rerun-io/rerun/pull/1682) [#1716](https://github.com/rerun-io/rerun/pull/1716) … +* Nice outlines when hovering/selecting +* Add an example of forever-streaming a web-camera image to Rerun [#1502](https://github.com/rerun-io/rerun/pull/1502) +* Fix crash-on-save on some versions of Linux [#1402](https://github.com/rerun-io/rerun/pull/1402) +* And a lot of other bug fixes +* Many performance improvements + +We now host an experimental and unpolished web-viewer at for anyone to try out! + +### In Detail + +#### 🐍 Python SDK +- Expose all Rerun enums and types to main module scope [#1598](https://github.com/rerun-io/rerun/pull/1598) +- Make `log_point` more forgiving and update docstring [#1663](https://github.com/rerun-io/rerun/pull/1663) +- Add support for mesh vertex colors [#1671](https://github.com/rerun-io/rerun/pull/1671) + +#### πŸ¦€ Rust SDK +- Refactor: `re_sdk` no longer depends on `re_viewer` [#1507](https://github.com/rerun-io/rerun/pull/1507) +- Refactor `re_sdk::Session` [#1528](https://github.com/rerun-io/rerun/pull/1528) +- Add support for mesh vertex colors [#1671](https://github.com/rerun-io/rerun/pull/1671) + +#### πŸͺ³ Bug Fixes +- datastore: disable compaction (fixes 2x memory issue) [#1535](https://github.com/rerun-io/rerun/pull/1535) +- Fix garbage collection [#1560](https://github.com/rerun-io/rerun/pull/1560) +- Avoid using undefined extern "C" on windows [#1577](https://github.com/rerun-io/rerun/pull/1577) +- Fix crash on decoding old .rrd files [#1579](https://github.com/rerun-io/rerun/pull/1579) +- datastore: stabilize dataframe sorts [#1549](https://github.com/rerun-io/rerun/pull/1549) +- Stop using infinities in wgsl shaders [#1594](https://github.com/rerun-io/rerun/pull/1594) +- Workaround for alpha to coverage state leaking on (Web)GL renderer [#1596](https://github.com/rerun-io/rerun/pull/1596) +- Use a patched `wasm-bindgen-cli` with fix for 2GiB bug [#1605](https://github.com/rerun-io/rerun/pull/1605) +- Misc: make example in `log_pinhole` runable [#1609](https://github.com/rerun-io/rerun/pull/1609) (thanks [@Sjouks](https://github.com/Sjouks)!) +- Early-out on zero-sized space-views to prevent crashes [#1623](https://github.com/rerun-io/rerun/pull/1623) +- Print our own callstack on panics [#1622](https://github.com/rerun-io/rerun/pull/1622) +- Handle ctrl+c to gracefully shutdown the server(s) [#1613](https://github.com/rerun-io/rerun/pull/1613) +- Fix crash on serve exit, second attempt [#1633](https://github.com/rerun-io/rerun/pull/1633) +- Fix wrong remove-tooltip for entities and groups [#1637](https://github.com/rerun-io/rerun/pull/1637) +- Fix requiring requiring focus for shutdown via ctrl+c when starting viewer from command line [#1646](https://github.com/rerun-io/rerun/pull/1646) +- Fix eye spin after eye reset [#1652](https://github.com/rerun-io/rerun/pull/1652) +- Fix crash on negative radii by instead warning [#1654](https://github.com/rerun-io/rerun/pull/1654) +- Fix crash when trying to listen on a taken TCP port [#1650](https://github.com/rerun-io/rerun/pull/1650) +- Don't show 2D labels in 3D space views. [#1641](https://github.com/rerun-io/rerun/pull/1641) +- Fix Z fighting with improved depth offset math [#1661](https://github.com/rerun-io/rerun/pull/1661) +- Whether a spatial view is 2d or 3d is now reevaluated over time unless picked explicitly [#1660](https://github.com/rerun-io/rerun/pull/1660) +- Update wgpu to v0.15.3, fixing meshes on Windows Chrome [#1682](https://github.com/rerun-io/rerun/pull/1682) +- Fix a bug in the image hover code, causing the wrong RGBA values to be printed [#1690](https://github.com/rerun-io/rerun/pull/1690) +- Fix a bug that caused points to be render too large [#1690](https://github.com/rerun-io/rerun/pull/1690) +- Fix web crash on missing uniform buffer padding [#1699](https://github.com/rerun-io/rerun/pull/1699) +- Fix `memory_usage` example relying on implicit recursive features [#1709](https://github.com/rerun-io/rerun/pull/1709) +- Track changed state in nav mode combo box [#1703](https://github.com/rerun-io/rerun/pull/1703) +- Fix crash-on-save by switching file-picker dialog to `xdg-portal` [#1402](https://github.com/rerun-io/rerun/pull/1402) +- Change roll-shortcut from ALT to SHIFT [#1715](https://github.com/rerun-io/rerun/pull/1715) +- Fix CpuWriteGpuReadBelt producing unaligned gpu buffer offsets [#1716](https://github.com/rerun-io/rerun/pull/1716) +- Fix arrows requiring a radius to be visible [#1720](https://github.com/rerun-io/rerun/pull/1720) + +#### πŸš€ Performance Improvements +- Add re_arrow_store profile scopes [#1546](https://github.com/rerun-io/rerun/pull/1546) +- datastore: early exit missing components at table level [#1554](https://github.com/rerun-io/rerun/pull/1554) +- datastore: track bucket count in store stats & mem panel [#1555](https://github.com/rerun-io/rerun/pull/1555) +- LogDb: dont split on index bucket size [#1558](https://github.com/rerun-io/rerun/pull/1558) +- Introduce a simpler cache dedicated to just decode JPEGs [#1550](https://github.com/rerun-io/rerun/pull/1550) +- Implement outlines for points 2d/3d/depth & use them for select & hover in Viewer [#1568](https://github.com/rerun-io/rerun/pull/1568) +- Simplify ImageCache [#1551](https://github.com/rerun-io/rerun/pull/1551) +- New time panel density graph [#1557](https://github.com/rerun-io/rerun/pull/1557) +- Refactor the Arrow Mesh3D type to use zero-copy Buffers [#1691](https://github.com/rerun-io/rerun/pull/1691) +- Remove the redundant costly transform check during categorization [#1695](https://github.com/rerun-io/rerun/pull/1695) +- batching 3: `DataRow` & `DataTable` + no bundles outside of transport [#1673](https://github.com/rerun-io/rerun/pull/1673) + +#### πŸ§‘β€πŸ« Examples +- Very simple example streaming from an opencv camera [#1502](https://github.com/rerun-io/rerun/pull/1502) +- Initial TurtleBot subscriber demo [#1523](https://github.com/rerun-io/rerun/pull/1523) + +#### πŸ“š Docs +- Link to the Python SDK build instructions in `rerun_py/README.md` [#1565](https://github.com/rerun-io/rerun/pull/1565) + +#### πŸ–Ό UI Improvements +- Fix combining outline mask for selection & hover [#1552](https://github.com/rerun-io/rerun/pull/1552) +- Implement outlines for rectangles & use them for select & hover of image primitives in Viewer [#1559](https://github.com/rerun-io/rerun/pull/1559) +- Show log messages in egui toast notifications [#1603](https://github.com/rerun-io/rerun/pull/1603) +- Adapt UI for smaller screens [#1608](https://github.com/rerun-io/rerun/pull/1608) +- Nicer toast notifications [#1621](https://github.com/rerun-io/rerun/pull/1621) +- Don't hover things in 2D/3D views if we are dragging something [#1643](https://github.com/rerun-io/rerun/pull/1643) +- Allow rolling 3D camera with primary mouse button + alt modifier [#1659](https://github.com/rerun-io/rerun/pull/1659) +- Name space views after the space and indicate duplicate names [#1653](https://github.com/rerun-io/rerun/pull/1653) +- Add banner about mobile browsers being unsupported [#1674](https://github.com/rerun-io/rerun/pull/1674) +- Improve ui for tensors and color map selection [#1683](https://github.com/rerun-io/rerun/pull/1683) +- Only show the mobile OS warning banner on web [#1685](https://github.com/rerun-io/rerun/pull/1685) +- Improve the depth backprojection feature [#1690](https://github.com/rerun-io/rerun/pull/1690) +- Swap overlay order of selection & hover outlines [#1705](https://github.com/rerun-io/rerun/pull/1705) +- Turn on depth cloud backprojection by default [#1710](https://github.com/rerun-io/rerun/pull/1710) +- Add radius boost for depth clouds on outline [#1713](https://github.com/rerun-io/rerun/pull/1713) + +#### πŸ€·β€β™‚οΈ Other Viewer Improvements +- Fix web feature name in error messages [#1521](https://github.com/rerun-io/rerun/pull/1521) +- Use outlines for mesh selections instead of highlight colors [#1540](https://github.com/rerun-io/rerun/pull/1540) +- Implement outlines for line renderer & use them for select & hover of "line-like" primitives in Viewer [#1553](https://github.com/rerun-io/rerun/pull/1553) +- Load .rrd file over HTTP [#1600](https://github.com/rerun-io/rerun/pull/1600) +- Revert "Handle ctrl+c to gracefully shutdown the server(s)" [#1632](https://github.com/rerun-io/rerun/pull/1632) +- More eager GC, and remove `--fast-math` optimization for wasm [#1656](https://github.com/rerun-io/rerun/pull/1656) +- Detect failure to install GUI log callback [#1655](https://github.com/rerun-io/rerun/pull/1655) +- Warn when most of the RAM has been used up by Rerun [#1651](https://github.com/rerun-io/rerun/pull/1651) +- Apply color maps to all types of depth tensors [#1686](https://github.com/rerun-io/rerun/pull/1686) +- Size boosted outlines for points & lines, color & size tweaking [#1667](https://github.com/rerun-io/rerun/pull/1667) +- Default point radius to 1.5 ui points [#1706](https://github.com/rerun-io/rerun/pull/1706) +- When streaming an rrd from http: play it, don't follow it [#1707](https://github.com/rerun-io/rerun/pull/1707) + +#### πŸ•ΈοΈ Web +- Use `log` as our log backend instead of `tracing` [#1590](https://github.com/rerun-io/rerun/pull/1590) +- Turn on allocation tracker at run-time and for web [#1591](https://github.com/rerun-io/rerun/pull/1591) +- Set correct MIME types in re_web_viewer_server [#1602](https://github.com/rerun-io/rerun/pull/1602) +- Upload web viewer to a bucket [#1606](https://github.com/rerun-io/rerun/pull/1606) +- Use hostname for default websocket address [#1664](https://github.com/rerun-io/rerun/pull/1664) +- Upload the colmap rrd file to gcloud [#1666](https://github.com/rerun-io/rerun/pull/1666) +- Show a warning by default on mobile browsers [#1670](https://github.com/rerun-io/rerun/pull/1670) +- Add analytics to the hosted index.html [#1675](https://github.com/rerun-io/rerun/pull/1675) +- Always upload latest prerelease to a dedicated prefix [#1676](https://github.com/rerun-io/rerun/pull/1676) +- Allow url param override on app.rerun.io [#1678](https://github.com/rerun-io/rerun/pull/1678) +- Show the git commit in the about section in pre-release builds [#1677](https://github.com/rerun-io/rerun/pull/1677) +- Update the web icon [#1688](https://github.com/rerun-io/rerun/pull/1688) + +#### 🎨 Renderer Improvements +- Outlines via masking & postprocessing in `re_renderer` [#1532](https://github.com/rerun-io/rerun/pull/1532) +- Add missing profiling scopes in `re_renderer` [#1567](https://github.com/rerun-io/rerun/pull/1567) +- Don't call `wgpu::Device::poll` on the web [#1626](https://github.com/rerun-io/rerun/pull/1626) +- Merge final outline render into composite step in order to fix blending [#1629](https://github.com/rerun-io/rerun/pull/1629) +- renderer: fix the groupby logic in mesh instancing [#1657](https://github.com/rerun-io/rerun/pull/1657) +- Fix outlines being offset diagonally by about half a pixel [#1668](https://github.com/rerun-io/rerun/pull/1668) +- Gpu readback belt for fast & easy data readback from gpu [#1687](https://github.com/rerun-io/rerun/pull/1687) +- Make CpuWriteGpuReadBelt texture copies easier/less error prone [#1689](https://github.com/rerun-io/rerun/pull/1689) + +#### ✨ Other Enhancement +- datastore: split out formatting & sanity checks in their own modules [#1625](https://github.com/rerun-io/rerun/pull/1625) +- Add `rerun --save`: stream incoming log stream to an rrd file [#1662](https://github.com/rerun-io/rerun/pull/1662) +- batching 1: introduce `DataCell` & retire `ComponentBundle` [#1634](https://github.com/rerun-io/rerun/pull/1634) +- Data store batching 2: split out component traits [#1636](https://github.com/rerun-io/rerun/pull/1636) + +#### πŸ“ˆ Analytics +- Analytics: don't spam warning when there is an HTTP connection problem [#1564](https://github.com/rerun-io/rerun/pull/1564) +- Analytics: Rename "location" to "file_line" in the "crash-panic" event [#1575](https://github.com/rerun-io/rerun/pull/1575) + +#### πŸ—£ Merged RFCs +- RFC: component-datatype conversions [#1595](https://github.com/rerun-io/rerun/pull/1595) +- RFC: pre-proposal for blueprint store [#1582](https://github.com/rerun-io/rerun/pull/1582) + +#### πŸ§‘β€πŸ’» Dev-experience +- Update `rayon` [#1541](https://github.com/rerun-io/rerun/pull/1541) +- Fix some `1.68` clippy lints [#1569](https://github.com/rerun-io/rerun/pull/1569) +- Remove duplicated 'nix' crate [#1479](https://github.com/rerun-io/rerun/pull/1479) +- Better MsgId format [#1566](https://github.com/rerun-io/rerun/pull/1566) +- Lint vertical spacing in Rust code [#1572](https://github.com/rerun-io/rerun/pull/1572) +- CI: Replace wasm_bindgen_check.sh with actually building the web-viewer [#1604](https://github.com/rerun-io/rerun/pull/1604) +- Add --all-features to Rust Analyzer flags [#1624](https://github.com/rerun-io/rerun/pull/1624) +- Run clippy for wasm, with own clippy.toml config file [#1628](https://github.com/rerun-io/rerun/pull/1628) +- Update tokio v1.24.1 -> v1.26.0 [#1635](https://github.com/rerun-io/rerun/pull/1635) +- Add a workflow input for running benchmarks manually [#1698](https://github.com/rerun-io/rerun/pull/1698) +- Add missing } to fix rust workflow [#1700](https://github.com/rerun-io/rerun/pull/1700) +- Fix `lint.py` [#1719](https://github.com/rerun-io/rerun/pull/1719) +- Add a script that generates a changelog from recent PRs and their labels [#1718](https://github.com/rerun-io/rerun/pull/1718) + +#### πŸ€·β€β™‚οΈ Other +- Clean up opencv_canny example slightly [b487e550dcb87225858dc6f76b791a25e938e75e](https://github.com/rerun-io/rerun/commit/b487e550dcb87225858dc6f76b791a25e938e75e) +- Lint fixes [9901e7c6735356b1970ddabc926bc5378d82e057](https://github.com/rerun-io/rerun/commit/9901e7c6735356b1970ddabc926bc5378d82e057) + + +## [0.3.1](https://github.com/rerun-io/rerun/compare/v0.3.0...v0.3.1) - Remove potentially sensitive analytics Remove potentially sensitive analytics, including path to rerun source code on panics, and rerun branch name when building from source [#1563](https://github.com/rerun-io/rerun/pull/1563) -## 0.3.0 +## [0.3.0](https://github.com/rerun-io/rerun/compare/v0.2.0...v0.3.0) ### Overview & Highlights 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! -https://user-images.githubusercontent.com/2910679/222510504-23871b8c-0bef-49c2-bbd2-37baab4247e8.mp4 + + You can now generate point clouds directly from depth textures and choose a wide variety of color maps. Check out this [video](https://user-images.githubusercontent.com/1220815/223365363-da13585f-3a91-4cb8-a6ef-8a6fadbeb4eb.webm) on how to use it. diff --git a/Cargo.lock b/Cargo.lock index d13748b43166..1c295a1473d1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -124,7 +124,7 @@ checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6" [[package]] name = "api_demo" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "clap 4.1.4", @@ -1278,7 +1278,7 @@ dependencies = [ [[package]] name = "dna" -version = "0.3.1" +version = "0.4.0" dependencies = [ "itertools", "rand", @@ -2708,7 +2708,7 @@ dependencies = [ [[package]] name = "minimal" -version = "0.3.1" +version = "0.4.0" dependencies = [ "rerun", ] @@ -3124,7 +3124,7 @@ dependencies = [ [[package]] name = "objectron" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "clap 4.1.4", @@ -3722,7 +3722,7 @@ dependencies = [ [[package]] name = "raw_mesh" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "bytes", @@ -3762,7 +3762,7 @@ dependencies = [ [[package]] name = "re_analytics" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "crossbeam", @@ -3783,7 +3783,7 @@ dependencies = [ [[package]] name = "re_arrow_store" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -3808,7 +3808,7 @@ dependencies = [ [[package]] name = "re_build_build_info" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "glob", @@ -3817,18 +3817,18 @@ dependencies = [ [[package]] name = "re_build_info" -version = "0.3.1" +version = "0.4.0" [[package]] name = "re_build_web_viewer" -version = "0.3.1" +version = "0.4.0" dependencies = [ "cargo_metadata", ] [[package]] name = "re_data_store" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -3852,14 +3852,14 @@ dependencies = [ [[package]] name = "re_error" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", ] [[package]] name = "re_format" -version = "0.3.1" +version = "0.4.0" dependencies = [ "arrow2", "comfy-table 6.1.4", @@ -3867,7 +3867,7 @@ dependencies = [ [[package]] name = "re_int_histogram" -version = "0.3.1" +version = "0.4.0" dependencies = [ "criterion", "insta", @@ -3878,7 +3878,7 @@ dependencies = [ [[package]] name = "re_log" -version = "0.3.1" +version = "0.4.0" dependencies = [ "env_logger", "js-sys", @@ -3891,7 +3891,7 @@ dependencies = [ [[package]] name = "re_log_types" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -3935,7 +3935,7 @@ dependencies = [ [[package]] name = "re_memory" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "backtrace", @@ -3955,7 +3955,7 @@ dependencies = [ [[package]] name = "re_query" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "arrow2", @@ -3977,7 +3977,7 @@ dependencies = [ [[package]] name = "re_renderer" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -4031,7 +4031,7 @@ dependencies = [ [[package]] name = "re_sdk" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "arrow2", @@ -4058,7 +4058,7 @@ dependencies = [ [[package]] name = "re_sdk_comms" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -4074,7 +4074,7 @@ dependencies = [ [[package]] name = "re_smart_channel" -version = "0.3.1" +version = "0.4.0" dependencies = [ "crossbeam", "instant", @@ -4082,7 +4082,7 @@ dependencies = [ [[package]] name = "re_string_interner" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "nohash-hasher", @@ -4093,7 +4093,7 @@ dependencies = [ [[package]] name = "re_tensor_ops" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "bytemuck", @@ -4105,7 +4105,7 @@ dependencies = [ [[package]] name = "re_tuid" -version = "0.3.1" +version = "0.4.0" dependencies = [ "arrow2", "arrow2_convert", @@ -4118,7 +4118,7 @@ dependencies = [ [[package]] name = "re_ui" -version = "0.3.1" +version = "0.4.0" dependencies = [ "eframe", "egui", @@ -4136,7 +4136,7 @@ dependencies = [ [[package]] name = "re_viewer" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -4201,7 +4201,7 @@ dependencies = [ [[package]] name = "re_web_viewer_server" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "cargo_metadata", @@ -4218,7 +4218,7 @@ dependencies = [ [[package]] name = "re_ws_comms" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "bincode", @@ -4289,7 +4289,7 @@ checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157" [[package]] name = "rerun" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "backtrace", @@ -4325,7 +4325,7 @@ dependencies = [ [[package]] name = "rerun_py" -version = "0.3.1" +version = "0.4.0" dependencies = [ "ahash 0.8.2", "anyhow", @@ -4432,7 +4432,7 @@ dependencies = [ [[package]] name = "run_wasm" -version = "0.3.1" +version = "0.4.0" dependencies = [ "cargo-run-wasm", "pico-args", @@ -4975,7 +4975,7 @@ dependencies = [ [[package]] name = "test_image_memory" -version = "0.3.1" +version = "0.4.0" dependencies = [ "mimalloc", "re_format", diff --git a/Cargo.toml b/Cargo.toml index b70d80928b72..baa3b459875f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,38 +16,38 @@ include = ["../../LICENSE-APACHE", "../../LICENSE-MIT", "**/*.rs", "Cargo.toml"] license = "MIT OR Apache-2.0" repository = "https://github.com/rerun-io/rerun" rust-version = "1.67" -version = "0.3.1" +version = "0.4.0" [workspace.dependencies] # When using alpha-release, always use exact version, e.g. `version = "=0.x.y-alpha.z" # This is because we treat alpha-releases as incompatible, but semver doesn't. # In particular: if we compile rerun 0.3.0-alpha.0 we only want it to use # re_log_types 0.3.0-alpha.0, NOT 0.3.0-alpha.4 even though it is newer and semver-compatible. -re_analytics = { path = "crates/re_analytics", version = "0.3.1" } -re_arrow_store = { path = "crates/re_arrow_store", version = "0.3.1" } -re_build_build_info = { path = "crates/re_build_build_info", version = "0.3.1" } -re_build_info = { path = "crates/re_build_info", version = "0.3.1" } -re_build_web_viewer = { path = "crates/re_build_web_viewer", version = "0.3.1" } -re_data_store = { path = "crates/re_data_store", version = "0.3.1" } -re_error = { path = "crates/re_error", version = "0.3.1" } -re_format = { path = "crates/re_format", version = "0.3.1" } -re_int_histogram = { path = "crates/re_int_histogram", version = "0.3.1" } -re_log = { path = "crates/re_log", version = "0.3.1" } -re_log_types = { path = "crates/re_log_types", version = "0.3.1" } -re_memory = { path = "crates/re_memory", version = "0.3.1" } -re_query = { path = "crates/re_query", version = "0.3.1" } -re_renderer = { path = "crates/re_renderer", version = "0.3.1" } -re_sdk = { path = "crates/re_sdk", version = "0.3.1" } -re_sdk_comms = { path = "crates/re_sdk_comms", version = "0.3.1" } -re_smart_channel = { path = "crates/re_smart_channel", version = "0.3.1" } -re_string_interner = { path = "crates/re_string_interner", version = "0.3.1" } -re_tensor_ops = { path = "crates/re_tensor_ops", version = "0.3.1" } -re_tuid = { path = "crates/re_tuid", version = "0.3.1" } -re_ui = { path = "crates/re_ui", version = "0.3.1" } -re_viewer = { path = "crates/re_viewer", version = "0.3.1" } -re_web_viewer_server = { path = "crates/re_web_viewer_server", version = "0.3.1" } -re_ws_comms = { path = "crates/re_ws_comms", version = "0.3.1" } -rerun = { path = "crates/rerun", version = "0.3.1" } +re_analytics = { path = "crates/re_analytics", version = "0.4.0" } +re_arrow_store = { path = "crates/re_arrow_store", version = "0.4.0" } +re_build_build_info = { path = "crates/re_build_build_info", version = "0.4.0" } +re_build_info = { path = "crates/re_build_info", version = "0.4.0" } +re_build_web_viewer = { path = "crates/re_build_web_viewer", version = "0.4.0" } +re_data_store = { path = "crates/re_data_store", version = "0.4.0" } +re_error = { path = "crates/re_error", version = "0.4.0" } +re_format = { path = "crates/re_format", version = "0.4.0" } +re_int_histogram = { path = "crates/re_int_histogram", version = "0.4.0" } +re_log = { path = "crates/re_log", version = "0.4.0" } +re_log_types = { path = "crates/re_log_types", version = "0.4.0" } +re_memory = { path = "crates/re_memory", version = "0.4.0" } +re_query = { path = "crates/re_query", version = "0.4.0" } +re_renderer = { path = "crates/re_renderer", version = "0.4.0" } +re_sdk = { path = "crates/re_sdk", version = "0.4.0" } +re_sdk_comms = { path = "crates/re_sdk_comms", version = "0.4.0" } +re_smart_channel = { path = "crates/re_smart_channel", version = "0.4.0" } +re_string_interner = { path = "crates/re_string_interner", version = "0.4.0" } +re_tensor_ops = { path = "crates/re_tensor_ops", version = "0.4.0" } +re_tuid = { path = "crates/re_tuid", version = "0.4.0" } +re_ui = { path = "crates/re_ui", version = "0.4.0" } +re_viewer = { path = "crates/re_viewer", version = "0.4.0" } +re_web_viewer_server = { path = "crates/re_web_viewer_server", version = "0.4.0" } +re_ws_comms = { path = "crates/re_ws_comms", version = "0.4.0" } +rerun = { path = "crates/rerun", version = "0.4.0" } ahash = "0.8" anyhow = "1.0" diff --git a/crates/rerun/src/run.rs b/crates/rerun/src/run.rs index b9dc53fffcf0..06afe4b7f7a0 100644 --- a/crates/rerun/src/run.rs +++ b/crates/rerun/src/run.rs @@ -209,7 +209,7 @@ where io_err.kind() == std::io::ErrorKind::AddrInUse }) => { - re_log::warn!("{err}. Another Rerun instance is probably running."); + re_log::warn!("{err}"); Ok(1) } // Unclean failure -- re-raise exception diff --git a/examples/README.md b/examples/README.md index c9652bae8860..ce039ccac2e7 100644 --- a/examples/README.md +++ b/examples/README.md @@ -4,5 +4,5 @@ * [Rust](rust) > Note: Make sure your SDK version matches the code in the examples. -For example, if your SDK version is `0.3.1`, check out the matching tag -for this repository by running `git checkout v0.3.1`. +For example, if your SDK version is `0.4.0`, check out the matching tag +for this repository by running `git checkout v0.4.0`. diff --git a/examples/python/README.md b/examples/python/README.md index 917985daeff7..7cfc35518eea 100644 --- a/examples/python/README.md +++ b/examples/python/README.md @@ -7,8 +7,8 @@ Read more about our examples at Note: Make sure your SDK version matches the code in the examples. -For example, if your SDK version is `0.3.1`, check out the matching tag -for this repository by running `git checkout v0.3.1`. +For example, if your SDK version is `0.4.0`, check out the matching tag +for this repository by running `git checkout v0.4.0`. ## Dependencies Each example comes with its own set of dependencies listed in a `requirements.txt` file. For example, to install dependencies and run the toy `car` example (which doesn't need to download any data) run: diff --git a/scripts/generate_changelog.py b/scripts/generate_changelog.py index eff040b54c48..c831ef2c043e 100755 --- a/scripts/generate_changelog.py +++ b/scripts/generate_changelog.py @@ -40,9 +40,16 @@ def get_github_token() -> str: REPO = "rerun" COMMIT_RANGE = "latest..HEAD" INCLUDE_LABELS = False # It adds quite a bit of visual noise +OFFICIAL_RERUN_DEVS = [ + "emilk", + "jleibs", + "nikolausWest", + "teh-cmc", + "Wumpf", +] -def pr_title_labels(pr_number: int) -> Tuple[Optional[str], List[str]]: +def pr_user_title_labels(pr_number: int) -> Tuple[Optional[str], Optional[str], List[str]]: url = f"https://api.github.com/repos/{OWNER}/{REPO}/pulls/{pr_number}" gh_access_token = get_github_token() headers = {"Authorization": f"Token {gh_access_token}"} @@ -52,10 +59,11 @@ def pr_title_labels(pr_number: int) -> Tuple[Optional[str], List[str]]: # Check if the request was successful (status code 200) if response.status_code == 200: labels = [label["name"] for label in json["labels"]] - return (json["title"], labels) + gh_user_name = json["user"]["login"] + return (gh_user_name, json["title"], labels) else: print(f"ERROR: {response.status_code} - {json['message']}") - return (None, []) + return (None, None, []) def commit_title_pr_number(commit: Any) -> Tuple[str, Optional[int]]: @@ -102,18 +110,20 @@ def print_section(title: str, items: List[str]) -> None: summary = f"{title} [{commit.hexsha}](https://github.com/{OWNER}/{REPO}/commit/{commit.hexsha})" misc.append(summary) else: - (pr_title, labels) = pr_title_labels(pr_number) + (gh_user_name, pr_title, labels) = pr_user_title_labels(pr_number) title = pr_title or title # We prefer the PR title if available summary = f"{title} [#{pr_number}](https://github.com/{OWNER}/{REPO}/pull/{pr_number})" if INCLUDE_LABELS and 0 < len(labels): summary += f" ({', '.join(labels)})" - added = False + if gh_user_name not in OFFICIAL_RERUN_DEVS: + summary += f" (thanks [@{gh_user_name}](https://github.com/{gh_user_name})!)" if labels == ["β›΄ release"]: - # Ignore release PRs - continue + continue # Ignore release PRs + + added = False # Some PRs can show up underm multiple sections: if "🐍 python API" in labels: