Skip to content

Extract sentry hook into separate foundations-sentry crate#203

Merged
TheJokr merged 3 commits intomainfrom
lblocher/sentry-upgrade
Apr 28, 2026
Merged

Extract sentry hook into separate foundations-sentry crate#203
TheJokr merged 3 commits intomainfrom
lblocher/sentry-upgrade

Conversation

@TheJokr
Copy link
Copy Markdown
Collaborator

@TheJokr TheJokr commented Apr 27, 2026

Sentry's Rust client regularly publishes new major versions. They are on
version 0.47 now. Any sentry upgrade requires a foundations major
release as well, because we depend on sentry's public API. By extracting
the sentry feature from foundations, we can limit these major
releases to the new crate.

The new crate will use the latest sentry version from the start. We keep
the old code around for compatibility, but mark it as deprecated. It
will be removed in the next major release.

There are some alternatives:

  • Allowing multiple major versions in our Cargo.toml. This is annoying
    because Cargo defaults to the latest version, causing duplicate
    dependencies and version mismatch errors.
  • Having separate features per sentry major release. This would mean
    we need to maintain (or at least keep around) multiple versions of the
    same code, when really we just want people to upgrade to the latest
    sentry release.

Includes setup for releasing foundations-sentry separately from the main
crate and a release commit for foundations-sentry 1.0.0.

@TheJokr TheJokr requested a review from fisherdarling April 27, 2026 18:26
@TheJokr TheJokr self-assigned this Apr 27, 2026
@TheJokr TheJokr force-pushed the lblocher/sentry-upgrade branch 2 times, most recently from 7df7e59 to 18f077d Compare April 27, 2026 18:37
Comment thread foundations-sentry/src/lib.rs Outdated
Comment thread foundations-sentry/src/lib.rs Outdated
@TheJokr TheJokr force-pushed the lblocher/sentry-upgrade branch from 18f077d to 069d8ae Compare April 28, 2026 10:00
TheJokr added 3 commits April 28, 2026 11:14
Sentry's Rust client regularly publishes new major versions. They are on
version `0.47` now. Any `sentry` upgrade requires a `foundations` major
release as well, because we depend on sentry's public API. By extracting
the `sentry` feature from `foundations`, we can limit these major
releases to the new crate.

The new crate will use the latest sentry version from the start. We keep
the old code around for compatibility, but mark it as deprecated. It
will be removed in the next major release.

There are some alternatives:
- Allowing multiple major versions in our `Cargo.toml`. This is annoying
  because Cargo defaults to the latest version, causing duplicate
  dependencies and version mismatch errors.
- Having separate features per `sentry` major release. This would mean
  we need to maintain (or at least keep around) multiple versions of the
  same code, when really we just want people to upgrade to the latest
  sentry release.
@TheJokr TheJokr force-pushed the lblocher/sentry-upgrade branch from 069d8ae to 8e82378 Compare April 28, 2026 10:14
@TheJokr TheJokr merged commit 34375b6 into main Apr 28, 2026
20 checks passed
@TheJokr TheJokr deleted the lblocher/sentry-upgrade branch April 28, 2026 10:32
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.

2 participants