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

Enforce usage of tagged logging APIs: Rust #8757

Closed
teh-cmc opened this issue Jan 21, 2025 · 0 comments · Fixed by #8820
Closed

Enforce usage of tagged logging APIs: Rust #8757

teh-cmc opened this issue Jan 21, 2025 · 0 comments · Fixed by #8820
Labels

Comments

@teh-cmc
Copy link
Member

teh-cmc commented Jan 21, 2025

No description provided.

@teh-cmc teh-cmc added 🌊 C++ API C/C++ API specific 🔩 data model 🦀 Rust API Rust logging API and removed 🌊 C++ API C/C++ API specific labels Jan 21, 2025
teh-cmc added a commit that referenced this issue Jan 28, 2025
This makes it impossible to pass something implementing `ComponentBatch`
(i.e. some native data that knows how to serialized itself into arrow
component data) directly to `RecordingStream::log`.

This forces the caller to either..:
* explicitly opt into the low-level / component-level APIs via
`my_data.serialized()`, which expose further custom-tagging facilities,
or
* use the archetype-level APIs instead, which handle tagging
automatically.

Similarly, this removes all the legacy support infrastructure that was
needed to carry `ComponentBatch`es all the way to the logger:
* `log_component_batches`
* `AsComponents::as_component_batches`
* `ComponentBatchCow`, `ComponentBatchCowWithDescriptor`, ...
* etc

I think this is all that's needed in order to..:
* fix #8757

At the very least, it makes sure that existing code that used to log
`ComponentBatch`es directly breaks at compile-time.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant