Skip to content

Commit

Permalink
Release 0.11 (#4347)
Browse files Browse the repository at this point in the history
### What

* Fixes #4267

TODO for final release:
* [x] Update links, fix all `?speculative-link`
* [x] cherry pick #4349
* [x] cherry pick #4350
* [x] cherry pick #4351
* [x] cherry pick #4354
* [x] Write changelog (and review thereof)
  * Known limitation of Visible History worth mentioning:
     * [x] #4270
     * [x] #723
* [x] testing:
   * special care this time about:
* Blueprint error messages (use outdated stuff you have on your machine
to stretch it!)
* UI changes (selection panel, visual history things - in particular on
the plot)
* C++ cmake install (follow public instructions - if they don't help the
instructions are bad!)
   * [x] Windows
      * [x] Native
           * blueprint ok 0.10.0-rc.1 -> 0.11-rc.1
* found spurious wgpu related crash, seems to be fixed on latest wgpu.
Details on Slack
           * C++ visual studio project for unziped sdk works
* Cmake install works. With path with spaces after applying
#4351
      * [x] Browser
   * [x] Linux
      * [x] Native
      * [x] Browser
   * [x] Mac
       * [x] Native
         * [x] blueprint ok 0.10.1 -> 0.11
         * [x] UI changes ok
       * [x] Browser
   * [x] python package (any platform)
       * [x] tested on mac, seems ok except:
       * [x] ~~couldn't load example rrds~~ fixed 
   * [x] C++ cmake install (any platform)
        * tested on linux 
   * [x] Rust crate (any platform)
* [x] finish opencv/eigen example update

TODO just after release:
* [x] Update webpage with blog
* [x] Merge opencv/eigen example update
* [x] github release update
* [x] post on social

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested [app.rerun.io](https://app.rerun.io/pr/4347) (if
applicable)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG

- [PR Build Summary](https://build.rerun.io/pr/4347)
- [Docs
preview](https://rerun.io/preview/01b4186b37fc910491879dfd90433aeb940a5c89/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/01b4186b37fc910491879dfd90433aeb940a5c89/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

---------

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Co-authored-by: rerun-bot <bot@rerun.io>
Co-authored-by: jprochazk <1665677+jprochazk@users.noreply.github.com>
Co-authored-by: Jeremy Leibs <jeremy@rerun.io>
  • Loading branch information
5 people authored and teh-cmc committed Nov 30, 2023
1 parent ba5bf92 commit b0e65c2
Show file tree
Hide file tree
Showing 127 changed files with 447 additions and 321 deletions.
15 changes: 8 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,12 @@ jobs:
run: |
node rerun_js/web-viewer/scripts/version.mjs ${{ steps.versioning.outputs.current }}
- name: Update rerun_c version
shell: bash
# Configuring CMake is enough to change the version on rerun.h!
run: |
cmake -B build -S .
- run: taplo fmt
shell: bash

Expand Down Expand Up @@ -224,7 +230,6 @@ jobs:
release-version: ${{ needs.version.outputs.current }}
concurrency: ${{ github.ref_name }}
linux-wheel-name: linux-wheel
linux-rrd-name: linux-rrd
release-commit: ${{ needs.version.outputs.release-commit }}
secrets: inherit

Expand All @@ -237,7 +242,6 @@ jobs:
release-commit: ${{ needs.version.outputs.release-commit }}
concurrency: ${{ github.ref_name }}
wheel-artifact-name: linux-wheel
rrd-artifact-name: linux-rrd
update-latest: ${{ inputs.release-type == 'final' }}
secrets: inherit

Expand Down Expand Up @@ -345,11 +349,6 @@ jobs:
python3 scripts/ci/crates.py version --bump auto
echo "version=$(python3 scripts/ci/crates.py get-version)" >> "$GITHUB_OUTPUT"
- name: Update NPM versions
shell: bash
run: |
node rerun_js/web-viewer/scripts/version.mjs ${{ steps.update-version.outputs.version }}
- run: taplo fmt
shell: bash

Expand All @@ -359,6 +358,7 @@ jobs:
git config --global user.name "rerun-bot"
git config --global user.email "bot@rerun.io"
git commit -am "Bump versions to ${{ steps.update-version.outputs.version }}"
git pull --rebase
git push
comment-artifact-links:
Expand Down Expand Up @@ -426,3 +426,4 @@ jobs:
EOF
gh pr comment $pr_number --body-file comment-body.txt
16 changes: 5 additions & 11 deletions .github/workflows/reusable_publish_npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,20 +58,14 @@ jobs:
workload_identity_provider: ${{ secrets.GOOGLE_WORKLOAD_IDENTITY_PROVIDER }}
service_account: ${{ secrets.GOOGLE_SERVICE_ACCOUNT }}

- name: Install dependencies
shell: bash
run: |
node rerun_js/web-viewer/scripts/install.mjs
- name: Build package
shell: bash
run: |
node rerun_js/web-viewer/scripts/build.mjs
- uses: prefix-dev/setup-pixi@v0.3.0
with:
pixi-version: v0.6.0

- name: Publish package
- name: Publish packages
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
shell: bash
run: |
node rerun_js/web-viewer/scripts/publish.mjs
pixi run node rerun_js/web-viewer/scripts/publish.mjs
23 changes: 0 additions & 23 deletions .github/workflows/reusable_publish_web.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,6 @@ on:
description: "Name of the wheel to use when running examples"
type: string
required: true
rrd-artifact-name:
description: "Name of the .rrd file to use for app.rerun.io"
type: string
required: true
update-latest:
description: "Whether to update the latest version of demo/app"
type: boolean
Expand Down Expand Up @@ -87,12 +83,6 @@ jobs:
name: ${{ inputs.wheel-artifact-name }}
path: wheel

- name: Download .rrd for app.rerun.io
uses: actions/download-artifact@v3
with:
name: ${{ inputs.rrd-artifact-name }}
path: rrd

- name: Install Python dependencies and wheel
shell: bash
run: |
Expand Down Expand Up @@ -121,13 +111,6 @@ jobs:
run: |
pixi run python3 scripts/ci/build_demo_app.py --skip-build
- name: Upload .rrd for app.rerun.io
uses: google-github-actions/upload-cloud-storage@v1
with:
path: "rrd"
destination: "rerun-example-rrd/version/${{ inputs.release-version }}"
parent: false

- name: Upload app.rerun.io (versioned)
uses: google-github-actions/upload-cloud-storage@v1
with:
Expand All @@ -149,12 +132,6 @@ jobs:
destination: "rerun-demo/version/${{ inputs.release-version }}"
parent: false

- name: Publish app.rerun.io
if: inputs.update-latest
shell: bash
run: |
gsutil -m cp -r 'gs://rerun-example-rrd/version/${{ inputs.release-version }}/*' gs://rerun-example-rrd/version/latest
- name: Publish app.rerun.io
if: inputs.update-latest
shell: bash
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/reusable_publish_wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ on:
description: "Name of the wheel built for linux"
type: string
required: true
linux-rrd-name:
description: "Name of the .rrd file built for linux"
type: string
required: true
release-commit:
description: "Which commit to build+publish"
type: string
Expand Down Expand Up @@ -215,4 +211,3 @@ jobs:
with:
command: upload
args: --skip-existing wheels/*

83 changes: 83 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,89 @@

## [Unreleased](https://github.com/rerun-io/rerun/compare/latest...HEAD)

## [0.11.0](https://github.com/rerun-io/rerun/compare/0.10.1...0.11.0)

### Overview & Highlights

- 🌊 C++ SDK improvements
- [Reference docs are live!](https://ref.rerun.io/docs/cpp/)
- 2x-5x faster logging
- CMake install support and other CMake setup improvements
- Support for custom components & archetypes
- Zero copy logging for images, various API improvements
- 📈 Visual History -> Visual Time Range
- Time series plots can now limit its query to a range
- Much more powerful UI, allowing query ranges relative to time cursor
- 🕸️ The viewer can now be easily embedded in your web apps via our [npm package](https://www.npmjs.com/package/@rerun-io/web-viewer)
- 🐍 ⚠️ Legacy Python API now removed, check the [migration guide](https://github.com/rerun-io/rerun/issues/723) if you're not using `rr.log` yet
- 🦀 The new `StoreSubscriber` trait allows to be notified of all changes in the datastore. This can be used to build custom indices and trigger systems, and serves as a foundation for upcoming performance improvements. Check out [our example](https://github.com/rerun-io/rerun/blob/main/examples/rust/custom_store_subscriber/README.md) for more information.

⚠️ Known issues on Visual Time Range:
- Time cursor [sometimes stops scrolling correctly](https://github.com/rerun-io/rerun/issues/4246) on plot window
- Still [doesn't work with transforms](https://github.com/rerun-io/rerun/issues/723)

Special thanks to @dvad & @dangush for contributing!

### Details

#### 🌊 C++ SDK
- Support std::chrono types for `set_time` on `rerun::RecordingStream` [#4134](https://github.com/rerun-io/rerun/pull/4134)
- Improve rerun_cpp readme & CMakeLists.txt [#4126](https://github.com/rerun-io/rerun/pull/4126)
- Replace the many parameters of `rerun::spawn` / `rerun::RecordingStream::spawn` with a `struct` [#4149](https://github.com/rerun-io/rerun/pull/4149)
- Make on TextLogLevel PascalCase (instead of SCREAMING CASE) to avoid clashes with preprocessor defines [#4152](https://github.com/rerun-io/rerun/pull/4152)
- Reduce rerun_c library size (by depending on fewer unnecessary crates) [#4147](https://github.com/rerun-io/rerun/pull/4147)
- Fix unnecessary includes in code generated headers [#4132](https://github.com/rerun-io/rerun/pull/4132)
- Doxygen documentation & many doc improvements [#4191](https://github.com/rerun-io/rerun/pull/4191)
- Rename `rerun::ComponentBatch` to `rerun::Collection` (and related constructs) [#4236](https://github.com/rerun-io/rerun/pull/4236)
- Use `rerun::Collection` almost everywhere we'd use `std::vector` before [#4247](https://github.com/rerun-io/rerun/pull/4247)
- Significantly improve C++ logging performance by using C FFI instead of arrow IPC [#4273](https://github.com/rerun-io/rerun/pull/4273)
- Further improve C++ logging for many individual log calls by introducing a component type registry [#4296](https://github.com/rerun-io/rerun/pull/4296)
- All C++ datatypes & components now implement a new Loggable trait [#4305](https://github.com/rerun-io/rerun/pull/4305)
- Add C++ Custom Component example [#4309](https://github.com/rerun-io/rerun/pull/4309)
- Expose Rerun source/include dir in CMakeLists.txt (`RERUN_CPP_SOURCE_DIR`) [#4313](https://github.com/rerun-io/rerun/pull/4313)
- Support cmake install [#4326](https://github.com/rerun-io/rerun/pull/4326)
- Export TensorBuffer & TensorDimension to rerun namespace [#4331](https://github.com/rerun-io/rerun/pull/4331)
- C++ SDK sanity checks now header/source version against rerun_c binary version [#4330](https://github.com/rerun-io/rerun/pull/4330)
- Allow creating Image/Tensor/DepthImage/SegmentationImage directly from shape & pointer [#4345](https://github.com/rerun-io/rerun/pull/4345)

#### 🐍 Python SDK
- Python: remove legacy APIs [#4037](https://github.com/rerun-io/rerun/pull/4037)
- Remove deprecated `rerun_demo` package [#4293](https://github.com/rerun-io/rerun/pull/4293)
- Python: don't catch `KeyboardInterrupt` and `SystemExit` [#4333](https://github.com/rerun-io/rerun/pull/4333) (thanks [@Dvad](https://github.com/Dvad)!)

#### 🪳 Bug Fixes
- Fix line & points (& depth clouds points) radii being unaffected by scale & projection via Pinhole [#4199](https://github.com/rerun-io/rerun/pull/4199)
- Fix inaccessible entities being incorrectly added to space view [#4226](https://github.com/rerun-io/rerun/pull/4226)
- Silence spammy blueprint warnings and validate blueprint on load [#4303](https://github.com/rerun-io/rerun/pull/4303)
- Fix markdown heading size [#4178](https://github.com/rerun-io/rerun/pull/4178)

#### 🌁 Viewer Improvements
- Add command to copy direct link to fully qualified URL [#4165](https://github.com/rerun-io/rerun/pull/4165)
- Implement recording/last-modified-at aware garbage collection [#4183](https://github.com/rerun-io/rerun/pull/4183)

#### 🖼 UI Improvements
- Improve Visible History to support more general time queries [#4123](https://github.com/rerun-io/rerun/pull/4123)
- Add support for Visible History to time series space views [#4179](https://github.com/rerun-io/rerun/pull/4179)
- Make Visible History UI more ergonomic and show inherited values [#4222](https://github.com/rerun-io/rerun/pull/4222)
- Display Visible History on timeline when the mouse hovers the UI [#4259](https://github.com/rerun-io/rerun/pull/4259)
- Improve the Selection Panel with better title, context, and Space View key properties [#4324](https://github.com/rerun-io/rerun/pull/4324)

#### 🕸️ Web
- Put web viewer on `npm` [#4003](https://github.com/rerun-io/rerun/pull/4003)
- Auto-switch port when getting AddrInUse error [#4314](https://github.com/rerun-io/rerun/pull/4314) (thanks [@dangush](https://github.com/dangush)!)
- Generate per-PR web apps [#4341](https://github.com/rerun-io/rerun/pull/4341)

#### 🧑‍💻 Dev-experience
- Simple logging benchmarks for C++ & Rust [#4181](https://github.com/rerun-io/rerun/pull/4181)
- New debug option to show the blueprint in the streams view [#4189](https://github.com/rerun-io/rerun/pull/4189)
- Use pixi over setup scripts on CI + local dev [#4302](https://github.com/rerun-io/rerun/pull/4302)
- Run deploy docs jobs serially [#4232](https://github.com/rerun-io/rerun/pull/4232)
- fix windows test config on main [#4242](https://github.com/rerun-io/rerun/pull/4242)

#### 🗣 Refactors
- `StoreView` -> `StoreSubscriber` [#4234](https://github.com/rerun-io/rerun/pull/4234)
- `DataStore` introduce `StoreEvent`s [#4203](https://github.com/rerun-io/rerun/pull/4203)
- `DataStore` introduce `StoreView`s [#4205](https://github.com/rerun-io/rerun/pull/4205)

## [0.10.1](https://github.com/rerun-io/rerun/compare/0.10.0...0.10.1)

Expand Down
Loading

0 comments on commit b0e65c2

Please sign in to comment.