What cortexproject/cortex shipped
Written by FoxPlug from the repository's own releases; not affiliated with Cortexmetrics. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/cortexproject/cortex; Cortexmetrics did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Alibaba Cloud OSS is now a storage backend for blocks, ruler and alertmanager, selected with backend: oss and configured through the oss flags. Pull request #7907
- The ruler now retries notifications the Alertmanager failed to accept, so alerts are no longer dropped when a send fails once. Pull request #7909
- Configs that set the query range or HA failover timeout settings in their old 1.21 location keep working instead of breaking in 1.22. Pull request #7919
- The compaction group graceful period can now be set per block range with the new compactor.block-ranges-compaction-delay flag. Pull request #7916
- A per-zone ring member ownership metric was added, since the existing ownership percent merges tokens from all zones. Pull request #7910
- The Go base image was updated to 1.27.3, which includes security fixes to the crypto/x509 package. Pull request #7906
- A guide on how to set up UTF-8 mode in Cortex is now in the docs. Pull request #7439
- The UTF-8 support guide no longer shows its title twice. Pull request #7913
Why it matters
This week brings a new storage option for anyone running blocks, ruler or alertmanager, and a ruler change that stops alert notifications from being silently dropped when the Alertmanager does not accept them. It also keeps 1.21 configs that use the old query range and HA failover timeout settings working, and adds a per-zone ownership metric for ring users.
Changelog entry
- [FEATURE] Add Alibaba Cloud OSS storage backend for blocks, ruler and alertmanager. Pull request #7907
- [ENHANCEMENT] Ruler: retry notifications the Alertmanager failed to accept. Pull request #7909
- [BUGFIX] Keep the 1.21 query range and HA failover timeout settings working. Pull request #7919
- [ENHANCEMENT] Make the compaction group graceful period configurable per block range. Pull request #7916
- [ENHANCEMENT] Ring: add per-zone member ownership metric. Pull request #7910
- [CHANGE] Update Go base image to 1.27.3. Pull request #7906
- [DOC] Add guide on how to set up UTF-8 mode in Cortex. Pull request #7439
- [DOC] Fix redundant double title in the UTF-8 support guide. Pull request #7913
This week in Cortex: Alibaba Cloud OSS is now a storage backend for blocks, ruler and alertmanager; the ruler retries notifications Alertmanager did not accept; old 1.21 query range and HA failover timeout configs keep working; and compaction delay is configurable per block range
This week's changes in Cortex: Alibaba Cloud OSS is now available as a storage backend for blocks, ruler and alertmanager, selected with backend: oss. The ruler now retries notifications the Alertmanager failed to accept instead of dropping them. Configs that set the query range or HA failover timeout settings under their old 1.21 names keep working instead of breaking on upgrade. The compaction group graceful period can now be configured per block range with compactor.block-ranges-compaction-delay, and a per-zone ring member ownership metric was added. The Go base image moved to 1.27.3 for security fixes, and the docs gained a guide on setting up UTF-8 mode.
Week of October 19, 2026
What shipped
- Fixed the store-gateway's Parquet bucket store to honor query sharding in Series requests. Pull request #7892
- Stopped the ruler from retrying staleness markers that can never be accepted. Pull request #7888
- Stopped the ingester from counting ruler staleness markers as discarded tenant samples. Pull request #7887
- Upgraded promql-engine and Thanos to pick up query-path changes that allocate and release iterators lazily. Pull request #7889
- Updated the Prometheus Alertmanager version to v0.34.1 to apply upstream inhibit rule bug fixes. Pull request #7877
- Added ParquetQueryConcurrency to the BucketStore configuration in the parquet bucket store benchmarks. Pull request #7882
Why it matters
This week's changes fix sharding in the store-gateway's Parquet bucket store, prevent unnecessary retries of ruler staleness markers, and stop miscounting them as discarded samples. Dependency upgrades to promql-engine and Thanos bring lazier allocation in the query path, and the Alertmanager update applies upstream inhibit rule fixes.
Changelog entry
- Store-gateway: fix Parquet bucket store to honor query sharding in Series requests. Pull request #7892
- Ruler: stop retrying staleness markers that can never be accepted. Pull request #7888
- Ingester: do not count ruler staleness markers as discarded tenant samples. Pull request #7887
- Upgraded promql-engine and Thanos dependencies, including lazy allocation in the query path. Pull request #7889
- Updated Prometheus Alertmanager to v0.34.1 for upstream inhibit rule bug fixes. Pull request #7877
- Benchmarks: add ParquetQueryConcurrency to BucketStore configuration. Pull request #7882
This week: store-gateway Parquet store now honors query sharding; ruler no longer retries unaccepted staleness markers; ingester stops counting them as discarded samples; promql-engine and Thanos upgraded; Alertmanager bumped to v0.34.1 for inhibit rule fixes.
This week in Cortex: the store-gateway's Parquet bucket store now honors query sharding in Series requests. The ruler stops retrying staleness markers that can never be accepted, and the ingester no longer counts those markers as discarded tenant samples. We also upgraded promql-engine and Thanos to pick up query-path changes that allocate and release iterators lazily, and updated Alertmanager to v0.34.1 to apply upstream inhibit rule bug fixes. Benchmark configuration was updated to include ParquetQueryConcurrency.
Week of October 5, 2026
What shipped
- Release candidate v1.22.0-rc.3 was published, the fourth release candidate for v1.22.0, containing two fixes on top of v1.22.0-rc.2. Release
- The Go modules SBOM is now generated from a clean checkout of the release tag, so untracked and gitignored files no longer end up in the published SBOM. Pull request #7866
- Two bug fixes were backported to release-1.22, including the compactor tenant cleanup fix for object stores that error when deleting a missing object. Pull request #7874
- Release candidate 3 preparation bumped VERSION to 1.22.0-rc.3. Pull request #7876
- The CHANGELOG entry for the compactor tenant cleanup fix was moved to the 1.22.0 in progress section to keep master consistent with the release branch. Pull request #7875
Why it matters
The compactor no longer reports the final cleanup of a tenant marked for deletion as failed on object stores such as GCS, Azure, Swift and OCI that return an error when deleting a missing object. The published Go modules SBOM is now generated from a clean checkout of the release tag, so it no longer includes untracked or gitignored files from the working directory. The fourth release candidate for v1.22.0 packages these fixes for testing.
Changelog entry
- Released v1.22.0-rc.3, the fourth release candidate for v1.22.0. Release
- Generate the Go modules SBOM from a clean checkout of the release tag. Pull request #7866
- Backported #7755 and #7861 to release-1.22 for v1.22.0-rc.3. Pull request #7874
- Prepared release candidate 3 for v1.22.0, bumping VERSION to 1.22.0-rc.3. Pull request #7876
- Moved the compactor tenant cleanup CHANGELOG entry to 1.22.0 in progress. Pull request #7875
V1.22.0-rc.3 is out. It fixes compactor tenant cleanup being reported as failed on GCS, Azure, Swift and OCI, and generates the Go modules SBOM from a clean checkout of the release tag so untracked and gitignored files stay out of it.
V1.22.0-rc.3 is available, the fourth release candidate for v1.22.0. It contains two fixes on top of v1.22.0-rc.2: the compactor no longer reports the final cleanup of a tenant marked for deletion as failed on object stores that return an error when deleting a missing object, such as GCS, Azure, Swift and OCI, and the Go modules SBOM is now generated from a clean checkout of the release tag so untracked and gitignored files no longer end up in the published SBOM. Both fixes were backported to release-1.22.
Week of September 28, 2026
What shipped
- Ruler tenant federation implemented, allowing rule groups to evaluate against multiple tenants with results written to the owning tenant, controlled by -ruler.enable-federated-rules flag. Pull request #7828
- Compactor fixed spurious tenant cleanup failures on GCS, Azure, Swift and OCI where final cleanup was incorrectly reported as failed. Pull request #7861
- Integration test reliability improved by waiting for MinIO to fully initialize S3 service before running tests, fixing race condition failures. Pull request #7867
- Federated ruler CHANGELOG entry moved to master branch to reflect that the feature was merged after the 1.22.0 release cut. Pull request #7871
Why it matters
This week includes a significant new feature for ruler federation and critical fixes for compactor cleanup and test reliability. The tenant cleanup bug fix addresses production issues across multiple cloud storage backends, while improved test initialization prevents flaky test failures that delay releases.
Changelog entry
- [FEATURE] Ruler: add tenant federation support with -ruler.enable-federated-rules flag for evaluating rule groups against multiple tenants. Pull request #7828
- [BUGFIX] Compactor: fix spurious tenant cleanup failures on GCS, Azure, Swift and OCI backends. Pull request #7861
- [BUGFIX] Integration tests: wait for MinIO to fully initialize S3 service before running tests to prevent race condition failures. Pull request #7867
This week: ruler tenant federation ships, compactor cleanup bugs fixed on GCS/Azure/Swift/OCI, and integration test reliability improvements to prevent race conditions during MinIO initialization.
Cortex progressed on multiple fronts this week. Ruler tenant federation is now available, enabling rule groups to evaluate against multiple tenants while writing results to the owning tenant. Critical bugs in compactor cleanup on GCS, Azure, Swift and OCI were fixed where final cleanup was incorrectly reported as failed. Test infrastructure improvements address race conditions in MinIO initialization that were causing flaky test runs.
Week of September 21, 2026
What shipped
- Released v1.22.0-rc.2, the third release candidate for v1.22.0, which fixes the
cortex_ingester_ingestion_delay_secondshistogram losing observations and updates MinIO image sourcing. Release - Fixed
cortex_ingester_ingestion_delay_secondsmetric in the ingester losing most of its observations due to incorrect native histogram configuration. Pull request #7858 - Released v1.22.0-rc.1, the second release candidate for v1.22.0, containing three bug fixes and removing deprecated ruler functionality. Release
- Upgraded Prometheus Alertmanager to v0.34.0, which adds a routeLabels field to AlertGroup and updates
client_golangtransitively. Pull request #7820 - Changed MinIO image sourcing from quay.io to docker.io/cortexproject to resolve authorization failures in integration test runs. Pull request #7864
- Added verification that native histogram ingestion works correctly when using rate.Inf and zero burst rate. Pull request #7662
- Fixed misleading error messages and annotations in the Parquet converter that incorrectly referenced the compactor ring. Pull request #7755
Why it matters
V1.22.0-rc.2 addresses a critical bug in the new ingestion delay histogram metric and resolves infrastructure issues blocking integration tests. The Alertmanager upgrade and MinIO sourcing fix improve stability and compatibility for users running Cortex with these components.
Changelog entry
- V1.22.0-rc.2 released with fix for
ingestion_delay_secondshistogram and MinIO image sourcing update Release - Ingester: fix
cortex_ingester_ingestion_delay_secondslosing observations due to incorrect native histogram reset duration Pull request #7858 - Upgraded Alertmanager to v0.34.0 Pull request #7820
- Changed MinIO image source from quay.io/minio to docker.io/cortexproject Pull request #7864
- Parquet converter: corrected misleading error messages referencing compactor ring Pull request #7755
V1.22.0-rc.2 is out with a fix for the ingestion_delay_seconds histogram and updated MinIO sourcing for integration tests.
V1.22.0-rc.2 released: fixes cortex_ingester_ingestion_delay_seconds histogram observations, upgrades Alertmanager to v0.34.0, and resolves MinIO image sourcing to unblock integration tests. Native histogram verification and Parquet converter error message improvements also included.
Week of September 14, 2026
What shipped
- The ListRules API now supports pagination with a configurable limit on the number of rules returned per page. Pull request #7785
- Upgraded promql-engine to latest main with improvements to maxSamples limit tracking and selector distribution in binary operations. Pull request #7841
- Ingesters now gracefully skip compaction when blocked by block shipping instead of reporting it as a failure. Pull request #7842
- Removed duplicate series expiry logic in the ingester that was superseded by an upstream Prometheus fix. Pull request #7850
- Fixed tenant federation to populate the user list at startup instead of waiting for the first ticker tick. Pull request #7811
- Fixed regex resolver corrupting the users scanner cache when cache TTL is configured. Pull request #7812
- Replaced the unmaintained 2019 architecture diagram with an interactive diagram published on cortexmetrics.io. Pull request #7765
- Stabilized the TestVerticalShardingFuzz integration test by filtering out problematic PromQL expressions from the fuzz harness. Pull request #7551
- Memory allocation for query processing improved by using sync.Pool for mergeIterator batch buffers. Pull request #7765
- Enabled the modernize linter in golangci-lint and removed the standalone modernize make targets. Pull request #7824
Why it matters
This week addresses operational stability with fixes to ingester compaction, tenant federation, and cache handling that prevent silent failures and startup issues. API improvements add pagination for large rule sets, and memory optimizations reduce heap pressure on high-cardinality queries.
Changelog entry
- Ruler: ListRules API now returns paginated results with configurable limit Pull request #7785
- Upgraded promql-engine to latest main with maxSamples tracking and selector distribution improvements Pull request #7841
- Ingesters: Skip compaction gracefully when blocked by block shipping Pull request #7842
- Removed duplicate series expiry logic in ingester Pull request #7850
- Tenant federation: Fixed RegexResolver to populate user list at startup Pull request #7811
- Fixed regex resolver corrupting users scanner cache when cache TTL is set Pull request #7812
- Improved memory allocation for query processing with sync.Pool for mergeIterator batch buffers Pull request #7765
- Integration tests: Pull minio from quay.io instead of Docker Hub Pull request #7837
- Fixed release image resolution to use published versions Pull request #7786
Shipping fixes to ingesters, ruler pagination, promql-engine upgrade, and memory optimizations for query processing.
This week's Cortex updates focus on operational stability and performance: ListRules API now supports pagination for large rulesets; upgraded promql-engine with improved limit tracking; ingesters handle block shipping gracefully; removed duplicate series expiry; fixed tenant federation and regex resolver cache issues; memory optimizations for high-cardinality queries.