Repository navigation
Conversation
arroyo 2.46.0 ships `python -m arroyo.healthcheck`, the liveness check for the file arroyo's Healthcheck strategy touches. Requiring it puts the command in every image that runs sentry_streams, so the PipelineStep probe can switch to it from `rm /tmp/health.txt`, which doesn't work on distroless images. Only the Python dependency moves. The Python changes between 2.43 and 2.46 are the healthcheck module and batch-reason tracking in reduce and buffer; the breaking metrics change in 2.44 is Rust-only, so the Rust crate keeps its <2.44.0 cap. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
No, I don't think so but I would ask streaming. |
untitaker
added a commit
that referenced
this pull request
Oct 19, 2026
Bumps arroyo to 2.47.0 on both sides: `sentry-arroyo>=2.47.0` in Python, and the `sentry_arroyo` crate to `2.47.0`, which drops the `<2.44.0` cap. Two arroyo 2.44.0 breaking changes needed code changes in the Rust runtime: - **Metrics moved to metrics-rs (getsentry/arroyo#567).** `sentry_arroyo::metrics` (`Recorder`, `init`, `MetricValue`) is gone, so the `MetricsFacadeRecorder` adapter in `src/metrics.rs` is removed. Arroyo now emits `arroyo.*` metrics straight to the global metrics-rs recorder. To keep the dashboard names and the Python side unchanged, the DogStatsD recorder is now wrapped in a small recorder that renames `arroyo.*` keys to `streams.pipeline.arroyo.*`. Streams' own metrics already start with `streams.pipeline.*`, so they pass through unchanged. - **Kafka producer constructors return `Result` (getsentry/arroyo#563).** `KafkaProducer::new` used to panic on failure. The StreamSink and DLQ producers now call `.expect(...)`, so the failure behavior stays the same. The other changes in the range didn't need code changes here: the `ProducerError::Kafka` variant (we don't match on it), the wider rdkafka range (we stay on 0.37), the produce-status tag changes, and the additions on the Python side. This overlaps with #390, which only raises the Python requirement to `>=2.46.0,<2.47.0`. <!-- junior-request-attribution:start --> via **markus**. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:agent%3Ae2c3e344d6704a3750c4d1337ff0123e --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/agent%3Ae2c3e344d6704a3750c4d1337ff0123e) [[Sentry]](https://sentry.sentry.io/explore/conversations/agent%3Ae2c3e344d6704a3750c4d1337ff0123e/?project=4510944073809921) <!-- junior-session-footer:end --> Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Markus Unterwaditzer <markus@sentry.io>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Raises the Python
sentry-arroyorequirement from>=2.39.2,<2.44.0to>=2.46.0,<2.47.0.arroyo 2.46.0 adds
python -m arroyo.healthcheck <path>(getsentry/arroyo#580). It's the liveness check for the file arroyo's Healthcheck strategy touches, which is the/tmp/health.txtthe Rust consumer writes whenwrite_healthcheckis on. Requiring it here puts the command in every image that runssentry_streams, so thePipelineStepprobe can switch to it in #389 fromrm /tmp/health.txt, which doesn't work on distroless images.The
<2.44.0cap came in with #377 without a stated reason. On the Python side, 2.43 → 2.46 only adds the healthcheck module and batch-reason tracking inreduce/buffer. The breaking metrics change in 2.44 (getsentry/arroyo#567) is Rust-only, so the Rust crate keeps its cap. @fpacifici, is there another reason for the Python cap?The lockfile was regenerated with uv 0.7 to keep the lock format unchanged.
Merge blocker: none on its own. It must be released and picked up by consumers (super-big-consumers) before #389 is released.
🤖 Generated with Claude Code