Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare release of 0.7.0 #2446

Closed
wants to merge 63 commits into from
Closed

Prepare release of 0.7.0 #2446

wants to merge 63 commits into from

Conversation

emilk
Copy link
Member

@emilk emilk commented Jun 15, 2023

What

I've picked:

  • transforms refactor
  • bug fixes
  • examples
  • docs
  • jpeg_quality
  • some CI stuff and other dev-tools
  • extend_viewer_ui example and related changes

I have NOT picked:

  • blueprint
  • IDL
  • viewport refactors
  • breaking changes to .rrd stream (except for the breakage of the transforms refactor)

Checklist

PR Build Summary: https://build.rerun.io/pr/2446

Docs preview: https://rerun.io/preview/9cf3033/docs
Examples preview: https://rerun.io/preview/9cf3033/examples


Changelog

Rerun is an easy-to-use visualization toolbox for computer vision and robotics.

While we're working on significant updates around interfaces and customizability,
here's a smaller release packed with useful improvements 🎉

Highlights:

  • Much more powerful transformation logging
    • any affine transforms works now!
    • supports many more formats and shows them in the viewer as-is
  • Better color mapping range detection for images and tensors
  • Many small improvements to samples & documentation

Full changelog:

🐍 Python SDK

  • Improved 3D transform ingestion & affine transform support #2102
  • Normalize Python typing syntax to 3.8+ #2361
  • Enforce from __future__ import annotations in Python files #2377
  • Add jpeg_quality parameter to log_image #2418

🦀 Rust SDK

  • Improved 3D transform ingestion & affine transform support #2102
  • impl Copy for Arrow3D. #2239 (thanks @kpreid!)

🪳 Bug Fixes

  • Stable image order, fixing flickering #2191
  • Fix double clicking objects no longer focusing the camera on them #2227
  • Fix off-by-half pixel error in textured rectangle shader #2294
  • Update wgpu-hal to 0.16.1 to fix mobile Safari #2296
  • Fix some browsers failing due to 8k texture requirement, pick always highest available now #2409
  • Fix visibility toggles for time series not working #2444

🌁 Viewer Improvements

  • Time panel now always talks about "events" instead of "messages" #2247
  • Automatically determine image/tensor color mapping & need for sRGB decoding #2342

🚀 Performance Improvements

  • Optimization: avoid a memory allocation when padding RGB u8 to RGBA #2345

🧑‍🏫 Examples

  • Example of how to embed the Rerun Viewer inside your own GUI (+ ergonomic improvements) #2250
  • Objectron Rust example: install protoc for the user #2280
  • Remove weird-looking argument parsing in examples #2398
  • Fix tracking_hf example: put scaled thing under its own root entity #2419
  • Clean up our examples #2424
  • New face detection example based on MediaPipe #2360
  • Update web examples #2420
  • Update titles and tags for examples with real data #2416

📚 Docs

  • Merge rerun-docs repository into this monorepo #2284
  • Add manifest + readmes to examples #2309
  • Fix and clean up BUILD.md #2319
  • Link to /examples in PR description #2320
  • Make examples setup a separate page #2323
  • Add site_url to mkdocs.yml #2326
  • Add log_cleared to the common index #2400
  • Use forked mkdocs-redirects #2404
  • Add support for classes to generated python common API index #2401
  • Added support for creating multi-resolution stacks with upload_image.py #2411
  • Document annotation context in manual #2453

🕸️ Web

  • Update wasm-bindgen to 0.2.87 #2406
  • When loading on web, match style and show a progress indicator while wasm is loading #2421

📈 Analytics

  • Add crash retriever script #2168

🧑‍💻 Dev-experience

  • Image uploader script #2164
  • Replace wasm-bindgen-cli with library wasm-bindgen-cli-support #2257
  • Fix manual release/dispatch workflows #2230
  • Add instructions on how to fix weird gsutil crash #2278
  • Link to preview of latest commit in PR body #2287
  • CI: Retry linkinator #2299
  • Remove long dead code python unit test #2356
  • Added gcloud project name to upload_image.py #2381
  • Fix typo in run_all.py #2441
  • Small changelog improvements #2442
  • Minor fixes/improvements of upload_image.py #2449
  • Improve changelog generator #2447

🗣 Refactors

  • Centralize freestanding store helpers #2153

📦 Dependencies

  • Update xml-rs v0.8.13 -> v0.8.14 #2425
  • Update pip package requests to 2.31 with bug fix #2426

teh-cmc and others added 30 commits June 15, 2023 12:17
* add crash fetcher script

* newline

* fmt

* typo

* uniques

* fmt

* format again........

* woops -- missing signals

* shebang, and chmod +x

* better header template

---------

Co-authored-by: Emil Ernerfeldt <[email protected]>
* centralize freestanding store helpers

* port everything to new helpers

* note to self

* missing feature flag

* docs
* Transform is now Transform3D and has an affine transform with various options

* todo notes on sparse enums in transform3d

* from instead of into glam impls

* add more utilities, port rust examples

* better ui display for transform3d

* transform3d now also captures direction parent/child child/parent

* Fix images with same render order not layering transparently

* nicer draw order sample

* every draw order given out is individual again to avoid z fighting

* affine3 python interface wip

* unified affine transform logging from python

* hide zero translations

* fix up log_rigid3 and deprecate it

* example for log_affine3

* Rename RotationAxisAngle

* py-lint fixes

* re-enable data_table_sizes_basics test

* more docs and doc tests for transform3d

* implement pinhole via transform3d.py

* spelling

* better affine transform error messages on python, fix tensor logging again

* linting, small improvements

* update all uses of log_rigid3 in python examples

* fix old python incompatibility issues

* split up transform enum into three different components
rust only so far

* wire up python sdk again to new components

* fix pinhole camera not being categorized as spatial

* enable custom pinhole ui

* Rename to TranslationAndMat3

* fixup some tests in re_log_types

* mono component documentation

* fixup test_clean_for_polars_modify

* change python api to log_transform3d

* explicit quaternion type for python

* Translation3D is now its own enum to allow explicit non-logged translation

* fix quaternion logging in examples

* slightly better error messages on wrong type in python transform api

* Rust fmt

* rust test fix

* Avoid using attr.dataclass

* comment and cosmetic fixes, fixes for ros demo

* translation/rotation/scale are now options

* rename creation methods in rust api fro Transform3D

* fixup SpaceInfoConnection to be more versatile

* Rigid3D helper class on python

* a bit nicer rust api, less word duplication

* Quaternion is no longer a dataclass  in order to enforce spelling out the ordering

* fix documentation of datalayout for matrix on python transform api

* test/lint fixes

* doc fix

* fixup ros demo

---------

Co-authored-by: Jeremy Leibs <[email protected]>
* deterministic order of depth offset determination

* improved way of grouping images

* memorize pinhole camera to which entities belong during transform tree walk in order to simplify image grouping

* merge sort functions
### What

`Arrow3D` is a simple pair of vectors, so it should be `Copy` like
vectors are. This will ease working with, for example, batches of arrows
stored in arrays.

### 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)
* [ ] ~~I've included a screenshot or gif (if applicable)~~

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: {{ pr-build-summary }}
Tiny follow-up to #2233

Under the hood this is nuanced and we don't always get the names right:
An Event is a set of component changes for a single given entity at a
single given timepoint. A Message on the other hand is something we send
from api to store and may contain many of these Events and potentially
other things.

That said, I didn't find other occurrences where this is clearly labeled
incorrectly, but there gotta be more!

### What

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2247
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

Closes #2132

### What

Adds `just upload <image>`, which uploads the image to google cloud
using `gsutil`. The resulting URL contains the content hash plus the
original file name, which ensures that it is unique.

```
$ just upload image.png
https://static.rerun.io/dd31922030a6bf7223d5e3728d8da5407f4d6b1a_image.png
```

The script itself contains instructions for how to setup `gsutil`. It's
really just a link to Google's tutorial. Eventually it will be
documented separately together with the rest of the new workflow.

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2164

---------

Co-authored-by: Emil Ernerfeldt <[email protected]>
…omic improvements) (#2250)

Closes #2243

Add an example showing how to wrap the Rerun Viewer in your own GUI,
using
[`eframe`](https://github.com/emilk/egui/tree/master/crates/eframe) and
[`egui`](https://github.com/emilk/egui).

This example can be useful for anyone who wants to extend the viewer
with their own controls and widgets. The example shows how to read from
the data store.

Analytics are supported but is an opt-in feature in the example
`Cargo.toml`.

I created a `re_crash_handler` crate so that the example can get useful
info on panics and signals, and have them sent to rerun if they enable
analytics.

Only works on `main` (not on 0.6.0).

![image](https://github.com/rerun-io/rerun/assets/1148717/cbbad63e-9b18-4e54-bafe-b6ffd723f63e)

* [ ] Top-level docs at https://www.rerun.io/docs

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2250

---------

Co-authored-by: Andreas Reich <[email protected]>
Makes the build a bit more hermetic

Closes #2225

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2257
)

_Requires #2188_ ✔️

Fixes #2215
* #2215

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2227
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

- `manual_build_release` now includes
`reusable_build_web_demo`/`reusable_upload_web_demo`
- `manual_release` now uploads the the commit from
`rerun-demo/commit/<commit>` to `/version/latest`
- bandaid for breaking `manual_dispatch`: changed `BUILD_WEB` input in
`manual_dispatch` to accept a string instead of a bool (example values:
`app`, `demo`, `app,demo`), and removed `BUILD_WEB_DEMO`
- without this the number of inputs exceeds 10 and the workflow is
invalid and cannot be used
- bandaid to ensure `adhoc_web` will not overwrite the latest commit
build: added `UPLOAD_COMMIT` input to `upload_web` and `upload_web_demo`
which is on by default, and set it to false in `manual_adhoc_web`

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2230
### What
I had problems running our image uploader script
(#2164) due to `gsutil` refusing
to work on my machine, however I installed it:

```
❯  gsutil --help
ImportError: dlopen(/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/_cffi_backend.cpython-38-darwin.so, 0x0002): symbol not found in flat namespace '_ffi_prep_closure'
thread '<unnamed>' panicked at 'Python API call failed', /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.15.2/src/err/mod.rs:582:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Traceback (most recent call last):
  File "/Users/emilk/Downloads/google-cloud-sdk/bin/bootstrapping/gsutil.py", line 16, in <module>
    import bootstrapping
  File "/Users/emilk/Downloads/google-cloud-sdk/bin/bootstrapping/bootstrapping.py", line 50, in <module>
    from googlecloudsdk.core.credentials import store as c_store
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/googlecloudsdk/core/credentials/store.py", line 34, in <module>
    from google.auth import external_account as google_auth_external_account
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/external_account.py", line 42, in <module>
    from google.auth import impersonated_credentials
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/impersonated_credentials.py", line 39, in <module>
    from google.auth import jwt
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/jwt.py", line 57, in <module>
    from google.auth import _service_account_info
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/_service_account_info.py", line 22, in <module>
    from google.auth import crypt
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/crypt/__init__.py", line 43, in <module>
    from google.auth.crypt import rsa
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/crypt/rsa.py", line 20, in <module>
    from google.auth.crypt import _cryptography_rsa
  File "/Users/emilk/Downloads/google-cloud-sdk/lib/third_party/google/auth/crypt/_cryptography_rsa.py", line 25, in <module>
    from cryptography.hazmat.primitives import serialization
  File "/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/cryptography/hazmat/primitives/serialization/__init__.py", line 16, in <module>
    from cryptography.hazmat.primitives.serialization.base import (
  File "/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/cryptography/hazmat/primitives/serialization/base.py", line 9, in <module>
    from cryptography.hazmat.primitives.asymmetric.types import (
  File "/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/cryptography/hazmat/primitives/asymmetric/types.py", line 8, in <module>
    from cryptography.hazmat.primitives.asymmetric import (
  File "/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py", line 10, in <module>
    from cryptography.hazmat.primitives.asymmetric import utils as asym_utils
  File "/Users/emilk/.pyenv/versions/3.8.12/lib/python3.8/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py", line 6, in <module>
    from cryptography.hazmat.bindings._rust import asn1
pyo3_runtime.PanicException: Python API call failed
```

After a lot of googling [I found the
fix](https://levelup.gitconnected.com/fix-attributeerror-module-lib-has-no-attribute-openssl-521a35d83769):
`python3 -m pip install cryptography==38.0.4`

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2278
### What
Users need the protobuffer compiler `ptooc` installed to run the
objectron example. There is a crate for that!

https://github.com/sergeiivankov/protoc-prebuilt

(and it has a very responsive maintainer:
sergeiivankov/protoc-prebuilt#1)

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2280
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

Part of #2134

- [x] Move content from `rerun-io/rerun-docs` to `rerun-io/rerun/docs`
- [x] Upload all `rerun-io/rerun-docs/docs-media` to GCS (using `just
upload`) and update links
- [x] Test `landing` pointed to `rerun-io/rerun/<this PR>`

Preview: https://landing-lomuaznlh-rerun.vercel.app/docs

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2284
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist
* [ ] 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2287

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/49fbf30/docs
<!-- pr-link-docs:end -->
### What
Closes #2236

I made a 4x4 test image to verify:
<img width="1189" alt="Screenshot 2023-05-31 at 19 21 21"
src="https://github.com/rerun-io/rerun/assets/1148717/9b0f390a-7da2-4ae2-81b9-8789ea07fec2">

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2294

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/dd724f5/docs
<!-- pr-link-docs:end -->
The release contains gfx-rs/wgpu#3780

Closes #2032

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2296

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/9ebf96a/docs
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist
* [ ] 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2299

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/5aa6ab9/docs
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

Closes #2268 
Part of #2267 

Adding a `manifest.yml` file which is used by `landing` to render
examples in the documentation, and a `README.md` to each example.

GitHub renders frontmatter as a table, I'm not sure if we want to go
with that anymore. It's also possible to do something else, like a
comment at the top with a custom format, which wouldn't be displayed,
but would still be present in the file which `landing` downloads, and
could then be used to store the same metadata.

### Checklist
* [ ] 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2309

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/a05e331/docs
<!-- pr-link-docs:end -->

---------

Co-authored-by: Nikolaus West <[email protected]>
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2320

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/3d1faa7/docs
Examples preview: https://rerun.io/preview/3d1faa7/examples
<!-- pr-link-docs:end -->
### What

This PR cleans up and fixes the basic build steps in BUILD.md. I'm moved
and structured a few things around to make the progression nicer for new
developers. I also introduced the `just` commands for setting up and
building the Python SDK.

For windows, I've had to make some assumptions since the `just file`
doesn't support windows and I dont have a test computer:
- I assumed the `maturin develop` command is the same as on Mac/Linux
- I assumed and the pre-pip-21.3 remark about
`--use-feature=in-tree-build` is no longer necessary as `maturin` is
used for installation

### 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)
* [ ] ~~I've included a screenshot or gif (if applicable)~~

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2319

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/fb10bef/docs
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist
* [ ] 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2323

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/1f66e4b/docs
Examples preview: https://rerun.io/preview/1f66e4b/examples
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

Fix for #2222 (maybe)

It seems like the sitemap for `ref.rerun.io/docs/python/...` is empty.
It can be fixed by adding a `site_url` for it to use as the base url of
links in the sitemap.

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2326

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/edb65d4/docs
Examples preview: https://rerun.io/preview/edb65d4/examples
<!-- pr-link-docs:end -->
By implementing numpy's `__array__` protocol for our `Quaternion`
component.

HOPE should hopefully make regressions of this nature a thing of the
past 🙏

Fixes #2349
…2345)

Helps #2306 a bit

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2345

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/7bed2a1/docs
Examples preview: https://rerun.io/preview/7bed2a1/examples
<!-- pr-link-docs:end -->
Cleaning up before I add a bunch of my own stuff in there.

This was never run to begin with, `pytest` ignores files that don't
start with `test_`.
### What

Follow-up to #2361:

- Add a Ruff rule to check/add `from __future__ import annotations`
everywhere.
- Normalise a bunch of python files (mainly scripts) that the previous
PR missed.

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2377

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/2c443d9/docs
Examples preview: https://rerun.io/preview/2c443d9/examples
<!-- pr-link-docs:end -->
…coding (#2342)

<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

Fixes #2274
* #2274

Will need to be further worked on via:
* #2341

Introduces 3 new things actually:
* finite range, determined if the range of a tensor was in fact not
finite
* heuristic for color mapping range
* heuristic for srgb
   * ⚠️ does this break things?

Range & sRGB:

This
```
import rerun as rr
import numpy as np
import matplotlib.pyplot as plt

rr.init("image color", spawn=True)
img = np.random.random((300, 300, 3)) * 0.2
rr.log_image("image", img)
print(img.min(), img.max())  # to check they are in range [0,1]

plt.imshow(img)
plt.show()
```
Gives now the expected image:

![image](https://github.com/rerun-io/rerun/assets/1220815/9fcda125-f762-4fd4-ae24-ce6dcaaa496a)

When setting a pixel to inf, we show the "finite range" as well, and
behave correctly:
<img width="1026" alt="image"
src="https://github.com/rerun-io/rerun/assets/1220815/7d3037e8-f562-4b6c-8f08-ec4f5627c21a">

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2342

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/93697e6/docs
Examples preview: https://rerun.io/preview/93697e6/examples
<!-- pr-link-docs:end -->
emilk and others added 11 commits June 15, 2023 12:51
…2419)

### What
Before:

![image](https://github.com/rerun-io/rerun/assets/1148717/5308685e-9a70-43aa-85ca-fc7d7bc2e00a)

After:

![image](https://github.com/rerun-io/rerun/assets/1148717/398857ef-3d08-4ef9-8018-cb79ae4ee4bf)

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2419

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/501a2c6/docs
Examples preview: https://rerun.io/preview/501a2c6/examples
<!-- pr-link-docs:end -->
Various fixes I found when updating our demo list. See commit messages.

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2424

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/7b3027e/docs
Examples preview: https://rerun.io/preview/7b3027e/examples
<!-- pr-link-docs:end -->
### What
Fix https://github.com/rerun-io/rerun/security/dependabot/16

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2425

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/3f0fc45/docs
Examples preview: https://rerun.io/preview/3f0fc45/examples
<!-- pr-link-docs:end -->
Closes #2175

You can now do `log_image("image", image, jpeg_quality=75)` to compress
your logged images so they take up less space on disk and in RAM.

I also updated the UI so you can actually tell whether or not a tensor
was compressed.

This makes a many of our example data lot smaller. For instance,
`tracking_hf_opencv` goes from 753 MB to 101MB.

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2418

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/194b4be/docs
Examples preview: https://rerun.io/preview/194b4be/examples
<!-- pr-link-docs:end -->
Fixes https://github.com/rerun-io/rerun/security/dependabot/13

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2426

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/031ad63/docs
Examples preview: https://rerun.io/preview/031ad63/examples
<!-- pr-link-docs:end -->
### What

Closes #2338

New example based on
[MediaPipe](https://developers.google.com/mediapipe)'s Face Detector and
Landmarks solutions.

<img alt="image"
src="https://static.rerun.io/6efefd1de7c63166c4d99956711b6367206d9835_mp_face.png">

In the future, this example could benefit from a custom blueprint when
the API is stabilised enough:
- split face detect and face landmark into separate views (both with the
image in the background)
  - proper default orientation for the face 3D model
  - general layout order (cam views -> 3D view -> plots)

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2360

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/275e36b/docs
Examples preview: https://rerun.io/preview/275e36b/examples
<!-- pr-link-docs:end -->
Closes #2260

### What
I've updated the list of examples to use at demo.rerun.io.

Sizes are pretty good now with JPEG compression, and all of these will
be streamed once we have #2262
(except DICOM, which is just one big tensor)

```
arkitscenes:         42.7 MB
colmap:               7.6 MB
dicom:               67.7 MB
mp_pose:             58.2 MB
plots:                0.1 MB
tracking_hf_opencv:  58.2 MB
```

The CSS here could use some work though in a folllow-up PR:

![image](https://github.com/rerun-io/rerun/assets/1148717/0ac44586-6438-4976-b959-2e0f327b989f)

Some of the names here have been updated, following the lead of
#2416

### How to test it
```
scripts/build_demo_app.py
(cd web_demo && basic-http-server -a 0.0.0.0:8080 .)
```

This will also require a manual deploy to `demo.rerun.io` at some point.

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2420

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/07dd16b/docs
Examples preview: https://rerun.io/preview/07dd16b/examples
<!-- pr-link-docs:end -->
### What
Bug introduced in #2418

It's back to being red:

![image](https://github.com/rerun-io/rerun/assets/1148717/9ce4ab6b-a782-4b0d-9f75-2c905bf3313e)


### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2430

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/df06d4c/docs
Examples preview: https://rerun.io/preview/df06d4c/examples
<!-- pr-link-docs:end -->
Updates the titles, and adds tags to all "python examples with real
data" (a separate PR is needed for the "fake data" examples).

Renames:

| before | after |
| --- | --- |
| arkitscenes | arkit_scenes |
| colmap | structure_from_motion |
| deep_sdf | signed_distance_fields |
| dicom | dicom_mri |
| mp_pose | human_pose_tracking |
| nyud | rgbd |
| opencv_canny | live_camera_edge_detection |
| ros | ros_node |
| segment_anything | segment_anything_model |
| stable_diffusion | depth_guided_stable_diffusion |
| tracking_hf_opencv | detect_and_track_objects |

In order to minimise merge issues, this is best updated and merged
AFTER:
- #2419
- #2420
- #2418
- #2424
- #2426
- #2360

TODO

- [x] Update names script names
- [x] Update any references to the scripts
- [ ] ~~Mirror updates for Rust examples~~ (none of the renamed examples
have rust counterparts)
- [x] Convert tags to list
- [x] Quick typo/grammar pass with pycharm's checker

* [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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2416

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/3fb07ee/docs
Examples preview: https://rerun.io/preview/3fb07ee/examples
<!-- pr-link-docs:end -->

---------

Co-authored-by: Antoine Beyeler <[email protected]>
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: {{ pr-build-summary }}

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/a4dce7e/docs
Examples preview: https://rerun.io/preview/a4dce7e/examples
<!-- pr-link-docs:end -->
* `scripts/generate_changelog.py`: don't output things already in the
changelog
* Add dates to all our past releases

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2442

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/3a49e2f/docs
Examples preview: https://rerun.io/preview/3a49e2f/examples
<!-- pr-link-docs:end -->
@emilk emilk changed the title Prepare 0.7 Prepare release of 0.7.0 Jun 15, 2023
@emilk emilk mentioned this pull request Jun 15, 2023
3 tasks
@emilk emilk changed the base branch from main to release-0.6 June 15, 2023 12:48
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

Fixes #2415
* #2415

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2444

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/76a741b/docs
Examples preview: https://rerun.io/preview/76a741b/examples
<!-- pr-link-docs:end -->
@jleibs jleibs changed the base branch from release-0.6 to prepare-0.7-base June 15, 2023 14:31
abey79 and others added 3 commits June 15, 2023 16:37
### What

Lessons learned from #2440

- On Mac, PIL's clipboard import compresses to JPG, which is bad =>
added a custom function to use PNG instead.
- Tuned the PIL image saving parameters to optimise for file size
- Added some pngcrush CLI parameter for optimisation
- Discard pngcrush output if it ends up bigger than output (PIL's PNG
export is pretty good in most cases it seems)

### 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)
* [ ] ~~I've included a screenshot or gif (if applicable)~~

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2449

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/8563e84/docs
Examples preview: https://rerun.io/preview/8563e84/examples
<!-- pr-link-docs:end -->
### What
See commit messages

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2447

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/d593bf6/docs
Examples preview: https://rerun.io/preview/d593bf6/examples
<!-- pr-link-docs:end -->
@jleibs jleibs added the ⛴ release Related to shipping or publishing label Jun 15, 2023
@jleibs jleibs force-pushed the prepare-0.7-base branch from 361bc15 to 643dea9 Compare June 15, 2023 15:02
jleibs and others added 6 commits June 15, 2023 17:28
### What
Needed from the transform refactor.

### 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)
* [ ] I've included a screenshot or gif (if applicable)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2451

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/c9dee22/docs
Examples preview: https://rerun.io/preview/c9dee22/examples
<!-- pr-link-docs:end -->
…wasm is loading (#2421)

Resolves:
 - #2261

According to the new design, here is how the loading state should work:
1. HTML and CSS loads. It renders the skeleton content without any text.
1. WASM loads. It renders the exact same skeleton content without any
text. The user doesn’t notice that the rendering method switched from
HTML => WASM.
1. If loading takes long (more than 3 seconds) text fades in and
provides additional information.
1. When the App UI is ready, the skeleton content fades away (200ms
duration) and the app fades in.

The first deployed test of this ended up with 300% progress during the
download step, so I've added some extra handling for progress related to
compressed streams.At the moment we default to an adhoc compression
ratio, but once we land:
 - #2422
 then the progress should be completely accurate again.

In order to make all the waiting variants more consistent, this also
changes the RRD loading page.

The normal waiting page looks like:

![image](https://github.com/rerun-io/rerun/assets/3312232/a8eb2473-7b7c-433a-a0b2-09c6d209c44e)

Before:

![image](https://github.com/rerun-io/rerun/assets/3312232/adcf27dc-5c59-4642-8fda-18d0de544442)

After:

![image](https://github.com/rerun-io/rerun/assets/3312232/cd4104db-be28-4c32-8171-2b9a9408cf23)

This PR does not handle progress indicator during the loading of the RRD
itself. The hooks necessary to get access to progress feedback depend on
essentially the same work already happening as part of:
#2412 and just directly loading
the rrd file is generally going to be better than showing a progress
indicator. It could be worth revisiting this for things like blueprints
with large static data.

This needs to be tested manually on our major OS / browser combinations:

Builds to test:
 - https://app.rerun.io/commit/e15ebb5
 - https://demo.rerun.io/commit/e15ebb5

If your internet connection is too fast, use developer tools to throttle
connection and enable cache.

![image](https://github.com/rerun-io/rerun/assets/3312232/8ba99668-5441-4652-b1f3-9c82c2b6cbb3)

- Linux:
  - [x] Chrome
  - [x] Firefox
- Mac:
  - [x] Chrome
  - [x] Firefox
  - [x] Safari
- Windows:
  - [x] Chrome
  - [x] Firefox
  - [x] Edge

* [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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2421

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/934925b/docs
Examples preview: https://rerun.io/preview/934925b/examples
<!-- pr-link-docs:end -->
### What

This PR fixes a bunch of places where renames from #2416 weren't
applied.

⚠️ It touches various build-related places, ~~due to the renaming of
`colmap_fiat.rrd` into `structure_from_motion_fiat.rrd`~~, which is
included in the SDK demo feature.

Edit: `colmap_fiat.rrd` shouldn't be renamed, it corresponds to an
actual Google dataset called `colmap_fiat`.

### 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)
* [ ] ~~I've included a screenshot or gif (if applicable)~~ 

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2448

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/98e0eca/docs
Examples preview: https://rerun.io/preview/98e0eca/examples
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

Fixes  #1337 (😎)
*  #1337

### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2453

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/9711742/docs
Examples preview: https://rerun.io/preview/9711742/examples
<!-- pr-link-docs:end -->
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

Fix `colormap_srgb` outputting linear greyscale map instead of srgb
greyscale map.

Note how this method is documented as:
`/// Returns a gamma-space sRGB in 0-1 range.`
but then a few lines below outputted `Vec3(t)` directly, i.e. a linear
scale.

This became visually apparent when you put a 3 channel image (no color
map!) next to a single channel image (greyscale color map applied) next
to each other.

Before:
<img width="402" alt="image"
src="https://github.com/rerun-io/rerun/assets/1220815/65e0feaa-2443-483b-9b6f-424e6b22c0d7">

After:
<img width="411" alt="image"
src="https://github.com/rerun-io/rerun/assets/1220815/da1ba05e-7343-4700-a218-c5bb240870cb">


(this is not what the sample usually looks like, I made both images take
the value 128, they are different by default)


### 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)

<!-- This line will get updated when the PR build summary job finishes.
-->
PR Build Summary: https://build.rerun.io/pr/2456

<!-- pr-link-docs:start -->
Docs preview: https://rerun.io/preview/1c35935/docs
Examples preview: https://rerun.io/preview/1c35935/examples
<!-- pr-link-docs:end -->
@Wumpf Wumpf closed this Jun 16, 2023
@Wumpf Wumpf deleted the prepare-0.7 branch June 16, 2023 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⛴ release Related to shipping or publishing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants