Skip to content

Unify AnyValues across all SDKs and use archetype_field_name as discriminator #10074

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

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

grtlr
Copy link
Contributor

@grtlr grtlr commented May 26, 2025

Related

What

This PR does multiple things:

  • Provode a common AnyValues interface that is similar across Python 🐍 , C++ 🌊 , and Rust 🦀 SDKs (so far we only have AnyValues in Python).
  • Maps the key of kwargs (i.e. the name of the field to archetype_field_name instead of component_name.
  • By using the new AnyValues we ensure that more of the logged data is actually tagged.

TODOs

  • Migration guide

Copy link

github-actions bot commented May 26, 2025

Web viewer built successfully. If applicable, you should also test it:

  • I have tested the web viewer
Result Commit Link Manifest
3e4da6f https://rerun.io/viewer/pr/10074 +nightly +main

Note: This comment is updated whenever you push a commit.

@grtlr grtlr added include in changelog 🚜 refactor Change the code, not the functionality 🪵 Log & send APIs Affects the user-facing API for all languages 🔩 data model Sorbet labels May 26, 2025
@grtlr grtlr force-pushed the grtlr/any-values branch from 1155c22 to 5c853a4 Compare May 26, 2025 09:58
@grtlr grtlr force-pushed the grtlr/any-values branch 2 times, most recently from d546580 to b68f3c3 Compare May 26, 2025 13:05
Comment on lines +17 to +25
Arc::new(arrow::array::StringArray::from(vec![
"https://www.rerun.io",
])),
)
.with_field(
"repository",
Arc::new(arrow::array::StringArray::from(vec![
"https://github.com/rerun-io/rerun",
])),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we use impl Into<ArrayRef> as the argument type, maybe we can get rid of the Arc::new here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🔩 data model Sorbet include in changelog 🪵 Log & send APIs Affects the user-facing API for all languages 🚜 refactor Change the code, not the functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

AnyValues should use argument names to set archetype_field_name metadata Add AnyValues wrapper to Rust and C++ APIs
2 participants