Skip to content

feat(codegen): add typed exporter options to bindings - #499

Merged
rapids-bot[bot] merged 1 commit into
rapidsai:mainfrom
johanpel:cross-lang-exporters
Jul 31, 2026
Merged

feat(codegen): add typed exporter options to bindings#499
rapids-bot[bot] merged 1 commit into
rapidsai:mainfrom
johanpel:cross-lang-exporters

Conversation

@johanpel

Copy link
Copy Markdown
Contributor

Description

Replace string-based exporter selection in generated C++ and Python bindings with typed ExporterOptions factories for no-op, NDJSON, MessagePack, Postcard, and collector exporters.

This change also:

  • validates collector addresses when options are constructed
  • requires explicit output paths for filesystem exporters
  • updates generated Python type stubs
  • migrates C++ and Python examples and integration tests
  • verifies emitted files for every filesystem format

Related Issues

Closes #498

Testing

  • cargo fmt --all -- --check
  • cargo test -p quent-codegen -p quent-io-collector
  • targeted cargo clippy --all-targets -- -D warnings
  • built and ran both CMake integration suites
  • built both Python extensions with maturin
  • ran Python integration tests and type checks
  • rumdl check on updated documentation

Written by Codex.

@johanpel

Copy link
Copy Markdown
Contributor Author

/merge

@rapids-bot
rapids-bot Bot merged commit 2a5ca83 into rapidsai:main Jul 31, 2026
21 checks passed

@9prady9 9prady9 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

seems fine, sorry for the late submission

kevkrist pushed a commit to kevkrist/sirius that referenced this pull request Jul 31, 2026
## Summary

Add configurable Quent telemetry exporters and use postcard for the
default TPC-H benchmark configuration.

## Changes

- Add `sirius.telemetry.exporter` configuration support for `ndjson`,
`msgpack`, and `postcard`.
- Configure the TPC-H benchmark telemetry YAML to use `postcard`.
- Update Quent to upstream commit `2a5ca834`, which includes typed
exporter options from rapidsai/quent#499.
- Update Sirius’ Quent analyzer integration for upstream API changes.
- Add `pnpm` to the Pixi environment, required to build the Quent UI.
- Document exporter configuration and postcard usage for CI and
benchmark runs.

## Testing

- `pixi run make release`
- `pixi run cargo check --manifest-path rust/Cargo.toml`
- `pixi run cargo fmt --all --manifest-path rust/Cargo.toml --check`
- `pixi run build/release/extension/sirius/test/cpp/sirius_unittest
"[telemetry_context]"`
- Ran TPC-H SF1 query 18 with `exporter: postcard`.
- Opened the resulting telemetry with the Quent UI and verified it loads
successfully.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support more exporters in cross-language bridges

3 participants