v0.3.0
After a successful launch a couple of weeks ago, we're back with our second release!
With a few exceptions this release focuses on internal refactors & improving our processes.
However, we think you'll enjoy these goodies that made it in nonetheless!
23-03-02_18.44.38.patched.mp4
You can now generate point clouds directly from depth textures and choose a wide variety of color maps.
Check out this video on how to use it.
This is a lot faster and more convenient than doing so manually in your own code
Some caveats: Picking is not yet working and visible history may behave differently (related to #723)
Other highlights:
- Viewer
- SDK
- Python packages now work with Ubuntu-20.04 #1334
- u8 segmentation stay u8 now (they converted to u16 before) #1376
- 2D Line strips can now be logged directly #1430
- Add a
strictmode to the Python SDK where misuses of the API result in exceptions being raised.#1477 - Fix disabling Python API through
initnot working #1517
- General
- We build now with fewer build dependencies (there is however still more work to do!).
Notably, we previously used a version of thetimecrate which had a security issue (CVE-2020-26235), thanks @mpizenberg for helping out! - Print more information & troubleshooting info on crash
- We build now with fewer build dependencies (there is however still more work to do!).
Meanwhile, we did a bunch of improvements to our manual. If you had trouble running Rerun so far, check our updated troubleshooting page (and as always, please open an issue if something doesn't work).
.rrd files no longer load
In Detail
New Features
- Generate point clouds directly from depth textures
- Python SDK: Add strict mode #1477
- OS independent Zoom factor & serialization thereof #1448
- Labels for 3D objects have now a color can now be selected & hovered #1438
- Add 2d support for linestrips #1430
- Add signal handler on *nix with troubleshooting and stacktrace #1340
- Point users to our troubleshooting page on panic #1338
Performance
- Speed up conversions for color arrays in Python #1454
- Speed up fixed-sized array iteration #1050
- Speed up tensor handling by padding data through more directly
- Add option to show performance metrics in the UI in release builds too #1444
- Faster stable diffusion sample #1364
- SDK: stream to disk with
savefeature #1405 re_rendererhas now a direct CPU->GPU copy mechanism
Small improvements & Bugfixes
- UI
re_renderer- Heuristic for camera frustum length is now based on scene size #1433
- Fix python type signature for tensor names #1443
- Don't convert u8 segmentation images to u16 #1376
- Docs (excluding the manual)
- Improve the docs of
connectandserve#1450 - Update log_mesh and log_meshes docs. #1286
- Add guidelines for adding dependencies in a PR #1431
- Add a few more sections to
CODE_STYLE.md#1365 - Fixup for some doc links #1314
- Document undocumented environment variables on help page. #1335
- Link to SDK operating modes doc in both SDK #1330
- Improve the docs of
- More information in
--version#1388 - Remove already broken
showmethod from Python SDK #1429 - Analytics
- Versioned log streams streams #1420
- Fix path issues when running debug viewer within workspace #1341
- Detailed errors for re_renderer
include_file!#1339 - Limit logging in web-viewer to
warnin order to workaround a crash issue (and reduce log spam) 1514 - Fix disabling API through
initnot working #1517
CI, Testing & Build improvements
- Reduce build dependencies
- Use different artifact names for wasm/js in debug builds #1428
- Separate mac wheels & trigger wheel build from ui #1499
- Add spell checking to CI #1492
- Repo size
- Python
- Testing
- Add a test of memory use when logging a lot of big images #1372
- Switch ci_docker to a container based on ubuntu 20.04 #1334
- Release handling
- Switch release action to ncipollo #1489
- Fix our continuous pre-releases #1458
- Delete the prerelease before creating the new one #1485
- Set prerelease to true even for version-tagged CI job #1504
- Let the release job take care of creating the tag #1501
- Use
cargo update -winstead ofcargo checkwhen prepping prerelease #1500 - Use prerelease tag instead of latest and update pointer on prerelease #1481
- Include date in pre-release version #1472
- Switch pre-release action to ncipollo/release-action #1466
- Disallow some methods and types via Clippy#1411
Other not user facing refactors
- Fix: don't create a dummy LogDb when opening the Rerun Menu #1440
re_rendererDraw Phasesin preparation of executingRendererseveral times on different targets #1419- Simplify bind group allocation call by passing pool collection object. #1459
- Interior mutable buffer/texture/bindgroup pools #1374
- Rename all instances of
frame_maintenancetobegin_frame#1360 - Texture & buffer call now wgpu's
destroyon removal from pool #1359 - Arrow buffers as (optional) first-class citizen #1482
- Log static re_renderer resource generation #1464
- Internal log_text_entry_internal to break circular deps #1488
- Delete ClassicTensor and cleanup #1456
- Fix re_renderer file watcher watching the same file several times #1463
- Analytics
- Introduce
DeserializableComponenttrait and high-levelquery_latest#1417