3.14.0-rc.0 / 2026-08-06
- [CHANGE] API: Deprecate the
statsquery parameter of/api/v1/queryand/api/v1/query_rangefor values other thantrueandall. Other values still enable basic statistics but now return a deprecation warning; they will be rejected in the next major release. #19124 - [CHANGE] API:
/api/v1/status/confignow correctly showsseparator: ""andreplacement: ""in relabel configs when explicitly set to empty, instead of omitting them. #18653 - [CHANGE] Discovery/Hetzner: Drop the
__meta_hetzner_datacenterlabel forhcloudtargets, following its removal from the Hetzner Cloud API. #19269 - [CHANGE] PromQL: Enable duration expressions by default. The
promql-duration-exprfeature flag is now a no-op. #19033 - [CHANGE] PromQL: Promote
first_over_timeto stable. It no longer requires thepromql-experimental-functionsfeature flag. #19093 - [FEATURE] Discovery: Add Oracle Cloud Infrastructure compute service discovery (
oci_sd_configs). #18919 - [FEATURE] PromQL: Add experimental
start_timestamp(instant-vector)function returning the start timestamp of each sample in the given vector. Requires theuse-start-timestampsfeature flag. #19089 - [FEATURE] PromQL: Allow
rate()andincrease()to use start timestamps as an alternative for rate extrapolation. Hidden behind theuse-start-timestampsfeature flag. #18619 - [FEATURE] TSDB: Add experimental support for encoding start timestamps in histograms and float histograms. Hidden behind the
histograms-st-encodingfeature flag. #18609 - [ENHANCEMENT] OTLP: Emit a warning when OTLP attribute names collide into the same Prometheus label after sanitization (e.g.
k8s.pod.nameandk8s_pod_nameboth becomek8s_pod_name), and expose theprometheus_api_otlp_translation_warnings_totalcounter labelled bycategoryto track such warnings. #18957 - [ENHANCEMENT] Promtool: Add
--remote-write.pathflag topush metricsfor backends that use a non-default remote-write endpoint. #19086 - [ENHANCEMENT] Remote write: Forward histogram start timestamps in the remote write V2 protocol. #18903
- [ENHANCEMENT] TSDB: Add
prometheus_tsdb_head_native_histogram_seriesandprometheus_tsdb_head_native_histogram_bucketsgauges tracking the number of native histogram series and buckets in the head. #19170 - [ENHANCEMENT] UI: Add syntax highlighting, autocompletion, and linting for PromQL duration expressions (
step(),range(),min_of(),max_of()) in range selectors and subqueries. #18625 - [ENHANCEMENT] UI: Add copy button next to rule names on the Rules and Alerts pages. #18706
- [ENHANCEMENT] UI: Improve rule group title contrast on the Rules page. #19181
- [PERF] Speed up regex label matchers matching a set of literal values (e.g.
{job=~"foo|bar|baz"}). #18833 - [PERF] Remote read: Improve remote read throughput by removing unnecessary per-write flushing. #18470
- [PERF] Scrape: Parse text and OpenMetrics formats without recursion, preventing stack overflow from deeply nested or malicious exposition input. #19143
- [PERF] Scrape: Reduce native histogram scrape parsing allocations by ~49%. #19282
- [PERF] TSDB: Speed up queries on series with many in-memory chunks. #18300
- [BUGFIX] Alerting: Fix 100% CPU usage on shutdown that could delay graceful shutdown and trigger timeout-based kills. #17859
- [BUGFIX] Discovery/AWS: Stop
promtool check configfrom making AWS metadata service (IMDS) network calls when theregionfield is omitted in EC2, ECS, RDS, MSK, ElastiCache, and Lightsail service discovery configs. #19037 - [BUGFIX] Discovery/Docker: Set a request timeout for
docker_sdanddockerswarm_sdonunix,npipe, andtcphosts. Previously an unresponsive daemon could freeze discovery indefinitely, silently pinning targets to a stale snapshot. #19237 - [BUGFIX] Discovery/Docker: Fix panic in Docker Swarm service discovery when a service runs as a plugin or network-attachment. #19102
- [BUGFIX] Discovery/Docker: Fix discovery of IPv6-only containers. #18778
- [BUGFIX] PromQL: Fix case-insensitive regex label matchers silently dropping matching values. #19167
- [BUGFIX] PromQL: Fix
mad_over_timereturning 0 instead ofNaNwhen the range contains aNaNsample. #19040 - [BUGFIX] Promtool: Accept
--enable-feature=promql-binop-fill-modifiersincheck rules, which previously rejected validfill()/fill_left()/fill_right()expressions. #19153 - [BUGFIX] Remote write: Respect the
AZURE_FEDERATED_TOKEN_FILEenvironment variable for workload identity authentication instead of hardcoding the token file path. #18973 - [BUGFIX] Rules: Clean up stale
rule_group_last_rule_duration_sum_secondsandrule_group_last_restore_duration_secondsseries when a rule group is removed or renamed on reload. Previously each reload leaked two series per dropped group, growing/metricscardinality over time. #19107 - [BUGFIX] Scrape: Fix scrape manager spinning at 100% CPU on shutdown. #19149
- [BUGFIX] TSDB: Fix silent data loss and potential crash loop when
stale_series_compaction_thresholdis used in the config file. #19016 - [BUGFIX] TSDB: Fix potential data loss on restart when out-of-order ingestion is enabled and blocks are compacted. #19016
- [BUGFIX] TSDB: Fix
prometheus_tsdb_head_stale_seriesover-counting and early eviction of series that change between float, integer histogram, and float histogram sample types. #19183 - [BUGFIX] TSDB: Fix goroutine and file handle leaks when Prometheus fails to open a corrupt TSDB. On Windows, the leaked directory handle also prevented TSDB directory removal. #18291
- [BUGFIX] TSDB: Fix out-of-order queries blocking compaction for hours, causing memory usage to grow. #19013
- [BUGFIX] TSDB: Fix deleted series causing missing samples and errors after restart. #19140
- [BUGFIX] TSDB: Fix native histogram data becoming incorrect after restart. #19202
- [BUGFIX] TSDB: Surface query errors that were previously silently discarded. #19120
- [BUGFIX] TSDB: Honour the configured float chunk encoding when compaction rewrites chunks; previously chunks encoded with
--enable-feature=xor2-encodingcould silently revert to XOR after compaction. #19145 - [BUGFIX] UI: Show the delete-series form on the TSDB Status page when
--web.enable-admin-apiis enabled. #19025
v1.39.3
- #19366
inputs.cisco_telemetry_mdtCheck attribute message length - #19332
inputs.execdRespect influx parser parameters - #19333
inputs.redfishSkip resources without a reference - #19354
parsers.avroResolve measurement name from items record for array schemas - #19315
processors.filepathPrevent test code from being included in the shipped binary - #19325
serializers.prometheusremotewriteAccumulate multiple samples per series in a batch
- #19302
depsBump actions/setup-go from 6 to 7 - #19335
depsBump cloud.google.com/go/storage from 1.63.1 to 1.64.0 - #19311
depsBump github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/monitor/armmonitor from 0.12.0 to 0.13.0 - #19385
depsBump github.com/IBM/sarama from 1.60.0 to 1.60.1 - #19386
depsBump github.com/SAP/go-hdb from 1.16.12 to 1.17.2 - #19303
depsBump github.com/antchfx/xpath from 1.3.6 to 1.3.7 - #19341
depsBump github.com/antchfx/xpath from 1.3.7 to 1.3.8 - #19344
depsBump github.com/apache/arrow-go/v18 from 18.6.0 to 18.7.0 - #19313
depsBump github.com/aws/smithy-go from 1.27.3 to 1.27.4 - #19340
depsBump github.com/aws/smithy-go from 1.27.4 to 1.27.5 - #19310
depsBump github.com/go-ldap/ldap/v3 from 3.4.13 to 3.4.14 - #19381
depsBump github.com/gofrs/uuid/v5 from 5.4.0 to 5.5.0 - #19345
depsBump github.com/google/cel-go from 0.29.2 to 0.30.0 - #19314
depsBump github.com/gosnmp/gosnmp from 1.43.2 to 1.44.0 - #19306
depsBump github.com/jedib0t/go-pretty/v6 from 6.8.2 to 6.8.3 - #19312
depsBump github.com/klauspost/compress from 1.19.0 to 1.19.1 - #19336
depsBump github.com/moby/moby/client from 0.5.0 to 0.5.1 - #19380
depsBump github.com/nats-io/nats-server/v2 from 2.14.3 to 2.14.4 - #19309
depsBump github.com/prometheus/client_golang from 1.23.2 to 1.24.0 - #19342
depsBump github.com/prometheus/client_golang from 1.24.0 to 1.24.1 - #19382
depsBump github.com/prometheus/prometheus from 0.313.1 to 0.313.2 - #19349
depsBump github.com/rabbitmq/amqp091-go from 1.12.0 to 1.13.0 - #19387
depsBump github.com/rclone/rclone from 1.74.1-0.20260628215305-6bbc28cf02dc to 1.75.0 - #19372
depsBump github.com/shirou/gopsutil/v4 from v4.26.6 to v4.26.7 - #19348
depsBump github.com/vertica/vertica-sql-go from 1.3.7 to 1.3.8 - #19384
depsBump github.com/yuin/goldmark from 1.8.4 to 1.8.5 - #19347
depsBump go.opentelemetry.io/collector/pdata from 1.62.0 to 1.63.0 - #19338
depsBump go.opentelemetry.io/proto/otlp from 1.10.0 to 1.11.0 - #19351
depsBump go.opentelemetry.io/proto/otlp/collector/profiles/v1development from 0.3.0 to 0.4.0 - #19353
depsBump go.opentelemetry.io/proto/otlp/profiles/v1development from 0.3.0 to 0.4.0 - #19307
depsBump go.step.sm/crypto from 0.84.1 to 0.85.0 - #19389
depsBump go.step.sm/crypto from 0.85.0 to 0.87.0 - #19352
depsBump go.yaml.in/yaml/v3 from 3.0.4 to 3.0.5 - #19308
depsBump google.golang.org/api from 0.288.0 to 0.289.0 - #19339
depsBump google.golang.org/api from 0.289.0 to 0.290.0 - #19388
depsBump google.golang.org/api from 0.290.0 to 0.291.0 - #19305
depsBump google.golang.org/grpc from 1.82.0 to 1.82.1 - #19390
depsBump google.golang.org/grpc from 1.82.1 to 1.83.0 - #19337
depsBump k8s.io/client-go from 0.36.2 to 0.36.3 - #19304
depsBump modernc.org/sqlite from 1.53.0 to 1.54.0 - #19383
depsBump modernc.org/sqlite from 1.54.0 to 1.55.0 - #19378
depsBump the aws-sdk-go-v2 group with 11 updates - #19334
depsBump the aws-sdk-go-v2 group with 11 updates
| Arch | Platform | Package | SHA256 |
|---|---|---|---|
| arm64 | CentOS | telegraf-1.39.3-1.aarch64.rpm | f2db8ca3b5f8507ecdb1978b83adeaf0f1ff6060326bd8125c1b9221c011ed12 |
| armel | CentOS | telegraf-1.39.3-1.armel.rpm | fb4d26f2d200e4d84501c7eb07c8d351099605ec67e7322cc2f98b5c62f555a8 |
| armv6hl | CentOS | telegraf-1.39.3-1.armv6hl.rpm | 5570b28362fb59cfb14615f99695ca57f2612a4cae1e413892b002d0ec2f90cd |
| i386 | CentOS | telegraf-1.39.3-1.i386.rpm | e9c3ee46b12beab7a01a6b7f1fd5882bf75b064c331db613aab4b8ee37b22d99 |
| unknown | CentOS | telegraf-1.39.3-1.loongarch64.rpm | 46e348e8719d30eec68d100947da417e5466265e260190fd6edf19dbcf969158 |
| ppc64le | CentOS | telegraf-1.39.3-1.ppc64le.rpm | c5184a302165ba42e1defb03e9368b983dfb9cf2d51b569add58c7a06c9ecd5d |
| riscv64 | CentOS | telegraf-1.39.3-1.riscv64.rpm | 6051bb8d7a3d26d4b78bc298ee9f14b9911f0a11573bf5a8f9c17a595aec0704 |
| s390x | CentOS | telegraf-1.39.3-1.s390x.rpm | 01df6df3746a5ad76a8329c708e35271d9d16e0f1c461e0431d52e0b3d056c70 |
| amd64 | CentOS | telegraf-1.39.3-1.x86_64.rpm | 61e34743157a77e5d018e7a5b22b8594f4625d498fff298297c337f07f12d21f |
| amd64 | macOS | telegraf-1.39.3_darwin_amd64.dmg | f8e4d8f81ba7257c1a92da179f03cd2f5b369402005e531983be65b448c3f423 |
| amd64 | macOS | telegraf-1.39.3_darwin_amd64.tar.gz | ab16495f6e127794f93ec715fe4ad8f8177ae396eb23eb1c1cec5e2cddb29bf4 |
| arm64 | macOS | telegraf-1.39.3_darwin_arm64.dmg | 28cd7e7eae57bd46ffe8c23b6a8914fba562f69825350945addea07a4354b932 |
| arm64 | macOS | telegraf-1.39.3_darwin_arm64.tar.gz | 244ecfe88921ba0b6c8a2139137700bb2faa4041e1c94a7f46c8733d3e51170c |
| amd64 | FreeBSD | telegraf-1.39.3_freebsd_amd64.tar.gz | 026910d7505995e7618a00e2edc877c95d2b477df5a660f4d1ba66d3c2718bb1 |
| armv7 | FreeBSD | telegraf-1.39.3_freebsd_armv7.tar.gz | 85b5eeb71e24b35235ea2cefc126698d62e5424f672ae1efa866d60d4f4282b3 |
| i386 | FreeBSD | telegraf-1.39.3_freebsd_i386.tar.gz | edbcab3e336e41c97ce0fad1100bc2a1fa267320ce8816989565d244da467b92 |
| amd64 | Linux | telegraf-1.39.3_linux_amd64.tar.gz | 2904d5332a27a1a3f7ccd990139af2e9bc3b393cf5f7c6ac13e26ebc18df1d52 |
| arm64 | Linux | telegraf-1.39.3_linux_arm64.tar.gz | 516623054b321b851072d021455b3becbeecbe8a2b5582013680d0854a83bc44 |
| armel | Linux | telegraf-1.39.3_linux_armel.tar.gz | 40dc54e90810a9353df14fb31ff2fe87cf3a526b6f4c120ed16c3df3cf92ae0a |
| armhf | Linux | telegraf-1.39.3_linux_armhf.tar.gz | 2bfbb9d337e57c252556e384e2b064591ec168c9aa5355e57c31adaecd269969 |
| i386 | Linux | telegraf-1.39.3_linux_i386.tar.gz | 23780ec24a46934e43ed15ace2cec8d3d9263fd54a263b5c17055d3821e6297e |
| loong64 | Linux | telegraf-1.39.3_linux_loong64.tar.gz | 3da8bcefe19366a73f6611412958c7f5abf2af2d81be7f11c7705a55a32c19ac |
| mips | Linux | telegraf-1.39.3_linux_mips.tar.gz | 224610892ad5296ab7b91e47ab65e27318617969d294e20c86e373c289ba1f92 |
| mipsel | Linux | telegraf-1.39.3_linux_mipsel.tar.gz | 0a7151e83b7d4151297ccd38b0669b37776513be8ccef0ff5f8fe3b13a39a6fc |
| ppc64le | Linux | telegraf-1.39.3_linux_ppc64le.tar.gz | 4f1b40b798c4fc216ede9ae52f9474b020b2f2a47d89fb663c282250a89d240b |
| riscv64 | Linux | telegraf-1.39.3_linux_riscv64.tar.gz | d12e259860b23a40aaeb3176911c54a1bb5ec6ecbeb7dee4557529aff42916b0 |
| s390x | Linux | telegraf-1.39.3_linux_s390x.tar.gz | 950928b22ff987936e9b64be51df02637f371c7246ede2fbb96047415a4c3498 |
| amd64 | Windows | telegraf-1.39.3_windows_amd64.zip | 61d03076a17981596604fd3d3f32a4939c24e131cff7099b9a31de0efd3afc53 |
| arm64 | Windows | telegraf-1.39.3_windows_arm64.zip | a3f60fd2911e0e1cca7a89bd3d69939bdf0d83e0c84e1e859e4c301321fa3592 |
| i386 | Windows | telegraf-1.39.3_windows_i386.zip | 8535003ce557d18db1e7875e543b86399b6904b7a25a923fc322bb4c3fdbf781 |
| amd64 | Debian | telegraf_1.39.3-1_amd64.deb | 5e61a873cc488b216ac07d6c7c2a730ce8e78d44655a37ceb24ccd29bba796c7 |
| arm64 | Debian | telegraf_1.39.3-1_arm64.deb | 7f75de7ff0dc4aca5d6fa38bda5cdfe2caabdda879ec76449f9797cf251a27e8 |
| armel | Debian | telegraf_1.39.3-1_armel.deb | f0daa69fdaf6ed09a117cc5a6674b3bdaec99ad0d76ca3ec667d5540c0b6f92a |
| armhf | Debian | telegraf_1.39.3-1_armhf.deb | c07b7b9b6621cad059cf0de91996922366fbb50c275dba2f6c68016b62533c8c |
| i386 | Debian | telegraf_1.39.3-1_i386.deb | c394c76ed126fd63c301463f63528edf35052794ad3def41db504e0c595947a7 |
| loong64 | Debian | telegraf_1.39.3-1_loong64.deb | 681caff11e4fc1e24abc714ecb1f335c272a121272a1817397dbf318eabc24f2 |
| mips | Debian | telegraf_1.39.3-1_mips.deb | c062ba4217dde883793007265a51c33f2c8b28ab0108fc7e2b5c90d5bc950e88 |
| mipsel | Debian | telegraf_1.39.3-1_mipsel.deb | 27d9d7b598044b1d6bc80e0f99e884ff6ba5996e8721c83e35de8ab2ee21239d |
| ppc64el | Debian | telegraf_1.39.3-1_ppc64el.deb | 54a5a979938b1df4d66966a0011bc6fc65f84ba15ff506f197ea974662e50347 |
| riscv64 | Debian | telegraf_1.39.3-1_riscv64.deb | e798fced68604f05c16ce66b0329783934fc24dd3659c045a051be568b2fe81a |
| s390x | Debian | telegraf_1.39.3-1_s390x.deb | cb8b16ed1ff7f86d98fb46826d1891273ee87bbaff2cfbe10c1e64850741db06 |
v1.52.3 🐠
- Revert the Speed up the search speed a bit more by @Kerollmops introduced in https://github.com/meilisearch/meilisearch/pull/6542
Full Changelog: https://github.com/meilisearch/meilisearch/compare/v1.52.2...v1.52.3
v1.52.2 🐠
- Revert the /tasks/stream and /batches/stream SSE routes by @Kerollmops introduced in https://github.com/meilisearch/meilisearch/pull/6533
Full Changelog: https://github.com/meilisearch/meilisearch/compare/v1.52.1...v1.52.2
v1.52.1 🐠
- Make the health route checks blocking by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/6583
- Revert some search progress traces by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/6584
Full Changelog: https://github.com/meilisearch/meilisearch/compare/v1.52.0...v1.52.1
🖇️ v1.53.0
-
Sharding for foreign filters by @ManyTheFish in https://github.com/meilisearch/meilisearch/pull/6517
-
The foreign filter now supports sharding by retrieving the documents through the network when evaluating the foreign filters and hydrating the documents.
-
The limit of documents that a foreign filter can retrieve has been increased from 100 to 1000.
-
-
Adds
indexSizeandusedIndexSizereturned byGET /indexes/{index_uid}/statsand inGET /statsby @tpayet in https://github.com/meilisearch/meilisearch/pull/6563
- Fix code security issues in GitHub Actions workflows by @curquiza in https://github.com/meilisearch/meilisearch/pull/6565
- Bump quinn-proto from 0.11.14 to 0.11.16 by @dependabot[bot] in https://github.com/meilisearch/meilisearch/pull/6538
- Bump peter-evans/repository-dispatch from 3.0.0 to 4.0.1 by @dependabot[bot] in https://github.com/meilisearch/meilisearch/pull/6556
Full Changelog: https://github.com/meilisearch/meilisearch/compare/v1.51.0...v1.53.0
superset-helm-chart-0.22.5
Apache Superset is a modern, enterprise-ready business intelligence web application
JavaCV 1.5.14
- Upgrade dependencies for OpenBLAS 0.3.34, OpenCV 4.14.0, FFmpeg 8.1.2, Tesseract 5.5.3
- Compile classes with
parametersbumping minimum requirements to Java SE 8 and Android 7.0 (issue bytedeco/javacpp-presets#1739)
RustFS 1.0.0-rc.1 (rc)
- fix(ecstore): start with unresolved Kubernetes peers by @cxymds in https://github.com/rustfs/rustfs/pull/5460
- ci(release): isolate preview releases from latest channels by @overtrue in https://github.com/rustfs/rustfs/pull/5462
- fix(ecstore): quarantine rejected format members by @cxymds in https://github.com/rustfs/rustfs/pull/5463
- test(e2e): accept backpressure unknown terminal status by @houseme in https://github.com/rustfs/rustfs/pull/5464
- refactor(sse): decouple ecstore and harden KMS lifecycle by @reatang in https://github.com/rustfs/rustfs/pull/5435
- fix(obs): label node-local metrics by server by @houseme in https://github.com/rustfs/rustfs/pull/5465
- fix(ci): generate release notes with the correct baseline by @overtrue in https://github.com/rustfs/rustfs/pull/5467
- docs(obs): add Grafana server-label dashboard by @houseme in https://github.com/rustfs/rustfs/pull/5468
- fix(kms): make local backend persistence crash-durable by @overtrue in https://github.com/rustfs/rustfs/pull/5471
- feat(kms): add operation timeout and typed retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5472
- fix(kms): fail closed on missing or corrupt key material by @overtrue in https://github.com/rustfs/rustfs/pull/5475
- fix(kms): report accurate Vault KV2 security contract and disable unsafe rotation by @overtrue in https://github.com/rustfs/rustfs/pull/5474
- docs(kms): document local backend durability and deployment support matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5478
- feat(kms): add master key version to data key envelope contract by @overtrue in https://github.com/rustfs/rustfs/pull/5480
- fix(kms): pass attempt timeout to Vault test clients by @overtrue in https://github.com/rustfs/rustfs/pull/5479
- fix(kms): pass attempt timeout in vault kv2 tests by @overtrue in https://github.com/rustfs/rustfs/pull/5482
- refactor(kms): route Vault clients through a rotatable credential provider by @overtrue in https://github.com/rustfs/rustfs/pull/5481
- feat(kms): retain historical master key versions for Vault KV2 rotation by @overtrue in https://github.com/rustfs/rustfs/pull/5484
- feat: add opt-in hotpath profiling by @houseme in https://github.com/rustfs/rustfs/pull/5488
- feat(kms): add backup manifest and responsibility contract types by @overtrue in https://github.com/rustfs/rustfs/pull/5483
- test(kms): pin rotation contracts across backends and document retention by @overtrue in https://github.com/rustfs/rustfs/pull/5486
- feat(kms): add backend capability discovery by @overtrue in https://github.com/rustfs/rustfs/pull/5485
- feat(kms): AppRole login with background token renewal and fail-closed expiry by @overtrue in https://github.com/rustfs/rustfs/pull/5487
- feat(kms): enforce shared key state machine across backends by @overtrue in https://github.com/rustfs/rustfs/pull/5489
- fix(iam): separate OIDC role and claim policies by @overtrue in https://github.com/rustfs/rustfs/pull/5493
- fix(admin): keep data usage endpoint available by @overtrue in https://github.com/rustfs/rustfs/pull/5494
- feat(kms): route Vault operations through the retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5495
- feat(admin): add KMS key lifecycle endpoints and deletion reference gate by @overtrue in https://github.com/rustfs/rustfs/pull/5496
- feat: add hotpath primitive profiling coverage by @houseme in https://github.com/rustfs/rustfs/pull/5492
- perf(ecstore): deduplicate concurrent lazy bucket-metadata loads by @overtrue in https://github.com/rustfs/rustfs/pull/5498
- feat(kms): record operation metrics in the retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5500
- feat: extend hotpath coverage across crates by @houseme in https://github.com/rustfs/rustfs/pull/5505
- refactor(kms): fold the KmsClient layer into KmsBackend and complete lifecycle overrides by @overtrue in https://github.com/rustfs/rustfs/pull/5501
- test: add formal hotpath ABBA runner by @houseme in https://github.com/rustfs/rustfs/pull/5507
- feat(kms): export local backend key material as sealed backup bundles by @overtrue in https://github.com/rustfs/rustfs/pull/5499
- fix(s3): allow CopyObject COPY request metadata by @houseme in https://github.com/rustfs/rustfs/pull/5514
- fix(kms): drop stale KmsClient trait import in local_export tests by @overtrue in https://github.com/rustfs/rustfs/pull/5519
- docs(kms): add observability dashboard, alert rules and runbook by @overtrue in https://github.com/rustfs/rustfs/pull/5517
- fix(config): fence persisted config updates and reloads by @cxymds in https://github.com/rustfs/rustfs/pull/5512
- docs: make validation proportional to change risk by @overtrue in https://github.com/rustfs/rustfs/pull/5527
- test(s3): cover delete marker list visibility by @overtrue in https://github.com/rustfs/rustfs/pull/5503
- fix(kms): make Vault KV2 lifecycle writes check-and-set by @overtrue in https://github.com/rustfs/rustfs/pull/5518
- fix(kms): CAS Transit metadata writes and bound the metadata cache by @overtrue in https://github.com/rustfs/rustfs/pull/5520
- feat(policy): parse and match KMS key resources with a kms:Decrypt action by @overtrue in https://github.com/rustfs/rustfs/pull/5515
- feat(kms): restore local backend key material from sealed backup bundles by @overtrue in https://github.com/rustfs/rustfs/pull/5522
- test(object-lock): cover unretained version cleanup by @overtrue in https://github.com/rustfs/rustfs/pull/5504
- feat(hotpath): use mimalloc in inner counting allocator by @houseme in https://github.com/rustfs/rustfs/pull/5523
- ci: stop running expensive jobs that cannot inform the result by @overtrue in https://github.com/rustfs/rustfs/pull/5528
- ci: gate expensive jobs on Quick Checks and stop a failed PR run early by @overtrue in https://github.com/rustfs/rustfs/pull/5529
- ci: fit the Rust caches back inside the 10GB quota by @overtrue in https://github.com/rustfs/rustfs/pull/5532
- ci: write the Rust caches from a workflow that is not cancelled by @overtrue in https://github.com/rustfs/rustfs/pull/5536
- fix(storage): harden scanner and recovery edge cases by @houseme in https://github.com/rustfs/rustfs/pull/5521
- ci: bound every job's runtime and stop pasting inputs into shell by @overtrue in https://github.com/rustfs/rustfs/pull/5537
- fix(ecstore): settle lease-deferred data-dir deletes before bucket removal by @overtrue in https://github.com/rustfs/rustfs/pull/5516
- ci: stop the weekly flake.lock bot from running the whole pipeline by @overtrue in https://github.com/rustfs/rustfs/pull/5539
- ci: narrow the io_uring lane and make the sampler attributable by @overtrue in https://github.com/rustfs/rustfs/pull/5540
- docs(kms): record the compliance position and mixed-version constraints by @overtrue in https://github.com/rustfs/rustfs/pull/5541
- ci: drop the docker layer cache and stop installing unused tooling by @overtrue in https://github.com/rustfs/rustfs/pull/5544
- ci: add an opt-in cargo --timings run to decide the sccache question by @overtrue in https://github.com/rustfs/rustfs/pull/5545
- fix(scanner): remove total timeout from heal walks by @overtrue in https://github.com/rustfs/rustfs/pull/5502
- ci: clear the checkout token in every job that does not push by @overtrue in https://github.com/rustfs/rustfs/pull/5547
- fix(sts): align AssumeRole authorization by @GatewayJ in https://github.com/rustfs/rustfs/pull/5281
- ci: drop cla.yml to least privilege by @overtrue in https://github.com/rustfs/rustfs/pull/5548
- feat(kms): wire OperationContext into an audit event contract by @overtrue in https://github.com/rustfs/rustfs/pull/5534
- feat(admin): scope KMS admin authorization to the target key by @overtrue in https://github.com/rustfs/rustfs/pull/5533
- feat(kms): add a synthetic encrypt-decrypt probe worker by @overtrue in https://github.com/rustfs/rustfs/pull/5543
- feat(kms): record real cache hit, miss and eviction metrics by @overtrue in https://github.com/rustfs/rustfs/pull/5531
- feat(sse): enforce per-key KMS authorization on the SSE-KMS data path by @overtrue in https://github.com/rustfs/rustfs/pull/5538
- feat(kms): converge KMS configuration across nodes after a runtime change by @overtrue in https://github.com/rustfs/rustfs/pull/5551
- feat(kms): expose key lifecycle and Vault credential gauges by @overtrue in https://github.com/rustfs/rustfs/pull/5542
- feat(kms): add an AWS KMS backend by @overtrue in https://github.com/rustfs/rustfs/pull/5553
- feat(kms): allow key description and tag updates by @overtrue in https://github.com/rustfs/rustfs/pull/5546
- fix(hotpath): pin mimalloc allocator backend by @houseme in https://github.com/rustfs/rustfs/pull/5550
- Expose replication backlog gauges by @houseme in https://github.com/rustfs/rustfs/pull/5557
- fix(ecstore): harden HotPath profiling boundaries by @houseme in https://github.com/rustfs/rustfs/pull/5555
- fix(oidc): warn on request-header redirect fallback by @GatewayJ in https://github.com/rustfs/rustfs/pull/5561
- test(e2e): classify failed lock nodes as quorum loss by @overtrue in https://github.com/rustfs/rustfs/pull/5513
- ci: stop archiving every dependency's unpacked source in each cache by @overtrue in https://github.com/rustfs/rustfs/pull/5566
- fix(replication): harden backlog observability by @houseme in https://github.com/rustfs/rustfs/pull/5564
- feat(admin): emit KMS management audit events by @overtrue in https://github.com/rustfs/rustfs/pull/5554
- feat(health): drive KMS readiness from the probe status by @overtrue in https://github.com/rustfs/rustfs/pull/5552
- fix(s3select): preserve ScanRange across file partitions by @GatewayJ in https://github.com/rustfs/rustfs/pull/5562
- ci: stop main pushes from starving dispatched Cache Warm runs by @overtrue in https://github.com/rustfs/rustfs/pull/5567
- fix(s3select): honor custom CSV record delimiters by @GatewayJ in https://github.com/rustfs/rustfs/pull/5558
- fix(s3select): parse JSON source paths from SQL AST by @GatewayJ in https://github.com/rustfs/rustfs/pull/5559
- ci: make the cache size report readable from the API by @overtrue in https://github.com/rustfs/rustfs/pull/5568
- ci: raise CARGO_BUILD_JOBS to 3 on main pushes as a measured experiment by @overtrue in https://github.com/rustfs/rustfs/pull/5571
- feat(kms): orchestrate and verify Vault-backed restores by @overtrue in https://github.com/rustfs/rustfs/pull/5549
- ci: let the CARGO_BUILD_JOBS experiment collect samples on demand by @overtrue in https://github.com/rustfs/rustfs/pull/5572
- fix(kms): make the deletion waiting window non-bypassable by @overtrue in https://github.com/rustfs/rustfs/pull/5535
- test(replication): distinguish backlog from failed counters by @houseme in https://github.com/rustfs/rustfs/pull/5570
- perf: harden HotPath closure evidence by @houseme in https://github.com/rustfs/rustfs/pull/5573
- fix(obs): retire replication backlog metric series by @houseme in https://github.com/rustfs/rustfs/pull/5574
- fix(kms): honour the configured metadata cache TTL and metrics switch by @overtrue in https://github.com/rustfs/rustfs/pull/5569
- ci: add nightly GNU build by @overtrue in https://github.com/rustfs/rustfs/pull/5576
- fix(s3select): cancel queries after client disconnect by @GatewayJ in https://github.com/rustfs/rustfs/pull/5560
- docs(agents): require worktree and disk hygiene by @overtrue in https://github.com/rustfs/rustfs/pull/5580
- feat(sse): attach KMS attribution to S3 audit entries by @overtrue in https://github.com/rustfs/rustfs/pull/5577
- fix(kms): refuse to rotate a Vault key whose baseline version was erased by @overtrue in https://github.com/rustfs/rustfs/pull/5578
- feat(admin): expose KMS backup and restore behind explicit guards by @overtrue in https://github.com/rustfs/rustfs/pull/5579
- chore(s3-types): guard the EventName mask bit budget by @overtrue in https://github.com/rustfs/rustfs/pull/5582
- fix(replication): enforce bucket replication switches by @reatang in https://github.com/rustfs/rustfs/pull/5449
- test(perf): strengthen HotPath evidence contracts by @houseme in https://github.com/rustfs/rustfs/pull/5581
- feat(admin): expose KMS key description and tag endpoints by @overtrue in https://github.com/rustfs/rustfs/pull/5575
- test(perf): cover ABBA evidence binding matrix by @houseme in https://github.com/rustfs/rustfs/pull/5585
- fix(s3select): guarantee terminal event delivery by @GatewayJ in https://github.com/rustfs/rustfs/pull/5563
- fix(s3select): support two-byte CSV record delimiters by @GatewayJ in https://github.com/rustfs/rustfs/pull/5565
- Expose target-scoped durable MRF backlog metrics by @houseme in https://github.com/rustfs/rustfs/pull/5584
- docs(kms): correct operator claims that later changes invalidated by @overtrue in https://github.com/rustfs/rustfs/pull/5590
- feat(policy): add built-in KMS role policies and a negative authorization matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5588
- feat(kms): add a disaster-recovery drill harness for KMS backups by @overtrue in https://github.com/rustfs/rustfs/pull/5587
- fix(admin): refuse immediate KMS key deletion through the query string by @overtrue in https://github.com/rustfs/rustfs/pull/5589
- test(kms): cover decryption of pre-rotation envelopes offline by @overtrue in https://github.com/rustfs/rustfs/pull/5591
- feat(kms): accept the AWS backend through KMS configuration by @overtrue in https://github.com/rustfs/rustfs/pull/5592
- docs(kms): correct the claim that rotation is not admin-reachable by @overtrue in https://github.com/rustfs/rustfs/pull/5593
- fix(kms): page key listings so the deletion sweep sees every key by @overtrue in https://github.com/rustfs/rustfs/pull/5595
- docs(kms): correct the static backend's MinIO compatibility claim by @overtrue in https://github.com/rustfs/rustfs/pull/5596
- fix(kms): persist and report the Vault KV2 key rotation timestamp by @overtrue in https://github.com/rustfs/rustfs/pull/5594
- feat(kms): report the configuration references that block a key deletion by @overtrue in https://github.com/rustfs/rustfs/pull/5598
- fix(s3): strip every encryption marker from a copy destination by @overtrue in https://github.com/rustfs/rustfs/pull/5597
- docs(kms): drop claims about an interface that no longer exists by @overtrue in https://github.com/rustfs/rustfs/pull/5602
- docs: state that MinIO-encrypted objects do not migrate by @overtrue in https://github.com/rustfs/rustfs/pull/5600
- refactor(kms): drop the dead duplicate api_types::DeleteKeyRequest by @overtrue in https://github.com/rustfs/rustfs/pull/5601
- fix(replication): harden live delete admission by @cxymds in https://github.com/rustfs/rustfs/pull/5599
- docs(kms): define the bulk object rekey job contract by @overtrue in https://github.com/rustfs/rustfs/pull/5605
- fix(kms): fail closed on Local key records that cannot be interpreted by @overtrue in https://github.com/rustfs/rustfs/pull/5606
- feat(kms): add the data key rewrap primitive by @overtrue in https://github.com/rustfs/rustfs/pull/5607
- feat(admin): apply the requested key listing filters by @overtrue in https://github.com/rustfs/rustfs/pull/5608
- chore(deps): update flake.lock by @houseme in https://github.com/rustfs/rustfs/pull/5611
- fix(scanner): bound corrupt metadata traversal by @marshawcoco in https://github.com/rustfs/rustfs/pull/5609
- fix(authz): restrict recursive force-delete scope by @cxymds in https://github.com/rustfs/rustfs/pull/5610
- fix(lifecycle): count the first transition sample for each tier by @overtrue in https://github.com/rustfs/rustfs/pull/5612
- fix(authz): preserve direct delete usecase callers by @cxymds in https://github.com/rustfs/rustfs/pull/5614
- chore(kms): remove dead key-management types from api_types by @overtrue in https://github.com/rustfs/rustfs/pull/5620
- fix(admin): preflight webhook outbound policy by @overtrue in https://github.com/rustfs/rustfs/pull/5619
- fix(scanner): surface per-tier usage in the data-usage snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5623
- docs(kms): guard outward FIPS wording by @overtrue in https://github.com/rustfs/rustfs/pull/5624
- fix(sse): rewrite data when a same-key copy changes encryption by @overtrue in https://github.com/rustfs/rustfs/pull/5618
- test(kms): pin admin KMS response shapes where they are served by @overtrue in https://github.com/rustfs/rustfs/pull/5626
- docs(kms): record CLI and console admin handoff matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5639
- fix(lifecycle): bind delete replication admission by @cxymds in https://github.com/rustfs/rustfs/pull/5621
- fix(replication): reject unsupported target options by @cxymds in https://github.com/rustfs/rustfs/pull/5622
- fix(authz): gate replication-only PUT headers by @cxymds in https://github.com/rustfs/rustfs/pull/5625
- fix(replication): make sync delivery target-granular by @cxymds in https://github.com/rustfs/rustfs/pull/5630
- test(admin): audit KMS deletion guard outcomes by @overtrue in https://github.com/rustfs/rustfs/pull/5628
- fix(replication): enforce bucket write contract by @cxymds in https://github.com/rustfs/rustfs/pull/5629
- feat(replication): bound DeleteObjects queue admission by @cxymds in https://github.com/rustfs/rustfs/pull/5637
- fix(replication): propagate metadata changes by @cxymds in https://github.com/rustfs/rustfs/pull/5635
- fix(replication): honor target TLS in health checks by @reatang in https://github.com/rustfs/rustfs/pull/5613
- fix(targets): explain webhook outbound allowlist failures by @overtrue in https://github.com/rustfs/rustfs/pull/5616
- test(iam): freeze OIDC federation behavior by @GatewayJ in https://github.com/rustfs/rustfs/pull/5627
- test(e2e): add replication acceptance matrix by @cxymds in https://github.com/rustfs/rustfs/pull/5642
- ci: require MinIO interop reader matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5640
- test(kms): pin AWS timeout and contract divergence by @overtrue in https://github.com/rustfs/rustfs/pull/5636
- fix(kms): cover concurrent Vault KV2 rotation races by @overtrue in https://github.com/rustfs/rustfs/pull/5632
- feat(admin): expose versioned replication capabilities by @cxymds in https://github.com/rustfs/rustfs/pull/5631
- fix(replication): fail closed on destination encryption by @cxymds in https://github.com/rustfs/rustfs/pull/5633
- feat(table-catalog): paginate Iceberg REST listings by @marshawcoco in https://github.com/rustfs/rustfs/pull/5466
- fix(replication): preserve durable MRF delete admission by @cxymds in https://github.com/rustfs/rustfs/pull/5643
- fix(replication): snapshot existing object admission targets by @cxymds in https://github.com/rustfs/rustfs/pull/5634
- fix(kms): version local key records safely by @overtrue in https://github.com/rustfs/rustfs/pull/5638
- test(kms): verify AppRole against live Vault by @overtrue in https://github.com/rustfs/rustfs/pull/5650
- fix(kms): bound persisted format parsing by @overtrue in https://github.com/rustfs/rustfs/pull/5652
- fix(ecstore): make transitioned deletes durable by @cxymds in https://github.com/rustfs/rustfs/pull/5644
- feat(kms): bound backend concurrency and failures by @overtrue in https://github.com/rustfs/rustfs/pull/5651
- test(kms): exercise real Vault Raft failover by @overtrue in https://github.com/rustfs/rustfs/pull/5653
- fix(ci): keep PR e2e smoke lane from timing out by @cxymds in https://github.com/rustfs/rustfs/pull/5649
- feat(obs): add bounded metrics dimensions by @houseme in https://github.com/rustfs/rustfs/pull/5645
- fix(replication): persist force-delete handoff state by @cxymds in https://github.com/rustfs/rustfs/pull/5641
- test(ci): serialize cross-node metadata writes by @overtrue in https://github.com/rustfs/rustfs/pull/5654
- fix(metrics): close dimension review gaps by @houseme in https://github.com/rustfs/rustfs/pull/5656
- chore(deps): refresh hotpath allocator support by @houseme in https://github.com/rustfs/rustfs/pull/5660
- fix(replication): harden MRF replay durability by @cxymds in https://github.com/rustfs/rustfs/pull/5659
- fix(ecstore): allow Windows renames under guarded parents by @marshawcoco in https://github.com/rustfs/rustfs/pull/5663
- fix(s3): stop authorizing DeleteBucketWebsite with a read action by @overtrue in https://github.com/rustfs/rustfs/pull/5665
- fix(replication): fence force-delete journal updates by @cxymds in https://github.com/rustfs/rustfs/pull/5661
- fix(helm): exclude external hosts from mTLS certificate by @ccccpj in https://github.com/rustfs/rustfs/pull/5666
- fix(lock): let waiters hear releases and let acquisition succeed past registered waiters by @themiguelamador in https://github.com/rustfs/rustfs/pull/5670
- fix(replication): retain MRF entries until completion by @cxymds in https://github.com/rustfs/rustfs/pull/5671
- feat(replication): add dormant MRF v2 reader by @cxymds in https://github.com/rustfs/rustfs/pull/5672
- test(replication): add mixed-version MRF acceptance matrix by @cxymds in https://github.com/rustfs/rustfs/pull/5673
- fix(replication): preserve multipart source mtime by @ccccpj in https://github.com/rustfs/rustfs/pull/5669
- fix(kms): repair unopenable ciphertext and cover the Vault backends by @reatang in https://github.com/rustfs/rustfs/pull/5668
- feat(replication): purge delete markers by the target's own version id by @overtrue in https://github.com/rustfs/rustfs/pull/5676
- fix: address rc.1 release blockers by @overtrue in https://github.com/rustfs/rustfs/pull/5648
- perf(ecstore): batch local EC shard preads on GET by @rdiperri-wasabi in https://github.com/rustfs/rustfs/pull/5679
- fix(replication): retain MRF failures during recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5667
- fix(ecstore): address review comments for batch shard pread by @overtrue in https://github.com/rustfs/rustfs/pull/5680
- fix(replication): fence journal snapshots with CAS by @cxymds in https://github.com/rustfs/rustfs/pull/5674
- fix(ecstore): don't exclude pool when has_space_for is indeterminate (#5497) by @overtrue in https://github.com/rustfs/rustfs/pull/5682
- fix(audit): move audit init after IAM bootstrap to fix startup ordering by @overtrue in https://github.com/rustfs/rustfs/pull/5685
- fix(ecstore): skip walkdir total timeout for listing operations by @overtrue in https://github.com/rustfs/rustfs/pull/5684
- fix(ecstore): treat transient network errors as unformatted during bootstrap by @overtrue in https://github.com/rustfs/rustfs/pull/5683
- refactor(table-catalog): modularize catalog implementation by @marshawcoco in https://github.com/rustfs/rustfs/pull/5678
- fix(replication): fence MRF journal updates by @cxymds in https://github.com/rustfs/rustfs/pull/5686
- fix(ecstore): split internal get metadata metrics by @houseme in https://github.com/rustfs/rustfs/pull/5687
- fix(filemeta): preserve FileInfo wire compatibility by @overtrue in https://github.com/rustfs/rustfs/pull/5689
- test(e2e): restore webhook redelivery regression coverage by @overtrue in https://github.com/rustfs/rustfs/pull/5690
- fix(heal): surface stale versions from all disks during heal walk by @overtrue in https://github.com/rustfs/rustfs/pull/5692
- fix(heal): harden resumable set repair failures by @cxymds in https://github.com/rustfs/rustfs/pull/5693
- fix(list): skip delete markers in single-object fast path for ListObjects by @overtrue in https://github.com/rustfs/rustfs/pull/5691
- fix(observability): fallback mimalloc requested memory stats by @houseme in https://github.com/rustfs/rustfs/pull/5695
- fix(replication): harden resync and MRF recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5694
- fix(policy): require unscoped KMS bundle grants by @overtrue in https://github.com/rustfs/rustfs/pull/5697
- fix(replication): restrict metadata replication targets by @overtrue in https://github.com/rustfs/rustfs/pull/5696
- fix(auth): isolate embedded IAM contexts by @overtrue in https://github.com/rustfs/rustfs/pull/5704
- fix(api): bound bucket rate limiter keys by @overtrue in https://github.com/rustfs/rustfs/pull/5706
- fix(s3select): enforce SSE-KMS read authorization by @overtrue in https://github.com/rustfs/rustfs/pull/5698
- fix(auth): enforce object-lock actions for POST uploads by @overtrue in https://github.com/rustfs/rustfs/pull/5701
- fix(ecstore): isolate inline rollback cleanup by @overtrue in https://github.com/rustfs/rustfs/pull/5703
- fix(ecstore): retain namespace read locks for streaming GETs to prevent quota-bypass by @overtrue in https://github.com/rustfs/rustfs/pull/5699
- fix(ci): block PR-controlled execution in performance A/B workflow by @overtrue in https://github.com/rustfs/rustfs/pull/5705
- refactor(time): migrate audit and notify timestamps to jiff by @houseme in https://github.com/rustfs/rustfs/pull/5707
- perf(observability): avoid sampler stat allocations by @houseme in https://github.com/rustfs/rustfs/pull/5708
- fix(compose): set log directory and wait for permission helper by @lqb in https://github.com/rustfs/rustfs/pull/5646
- test(e2e): add P0/P1 regression tests for recurring issue patterns by @overtrue in https://github.com/rustfs/rustfs/pull/5709
- fix(iam): disambiguate OIDC virtual parent IDs by @overtrue in https://github.com/rustfs/rustfs/pull/5700
- perf(observability): avoid cgroup path allocation by @houseme in https://github.com/rustfs/rustfs/pull/5711
- refactor(metrics): migrate scanner report timestamps to jiff by @houseme in https://github.com/rustfs/rustfs/pull/5710
- fix(replication): report FAILED when replication put options cannot be built by @overtrue in https://github.com/rustfs/rustfs/pull/5717
- fix(iam): invalidate peer STS caches on revocation by @overtrue in https://github.com/rustfs/rustfs/pull/5718
- fix(quota): admit writes against a persisted usage baseline while authoritative usage is unavailable by @overtrue in https://github.com/rustfs/rustfs/pull/5722
- fix(replication): make bucket replication rules editable from clients by @reatang in https://github.com/rustfs/rustfs/pull/5715
- fix(ecstore): reclaim synthetic inline-rollback dirs after rename commit by @overtrue in https://github.com/rustfs/rustfs/pull/5724
- fix(filemeta): redact sealed keys and elide inline data in FileInfo Debug by @overtrue in https://github.com/rustfs/rustfs/pull/5725
- fix(heal): bound per-object logging by @anthonymartin in https://github.com/rustfs/rustfs/pull/5719
- fix(targets): surface redacted construction error detail in target failures by @overtrue in https://github.com/rustfs/rustfs/pull/5729
- fix(heal): demote per-object heal logs and cap erasure-set failure warns by @overtrue in https://github.com/rustfs/rustfs/pull/5727
- fix(quota): keep the degraded-baseline fallback off the write path's stack by @overtrue in https://github.com/rustfs/rustfs/pull/5728
- fix(ecstore): make inline-rollback reclamation file-precise to keep #5703's child-key safety by @overtrue in https://github.com/rustfs/rustfs/pull/5732
- fix(s3): degrade multipart listings per upload instead of failing the bucket by @overtrue in https://github.com/rustfs/rustfs/pull/5721
- fix(ecstore): make local disk map initialization replace stale topology by @overtrue in https://github.com/rustfs/rustfs/pull/5734
- test(ecstore): deflake multipart listing tests under plain cargo test by @overtrue in https://github.com/rustfs/rustfs/pull/5730
- refactor(ecstore): unify remaining heal logs to structured event style by @overtrue in https://github.com/rustfs/rustfs/pull/5720
- chore(deps): refresh mimalloc revision by @houseme in https://github.com/rustfs/rustfs/pull/5736
- ci(scripts): add s3s footprint ratchet ahead of s3gate migration by @overtrue in https://github.com/rustfs/rustfs/pull/5739
- fix(auth): restore filtered ListBuckets fallback by @overtrue in https://github.com/rustfs/rustfs/pull/5726
- feat(ci): add DEB/RPM packaging workflow by @majinghe in https://github.com/rustfs/rustfs/pull/5738
- fix: bump s3_error! footprint baseline to 1687 for auth ListBuckets fix by @overtrue in https://github.com/rustfs/rustfs/pull/5747
- fix(auth): route ListBuckets denial through ApiError to hold s3s ratchet by @reatang in https://github.com/rustfs/rustfs/pull/5755
- fix(site-replication): send peer join to MinIO peer/join route with encrypted payload by @reatang in https://github.com/rustfs/rustfs/pull/5748
- fix(madmin): accept MinIO PascalCase SRInfo fields and nil-map nulls by @reatang in https://github.com/rustfs/rustfs/pull/5749
- feat(table-catalog): complete namespace REST contracts by @marshawcoco in https://github.com/rustfs/rustfs/pull/5745
- fix(replication): send source versionId as query param to remote targets by @reatang in https://github.com/rustfs/rustfs/pull/5752
- fix(replication): accept remote target healthCheckDuration nanoseconds by @reatang in https://github.com/rustfs/rustfs/pull/5754
- fix(site-replication): use MinIO-compatible sts-account IAM item type by @reatang in https://github.com/rustfs/rustfs/pull/5750
- fix(table-catalog): route read_bounded_json_body errors through ApiError to hold s3s ratchet by @overtrue in https://github.com/rustfs/rustfs/pull/5759
- fix(replication): schedule replication for CopyObject and snowball extracted objects by @reatang in https://github.com/rustfs/rustfs/pull/5753
- fix(auth): log structured denial reasons for generic AccessDenied responses by @overtrue in https://github.com/rustfs/rustfs/pull/5761
- fix(ecstore): preserve checksums through write transforms by @anthonymartin in https://github.com/rustfs/rustfs/pull/5765
- perf: add RPC auth profiling diagnostics by @houseme in https://github.com/rustfs/rustfs/pull/5775
- obs: mirror log attributes into loki lines by @houseme in https://github.com/rustfs/rustfs/pull/5776
- fix(site-replication): translate policy mapping userType at MinIO wire boundary by @reatang in https://github.com/rustfs/rustfs/pull/5751
- fix(kms): report unreadable keys and bound list-keys page size by @overtrue in https://github.com/rustfs/rustfs/pull/5764
- test(admin): pin the KMS admin route contract as a snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5766
- fix(kms): hold the Local key directory and its files owner-only by @overtrue in https://github.com/rustfs/rustfs/pull/5768
- feat(table-catalog): validate Iceberg metadata graphs by @marshawcoco in https://github.com/rustfs/rustfs/pull/5758
- fix(replication): report remote target latency as Go duration nanoseconds by @reatang in https://github.com/rustfs/rustfs/pull/5771
- test(heal): cover partial rename retry admission by @cxymds in https://github.com/rustfs/rustfs/pull/5772
- fix(auth): align ListBuckets discovery with IAM policies by @GatewayJ in https://github.com/rustfs/rustfs/pull/5746
- fix(logging): bound hot-path span amplification by @anthonymartin in https://github.com/rustfs/rustfs/pull/5763
- feat(kms): report which keys have outlived their rotation period by @overtrue in https://github.com/rustfs/rustfs/pull/5769
- perf(metrics): count internode RPC auth failures by @houseme in https://github.com/rustfs/rustfs/pull/5777
- fix(capacity): back off timed-out scans by @anthonymartin in https://github.com/rustfs/rustfs/pull/5770
- feat(rpc): expose and auto-size replay cache capacity by @houseme in https://github.com/rustfs/rustfs/pull/5781
- fix(scanner): publish bounded observational usage by @anthonymartin in https://github.com/rustfs/rustfs/pull/5742
- fix(ecstore): heal partial ordinary puts by @cxymds in https://github.com/rustfs/rustfs/pull/5783
- fix(ci): ignore strings in s3s footprint ratchet by @cxymds in https://github.com/rustfs/rustfs/pull/5787
- fix(ecstore): bind multipart convergence heal versions by @cxymds in https://github.com/rustfs/rustfs/pull/5786
- fix(ecstore): parse ARN region and id in display order by @reatang in https://github.com/rustfs/rustfs/pull/5790
- fix(ecstore): fence data movement source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5794
- fix(replication): tolerate Go zero-value expiration and ignore latency in remote target requests by @reatang in https://github.com/rustfs/rustfs/pull/5789
- fix(rebalance): commit stats after source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5795
- fix(s3): resume in-flight GET streams after rebalance relocation by @deadspacewii in https://github.com/rustfs/rustfs/pull/5791
- ci: install awscurl for full e2e tests by @cxymds in https://github.com/rustfs/rustfs/pull/5796
- fix(capacity): stop background schedulers on shutdown by @cxymds in https://github.com/rustfs/rustfs/pull/5797
- fix(ecstore): preserve newer writes during data movement by @cxymds in https://github.com/rustfs/rustfs/pull/5798
- fix(ecstore): reject over-NAME_MAX key segments up front; classify irreconcilable parity as corrupt metadata by @overtrue in https://github.com/rustfs/rustfs/pull/5804
- fix(admin): stop logging STS AssumeRole JWT claims by @overtrue in https://github.com/rustfs/rustfs/pull/5802
- fix(replication): madmin reset/diff wire compat and config validation by @reatang in https://github.com/rustfs/rustfs/pull/5799
- ci(e2e): stabilize full-gate tooling by @cxymds in https://github.com/rustfs/rustfs/pull/5805
- perf(ecstore): memoize bucket-incarnation fence validation under lifecycle read-lock coverage by @overtrue in https://github.com/rustfs/rustfs/pull/5782
- perf(storage): skip read-version JSON for bin peers by @houseme in https://github.com/rustfs/rustfs/pull/5808
- fix(s3select): replace deprecated parquet reader by @houseme in https://github.com/rustfs/rustfs/pull/5811
- fix(scanner): retry a superseded usage snapshot in seconds, not a full cycle by @overtrue in https://github.com/rustfs/rustfs/pull/5814
- docs(runtime): document allocator reclaim runtime by @houseme in https://github.com/rustfs/rustfs/pull/5800
- fix(admin): serve the usage a scan measured instead of blanking the whole snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5818
- perf(utils): avoid metadata key lowercase allocation by @houseme in https://github.com/rustfs/rustfs/pull/5823
- perf(ecstore): cache modern erasure codec construction by @houseme in https://github.com/rustfs/rustfs/pull/5824
- fix(ecstore): enforce the NAME_MAX segment budget on the write path too by @overtrue in https://github.com/rustfs/rustfs/pull/5826
- fix(storage): reserve internal encryption prefixes in user metadata by @reatang in https://github.com/rustfs/rustfs/pull/5819
- refactor(kms): close the low-severity follow-ups from the #5668 adversarial re-review by @reatang in https://github.com/rustfs/rustfs/pull/5817
- fix(policy): support version ID condition keys by @cxymds in https://github.com/rustfs/rustfs/pull/5810
- feat(rpc): advertise cross-pool fence capability by @cxymds in https://github.com/rustfs/rustfs/pull/5809
- test(e2e): make scanner snapshot tests deterministic by @cxymds in https://github.com/rustfs/rustfs/pull/5812
- test(ecstore): stabilize free-version enqueue retry by @cxymds in https://github.com/rustfs/rustfs/pull/5813
- test(e2e): align backpressure assertion with recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5815
- test(e2e): wait for authoritative quota usage by @cxymds in https://github.com/rustfs/rustfs/pull/5816
- fix(table-catalog): fix object kind validation by @kinolaev in https://github.com/rustfs/rustfs/pull/5784
- fix(rebalance): drain entry tasks before listing retry by @cxymds in https://github.com/rustfs/rustfs/pull/5820
- fix(rpc): skip batch read-version JSON for msgpack peers by @houseme in https://github.com/rustfs/rustfs/pull/5825
- docs(agents): make the structured-logging rule reachable and enforceable by @overtrue in https://github.com/rustfs/rustfs/pull/5828
- fix(ecstore): purge the stale destination data dir on healing rename_data commits by @terem42 in https://github.com/rustfs/rustfs/pull/5822
- fix(rebalance): defer changed source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5829
- fix(ecstore): raise replay cache auto capacity by @houseme in https://github.com/rustfs/rustfs/pull/5833
- chore(release): bump version to 1.0.0-rc.1 by @overtrue in https://github.com/rustfs/rustfs/pull/5834
- @ccccpj made their first contribution in https://github.com/rustfs/rustfs/pull/5666
- @themiguelamador made their first contribution in https://github.com/rustfs/rustfs/pull/5670
- @rdiperri-wasabi made their first contribution in https://github.com/rustfs/rustfs/pull/5679
- @lqb made their first contribution in https://github.com/rustfs/rustfs/pull/5646
- @anthonymartin made their first contribution in https://github.com/rustfs/rustfs/pull/5719
- @deadspacewii made their first contribution in https://github.com/rustfs/rustfs/pull/5791
- @kinolaev made their first contribution in https://github.com/rustfs/rustfs/pull/5784
- @terem42 made their first contribution in https://github.com/rustfs/rustfs/pull/5822
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-beta.12...1.0.0-rc.1
RustFS 1.0.0-rc.1-preview.1 (preview)
- fix(ecstore): start with unresolved Kubernetes peers by @cxymds in https://github.com/rustfs/rustfs/pull/5460
- ci(release): isolate preview releases from latest channels by @overtrue in https://github.com/rustfs/rustfs/pull/5462
- fix(ecstore): quarantine rejected format members by @cxymds in https://github.com/rustfs/rustfs/pull/5463
- test(e2e): accept backpressure unknown terminal status by @houseme in https://github.com/rustfs/rustfs/pull/5464
- refactor(sse): decouple ecstore and harden KMS lifecycle by @reatang in https://github.com/rustfs/rustfs/pull/5435
- fix(obs): label node-local metrics by server by @houseme in https://github.com/rustfs/rustfs/pull/5465
- fix(ci): generate release notes with the correct baseline by @overtrue in https://github.com/rustfs/rustfs/pull/5467
- docs(obs): add Grafana server-label dashboard by @houseme in https://github.com/rustfs/rustfs/pull/5468
- fix(kms): make local backend persistence crash-durable by @overtrue in https://github.com/rustfs/rustfs/pull/5471
- feat(kms): add operation timeout and typed retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5472
- fix(kms): fail closed on missing or corrupt key material by @overtrue in https://github.com/rustfs/rustfs/pull/5475
- fix(kms): report accurate Vault KV2 security contract and disable unsafe rotation by @overtrue in https://github.com/rustfs/rustfs/pull/5474
- docs(kms): document local backend durability and deployment support matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5478
- feat(kms): add master key version to data key envelope contract by @overtrue in https://github.com/rustfs/rustfs/pull/5480
- fix(kms): pass attempt timeout to Vault test clients by @overtrue in https://github.com/rustfs/rustfs/pull/5479
- fix(kms): pass attempt timeout in vault kv2 tests by @overtrue in https://github.com/rustfs/rustfs/pull/5482
- refactor(kms): route Vault clients through a rotatable credential provider by @overtrue in https://github.com/rustfs/rustfs/pull/5481
- feat(kms): retain historical master key versions for Vault KV2 rotation by @overtrue in https://github.com/rustfs/rustfs/pull/5484
- feat: add opt-in hotpath profiling by @houseme in https://github.com/rustfs/rustfs/pull/5488
- feat(kms): add backup manifest and responsibility contract types by @overtrue in https://github.com/rustfs/rustfs/pull/5483
- test(kms): pin rotation contracts across backends and document retention by @overtrue in https://github.com/rustfs/rustfs/pull/5486
- feat(kms): add backend capability discovery by @overtrue in https://github.com/rustfs/rustfs/pull/5485
- feat(kms): AppRole login with background token renewal and fail-closed expiry by @overtrue in https://github.com/rustfs/rustfs/pull/5487
- feat(kms): enforce shared key state machine across backends by @overtrue in https://github.com/rustfs/rustfs/pull/5489
- fix(iam): separate OIDC role and claim policies by @overtrue in https://github.com/rustfs/rustfs/pull/5493
- fix(admin): keep data usage endpoint available by @overtrue in https://github.com/rustfs/rustfs/pull/5494
- feat(kms): route Vault operations through the retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5495
- feat(admin): add KMS key lifecycle endpoints and deletion reference gate by @overtrue in https://github.com/rustfs/rustfs/pull/5496
- feat: add hotpath primitive profiling coverage by @houseme in https://github.com/rustfs/rustfs/pull/5492
- perf(ecstore): deduplicate concurrent lazy bucket-metadata loads by @overtrue in https://github.com/rustfs/rustfs/pull/5498
- feat(kms): record operation metrics in the retry policy engine by @overtrue in https://github.com/rustfs/rustfs/pull/5500
- feat: extend hotpath coverage across crates by @houseme in https://github.com/rustfs/rustfs/pull/5505
- refactor(kms): fold the KmsClient layer into KmsBackend and complete lifecycle overrides by @overtrue in https://github.com/rustfs/rustfs/pull/5501
- test: add formal hotpath ABBA runner by @houseme in https://github.com/rustfs/rustfs/pull/5507
- feat(kms): export local backend key material as sealed backup bundles by @overtrue in https://github.com/rustfs/rustfs/pull/5499
- fix(s3): allow CopyObject COPY request metadata by @houseme in https://github.com/rustfs/rustfs/pull/5514
- fix(kms): drop stale KmsClient trait import in local_export tests by @overtrue in https://github.com/rustfs/rustfs/pull/5519
- docs(kms): add observability dashboard, alert rules and runbook by @overtrue in https://github.com/rustfs/rustfs/pull/5517
- fix(config): fence persisted config updates and reloads by @cxymds in https://github.com/rustfs/rustfs/pull/5512
- docs: make validation proportional to change risk by @overtrue in https://github.com/rustfs/rustfs/pull/5527
- test(s3): cover delete marker list visibility by @overtrue in https://github.com/rustfs/rustfs/pull/5503
- fix(kms): make Vault KV2 lifecycle writes check-and-set by @overtrue in https://github.com/rustfs/rustfs/pull/5518
- fix(kms): CAS Transit metadata writes and bound the metadata cache by @overtrue in https://github.com/rustfs/rustfs/pull/5520
- feat(policy): parse and match KMS key resources with a kms:Decrypt action by @overtrue in https://github.com/rustfs/rustfs/pull/5515
- feat(kms): restore local backend key material from sealed backup bundles by @overtrue in https://github.com/rustfs/rustfs/pull/5522
- test(object-lock): cover unretained version cleanup by @overtrue in https://github.com/rustfs/rustfs/pull/5504
- feat(hotpath): use mimalloc in inner counting allocator by @houseme in https://github.com/rustfs/rustfs/pull/5523
- ci: stop running expensive jobs that cannot inform the result by @overtrue in https://github.com/rustfs/rustfs/pull/5528
- ci: gate expensive jobs on Quick Checks and stop a failed PR run early by @overtrue in https://github.com/rustfs/rustfs/pull/5529
- ci: fit the Rust caches back inside the 10GB quota by @overtrue in https://github.com/rustfs/rustfs/pull/5532
- ci: write the Rust caches from a workflow that is not cancelled by @overtrue in https://github.com/rustfs/rustfs/pull/5536
- fix(storage): harden scanner and recovery edge cases by @houseme in https://github.com/rustfs/rustfs/pull/5521
- ci: bound every job's runtime and stop pasting inputs into shell by @overtrue in https://github.com/rustfs/rustfs/pull/5537
- fix(ecstore): settle lease-deferred data-dir deletes before bucket removal by @overtrue in https://github.com/rustfs/rustfs/pull/5516
- ci: stop the weekly flake.lock bot from running the whole pipeline by @overtrue in https://github.com/rustfs/rustfs/pull/5539
- ci: narrow the io_uring lane and make the sampler attributable by @overtrue in https://github.com/rustfs/rustfs/pull/5540
- docs(kms): record the compliance position and mixed-version constraints by @overtrue in https://github.com/rustfs/rustfs/pull/5541
- ci: drop the docker layer cache and stop installing unused tooling by @overtrue in https://github.com/rustfs/rustfs/pull/5544
- ci: add an opt-in cargo --timings run to decide the sccache question by @overtrue in https://github.com/rustfs/rustfs/pull/5545
- fix(scanner): remove total timeout from heal walks by @overtrue in https://github.com/rustfs/rustfs/pull/5502
- ci: clear the checkout token in every job that does not push by @overtrue in https://github.com/rustfs/rustfs/pull/5547
- fix(sts): align AssumeRole authorization by @GatewayJ in https://github.com/rustfs/rustfs/pull/5281
- ci: drop cla.yml to least privilege by @overtrue in https://github.com/rustfs/rustfs/pull/5548
- feat(kms): wire OperationContext into an audit event contract by @overtrue in https://github.com/rustfs/rustfs/pull/5534
- feat(admin): scope KMS admin authorization to the target key by @overtrue in https://github.com/rustfs/rustfs/pull/5533
- feat(kms): add a synthetic encrypt-decrypt probe worker by @overtrue in https://github.com/rustfs/rustfs/pull/5543
- feat(kms): record real cache hit, miss and eviction metrics by @overtrue in https://github.com/rustfs/rustfs/pull/5531
- feat(sse): enforce per-key KMS authorization on the SSE-KMS data path by @overtrue in https://github.com/rustfs/rustfs/pull/5538
- feat(kms): converge KMS configuration across nodes after a runtime change by @overtrue in https://github.com/rustfs/rustfs/pull/5551
- feat(kms): expose key lifecycle and Vault credential gauges by @overtrue in https://github.com/rustfs/rustfs/pull/5542
- feat(kms): add an AWS KMS backend by @overtrue in https://github.com/rustfs/rustfs/pull/5553
- feat(kms): allow key description and tag updates by @overtrue in https://github.com/rustfs/rustfs/pull/5546
- fix(hotpath): pin mimalloc allocator backend by @houseme in https://github.com/rustfs/rustfs/pull/5550
- Expose replication backlog gauges by @houseme in https://github.com/rustfs/rustfs/pull/5557
- fix(ecstore): harden HotPath profiling boundaries by @houseme in https://github.com/rustfs/rustfs/pull/5555
- fix(oidc): warn on request-header redirect fallback by @GatewayJ in https://github.com/rustfs/rustfs/pull/5561
- test(e2e): classify failed lock nodes as quorum loss by @overtrue in https://github.com/rustfs/rustfs/pull/5513
- ci: stop archiving every dependency's unpacked source in each cache by @overtrue in https://github.com/rustfs/rustfs/pull/5566
- fix(replication): harden backlog observability by @houseme in https://github.com/rustfs/rustfs/pull/5564
- feat(admin): emit KMS management audit events by @overtrue in https://github.com/rustfs/rustfs/pull/5554
- feat(health): drive KMS readiness from the probe status by @overtrue in https://github.com/rustfs/rustfs/pull/5552
- fix(s3select): preserve ScanRange across file partitions by @GatewayJ in https://github.com/rustfs/rustfs/pull/5562
- ci: stop main pushes from starving dispatched Cache Warm runs by @overtrue in https://github.com/rustfs/rustfs/pull/5567
- fix(s3select): honor custom CSV record delimiters by @GatewayJ in https://github.com/rustfs/rustfs/pull/5558
- fix(s3select): parse JSON source paths from SQL AST by @GatewayJ in https://github.com/rustfs/rustfs/pull/5559
- ci: make the cache size report readable from the API by @overtrue in https://github.com/rustfs/rustfs/pull/5568
- ci: raise CARGO_BUILD_JOBS to 3 on main pushes as a measured experiment by @overtrue in https://github.com/rustfs/rustfs/pull/5571
- feat(kms): orchestrate and verify Vault-backed restores by @overtrue in https://github.com/rustfs/rustfs/pull/5549
- ci: let the CARGO_BUILD_JOBS experiment collect samples on demand by @overtrue in https://github.com/rustfs/rustfs/pull/5572
- fix(kms): make the deletion waiting window non-bypassable by @overtrue in https://github.com/rustfs/rustfs/pull/5535
- test(replication): distinguish backlog from failed counters by @houseme in https://github.com/rustfs/rustfs/pull/5570
- perf: harden HotPath closure evidence by @houseme in https://github.com/rustfs/rustfs/pull/5573
- fix(obs): retire replication backlog metric series by @houseme in https://github.com/rustfs/rustfs/pull/5574
- fix(kms): honour the configured metadata cache TTL and metrics switch by @overtrue in https://github.com/rustfs/rustfs/pull/5569
- ci: add nightly GNU build by @overtrue in https://github.com/rustfs/rustfs/pull/5576
- fix(s3select): cancel queries after client disconnect by @GatewayJ in https://github.com/rustfs/rustfs/pull/5560
- docs(agents): require worktree and disk hygiene by @overtrue in https://github.com/rustfs/rustfs/pull/5580
- feat(sse): attach KMS attribution to S3 audit entries by @overtrue in https://github.com/rustfs/rustfs/pull/5577
- fix(kms): refuse to rotate a Vault key whose baseline version was erased by @overtrue in https://github.com/rustfs/rustfs/pull/5578
- feat(admin): expose KMS backup and restore behind explicit guards by @overtrue in https://github.com/rustfs/rustfs/pull/5579
- chore(s3-types): guard the EventName mask bit budget by @overtrue in https://github.com/rustfs/rustfs/pull/5582
- fix(replication): enforce bucket replication switches by @reatang in https://github.com/rustfs/rustfs/pull/5449
- test(perf): strengthen HotPath evidence contracts by @houseme in https://github.com/rustfs/rustfs/pull/5581
- feat(admin): expose KMS key description and tag endpoints by @overtrue in https://github.com/rustfs/rustfs/pull/5575
- test(perf): cover ABBA evidence binding matrix by @houseme in https://github.com/rustfs/rustfs/pull/5585
- fix(s3select): guarantee terminal event delivery by @GatewayJ in https://github.com/rustfs/rustfs/pull/5563
- fix(s3select): support two-byte CSV record delimiters by @GatewayJ in https://github.com/rustfs/rustfs/pull/5565
- Expose target-scoped durable MRF backlog metrics by @houseme in https://github.com/rustfs/rustfs/pull/5584
- docs(kms): correct operator claims that later changes invalidated by @overtrue in https://github.com/rustfs/rustfs/pull/5590
- feat(policy): add built-in KMS role policies and a negative authorization matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5588
- feat(kms): add a disaster-recovery drill harness for KMS backups by @overtrue in https://github.com/rustfs/rustfs/pull/5587
- fix(admin): refuse immediate KMS key deletion through the query string by @overtrue in https://github.com/rustfs/rustfs/pull/5589
- test(kms): cover decryption of pre-rotation envelopes offline by @overtrue in https://github.com/rustfs/rustfs/pull/5591
- feat(kms): accept the AWS backend through KMS configuration by @overtrue in https://github.com/rustfs/rustfs/pull/5592
- docs(kms): correct the claim that rotation is not admin-reachable by @overtrue in https://github.com/rustfs/rustfs/pull/5593
- fix(kms): page key listings so the deletion sweep sees every key by @overtrue in https://github.com/rustfs/rustfs/pull/5595
- docs(kms): correct the static backend's MinIO compatibility claim by @overtrue in https://github.com/rustfs/rustfs/pull/5596
- fix(kms): persist and report the Vault KV2 key rotation timestamp by @overtrue in https://github.com/rustfs/rustfs/pull/5594
- feat(kms): report the configuration references that block a key deletion by @overtrue in https://github.com/rustfs/rustfs/pull/5598
- fix(s3): strip every encryption marker from a copy destination by @overtrue in https://github.com/rustfs/rustfs/pull/5597
- docs(kms): drop claims about an interface that no longer exists by @overtrue in https://github.com/rustfs/rustfs/pull/5602
- docs: state that MinIO-encrypted objects do not migrate by @overtrue in https://github.com/rustfs/rustfs/pull/5600
- refactor(kms): drop the dead duplicate api_types::DeleteKeyRequest by @overtrue in https://github.com/rustfs/rustfs/pull/5601
- fix(replication): harden live delete admission by @cxymds in https://github.com/rustfs/rustfs/pull/5599
- docs(kms): define the bulk object rekey job contract by @overtrue in https://github.com/rustfs/rustfs/pull/5605
- fix(kms): fail closed on Local key records that cannot be interpreted by @overtrue in https://github.com/rustfs/rustfs/pull/5606
- feat(kms): add the data key rewrap primitive by @overtrue in https://github.com/rustfs/rustfs/pull/5607
- feat(admin): apply the requested key listing filters by @overtrue in https://github.com/rustfs/rustfs/pull/5608
- chore(deps): update flake.lock by @houseme in https://github.com/rustfs/rustfs/pull/5611
- fix(scanner): bound corrupt metadata traversal by @marshawcoco in https://github.com/rustfs/rustfs/pull/5609
- fix(authz): restrict recursive force-delete scope by @cxymds in https://github.com/rustfs/rustfs/pull/5610
- fix(lifecycle): count the first transition sample for each tier by @overtrue in https://github.com/rustfs/rustfs/pull/5612
- fix(authz): preserve direct delete usecase callers by @cxymds in https://github.com/rustfs/rustfs/pull/5614
- chore(kms): remove dead key-management types from api_types by @overtrue in https://github.com/rustfs/rustfs/pull/5620
- fix(admin): preflight webhook outbound policy by @overtrue in https://github.com/rustfs/rustfs/pull/5619
- fix(scanner): surface per-tier usage in the data-usage snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5623
- docs(kms): guard outward FIPS wording by @overtrue in https://github.com/rustfs/rustfs/pull/5624
- fix(sse): rewrite data when a same-key copy changes encryption by @overtrue in https://github.com/rustfs/rustfs/pull/5618
- test(kms): pin admin KMS response shapes where they are served by @overtrue in https://github.com/rustfs/rustfs/pull/5626
- docs(kms): record CLI and console admin handoff matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5639
- fix(lifecycle): bind delete replication admission by @cxymds in https://github.com/rustfs/rustfs/pull/5621
- fix(replication): reject unsupported target options by @cxymds in https://github.com/rustfs/rustfs/pull/5622
- fix(authz): gate replication-only PUT headers by @cxymds in https://github.com/rustfs/rustfs/pull/5625
- fix(replication): make sync delivery target-granular by @cxymds in https://github.com/rustfs/rustfs/pull/5630
- test(admin): audit KMS deletion guard outcomes by @overtrue in https://github.com/rustfs/rustfs/pull/5628
- fix(replication): enforce bucket write contract by @cxymds in https://github.com/rustfs/rustfs/pull/5629
- feat(replication): bound DeleteObjects queue admission by @cxymds in https://github.com/rustfs/rustfs/pull/5637
- fix(replication): propagate metadata changes by @cxymds in https://github.com/rustfs/rustfs/pull/5635
- fix(replication): honor target TLS in health checks by @reatang in https://github.com/rustfs/rustfs/pull/5613
- fix(targets): explain webhook outbound allowlist failures by @overtrue in https://github.com/rustfs/rustfs/pull/5616
- test(iam): freeze OIDC federation behavior by @GatewayJ in https://github.com/rustfs/rustfs/pull/5627
- test(e2e): add replication acceptance matrix by @cxymds in https://github.com/rustfs/rustfs/pull/5642
- ci: require MinIO interop reader matrix by @overtrue in https://github.com/rustfs/rustfs/pull/5640
- test(kms): pin AWS timeout and contract divergence by @overtrue in https://github.com/rustfs/rustfs/pull/5636
- fix(kms): cover concurrent Vault KV2 rotation races by @overtrue in https://github.com/rustfs/rustfs/pull/5632
- feat(admin): expose versioned replication capabilities by @cxymds in https://github.com/rustfs/rustfs/pull/5631
- fix(replication): fail closed on destination encryption by @cxymds in https://github.com/rustfs/rustfs/pull/5633
- feat(table-catalog): paginate Iceberg REST listings by @marshawcoco in https://github.com/rustfs/rustfs/pull/5466
- fix(replication): preserve durable MRF delete admission by @cxymds in https://github.com/rustfs/rustfs/pull/5643
- fix(replication): snapshot existing object admission targets by @cxymds in https://github.com/rustfs/rustfs/pull/5634
- fix(kms): version local key records safely by @overtrue in https://github.com/rustfs/rustfs/pull/5638
- test(kms): verify AppRole against live Vault by @overtrue in https://github.com/rustfs/rustfs/pull/5650
- fix(kms): bound persisted format parsing by @overtrue in https://github.com/rustfs/rustfs/pull/5652
- fix(ecstore): make transitioned deletes durable by @cxymds in https://github.com/rustfs/rustfs/pull/5644
- feat(kms): bound backend concurrency and failures by @overtrue in https://github.com/rustfs/rustfs/pull/5651
- test(kms): exercise real Vault Raft failover by @overtrue in https://github.com/rustfs/rustfs/pull/5653
- fix(ci): keep PR e2e smoke lane from timing out by @cxymds in https://github.com/rustfs/rustfs/pull/5649
- feat(obs): add bounded metrics dimensions by @houseme in https://github.com/rustfs/rustfs/pull/5645
- fix(replication): persist force-delete handoff state by @cxymds in https://github.com/rustfs/rustfs/pull/5641
- test(ci): serialize cross-node metadata writes by @overtrue in https://github.com/rustfs/rustfs/pull/5654
- fix(metrics): close dimension review gaps by @houseme in https://github.com/rustfs/rustfs/pull/5656
- chore(deps): refresh hotpath allocator support by @houseme in https://github.com/rustfs/rustfs/pull/5660
- fix(replication): harden MRF replay durability by @cxymds in https://github.com/rustfs/rustfs/pull/5659
- fix(ecstore): allow Windows renames under guarded parents by @marshawcoco in https://github.com/rustfs/rustfs/pull/5663
- fix(s3): stop authorizing DeleteBucketWebsite with a read action by @overtrue in https://github.com/rustfs/rustfs/pull/5665
- fix(replication): fence force-delete journal updates by @cxymds in https://github.com/rustfs/rustfs/pull/5661
- fix(helm): exclude external hosts from mTLS certificate by @ccccpj in https://github.com/rustfs/rustfs/pull/5666
- fix(lock): let waiters hear releases and let acquisition succeed past registered waiters by @themiguelamador in https://github.com/rustfs/rustfs/pull/5670
- fix(replication): retain MRF entries until completion by @cxymds in https://github.com/rustfs/rustfs/pull/5671
- feat(replication): add dormant MRF v2 reader by @cxymds in https://github.com/rustfs/rustfs/pull/5672
- test(replication): add mixed-version MRF acceptance matrix by @cxymds in https://github.com/rustfs/rustfs/pull/5673
- fix(replication): preserve multipart source mtime by @ccccpj in https://github.com/rustfs/rustfs/pull/5669
- fix(kms): repair unopenable ciphertext and cover the Vault backends by @reatang in https://github.com/rustfs/rustfs/pull/5668
- feat(replication): purge delete markers by the target's own version id by @overtrue in https://github.com/rustfs/rustfs/pull/5676
- fix: address rc.1 release blockers by @overtrue in https://github.com/rustfs/rustfs/pull/5648
- perf(ecstore): batch local EC shard preads on GET by @rdiperri-wasabi in https://github.com/rustfs/rustfs/pull/5679
- fix(replication): retain MRF failures during recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5667
- fix(ecstore): address review comments for batch shard pread by @overtrue in https://github.com/rustfs/rustfs/pull/5680
- fix(replication): fence journal snapshots with CAS by @cxymds in https://github.com/rustfs/rustfs/pull/5674
- fix(ecstore): don't exclude pool when has_space_for is indeterminate (#5497) by @overtrue in https://github.com/rustfs/rustfs/pull/5682
- fix(audit): move audit init after IAM bootstrap to fix startup ordering by @overtrue in https://github.com/rustfs/rustfs/pull/5685
- fix(ecstore): skip walkdir total timeout for listing operations by @overtrue in https://github.com/rustfs/rustfs/pull/5684
- fix(ecstore): treat transient network errors as unformatted during bootstrap by @overtrue in https://github.com/rustfs/rustfs/pull/5683
- refactor(table-catalog): modularize catalog implementation by @marshawcoco in https://github.com/rustfs/rustfs/pull/5678
- fix(replication): fence MRF journal updates by @cxymds in https://github.com/rustfs/rustfs/pull/5686
- fix(ecstore): split internal get metadata metrics by @houseme in https://github.com/rustfs/rustfs/pull/5687
- fix(filemeta): preserve FileInfo wire compatibility by @overtrue in https://github.com/rustfs/rustfs/pull/5689
- test(e2e): restore webhook redelivery regression coverage by @overtrue in https://github.com/rustfs/rustfs/pull/5690
- fix(heal): surface stale versions from all disks during heal walk by @overtrue in https://github.com/rustfs/rustfs/pull/5692
- fix(heal): harden resumable set repair failures by @cxymds in https://github.com/rustfs/rustfs/pull/5693
- fix(list): skip delete markers in single-object fast path for ListObjects by @overtrue in https://github.com/rustfs/rustfs/pull/5691
- fix(observability): fallback mimalloc requested memory stats by @houseme in https://github.com/rustfs/rustfs/pull/5695
- fix(replication): harden resync and MRF recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5694
- fix(policy): require unscoped KMS bundle grants by @overtrue in https://github.com/rustfs/rustfs/pull/5697
- fix(replication): restrict metadata replication targets by @overtrue in https://github.com/rustfs/rustfs/pull/5696
- fix(auth): isolate embedded IAM contexts by @overtrue in https://github.com/rustfs/rustfs/pull/5704
- fix(api): bound bucket rate limiter keys by @overtrue in https://github.com/rustfs/rustfs/pull/5706
- fix(s3select): enforce SSE-KMS read authorization by @overtrue in https://github.com/rustfs/rustfs/pull/5698
- fix(auth): enforce object-lock actions for POST uploads by @overtrue in https://github.com/rustfs/rustfs/pull/5701
- fix(ecstore): isolate inline rollback cleanup by @overtrue in https://github.com/rustfs/rustfs/pull/5703
- fix(ecstore): retain namespace read locks for streaming GETs to prevent quota-bypass by @overtrue in https://github.com/rustfs/rustfs/pull/5699
- fix(ci): block PR-controlled execution in performance A/B workflow by @overtrue in https://github.com/rustfs/rustfs/pull/5705
- refactor(time): migrate audit and notify timestamps to jiff by @houseme in https://github.com/rustfs/rustfs/pull/5707
- perf(observability): avoid sampler stat allocations by @houseme in https://github.com/rustfs/rustfs/pull/5708
- fix(compose): set log directory and wait for permission helper by @lqb in https://github.com/rustfs/rustfs/pull/5646
- test(e2e): add P0/P1 regression tests for recurring issue patterns by @overtrue in https://github.com/rustfs/rustfs/pull/5709
- fix(iam): disambiguate OIDC virtual parent IDs by @overtrue in https://github.com/rustfs/rustfs/pull/5700
- perf(observability): avoid cgroup path allocation by @houseme in https://github.com/rustfs/rustfs/pull/5711
- refactor(metrics): migrate scanner report timestamps to jiff by @houseme in https://github.com/rustfs/rustfs/pull/5710
- fix(replication): report FAILED when replication put options cannot be built by @overtrue in https://github.com/rustfs/rustfs/pull/5717
- fix(iam): invalidate peer STS caches on revocation by @overtrue in https://github.com/rustfs/rustfs/pull/5718
- fix(quota): admit writes against a persisted usage baseline while authoritative usage is unavailable by @overtrue in https://github.com/rustfs/rustfs/pull/5722
- fix(replication): make bucket replication rules editable from clients by @reatang in https://github.com/rustfs/rustfs/pull/5715
- fix(ecstore): reclaim synthetic inline-rollback dirs after rename commit by @overtrue in https://github.com/rustfs/rustfs/pull/5724
- fix(filemeta): redact sealed keys and elide inline data in FileInfo Debug by @overtrue in https://github.com/rustfs/rustfs/pull/5725
- fix(heal): bound per-object logging by @anthonymartin in https://github.com/rustfs/rustfs/pull/5719
- fix(targets): surface redacted construction error detail in target failures by @overtrue in https://github.com/rustfs/rustfs/pull/5729
- fix(heal): demote per-object heal logs and cap erasure-set failure warns by @overtrue in https://github.com/rustfs/rustfs/pull/5727
- fix(quota): keep the degraded-baseline fallback off the write path's stack by @overtrue in https://github.com/rustfs/rustfs/pull/5728
- fix(ecstore): make inline-rollback reclamation file-precise to keep #5703's child-key safety by @overtrue in https://github.com/rustfs/rustfs/pull/5732
- fix(s3): degrade multipart listings per upload instead of failing the bucket by @overtrue in https://github.com/rustfs/rustfs/pull/5721
- fix(ecstore): make local disk map initialization replace stale topology by @overtrue in https://github.com/rustfs/rustfs/pull/5734
- test(ecstore): deflake multipart listing tests under plain cargo test by @overtrue in https://github.com/rustfs/rustfs/pull/5730
- refactor(ecstore): unify remaining heal logs to structured event style by @overtrue in https://github.com/rustfs/rustfs/pull/5720
- chore(deps): refresh mimalloc revision by @houseme in https://github.com/rustfs/rustfs/pull/5736
- ci(scripts): add s3s footprint ratchet ahead of s3gate migration by @overtrue in https://github.com/rustfs/rustfs/pull/5739
- fix(auth): restore filtered ListBuckets fallback by @overtrue in https://github.com/rustfs/rustfs/pull/5726
- feat(ci): add DEB/RPM packaging workflow by @majinghe in https://github.com/rustfs/rustfs/pull/5738
- fix: bump s3_error! footprint baseline to 1687 for auth ListBuckets fix by @overtrue in https://github.com/rustfs/rustfs/pull/5747
- fix(auth): route ListBuckets denial through ApiError to hold s3s ratchet by @reatang in https://github.com/rustfs/rustfs/pull/5755
- fix(site-replication): send peer join to MinIO peer/join route with encrypted payload by @reatang in https://github.com/rustfs/rustfs/pull/5748
- fix(madmin): accept MinIO PascalCase SRInfo fields and nil-map nulls by @reatang in https://github.com/rustfs/rustfs/pull/5749
- feat(table-catalog): complete namespace REST contracts by @marshawcoco in https://github.com/rustfs/rustfs/pull/5745
- fix(replication): send source versionId as query param to remote targets by @reatang in https://github.com/rustfs/rustfs/pull/5752
- fix(replication): accept remote target healthCheckDuration nanoseconds by @reatang in https://github.com/rustfs/rustfs/pull/5754
- fix(site-replication): use MinIO-compatible sts-account IAM item type by @reatang in https://github.com/rustfs/rustfs/pull/5750
- fix(table-catalog): route read_bounded_json_body errors through ApiError to hold s3s ratchet by @overtrue in https://github.com/rustfs/rustfs/pull/5759
- fix(replication): schedule replication for CopyObject and snowball extracted objects by @reatang in https://github.com/rustfs/rustfs/pull/5753
- fix(auth): log structured denial reasons for generic AccessDenied responses by @overtrue in https://github.com/rustfs/rustfs/pull/5761
- fix(ecstore): preserve checksums through write transforms by @anthonymartin in https://github.com/rustfs/rustfs/pull/5765
- perf: add RPC auth profiling diagnostics by @houseme in https://github.com/rustfs/rustfs/pull/5775
- obs: mirror log attributes into loki lines by @houseme in https://github.com/rustfs/rustfs/pull/5776
- fix(site-replication): translate policy mapping userType at MinIO wire boundary by @reatang in https://github.com/rustfs/rustfs/pull/5751
- fix(kms): report unreadable keys and bound list-keys page size by @overtrue in https://github.com/rustfs/rustfs/pull/5764
- test(admin): pin the KMS admin route contract as a snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5766
- fix(kms): hold the Local key directory and its files owner-only by @overtrue in https://github.com/rustfs/rustfs/pull/5768
- feat(table-catalog): validate Iceberg metadata graphs by @marshawcoco in https://github.com/rustfs/rustfs/pull/5758
- fix(replication): report remote target latency as Go duration nanoseconds by @reatang in https://github.com/rustfs/rustfs/pull/5771
- test(heal): cover partial rename retry admission by @cxymds in https://github.com/rustfs/rustfs/pull/5772
- fix(auth): align ListBuckets discovery with IAM policies by @GatewayJ in https://github.com/rustfs/rustfs/pull/5746
- fix(logging): bound hot-path span amplification by @anthonymartin in https://github.com/rustfs/rustfs/pull/5763
- feat(kms): report which keys have outlived their rotation period by @overtrue in https://github.com/rustfs/rustfs/pull/5769
- perf(metrics): count internode RPC auth failures by @houseme in https://github.com/rustfs/rustfs/pull/5777
- fix(capacity): back off timed-out scans by @anthonymartin in https://github.com/rustfs/rustfs/pull/5770
- feat(rpc): expose and auto-size replay cache capacity by @houseme in https://github.com/rustfs/rustfs/pull/5781
- fix(scanner): publish bounded observational usage by @anthonymartin in https://github.com/rustfs/rustfs/pull/5742
- fix(ecstore): heal partial ordinary puts by @cxymds in https://github.com/rustfs/rustfs/pull/5783
- fix(ci): ignore strings in s3s footprint ratchet by @cxymds in https://github.com/rustfs/rustfs/pull/5787
- fix(ecstore): bind multipart convergence heal versions by @cxymds in https://github.com/rustfs/rustfs/pull/5786
- fix(ecstore): parse ARN region and id in display order by @reatang in https://github.com/rustfs/rustfs/pull/5790
- fix(ecstore): fence data movement source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5794
- fix(replication): tolerate Go zero-value expiration and ignore latency in remote target requests by @reatang in https://github.com/rustfs/rustfs/pull/5789
- fix(rebalance): commit stats after source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5795
- fix(s3): resume in-flight GET streams after rebalance relocation by @deadspacewii in https://github.com/rustfs/rustfs/pull/5791
- ci: install awscurl for full e2e tests by @cxymds in https://github.com/rustfs/rustfs/pull/5796
- fix(capacity): stop background schedulers on shutdown by @cxymds in https://github.com/rustfs/rustfs/pull/5797
- fix(ecstore): preserve newer writes during data movement by @cxymds in https://github.com/rustfs/rustfs/pull/5798
- fix(ecstore): reject over-NAME_MAX key segments up front; classify irreconcilable parity as corrupt metadata by @overtrue in https://github.com/rustfs/rustfs/pull/5804
- fix(admin): stop logging STS AssumeRole JWT claims by @overtrue in https://github.com/rustfs/rustfs/pull/5802
- fix(replication): madmin reset/diff wire compat and config validation by @reatang in https://github.com/rustfs/rustfs/pull/5799
- ci(e2e): stabilize full-gate tooling by @cxymds in https://github.com/rustfs/rustfs/pull/5805
- perf(ecstore): memoize bucket-incarnation fence validation under lifecycle read-lock coverage by @overtrue in https://github.com/rustfs/rustfs/pull/5782
- perf(storage): skip read-version JSON for bin peers by @houseme in https://github.com/rustfs/rustfs/pull/5808
- fix(s3select): replace deprecated parquet reader by @houseme in https://github.com/rustfs/rustfs/pull/5811
- fix(scanner): retry a superseded usage snapshot in seconds, not a full cycle by @overtrue in https://github.com/rustfs/rustfs/pull/5814
- docs(runtime): document allocator reclaim runtime by @houseme in https://github.com/rustfs/rustfs/pull/5800
- fix(admin): serve the usage a scan measured instead of blanking the whole snapshot by @overtrue in https://github.com/rustfs/rustfs/pull/5818
- perf(utils): avoid metadata key lowercase allocation by @houseme in https://github.com/rustfs/rustfs/pull/5823
- perf(ecstore): cache modern erasure codec construction by @houseme in https://github.com/rustfs/rustfs/pull/5824
- fix(ecstore): enforce the NAME_MAX segment budget on the write path too by @overtrue in https://github.com/rustfs/rustfs/pull/5826
- fix(storage): reserve internal encryption prefixes in user metadata by @reatang in https://github.com/rustfs/rustfs/pull/5819
- refactor(kms): close the low-severity follow-ups from the #5668 adversarial re-review by @reatang in https://github.com/rustfs/rustfs/pull/5817
- fix(policy): support version ID condition keys by @cxymds in https://github.com/rustfs/rustfs/pull/5810
- feat(rpc): advertise cross-pool fence capability by @cxymds in https://github.com/rustfs/rustfs/pull/5809
- test(e2e): make scanner snapshot tests deterministic by @cxymds in https://github.com/rustfs/rustfs/pull/5812
- test(ecstore): stabilize free-version enqueue retry by @cxymds in https://github.com/rustfs/rustfs/pull/5813
- test(e2e): align backpressure assertion with recovery by @cxymds in https://github.com/rustfs/rustfs/pull/5815
- test(e2e): wait for authoritative quota usage by @cxymds in https://github.com/rustfs/rustfs/pull/5816
- fix(table-catalog): fix object kind validation by @kinolaev in https://github.com/rustfs/rustfs/pull/5784
- fix(rebalance): drain entry tasks before listing retry by @cxymds in https://github.com/rustfs/rustfs/pull/5820
- fix(rpc): skip batch read-version JSON for msgpack peers by @houseme in https://github.com/rustfs/rustfs/pull/5825
- docs(agents): make the structured-logging rule reachable and enforceable by @overtrue in https://github.com/rustfs/rustfs/pull/5828
- fix(ecstore): purge the stale destination data dir on healing rename_data commits by @terem42 in https://github.com/rustfs/rustfs/pull/5822
- fix(rebalance): defer changed source cleanup by @cxymds in https://github.com/rustfs/rustfs/pull/5829
- fix(ecstore): raise replay cache auto capacity by @houseme in https://github.com/rustfs/rustfs/pull/5833
- chore(release): bump version to 1.0.0-rc.1 by @overtrue in https://github.com/rustfs/rustfs/pull/5834
- @ccccpj made their first contribution in https://github.com/rustfs/rustfs/pull/5666
- @themiguelamador made their first contribution in https://github.com/rustfs/rustfs/pull/5670
- @rdiperri-wasabi made their first contribution in https://github.com/rustfs/rustfs/pull/5679
- @lqb made their first contribution in https://github.com/rustfs/rustfs/pull/5646
- @anthonymartin made their first contribution in https://github.com/rustfs/rustfs/pull/5719
- @deadspacewii made their first contribution in https://github.com/rustfs/rustfs/pull/5791
- @kinolaev made their first contribution in https://github.com/rustfs/rustfs/pull/5784
- @terem42 made their first contribution in https://github.com/rustfs/rustfs/pull/5822
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-beta.12...1.0.0-rc.1-preview.1