diff --git a/.github/workflows/documentation.yaml b/.github/workflows/documentation.yaml index 73d5e3575a39..ff98a8868852 100644 --- a/.github/workflows/documentation.yaml +++ b/.github/workflows/documentation.yaml @@ -34,8 +34,8 @@ jobs: paths: "**/*.c, **/*.cpp, **/*.fbs, **/*.h, **/*.hpp, **/*.js, **/*.md, **/*.py, **/*.rs, **/*.sh, **/*.toml, **/*.txt, **/*.wgsl, **/*.yml" # Avoid crates.io rate-limiting, skip changelog PR links (so many), and skip speculative links - # https://rerun-io.github.io/rerun/dev/bench/ often 404:s for unknown reasons - linksToSkip: "https://crates.io/crates/.*, https://github.com/rerun-io/rerun/pull/.*, .*?speculative-link, https://www.rerun.io/docs/getting-started/installing-viewer, https://www.rerun.io/docs/howto/arrow-cpp-install, https://rerun-io.github.io/rerun/dev/bench/" + # TODO(##4085): https://rerun-io.github.io/rerun/dev/bench/ often 404:s for unknown reasons + linksToSkip: "https://crates.io/crates/.*, https://github.com/rerun-io/rerun/pull/.*, .*?speculative-link, https://rerun-io.github.io/rerun/dev/bench/" retry: true retryErrors: true retryErrorsCount: 5 diff --git a/CHANGELOG.md b/CHANGELOG.md index 5685be39605f..4346dd7bb19b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,10 +10,21 @@ * Python: `pip install rerun-sdk` * Rust: `cargo add rerun` and `cargo install rerun-cli` -* Online demo: +* Online demo: ### Overview & Highlights * The C++ SDK is finally here! + ```cpp + #include + + int main() { + const auto rec = rerun::RecordingStream("rerun_example_points3d_simple"); + rec.spawn().exit_on_failure(); + + rec.log("points", rerun::Points3D({{0.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 1.0f}})); + } + ``` + * Add an integrated getting-started guide into the viewer splash screen * Add a new and improved `spawn` method in the Rust SDK * Add support for NV12-encoded images [#3541](https://github.com/rerun-io/rerun/pull/3541) (thanks [@zrezke](https://github.com/zrezke)!) diff --git a/README.md b/README.md index 0383a55fbac9..9bb958096088 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ # Build time aware visualizations of multimodal data -Use the Rerun SDK (available in Python, Rust, and soon C++) to log data like images, tensors, point clouds, and text. Logs are streamed to the Rerun Viewer for live visualization or to file for later use. +Use the Rerun SDK (available in Python, Rust, and C++) to log data like images, tensors, point clouds, and text. Logs are streamed to the Rerun Viewer for live visualization or to file for later use. ```py import rerun as rr # pip install rerun-sdk @@ -46,7 +46,7 @@ rr.log("path/to/points", rr.Points3D(positions, colors=colors)) ## Getting started * **Python**: `pip install rerun-sdk` or on [`conda`](https://github.com/conda-forge/rerun-sdk-feedstock) * **Rust**: `cargo add rerun` -* **C / C++**: [Coming soon](https://github.com/rerun-io/rerun/issues/2919) +* **C++**: [Guide](https://www.rerun.io/docs/getting-started/cpp) ### Rerun Viewer binary Both the Python and Rust library can start the Rerun Viewer, but to stream log data over the network or load our `.rrd` data files you also need the `rerun` binary. diff --git a/crates/re_types/definitions/rerun/datatypes/uint32.fbs b/crates/re_types/definitions/rerun/datatypes/uint32.fbs index 4dc8d00ce9a8..a129265ff45c 100644 --- a/crates/re_types/definitions/rerun/datatypes/uint32.fbs +++ b/crates/re_types/definitions/rerun/datatypes/uint32.fbs @@ -11,8 +11,7 @@ struct UInt32 ( "attr.arrow.transparent", "attr.rust.derive": "Copy, PartialEq, Eq, PartialOrd, Ord", "attr.rust.override_crate": "re_types_core", - "attr.rust.tuple_struct", - "attr.docs.unreleased" + "attr.rust.tuple_struct" ) { value: uint32 (order: 100); } diff --git a/docs/code-examples/roundtrips.py b/docs/code-examples/roundtrips.py index ae49051e6dc0..79a663619ae6 100755 --- a/docs/code-examples/roundtrips.py +++ b/docs/code-examples/roundtrips.py @@ -21,7 +21,7 @@ # for one or more specific SDKs. opt_out_run = { "any_values": ["cpp", "rust"], # Not yet implemented - "custom_data": ["cpp"], # TODO(#2919): Not yet implemented in C++ + "custom_data": ["cpp"], # TODO(emilk): Not yet implemented in C++ "extra_values": ["cpp", "rust"], # Missing examples "image_advanced": ["cpp", "rust"], # Missing examples "log_line": ["cpp", "rust", "py"], # Not a complete example -- just a single log line diff --git a/docs/content/getting-started/logging-cpp.md b/docs/content/getting-started/logging-cpp.md index 3c802d14046d..2a20ceb8f285 100644 --- a/docs/content/getting-started/logging-cpp.md +++ b/docs/content/getting-started/logging-cpp.md @@ -13,7 +13,7 @@ In a few lines of code, we'll go from a blank sheet to something you don't see e This guide aims to go wide instead of deep. There are links to other doc pages where you can learn more about specific topics. -At any time, you can checkout the complete code listing for this tutorial [here](https://github.com/rerun-io/rerun/tree/latest/examples/cpp/dna/main.cpp?speculative-link) to better keep track of the overall picture. +At any time, you can checkout the complete code listing for this tutorial [here](https://github.com/rerun-io/rerun/tree/latest/examples/cpp/dna/main.cpp) to better keep track of the overall picture. To build the example from the repository, run: ```bash diff --git a/docs/content/getting-started/logging-rust.md b/docs/content/getting-started/logging-rust.md index d4b5b538180d..c8eb045fd986 100644 --- a/docs/content/getting-started/logging-rust.md +++ b/docs/content/getting-started/logging-rust.md @@ -333,7 +333,7 @@ You can also save a recording (or a portion of it) as you're visualizing it, dir ### Spawning the Viewer from your process -If the Rerun Viewer is [installed](installing-viewer.md) and available in your `PATH`, you can use [`RecordingStream::spawn`](https://docs.rs/rerun/latest/rerun/struct.RecordingStream.html#method.spawn?speculative-link) to automatically start a viewer in a new process and connect to it over TCP. +If the Rerun Viewer is [installed](installing-viewer.md) and available in your `PATH`, you can use [`RecordingStream::spawn`](https://docs.rs/rerun/latest/rerun/struct.RecordingStream.html#method.spawn) to automatically start a viewer in a new process and connect to it over TCP. If an external viewer was already running, `spawn` will connect to that one instead of spawning a new one. ```rust diff --git a/docs/content/howto/cpp-custom-component-batch-adapter.md b/docs/content/howto/cpp-custom-component-batch-adapter.md index ffa01c10c02f..4c2e791d338b 100644 --- a/docs/content/howto/cpp-custom-component-batch-adapter.md +++ b/docs/content/howto/cpp-custom-component-batch-adapter.md @@ -1,6 +1,5 @@ --- title: C++ Custom Component Batch Adapter order: 7 -# TODO(#3962): update link -redirect: https://github.com/rerun-io/rerun/blob/6b2cf6dbf29124a10f2fc909e02f5fee7cbd0cbe/examples/cpp/custom_component_adapter/README.md +redirect: https://github.com/rerun-io/rerun/blob/latest/examples/cpp/custom_component_adapter/README.md --- diff --git a/docs/content/reference/sdk-operating-modes.md b/docs/content/reference/sdk-operating-modes.md index 570d03654fcc..e37a981fc4ad 100644 --- a/docs/content/reference/sdk-operating-modes.md +++ b/docs/content/reference/sdk-operating-modes.md @@ -24,7 +24,7 @@ Call [`rr.spawn`](https://ref.rerun.io/docs/python/stable/common/initialization_ #### Rust -[`RecordingStream::spawn`](https://docs.rs/rerun/latest/rerun/struct.RecordingStream.html#method.spawn?speculative-link) spawns a new Rerun Viewer process using an executable available in your PATH, then streams all the data to it via TCP. If an external viewer was already running, `spawn` will connect to that one instead of spawning a new one. +[`RecordingStream::spawn`](https://docs.rs/rerun/latest/rerun/struct.RecordingStream.html#method.spawn) spawns a new Rerun Viewer process using an executable available in your PATH, then streams all the data to it via TCP. If an external viewer was already running, `spawn` will connect to that one instead of spawning a new one. #### C++ diff --git a/docs/content/reference/types/datatypes/uint32.md b/docs/content/reference/types/datatypes/uint32.md index ae0546514d3a..29656ee2e286 100644 --- a/docs/content/reference/types/datatypes/uint32.md +++ b/docs/content/reference/types/datatypes/uint32.md @@ -6,7 +6,7 @@ A 32bit unsigned integer. ## Links - * 🐍 [Python API docs for `UInt32`](https://ref.rerun.io/docs/python/stable/common/datatypes?speculative-link#rerun.datatypes.UInt32) - * 🦀 [Rust API docs for `UInt32`](https://docs.rs/rerun/latest/rerun/datatypes/struct.UInt32.html?speculative-link) + * 🐍 [Python API docs for `UInt32`](https://ref.rerun.io/docs/python/stable/common/datatypes#rerun.datatypes.UInt32) + * 🦀 [Rust API docs for `UInt32`](https://docs.rs/rerun/latest/rerun/datatypes/struct.UInt32.html) diff --git a/examples/cpp/README.md b/examples/cpp/README.md index 3c05967b881e..fe32b388a579 100644 --- a/examples/cpp/README.md +++ b/examples/cpp/README.md @@ -1,6 +1,6 @@ # Rerun C++ Examples The simplest example is [`minimal`](minimal/main.cpp). You may want to start there -using the accompanying [`C++ Quick Start`](https://www.rerun.io/docs/getting-started/cpp?speculative-link) guide. +using the accompanying [`C++ Quick Start`](https://www.rerun.io/docs/getting-started/cpp) guide. ## Build all examples The CMake target `examples` is a convenient alias for building all CMake examples in one go. diff --git a/examples/cpp/minimal/README.md b/examples/cpp/minimal/README.md index 673c637f68d1..e5455628a2fb 100644 --- a/examples/cpp/minimal/README.md +++ b/examples/cpp/minimal/README.md @@ -15,8 +15,7 @@ thumbnail: https://static.rerun.io/minimal/0e47ac513ab25d56cf2b493128097d499a07e The simplest example of how to use Rerun, showing how to log a point cloud. -# TODO(#3962): Update Link to C++ -This is part of the [Quick Start guide](https://www.rerun.io/docs/getting-started/rust). +This is part of the [Quick Start guide](https://www.rerun.io/docs/getting-started/cpp). To build it from a checkout of the repository (requires a Rust toolchain): ```bash diff --git a/rerun_cpp/README.md b/rerun_cpp/README.md index 0dedb8657384..4a10dac89c23 100644 --- a/rerun_cpp/README.md +++ b/rerun_cpp/README.md @@ -1,6 +1,6 @@ # Rerun C++ SDK -Read our [getting-started guide](https://www.rerun.io/docs/getting-started/cpp?speculative-link) for information on how to use the Rerun C++ SDK. +Read our [getting-started guide](https://www.rerun.io/docs/getting-started/cpp) for information on how to use the Rerun C++ SDK. ## Development ### Requirements diff --git a/rerun_cpp/src/rerun.hpp b/rerun_cpp/src/rerun.hpp index e5a313fc58d8..378e5b74107c 100644 --- a/rerun_cpp/src/rerun.hpp +++ b/rerun_cpp/src/rerun.hpp @@ -1,6 +1,6 @@ // The Rerun C++ SDK. // -// For more information, read our [getting-started guide](https://www.rerun.io/docs/getting-started/cpp?speculative-link) +// For more information, read our [getting-started guide](https://www.rerun.io/docs/getting-started/cpp) // or visit . #pragma once