Skip to content

chore!(core): Make ClientOptions non-exhaustive#1230

Open
szokeasaurusrex wants to merge 2 commits into
masterfrom
szokeasaurusrex/non-exhaustive-client-options
Open

chore!(core): Make ClientOptions non-exhaustive#1230
szokeasaurusrex wants to merge 2 commits into
masterfrom
szokeasaurusrex/non-exhaustive-client-options

Conversation

@szokeasaurusrex

Copy link
Copy Markdown
Member

Make the ClientOptions struct #[non_exhaustive].

Users will now have to rely on the builder methods to construct ClientOptions. This change will allow us to introduce new configuration options in future SDK releases without requiring a breaking release.

Closes #1219
Closes RUST-258

Make the `ClientOptions` struct `#[non_exhaustive]`.

Users will now have to rely on the builder methods to construct `ClientOptions`. This change will allow us to introduce new configuration options in future SDK releases without requiring a breaking release.

Closes [#1219](#1219)
Closes [RUST-258](https://linear.app/getsentry/issue/RUST-258)
@szokeasaurusrex szokeasaurusrex requested a review from a team as a code owner July 7, 2026 15:20
@linear-code

linear-code Bot commented Jul 7, 2026

Copy link
Copy Markdown

RUST-258

Comment thread CHANGELOG.md Outdated

### Breaking Changes

- [`ClientOptions`](https://docs.rs/sentry-core/0.49.0/sentry_core/struct.ClientOptions.html) is now `#[non_exhaustive]`. The struct must now be constructed with the builder-style setters:

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This link will work after the release; we intend to release these changes as v0.49.0

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.

Make ClientOptions #[non_exhaustive]

1 participant