Server
RustFS server and GUI, a file system compatible with the S3 protocol.
1.0.0-alpha.90LatestPre-releaseReleased on 3/24/2026
What's Changed
- feat: Add --info command and refactor config module by @houseme in https://github.com/rustfs/rustfs/pull/2234
- feat(metrics): migrate system monitoring from rustfs-obs to rustfs-metrics by @heihutu in https://github.com/rustfs/rustfs/pull/2242
- fix(admin): avoid tier stats panic on missing tier by @cxymds in https://github.com/rustfs/rustfs/pull/2238
- feat(info): add --json flag for JSON output and markdown table format by default by @houseme in https://github.com/rustfs/rustfs/pull/2245
- build(deps): bump the dependencies group with 4 updates by @houseme in https://github.com/rustfs/rustfs/pull/2243
- fix(tracing): Fix distributed tracing context linking by @houseme in https://github.com/rustfs/rustfs/pull/2247
- fix(admin): accept IAM service account exports by @weisd in https://github.com/rustfs/rustfs/pull/2249
- fix(admin): console self password for STS sessions (#1923) by @GatewayJ in https://github.com/rustfs/rustfs/pull/2250
- chore(deps): update flake.lock by @heihutu in https://github.com/rustfs/rustfs/pull/2253
- fix(ecstore): invalidate xl.meta cache after writes and rename by @weisd in https://github.com/rustfs/rustfs/pull/2255
- fix(madmin): handle blank service-account expiration by @overtrue in https://github.com/rustfs/rustfs/pull/2254
- build(deps): bump the dependencies group with 3 updates by @heihutu in https://github.com/rustfs/rustfs/pull/2257
- fix(object): Fix concurrent request hang issue in S3 range read workloads by @houseme in https://github.com/rustfs/rustfs/pull/2251
- fix(ecstore): preserve raw metadata read semantics by @weisd in https://github.com/rustfs/rustfs/pull/2258
- fix(ecstore): repair lifecycle transition and restore flows by @cxymds in https://github.com/rustfs/rustfs/pull/2240
- perf(storage): optimize internode RPC transfer path by @weisd in https://github.com/rustfs/rustfs/pull/2262
- fix(admin): decode compat payload in set-remote-target by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/2216
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2259
- build(deps): bump zip from 8.3.1 to 8.4.0 in the dependencies group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2270
- refactor(docker): image grafana/tempo:2.10.3 by @heihutu in https://github.com/rustfs/rustfs/pull/2273
- fix(Helm): Remove duplicate imagePullSecrets block by @polds in https://github.com/rustfs/rustfs/pull/2260
- fix: CVE-2026-22184 fix in docker image by @majinghe in https://github.com/rustfs/rustfs/pull/2276
- feat(admin): add persisted OIDC config APIs by @cxymds in https://github.com/rustfs/rustfs/pull/2267
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.89...1.0.0-alpha.90
1.0.0-alpha.89Pre-releaseReleased on 3/19/2026
What's Changed
- fix(ecstore): keep bucket created time when metadata is epoch by @weisd in https://github.com/rustfs/rustfs/pull/2220
- fix: support legacy bucket metadata decoding by @weisd in https://github.com/rustfs/rustfs/pull/2227
- fix(iam): preserve trailing slash in OIDC issuer URL by @TrentHouliston in https://github.com/rustfs/rustfs/pull/2228
New Contributors
- @TrentHouliston made their first contribution in https://github.com/rustfs/rustfs/pull/2228
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.88...1.0.0-alpha.89
RustFS 1.0.0-alpha.88 (alpha)Pre-releaseReleased on 3/18/2026
fix(ecstore): support legacy pool meta decoding (#2218)
Co-authored-by: momoda693 momoda693@gmail.com
1.0.0-alpha.87Pre-releaseReleased on 3/18/2026
What's Changed
- chore: update nix-flake-update.yml to use FLAKE_UPDATE_TOKEN for user… by @houseme in https://github.com/rustfs/rustfs/pull/2168
- chore(deps): update flake.lock by @heihutu in https://github.com/rustfs/rustfs/pull/2169
- feat(ci): allow selecting build platforms in build workflow by @overtrue in https://github.com/rustfs/rustfs/pull/2171
- chore(deps): update flake.lock by @heihutu in https://github.com/rustfs/rustfs/pull/2173
- feat(obs): add init_obs_with_config API and signature guard test by @houseme in https://github.com/rustfs/rustfs/pull/2175
- build(deps): bump lz4_flex from 0.12.0 to 0.12.1 by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2181
- fix(lifecycle): respect Filter.Prefix and safe delete marker expiry by @cxymds in https://github.com/rustfs/rustfs/pull/2185
- chore(skills): add repository-local workflow skills by @overtrue in https://github.com/rustfs/rustfs/pull/2190
- fix(notify): Fix XML Filter parsing and add comprehensive tests by @houseme in https://github.com/rustfs/rustfs/pull/2191
- fix(targets): pass credentials to MQTT broker availability check by @houseme in https://github.com/rustfs/rustfs/pull/2192
- build(deps): bump astral-tokio-tar from 0.5.6 to 0.6.0 by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2196
- feat(rustfs): add optional license gating feature by @overtrue in https://github.com/rustfs/rustfs/pull/2197
- fix(ecstore): handle EODM rules without due date by @overtrue in https://github.com/rustfs/rustfs/pull/2198
- test(lifecycle): add prefix regression and zero-day checks by @cxymds in https://github.com/rustfs/rustfs/pull/2201
- fix(admin): avoid unbounded metrics sampling by default by @cxymds in https://github.com/rustfs/rustfs/pull/2203
- feat: improve legacy metadata and admin compatibility by @weisd in https://github.com/rustfs/rustfs/pull/2202
- fix(ci): revert docker alpha latest tag by @overtrue in https://github.com/rustfs/rustfs/pull/2209
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.86...1.0.0-alpha.87
1.0.0-alpha.86Pre-releaseReleased on 3/15/2026
What's Changed
- feat(obs): Optional continuous CPU profiling with grafana pyroscope by @evanofslack in https://github.com/rustfs/rustfs/pull/2035
- build(obs): restrict pyroscope dependency to unix targets by @houseme in https://github.com/rustfs/rustfs/pull/2064
- ci: optimize workflow runtime and remove redundant pipeline work by @overtrue in https://github.com/rustfs/rustfs/pull/2065
- build(deps): bump the dependencies group with 7 updates by @houseme in https://github.com/rustfs/rustfs/pull/2069
- update s3s 0.14.0-dev by @reatang in https://github.com/rustfs/rustfs/pull/2070
- chore: update dependencies and workspace resolver by @houseme in https://github.com/rustfs/rustfs/pull/2073
- Fix data usage cache and scanner by @weisd in https://github.com/rustfs/rustfs/pull/2074
- fix(admin): allow non-consoleAdmin self password update by @overtrue in https://github.com/rustfs/rustfs/pull/2082
- fix(heal):heal failed replication via must_replicate instead of check replicate_delete by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/2072
- docs: scope AGENTS instructions by directory by @overtrue in https://github.com/rustfs/rustfs/pull/2083
- chore(obs): Improve tracing instrumentation by @evanofslack in https://github.com/rustfs/rustfs/pull/2086
- fix(obs): Remove high cardinality label on rustfs_api_requests_total by @evanofslack in https://github.com/rustfs/rustfs/pull/2087
- Add OpenStack Swift API Support by @senolcolak in https://github.com/rustfs/rustfs/pull/2066
- feat(obs): Add metric to count all s3 operations by @evanofslack in https://github.com/rustfs/rustfs/pull/2088
- chore(deps): update flake.lock by @github-actions[bot] in https://github.com/rustfs/rustfs/pull/2097
- fix(metrics): Remove high cardinality labels causing memory leak by @hamiltop in https://github.com/rustfs/rustfs/pull/2098
- refactor(protocols): replace tar with astral-tokio-tar for async processing by @houseme in https://github.com/rustfs/rustfs/pull/2099
- feat(storage): integrate S3Operation into OperationHelper for unified metrics and audit by @houseme in https://github.com/rustfs/rustfs/pull/2103
- fix(iam): sync user cache on load-user notifications by @overtrue in https://github.com/rustfs/rustfs/pull/2104
- build(deps): bump libc from 0.2.182 to 0.2.183 in the dependencies group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2106
- feat:add docker image support for quay.io and ghcr.io by @majinghe in https://github.com/rustfs/rustfs/pull/2107
- fix: allow root to bypass bucket policy deny for policy management APIs by @GatewayJ in https://github.com/rustfs/rustfs/pull/2102
- change ghcr username and password name due to github restrict by @majinghe in https://github.com/rustfs/rustfs/pull/2108
- feat: add metrics support in helm chart by @majinghe in https://github.com/rustfs/rustfs/pull/2109
- feat(scanner): Add dynamic throttling presets by @evanofslack in https://github.com/rustfs/rustfs/pull/2095
- fix(server): init event notifier when partial notify configured by @overtrue in https://github.com/rustfs/rustfs/pull/2125
- fix(notify): ignore disabled targets when sending events by @overtrue in https://github.com/rustfs/rustfs/pull/2117
- fix(obs): avoid panic in telemetry init and clamp sampler boundaries by @overtrue in https://github.com/rustfs/rustfs/pull/2118
- build(deps): bump quinn-proto from 0.11.13 to 0.11.14 by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2127
- fix: resolve silent failure in MQTT bucket event notifications by @simon-escapecode in https://github.com/rustfs/rustfs/pull/2112
- feat(perf): Add configurable bitrot skip for reads by @evanofslack in https://github.com/rustfs/rustfs/pull/2110
- fix(protocols): return errors instead of panics for sync signatures by @overtrue in https://github.com/rustfs/rustfs/pull/2120
- fix(utils): harden panic-prone paths by @overtrue in https://github.com/rustfs/rustfs/pull/2113
- fix(credentials): harden masked debug output by @overtrue in https://github.com/rustfs/rustfs/pull/2114
- fix(common): remove panic paths in runtime helpers by @overtrue in https://github.com/rustfs/rustfs/pull/2116
- [codex] fix scanner first cycle startup delay by @overtrue in https://github.com/rustfs/rustfs/pull/2137
- fix(policy): avoid unicode panic in variable resolver by @overtrue in https://github.com/rustfs/rustfs/pull/2115
- fix(scanner): respect configured scan start delay by @overtrue in https://github.com/rustfs/rustfs/pull/2119
- fix(signer): avoid panics in v2 signing for missing data by @overtrue in https://github.com/rustfs/rustfs/pull/2121
- fix(workers): clamp worker release count by @overtrue in https://github.com/rustfs/rustfs/pull/2122
- fix(auth): preserve IAMAuth clone and correct missing-key error by @overtrue in https://github.com/rustfs/rustfs/pull/2123
- refactor(config): normalize scanner env naming by @overtrue in https://github.com/rustfs/rustfs/pull/2129
- fix(admin): propagate heal handler background errors by @overtrue in https://github.com/rustfs/rustfs/pull/2124
- fix(helm): use canonical scanner start delay env by @overtrue in https://github.com/rustfs/rustfs/pull/2142
- fix(ecstore): avoid warm tier init panics by @overtrue in https://github.com/rustfs/rustfs/pull/2144
- feat(ecstore): Skip rustls provider install if already present by @houseme in https://github.com/rustfs/rustfs/pull/2145
- refactor(obs): optimize logging with custom RollingAppender and improved cleanup by @houseme in https://github.com/rustfs/rustfs/pull/2151
- refactor(obs): enhance log rotation robustness and refine filter logic by @houseme in https://github.com/rustfs/rustfs/pull/2155
- docs: fix incorrect UID in Docker Quick Start of README_ZH by @bcdax110 in https://github.com/rustfs/rustfs/pull/2149
- fix(obs): honor target-only rust_log directives by @overtrue in https://github.com/rustfs/rustfs/pull/2159
- feat: add support for obs enpoint support in helm chart by @majinghe in https://github.com/rustfs/rustfs/pull/2160
- fix: fix github action error caused by oltp modification by @majinghe in https://github.com/rustfs/rustfs/pull/2163
- feat(webdav): add WebDAV protocol gateway by @yxrxy in https://github.com/rustfs/rustfs/pull/2158
- fix(obs): fixed unresolved import by @houseme in https://github.com/rustfs/rustfs/pull/2164
super::local::ensure_dir_permissions - feat(replication): add bandwidth-aware reporting for bucket replication metrics by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/2141
- fix(helm): merge customAnnotations with class-specific ingress annotations by @PhilipSchmid in https://github.com/rustfs/rustfs/pull/2161
- fix(helm): quote obs stdout configmap value by @overtrue in https://github.com/rustfs/rustfs/pull/2166
- chore(deps): update flake.lock by @github-actions[bot] in https://github.com/rustfs/rustfs/pull/2165
New Contributors
- @hamiltop made their first contribution in https://github.com/rustfs/rustfs/pull/2098
- @simon-escapecode made their first contribution in https://github.com/rustfs/rustfs/pull/2112
- @bcdax110 made their first contribution in https://github.com/rustfs/rustfs/pull/2149
- @PhilipSchmid made their first contribution in https://github.com/rustfs/rustfs/pull/2161
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.85...1.0.0-alpha.86
1.0.0-alpha.85Pre-releaseReleased on 3/2/2026
What's Changed
- feat(s3): return 409 BucketAlreadyExists when non-owner creates existing bucket by @overtrue in https://github.com/rustfs/rustfs/pull/2034
- fix(s3): allow anonymous access when PublicAccessBlock config is miss… by @GatewayJ in https://github.com/rustfs/rustfs/pull/2039
- build(deps): bump datafusion from 52.1.0 to 52.2.0 in the dependencies group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/2037
- fix(ecstore): add etag fallback when mod_time unavailable in metadata by @weisd in https://github.com/rustfs/rustfs/pull/2042
- fix(iam): user group policy and delete group (fixes #2028) by @GatewayJ in https://github.com/rustfs/rustfs/pull/2043
- Add env variable alias compatibility warnings by @overtrue in https://github.com/rustfs/rustfs/pull/2044
- fix: support query-only presigned URL access by @overtrue in https://github.com/rustfs/rustfs/pull/2046
- refactor(obs): enhance log cleanup and rotation by @houseme in https://github.com/rustfs/rustfs/pull/2040
- fix(iam): remove incorrect trailing slash from OIDC issuer URL by @RafaelHerrero in https://github.com/rustfs/rustfs/pull/2050
- remove rustflags target cpu by @houseme in https://github.com/rustfs/rustfs/pull/2052
- fix(sse): allow PUT/GET without KMS when no SSE or bucket default by @reatang in https://github.com/rustfs/rustfs/pull/2054
- fix sse-options by @reatang in https://github.com/rustfs/rustfs/pull/2056
- fix: restore default CORS fallback and STS object ACL ownership by @overtrue in https://github.com/rustfs/rustfs/pull/2053
New Contributors
- @RafaelHerrero made their first contribution in https://github.com/rustfs/rustfs/pull/2050
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.84...1.0.0-alpha.85
1.0.0-alpha.84Pre-releaseReleased on 3/1/2026
What's Changed
- refactor(admin): extract health check handler module by @overtrue in https://github.com/rustfs/rustfs/pull/1777
- tool(agents): AGENTS.md instructs to respond in english, not chinese by @evanofslack in https://github.com/rustfs/rustfs/pull/1775
- refactor(admin): split remaining handlers into modules by @overtrue in https://github.com/rustfs/rustfs/pull/1782
- refactor(admin): modularize handlers and route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1787
- refactor(admin): move route registration into handler modules by @overtrue in https://github.com/rustfs/rustfs/pull/1789
- refactor(admin): move accountinfo route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1790
- fix: restore s3 compatibility regressions and CI coverage by @overtrue in https://github.com/rustfs/rustfs/pull/1793
- refactor(admin): extract user IAM route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1794
- refactor(admin): extract user lifecycle route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1795
- refactor(admin): extract user policy binding route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1796
- refactor(admin): move kms dynamic route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1798
- refactor(admin): move kms key route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1799
- refactor(admin): extract kms management route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1801
- fix: improve IAM and quota authorization by @yxrxy in https://github.com/rustfs/rustfs/pull/1781
- fix(helm): add {{ .Release.Namespace }} for kustomize v5.8 compat, closes #1808 by @shadow1runner in https://github.com/rustfs/rustfs/pull/1809
- refactor(storage): add s3_api facade and extract read helper by @overtrue in https://github.com/rustfs/rustfs/pull/1803
- fix(iam): STS parent groups fallback and session policy debug for #1423 by @GatewayJ in https://github.com/rustfs/rustfs/pull/1804
- refactor(storage): extract list_objects v1 response builder by @overtrue in https://github.com/rustfs/rustfs/pull/1810
- refactor(storage): extract ListObjectsV2 response assembly helper by @overtrue in https://github.com/rustfs/rustfs/pull/1811
- refactor(storage): extract ListParts response assembly helper by @overtrue in https://github.com/rustfs/rustfs/pull/1812
- refactor(storage): extract ListMultipartUploads response builder by @overtrue in https://github.com/rustfs/rustfs/pull/1815
- refactor(storage): extract list_parts parameter parsing by @overtrue in https://github.com/rustfs/rustfs/pull/1816
- refactor(storage): centralize S3 response/error helpers by @overtrue in https://github.com/rustfs/rustfs/pull/1818
- feat(observability): Add additional metric panels to grafana dashboard by @evanofslack in https://github.com/rustfs/rustfs/pull/1778
- build(deps): bump the dependencies group with 16 updates by @houseme in https://github.com/rustfs/rustfs/pull/1820
- ci: optimize and translate nix workflow by @houseme in https://github.com/rustfs/rustfs/pull/1821
- ci(Flake): optimize nix-flake-update workflow by @houseme in https://github.com/rustfs/rustfs/pull/1827
- fix(admin): return 503 when health deps are not ready by @yash27-lab in https://github.com/rustfs/rustfs/pull/1824
- refactor(storage): extract multipart list param parser by @overtrue in https://github.com/rustfs/rustfs/pull/1817
- refactor(storage): extract list object versions helpers by @overtrue in https://github.com/rustfs/rustfs/pull/1830
- refactor(storage): extract ListObjectsV2 parameter parsing by @overtrue in https://github.com/rustfs/rustfs/pull/1831
- refactor(storage): use named params for ListObjectVersions by @overtrue in https://github.com/rustfs/rustfs/pull/1832
- logging(disks): Propogate storage disk init error, improve logging by @evanofslack in https://github.com/rustfs/rustfs/pull/1825
- feat: add existing pvc claim for standalone by @majinghe in https://github.com/rustfs/rustfs/pull/1829
- fix: gateway api listener name hardcode issue by @majinghe in https://github.com/rustfs/rustfs/pull/1834
- feat(config): allow specifying keys via files (key files) by @JasmineLowen in https://github.com/rustfs/rustfs/pull/1814
- chore(deps): update flake.lock by @heihutu in https://github.com/rustfs/rustfs/pull/1835
- chore(deps): bump zip from 7.4.0 to 8.0.0 by @houseme in https://github.com/rustfs/rustfs/pull/1837
- chore(nix): update flake lock & fix devshell+package by @JasmineLowen in https://github.com/rustfs/rustfs/pull/1805
- metrics(scanner): Add metrics to scanner by @evanofslack in https://github.com/rustfs/rustfs/pull/1823
- fix(compress): downgrade non-compressible log level and expand excluded file types by @reatang in https://github.com/rustfs/rustfs/pull/1780
- build(deps): bump the dependencies group with 5 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1845
- refactor(storage): use named params for multipart list APIs by @overtrue in https://github.com/rustfs/rustfs/pull/1833
- perf(read): Remove unecessary allocation in read_xl_meta_no_data by @evanofslack in https://github.com/rustfs/rustfs/pull/1846
- fix: remove duplicate common prefixes for slash delimiter (#1797) by @loverustfs in https://github.com/rustfs/rustfs/pull/1841
- obs(export): Add env vars to selectivly disable exporting traces/metrics/logs by @evanofslack in https://github.com/rustfs/rustfs/pull/1853
- perf(metrics): Cache metric handles instead of creating each call by @evanofslack in https://github.com/rustfs/rustfs/pull/1852
- perf(obs): optimize metrics recorder and telemetry initialization by @houseme in https://github.com/rustfs/rustfs/pull/1859
- fix(helm): apply traefikAnnotations and gate TLS secret on certManager.enabled by @Rohmilchkaese in https://github.com/rustfs/rustfs/pull/1864
- Increase ACCESS_KEY_MAX_LEN to 128 by @micafer in https://github.com/rustfs/rustfs/pull/1870
- fix:correctly handle replicate delete by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1850
- refactor(storage): extract ListBuckets response assembly by @overtrue in https://github.com/rustfs/rustfs/pull/1879
- refactor(storage): extract ACL response builders into s3_api by @overtrue in https://github.com/rustfs/rustfs/pull/1880
- Feature/deployment probe override by @capitansec in https://github.com/rustfs/rustfs/pull/1876
- fix: remove deprecated darwin.apple_sdk references from flake.nix by @etak64n in https://github.com/rustfs/rustfs/pull/1884
- fix: uncompress -> compress by @cuiweixie in https://github.com/rustfs/rustfs/pull/1855
- fix(ecstore): invalidate GlobalFileCache after write_all_private to fix DeleteMarker visibility by @loverustfs in https://github.com/rustfs/rustfs/pull/1890
- Fix/x86 64 compat drop target cpu native by @loverustfs in https://github.com/rustfs/rustfs/pull/1895
- fix(replication): replicate delete all versions to targets by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1898
- fix(startup): Only monitor disk health after format loading by @evanofslack in https://github.com/rustfs/rustfs/pull/1854
- chore(deps): update flake.lock by @github-actions[bot] in https://github.com/rustfs/rustfs/pull/1905
- refactor(storage): extract tagging helpers from ecfs by @overtrue in https://github.com/rustfs/rustfs/pull/1881
- refactor(storage): extract object-lock response builders from ecfs by @overtrue in https://github.com/rustfs/rustfs/pull/1906
- refactor(app): add application layer module entry by @overtrue in https://github.com/rustfs/rustfs/pull/1907
- refactor(app): add AppContext skeleton wiring by @overtrue in https://github.com/rustfs/rustfs/pull/1909
- refactor(app): route put/get/listv2 through usecases by @overtrue in https://github.com/rustfs/rustfs/pull/1910
- refactor(app): migrate copy/delete/head object flows by @overtrue in https://github.com/rustfs/rustfs/pull/1911
- refactor(app): migrate create/delete/head bucket flows by @overtrue in https://github.com/rustfs/rustfs/pull/1913
- refactor(app): migrate bucket sub-operation flows by @overtrue in https://github.com/rustfs/rustfs/pull/1914
- refactor: migrate multipart orchestration to usecase by @overtrue in https://github.com/rustfs/rustfs/pull/1915
- refactor(app): migrate restore/select and admin info orchestration by @overtrue in https://github.com/rustfs/rustfs/pull/1917
- build(deps): bump the dependencies group with 15 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1912
- refactor(app): migrate bucket config flows to usecase by @overtrue in https://github.com/rustfs/rustfs/pull/1919
- refactor(app): migrate object ACL/tagging flows to usecase by @overtrue in https://github.com/rustfs/rustfs/pull/1921
- refactor(app): migrate object lock and attributes flows to usecase by @overtrue in https://github.com/rustfs/rustfs/pull/1922
- refactor(app): migrate bucket ACL/location/list-buckets orchestration by @overtrue in https://github.com/rustfs/rustfs/pull/1924
- fix: policy-action-1903 by @cxymds in https://github.com/rustfs/rustfs/pull/1927
- test: add regression coverage for access action mapping by @overtrue in https://github.com/rustfs/rustfs/pull/1928
- feat(admin): implement handler for delete group by @black-dragon74 in https://github.com/rustfs/rustfs/pull/1901
- feat(replication):add replication bandwidth throttle monitor and reader by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1885
- feat(s3select): add JSON handling and flattening for EcObjectStore by @0xdx2 in https://github.com/rustfs/rustfs/pull/1930
- refactor(app): migrate multipart list and copy-part orchestration by @overtrue in https://github.com/rustfs/rustfs/pull/1932
- refactor(app): migrate delete-objects and listing orchestration by @overtrue in https://github.com/rustfs/rustfs/pull/1933
- rustfs#1916 Allow existing secrets to be used for tls certs in ingress by @mkrueger92 in https://github.com/rustfs/rustfs/pull/1918
- fix(ftps): Fix basename extraction and implement recursive delete by @yxrxy in https://github.com/rustfs/rustfs/pull/1920
- [codex] Refactor P1-07: slim KMS handler ownership by @overtrue in https://github.com/rustfs/rustfs/pull/1935
- test(admin): cover kms list-keys route registration by @overtrue in https://github.com/rustfs/rustfs/pull/1936
- refactor(storage): extract remaining s3_api response builders by @overtrue in https://github.com/rustfs/rustfs/pull/1937
- refactor(ecstore): split store_api into focused modules by @overtrue in https://github.com/rustfs/rustfs/pull/1938
- refactor(storage): split tonic_service into rpc modules by @overtrue in https://github.com/rustfs/rustfs/pull/1939
- refactor(ecstore): split store.rs into store submodules by @overtrue in https://github.com/rustfs/rustfs/pull/1942
- refactor(ecstore): split set_disk.rs into submodules by @overtrue in https://github.com/rustfs/rustfs/pull/1945
- refactor(filemeta): split filemeta into focused submodules by @overtrue in https://github.com/rustfs/rustfs/pull/1946
- refactor(app): add iam and notify interface boundaries by @overtrue in https://github.com/rustfs/rustfs/pull/1948
- feat: admin permission check by @GatewayJ in https://github.com/rustfs/rustfs/pull/1783
- fix: restore SSE baseline on latest main by @overtrue in https://github.com/rustfs/rustfs/pull/1951
- refactor(app): route metadata/endpoints access through AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1949
- fix: add liveness and readiness probe by @majinghe in https://github.com/rustfs/rustfs/pull/1953
- refactor(app): route admin/object globals through AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1954
- build(deps): bump the dependencies group with 4 updates by @houseme in https://github.com/rustfs/rustfs/pull/1955
- refactor(app): remove multipart metadata global fallback by @overtrue in https://github.com/rustfs/rustfs/pull/1957
- refactor(app): converge lower-priority global reads via AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1958
- refactor(admin): route tier config manager through AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1959
- refactor(server): route config access through AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1960
- refactor(storage): converge put-object quota metadata context by @overtrue in https://github.com/rustfs/rustfs/pull/1963
- refactor(app): route buffer config through AppContext by @overtrue in https://github.com/rustfs/rustfs/pull/1964
- refactor(admin): route kms handlers via app context by @overtrue in https://github.com/rustfs/rustfs/pull/1965
- fix(typo): change dang_ling to dangling by @evanofslack in https://github.com/rustfs/rustfs/pull/1968
- refactor(admin): route kms handlers through app context by @overtrue in https://github.com/rustfs/rustfs/pull/1967
- feat(iam): add OpenID Connect SSO with claim-based policy resolution by @jpoegs in https://github.com/rustfs/rustfs/pull/1875
- fix(iam): address PR 1875 review issues for OIDC STS flows by @overtrue in https://github.com/rustfs/rustfs/pull/1969
- refactor(app): decouple AppContext adapters from GLOBAL statics by @overtrue in https://github.com/rustfs/rustfs/pull/1970
- refactor(admin): move KMS management handlers by @overtrue in https://github.com/rustfs/rustfs/pull/1971
- refactor(rpc): use node name accessor in health handlers by @overtrue in https://github.com/rustfs/rustfs/pull/1972
- refactor(app): centralize context resolvers for admin/server paths by @overtrue in https://github.com/rustfs/rustfs/pull/1975
- refactor(ci): add layered dependency guard baseline by @overtrue in https://github.com/rustfs/rustfs/pull/1977
- refactor(app): remove remaining global access in main init by @overtrue in https://github.com/rustfs/rustfs/pull/1978
- refactor(app): complete phase 5 gate and equivalence guards by @overtrue in https://github.com/rustfs/rustfs/pull/1979
- build: update docker config and refine s3s region handling by @heihutu in https://github.com/rustfs/rustfs/pull/1976
- refactor region parsing by @heihutu in https://github.com/rustfs/rustfs/pull/1981
- fix(replication): handle TLS CA trust and force-delete replication edge cases by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1983
- refactor(app): remove dead objects/ code and migrate put_object_extract to usecase layer by @overtrue in https://github.com/rustfs/rustfs/pull/1980
- fix(ecstore): adjust unformatted disk error mapping by @weisd in https://github.com/rustfs/rustfs/pull/1988
- chore(heal): remove unused global response broadcast by @weisd in https://github.com/rustfs/rustfs/pull/1991
- feat(config): refine defaults and improve region handling by @houseme in https://github.com/rustfs/rustfs/pull/1990
- refactor: stabilize heal format recovery integration tests by @overtrue in https://github.com/rustfs/rustfs/pull/1984
- fix(dashboard): Rename grafana dashboard rustfs.yaml -> rustfs.json by @evanofslack in https://github.com/rustfs/rustfs/pull/1987
- feat(targets): enhance webhook TLS support with custom CA and skip-verify by @houseme in https://github.com/rustfs/rustfs/pull/1994
- Openstack Keystone integration - v1 keeps the same mechanism as by @senolcolak in https://github.com/rustfs/rustfs/pull/1961
- feat: policy add object tag by @GatewayJ in https://github.com/rustfs/rustfs/pull/1908
- fix(scanner): skip recent IO-error objects by @LoganZ2 in https://github.com/rustfs/rustfs/pull/1860
- perf(lock): Use global lock manager, instead of one per request by @evanofslack in https://github.com/rustfs/rustfs/pull/1848
- fix(ecstore): allow trailing slash in object names to match S3 behavior by @brayanjuls in https://github.com/rustfs/rustfs/pull/1996
- refactor: improve code quality with safer error handling, trait decomposition, and dead code cleanup by @overtrue in https://github.com/rustfs/rustfs/pull/1997
- fix(s3): return proper HTTP 400 for SSE-C validation errors by @overtrue in https://github.com/rustfs/rustfs/pull/1998
- build(deps): bump the dependencies group with 4 updates by @houseme in https://github.com/rustfs/rustfs/pull/2001
- fix(s3): normalize GetObjectAttributes ETag XML response by @overtrue in https://github.com/rustfs/rustfs/pull/2002
- fix(ecstore): set expiration header for put object via lifecycle prediction by @overtrue in https://github.com/rustfs/rustfs/pull/2003
- Update logo image link in README.md by @overtrue in https://github.com/rustfs/rustfs/pull/2004
- Fix: validate SSE headers in object read/write paths by @overtrue in https://github.com/rustfs/rustfs/pull/2005
- fix: avoid region fallback panic paths by @overtrue in https://github.com/rustfs/rustfs/pull/2006
- fix(s3): reject SSE-C with partial headers per S3 spec by @overtrue in https://github.com/rustfs/rustfs/pull/2007
- fix(s3): reject invalid SSE algorithm (aes:kms) in PutObject by @overtrue in https://github.com/rustfs/rustfs/pull/2008
- fix: implement handling for "aws-chunked" Content-Encoding by @reatang in https://github.com/rustfs/rustfs/pull/2009
- chore(s3-tests): promote 42 passing tests to implemented list by @overtrue in https://github.com/rustfs/rustfs/pull/2011
- fix(s3): improve S3 API compatibility for versioning, SSE, and policy by @overtrue in https://github.com/rustfs/rustfs/pull/2013
- fix(obs): Update observability docker compose stack by @evanofslack in https://github.com/rustfs/rustfs/pull/2010
- fix: policy StringNotEquals double negation and delete_objects version mapping by @overtrue in https://github.com/rustfs/rustfs/pull/2015
- feat(obs): add advanced log management configuration by @heihutu in https://github.com/rustfs/rustfs/pull/2016
- feat(policy): add Service principal, ArnLike/IfExists conditions, and logging error ordering by @overtrue in https://github.com/rustfs/rustfs/pull/2018
- build(deps): bump the dependencies group with 2 updates by @heihutu in https://github.com/rustfs/rustfs/pull/2017
- fix(policy): address review feedback from #2018 by @overtrue in https://github.com/rustfs/rustfs/pull/2021
- chore(deps): update flake.lock by @github-actions[bot] in https://github.com/rustfs/rustfs/pull/2020
- test(s3): promote 145 passing tests to implemented list by @overtrue in https://github.com/rustfs/rustfs/pull/2023
- Bump Helm Chart version to 0.0.83 and appVersion to 1.0.0-alpha.83 by @smiggiddy in https://github.com/rustfs/rustfs/pull/2019
- fix(s3): allow Object Lock on versioned buckets and reject invalid checksums by @overtrue in https://github.com/rustfs/rustfs/pull/2024
- fix(s3): implement S3-compliant CORS and bucket existence checks by @overtrue in https://github.com/rustfs/rustfs/pull/2026
- fix(s3): return InvalidRange when CopySourceRange exceeds source object size by @overtrue in https://github.com/rustfs/rustfs/pull/2029
- fix(s3): add x-amz-grant-* headers to policy condition values by @overtrue in https://github.com/rustfs/rustfs/pull/2031
- Optimize log cleanup and rotation, update dependencies by @houseme in https://github.com/rustfs/rustfs/pull/2032
- feat(s3): enforce RestrictPublicBuckets for anonymous access by @overtrue in https://github.com/rustfs/rustfs/pull/2033
New Contributors
- @shadow1runner made their first contribution in https://github.com/rustfs/rustfs/pull/1809
- @yash27-lab made their first contribution in https://github.com/rustfs/rustfs/pull/1824
- @JasmineLowen made their first contribution in https://github.com/rustfs/rustfs/pull/1814
- @Rohmilchkaese made their first contribution in https://github.com/rustfs/rustfs/pull/1864
- @micafer made their first contribution in https://github.com/rustfs/rustfs/pull/1870
- @capitansec made their first contribution in https://github.com/rustfs/rustfs/pull/1876
- @etak64n made their first contribution in https://github.com/rustfs/rustfs/pull/1884
- @cuiweixie made their first contribution in https://github.com/rustfs/rustfs/pull/1855
- @github-actions[bot] made their first contribution in https://github.com/rustfs/rustfs/pull/1905
- @cxymds made their first contribution in https://github.com/rustfs/rustfs/pull/1927
- @black-dragon74 made their first contribution in https://github.com/rustfs/rustfs/pull/1901
- @jpoegs made their first contribution in https://github.com/rustfs/rustfs/pull/1875
- @senolcolak made their first contribution in https://github.com/rustfs/rustfs/pull/1961
- @brayanjuls made their first contribution in https://github.com/rustfs/rustfs/pull/1996
- @smiggiddy made their first contribution in https://github.com/rustfs/rustfs/pull/2019
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.83...1.0.0-alpha.84
1.0.0-alpha.83Pre-releaseReleased on 2/11/2026
What's Changed
- feat(profiling): support cross-platform memory profiling with mimalloc and pprof by @houseme in https://github.com/rustfs/rustfs/pull/1674
- fix: init container security hardened for operation permission error by @majinghe in https://github.com/rustfs/rustfs/pull/1680
- fix: add gatewayApi.enabled check to TraefikService template by @moechs in https://github.com/rustfs/rustfs/pull/1679
- fix(lifecycle): lifecycle fixes by @likewu in https://github.com/rustfs/rustfs/pull/1625
- fix(pprof): Fixed the problem that crate does not support the window platform by @houseme in https://github.com/rustfs/rustfs/pull/1681
pprof - Revert "fix: resolve Issue #1465 - IAM credential change crash (#1535)" by @yxrxy in https://github.com/rustfs/rustfs/pull/1685
- Fix/correctly handle terraform s3 backend with versioned bucket by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1686
- fix: Fixed that returns normal value by @houseme in https://github.com/rustfs/rustfs/pull/1695
account_id - Refactor trusted-proxies: modernize utils, improve safety, and fix clippy lints by @houseme in https://github.com/rustfs/rustfs/pull/1693
- feat: add obs log rotations environment variables by @majinghe in https://github.com/rustfs/rustfs/pull/1702
- fix: object lock compliance mode allows deletion by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1687
- feat: add glibc based docker image support by @majinghe in https://github.com/rustfs/rustfs/pull/1705
- build(deps): bump bytes from 1.11.0 to 1.11.1 by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1711
- fix: return null versionId when suspended (#1066) by @loverustfs in https://github.com/rustfs/rustfs/pull/1709
- fix: replication delete by @weisd in https://github.com/rustfs/rustfs/pull/1714
- Refactor: refactor SSE layer and KMS subsystem by @reatang in https://github.com/rustfs/rustfs/pull/1703
- enhancement: add support for http to https redirect for traefik gatew… by @majinghe in https://github.com/rustfs/rustfs/pull/1712
- Fix/fix issues #1564 by @houseme in https://github.com/rustfs/rustfs/pull/1708
- fix: bucket policy id field serde by @GatewayJ in https://github.com/rustfs/rustfs/pull/1726
- feat: add contour as ingress controller with http proxy by @majinghe in https://github.com/rustfs/rustfs/pull/1729
- fix: fetch_owner set to true when calling list_objects_v2 in the list_objects function by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1730
- test(e2e_test): add automated cluster environment for conditional PUT race test by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1673
- feat: migrate FTP/SFTP to protocols crate and update dependencies by @yxrxy in https://github.com/rustfs/rustfs/pull/1580
- Propogate tracing context from HTTP requests into spans by @StratusFearMe21 in https://github.com/rustfs/rustfs/pull/1739
- build(deps): bump the dependencies group with 19 updates by @houseme in https://github.com/rustfs/rustfs/pull/1745
- fix: persist replication status and timestamp after replicate_object by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1747
- feat: add support for mtls with kubernetes installation by @majinghe in https://github.com/rustfs/rustfs/pull/1741
- perf(quota): Skip expensive usage checks when no quota configured by @thorntonmc in https://github.com/rustfs/rustfs/pull/1749
- perf(regex): Compile bucket validation regex once by @evanofslack in https://github.com/rustfs/rustfs/pull/1753
- build(deps): bump the dependencies group with 5 updates by @houseme in https://github.com/rustfs/rustfs/pull/1755
- build(deps): bump libunftp from 0.21.0 to 0.22.0 in the dependencies group across 1 directory by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1756
- fix(replication): avoid re-replication loop in Active-Active replication by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1751
- perf(scanner): Change DataUseageEntry from clone to borrow by @evanofslack in https://github.com/rustfs/rustfs/pull/1757
- fix: stabilize head metadata responses and heal tests by @LoganZ2 in https://github.com/rustfs/rustfs/pull/1732
- fix: improve part size calculation in optimal_part_info function by @mengyu-sxyz in https://github.com/rustfs/rustfs/pull/1532
- fix: Allow non-admin users to read bucket quota configuration. by @yxrxy in https://github.com/rustfs/rustfs/pull/1759
- fix(entrypoint): remove dead HTTP URL check in volume filtering by @amdadulbari in https://github.com/rustfs/rustfs/pull/1761
- feat(metrics): async collection with configurable intervals & graceful shutdown by @houseme in https://github.com/rustfs/rustfs/pull/1768
- Fix/resolve pr 1710 by @Tyooughtul in https://github.com/rustfs/rustfs/pull/1743
- build(deps): bump the dependencies group with 2+ updates by @heihutu in https://github.com/rustfs/rustfs/pull/1769
- feat(observability): Add grafana dashboard, observability changes by @evanofslack in https://github.com/rustfs/rustfs/pull/1770
New Contributors
- @moechs made their first contribution in https://github.com/rustfs/rustfs/pull/1679
- @StratusFearMe21 made their first contribution in https://github.com/rustfs/rustfs/pull/1739
- @thorntonmc made their first contribution in https://github.com/rustfs/rustfs/pull/1749
- @LoganZ2 made their first contribution in https://github.com/rustfs/rustfs/pull/1732
- @mengyu-sxyz made their first contribution in https://github.com/rustfs/rustfs/pull/1532
- @amdadulbari made their first contribution in https://github.com/rustfs/rustfs/pull/1761
- @Tyooughtul made their first contribution in https://github.com/rustfs/rustfs/pull/1743
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.82...1.0.0-alpha.83
1.0.0-alpha.82Pre-releaseReleased on 1/30/2026
What's Changed
- fix: correct max_keys field in list_object_versions response by @overtrue in https://github.com/rustfs/rustfs/pull/1576
- chore: update README. by @overtrue in https://github.com/rustfs/rustfs/pull/1586
- fix: Fixed detection warnings in rust v1.93.0 by @houseme in https://github.com/rustfs/rustfs/pull/1591
- fix: resolve Issue #1465 - IAM credential change crash by @yxrxy in https://github.com/rustfs/rustfs/pull/1535
- fix: handle duplicate part numbers in CompleteMultipartUpload by @overtrue in https://github.com/rustfs/rustfs/pull/1584
- fix: use main user for s3tests tenant to prevent teardown failures by @overtrue in https://github.com/rustfs/rustfs/pull/1597
- Fix/correctly handle compression by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1594
- feat: object retention by @GatewayJ in https://github.com/rustfs/rustfs/pull/1589
- fix: preserve exact JSON format in bucket policy GET response by @overtrue in https://github.com/rustfs/rustfs/pull/1598
- Add support for success_action_status and success_action_redirect in AWS S3 POST object uploads by @houseme in https://github.com/rustfs/rustfs/pull/1606
- Update README with docker-buildx.sh features by @DatTruonggg in https://github.com/rustfs/rustfs/pull/1585
- fix: listobjects v2 pagination by @overtrue in https://github.com/rustfs/rustfs/pull/1607
- fix: readme list. by @overtrue in https://github.com/rustfs/rustfs/pull/1608
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1612
- fix: unify path handling to use S3-standard forward slashes on all platforms by @houseme in https://github.com/rustfs/rustfs/pull/1555
- fix: remove plaintext credential logging by @houseme in https://github.com/rustfs/rustfs/pull/1619
- fix bug by @weisd in https://github.com/rustfs/rustfs/pull/1615
- fix: missing object.key in S3 event notifications for multipart uploads by @yxrxy in https://github.com/rustfs/rustfs/pull/1621
- fix: missing object.key in S3 event notifications for multipart uploads #1609 by @heihutu in https://github.com/rustfs/rustfs/pull/1624
- Fix:s3 compatibility by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1617
- fix:use RFC1123 format for last-modified header in 304 responses by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1627
- chore: remove skills and docs dir. by @overtrue in https://github.com/rustfs/rustfs/pull/1631
- Update README to streamline badge links by @loverustfs in https://github.com/rustfs/rustfs/pull/1643
- fix: map unversioned destination replication error correctly by @evanofslack in https://github.com/rustfs/rustfs/pull/1645
- build(deps): bump the dependencies group with 12 updates by @houseme in https://github.com/rustfs/rustfs/pull/1650
- fix(head): clearer NoSuchKey for prefix keys and validate part numbers by @houseme in https://github.com/rustfs/rustfs/pull/1638
- fix: build error on loongarch64 by @zhangwenlong8911 in https://github.com/rustfs/rustfs/pull/904
- feat: add virtual host mode support for kubernetes installation by @majinghe in https://github.com/rustfs/rustfs/pull/1655
- fix:s3 tests fix by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1652
- fix: deduplicate disks in capacity calculation to prevent inflation by @houseme in https://github.com/rustfs/rustfs/pull/1656
- fix: traefik gateway api support with sticky session by @majinghe in https://github.com/rustfs/rustfs/pull/1660
- refactor: NamespaceLock (nslock), AHM→Heal Crate, and Lock/Clippy Fixes by @weisd in https://github.com/rustfs/rustfs/pull/1664
- refactor(utils/os): Optimize Windows OS utilities and add safety comments by @houseme in https://github.com/rustfs/rustfs/pull/1671
- refactor: Remove unused data usage collection code by @weisd in https://github.com/rustfs/rustfs/pull/1672
New Contributors
- @DatTruonggg made their first contribution in https://github.com/rustfs/rustfs/pull/1585
- @evanofslack made their first contribution in https://github.com/rustfs/rustfs/pull/1645
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.81...1.0.0-alpha.82
1.0.0-alpha.81Pre-releaseReleased on 1/22/2026
What's Changed
- fix: return error instead of silently ignoring invalid ARNs in notification config by @AudricY in https://github.com/rustfs/rustfs/pull/1528
- fix: Fix BitrotWriter encode writer implementation by @weisd in https://github.com/rustfs/rustfs/pull/1531
- fix:correctly handle compress object when put object by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1534
- feat(server): optimize http transport and socket configuration for S3… by @heihutu in https://github.com/rustfs/rustfs/pull/1537
- optimize:replace size magic number -1 with SIZE_TRANSFORMED constant by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1542
- helm: use values in test connection pod image by @Telemaco019 in https://github.com/rustfs/rustfs/pull/1536
- helm: disable default resources, fix poddisruptionbudget condition by @jurim76 in https://github.com/rustfs/rustfs/pull/1539
- Dependabot/cargo/dep 0117 by @houseme in https://github.com/rustfs/rustfs/pull/1547
- fix: Increase lock acquire timeout for network storage reliability by @houseme in https://github.com/rustfs/rustfs/pull/1548
- feat(http): Enable dynamic window adjustment by @houseme in https://github.com/rustfs/rustfs/pull/1549
- perf: optimize transport layer (TCP/TLS/H2) for S3 traffic by @heihutu in https://github.com/rustfs/rustfs/pull/1551
- upgrade s3s version by @houseme in https://github.com/rustfs/rustfs/pull/1558
- Helm: Add ability to enable Virtual Hosting paths by @polds in https://github.com/rustfs/rustfs/pull/1559
- enhancement: unify logger level setting using obs env instead of RUST_LOG by @majinghe in https://github.com/rustfs/rustfs/pull/1529
- feat(admin): make capacity calculation resilient when backend info is missing by @houseme in https://github.com/rustfs/rustfs/pull/1560
- docs: remove deprecated RUSTFS_EXTERNAL_ADDRESS and RUST_LOG variables by @houseme in https://github.com/rustfs/rustfs/pull/1561
- enhancement: add podman installation support and static files generating by @majinghe in https://github.com/rustfs/rustfs/pull/1565
- fix(s3): return NoSuchTagSet for get_bucket_tagging when tags not set by @overtrue in https://github.com/rustfs/rustfs/pull/1567
- fix(s3): add x-amz-tagging-count header to HEAD object response by @overtrue in https://github.com/rustfs/rustfs/pull/1568
- fix(s3): return NoSuchUpload for abort_multipart_upload when upload_id not found by @overtrue in https://github.com/rustfs/rustfs/pull/1569
- feat: add comprehensive skills and agents for Rust development by @overtrue in https://github.com/rustfs/rustfs/pull/1573
- fix: implement get_object_torrent to return 404 NoSuchKey by @overtrue in https://github.com/rustfs/rustfs/pull/1575
- Fix/correctly handle object lock by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1556
- Fix/correctly handle get object ifmatch&ifnonematch by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1563
- feat: Add RustFS Scanner Module and Multiple Bug Fixes by @weisd in https://github.com/rustfs/rustfs/pull/1579
- refactor: replace chrono with jiff for time handling by @heihutu in https://github.com/rustfs/rustfs/pull/1582
New Contributors
- @AudricY made their first contribution in https://github.com/rustfs/rustfs/pull/1528
- @heihutu made their first contribution in https://github.com/rustfs/rustfs/pull/1537
- @polds made their first contribution in https://github.com/rustfs/rustfs/pull/1559
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.80...1.0.0-alpha.81
1.0.0-alpha.80Pre-releaseReleased on 1/16/2026
What's Changed
- add upgrade strategy for standalone mode by @majinghe in https://github.com/rustfs/rustfs/pull/1431
- add gateway api support due to ingress nginx retirement by @majinghe in https://github.com/rustfs/rustfs/pull/1432
- Default to helm chart version for docker image and not latest by @mkrueger92 in https://github.com/rustfs/rustfs/pull/1385
- replace winapi to windows crate by @houseme in https://github.com/rustfs/rustfs/pull/1455
- feat: object-list access by @GatewayJ in https://github.com/rustfs/rustfs/pull/1457
- fix: honor bucket policy for authenticated users by @loverustfs in https://github.com/rustfs/rustfs/pull/1460
- fix(http): Fix console bucket management functionality failure caused by RUSTFS_SERVER_DOMAINS by @houseme in https://github.com/rustfs/rustfs/pull/1467
- fix: Remove secret and signature from the log by @houseme in https://github.com/rustfs/rustfs/pull/1466
- Fix Windows Path Separator Handling in rustfs_utils by @houseme in https://github.com/rustfs/rustfs/pull/1464
- fix: add delete prefix option support by @weisd in https://github.com/rustfs/rustfs/pull/1471
- feat: implement bucket quota system by @yxrxy in https://github.com/rustfs/rustfs/pull/1461
- Refactor:replace feature from
jsonwebtokentorust_cryptoby @houseme in https://github.com/rustfs/rustfs/pull/1474aws_lc_rs - fix: avoid unwrap() panic in delete_prefix parsing by @weisd in https://github.com/rustfs/rustfs/pull/1476
- dependency name ignore for object_store by @houseme in https://github.com/rustfs/rustfs/pull/1481
- fix: return 404 for HEAD requests on non-existent objects in TLS by @houseme in https://github.com/rustfs/rustfs/pull/1480
- fix:handle null version ID in delete and return version_id in get_object by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1479
- build(deps): bump tracing-opentelemetry and flate2 version by @houseme in https://github.com/rustfs/rustfs/pull/1484
- Fix object tagging functionality issues #1415 by @houseme in https://github.com/rustfs/rustfs/pull/1485
- Remove the route by @houseme in https://github.com/rustfs/rustfs/pull/1487
rustfs/console/config.json - Optimization and collation of dependencies introduction processing by @houseme in https://github.com/rustfs/rustfs/pull/1493
- Refactor Event Admin Handlers and Parallelize Target Status Probes by @houseme in https://github.com/rustfs/rustfs/pull/1501
- Use POSIX statvfs, since statfs is not designed to be portable by @jan-schreib in https://github.com/rustfs/rustfs/pull/1495
- feat: add support for existing gateways in helm chart by @jasperweyne in https://github.com/rustfs/rustfs/pull/1469
- perf(utils): optimize User-Agent generation and platform detection by @houseme in https://github.com/rustfs/rustfs/pull/1504
- fix: exclude matching key from ListObjects results when using marker/startAfter by @houseme in https://github.com/rustfs/rustfs/pull/1506
- In the PVC definition, skip the storageClassName attr if null/empty by @arthurdarcet in https://github.com/rustfs/rustfs/pull/1498
- fix: handle copy_source_if_match in copy_object for S3 compatibility by @overtrue in https://github.com/rustfs/rustfs/pull/1408
- chore(deps): bump multiple dependencies by @houseme in https://github.com/rustfs/rustfs/pull/1510
- chore(deps): bump crc-fast, chrono, aws-smithy-types, ssh-key by @houseme in https://github.com/rustfs/rustfs/pull/1513
- fix: change health check statement to fix unhealthy issue for docker … by @majinghe in https://github.com/rustfs/rustfs/pull/1515
- fix: standart policy format by @GatewayJ in https://github.com/rustfs/rustfs/pull/1508
- upgrade s3s from to
0.13.0-alpha.1by @houseme in https://github.com/rustfs/rustfs/pull/15180.13.0-alpha.2 - feat: add Cors by @GatewayJ in https://github.com/rustfs/rustfs/pull/1496
- Fix:correctly handle versioning obj by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1521
- fix:correctly handle copy object by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1512
New Contributors
- @jasperweyne made their first contribution in https://github.com/rustfs/rustfs/pull/1469
- @arthurdarcet made their first contribution in https://github.com/rustfs/rustfs/pull/1498
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.79...1.0.0-alpha.80
1.0.0-alpha.79Pre-releaseReleased on 1/7/2026
What's Changed
- Feat/ftps&sftp by @yxrxy in https://github.com/rustfs/rustfs/pull/1308
- fix(tagging): fix e2e test_object_tagging failure by @0xdx2 in https://github.com/rustfs/rustfs/pull/1327
- fix: s3 list object versions next marker by @overtrue in https://github.com/rustfs/rustfs/pull/1328
- chore: upgrade dependencies and migrate to aws-lc-rs by @houseme in https://github.com/rustfs/rustfs/pull/1333
- chore: replace native-tls with pure rustls for FTPS/SFTP e2e tests by @yxrxy in https://github.com/rustfs/rustfs/pull/1334
- chore: upgrade GitHub Actions artifact actions by @houseme in https://github.com/rustfs/rustfs/pull/1339
- feat:Permission verification for deleting versions by @GatewayJ in https://github.com/rustfs/rustfs/pull/1341
- fix: remove nginx-ingress default body size limit by @usernameisnull in https://github.com/rustfs/rustfs/pull/1335
- fix:correct RemoteAddr extension type to enable IP-based policy evaluation by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1356
- fix: do not hardcode bash path by @jan-schreib in https://github.com/rustfs/rustfs/pull/1358
- fix: try casting available blocks to a u64 on FreeBSD and OpenBSD by @jan-schreib in https://github.com/rustfs/rustfs/pull/1360
- Fixing URL output format in IPv6 environments #1343 and Incorrect time in UI #1350 by @houseme in https://github.com/rustfs/rustfs/pull/1363
- fix: fix bucket policy principal parsing to support * and {AWS: *} fo… by @yxrxy in https://github.com/rustfs/rustfs/pull/1354
- fix: fix FTPS/SFTP download issues and optimize S3Client caching by @yxrxy in https://github.com/rustfs/rustfs/pull/1353
- feat:policy Resources support string and array modes. by @GatewayJ in https://github.com/rustfs/rustfs/pull/1346
- add node selector for standalone deployment by @majinghe in https://github.com/rustfs/rustfs/pull/1368
- helm: add nodeSelector to standalone deployment by @31ch in https://github.com/rustfs/rustfs/pull/1367
- dep: upgrade tokio 1.49.0 by @houseme in https://github.com/rustfs/rustfs/pull/1378
- Fix event object structure according to AWS rules by @codedoga in https://github.com/rustfs/rustfs/pull/1379
- Enable the possibility to freely configure request and limit by @mkrueger92 in https://github.com/rustfs/rustfs/pull/1374
- fix:allow NotResource-only policies in statement validation by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1364
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1383
- Fix Path Traversal and Enhance Object Validation by @weisd in https://github.com/rustfs/rustfs/pull/1387
- fix: s3 api compatibility by @overtrue in https://github.com/rustfs/rustfs/pull/1370
- fix: improve s3-tests readiness detection and Python package installation by @overtrue in https://github.com/rustfs/rustfs/pull/1390
- Refactor RPC Authentication System for Improved Maintainability by @weisd in https://github.com/rustfs/rustfs/pull/1391
- fix rpc client by @weisd in https://github.com/rustfs/rustfs/pull/1393
- feat: s3 tests classification by @overtrue in https://github.com/rustfs/rustfs/pull/1392
- Remove unused crates by @houseme in https://github.com/rustfs/rustfs/pull/1394
- fix: OpenBSD does not support TCPKeepalive intervals by @jan-schreib in https://github.com/rustfs/rustfs/pull/1382
- Remove the sysctl crate and use libc's sysctl call interface by @jan-schreib in https://github.com/rustfs/rustfs/pull/1396
- fix: Correct import permissions by @GatewayJ in https://github.com/rustfs/rustfs/pull/1402
- test(s3): add 9 delimiter list tests to implemented tests by @overtrue in https://github.com/rustfs/rustfs/pull/1410
- feat: Add permission verification for account creation by @GatewayJ in https://github.com/rustfs/rustfs/pull/1401
- Fix windows missing default backlog by @jan-schreib in https://github.com/rustfs/rustfs/pull/1405
- fix: improve memory ordering for disk health tracker by @weisd in https://github.com/rustfs/rustfs/pull/1412
- Enhance Object Version Management and Replication Status Handling by @weisd in https://github.com/rustfs/rustfs/pull/1413
- rm online check by @weisd in https://github.com/rustfs/rustfs/pull/1416
- Fix/fix improve for audit by @houseme in https://github.com/rustfs/rustfs/pull/1418
New Contributors
- @usernameisnull made their first contribution in https://github.com/rustfs/rustfs/pull/1335
- @jan-schreib made their first contribution in https://github.com/rustfs/rustfs/pull/1358
- @31ch made their first contribution in https://github.com/rustfs/rustfs/pull/1367
- @codedoga made their first contribution in https://github.com/rustfs/rustfs/pull/1379
- @mkrueger92 made their first contribution in https://github.com/rustfs/rustfs/pull/1374
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.78...1.0.0-alpha.79
1.0.0-alpha.78Pre-releaseReleased on 12/30/2025
What's Changed
- delete -R parameter in init container step by @majinghe in https://github.com/rustfs/rustfs/pull/1264
- opt: store IoLoadMetrics records with circular vector by @lgpseu in https://github.com/rustfs/rustfs/pull/1265
- chore: remove e2e-mint workflow by @Copilot in https://github.com/rustfs/rustfs/pull/1274
- fix: prevent PV/PVC deletion during rustfs uninstallation by @bbb4aaa in https://github.com/rustfs/rustfs/pull/1279
- fix:affinity.podAntiAffinity.enabled value not taking effect by @bbb4aaa in https://github.com/rustfs/rustfs/pull/1280
- helm: update default Chart.yaml, appVersion version bump, add appVersion as a default image tag by @jurim76 in https://github.com/rustfs/rustfs/pull/1247
- feat: add function to extract user-defined metadata keys and integrat… by @0xdx2 in https://github.com/rustfs/rustfs/pull/1281
- fix: ensure version_id is returned in S3 response headers by @loverustfs in https://github.com/rustfs/rustfs/pull/1272
- fix:ListObjects and ListObjectV2 correctly handles unordered and delimiter by @LeonWang0735 in https://github.com/rustfs/rustfs/pull/1285
- Modular Makefile by @cod3mas0n in https://github.com/rustfs/rustfs/pull/1288
- fix: Prevent panic in GetMetrics gRPC handler on invalid input by @houseme in https://github.com/rustfs/rustfs/pull/1291
- helm: add enableServiceLinks, poddisruptionbudget by @jurim76 in https://github.com/rustfs/rustfs/pull/1293
- feat: add local s3-tests script with configurable options and improvements by @overtrue in https://github.com/rustfs/rustfs/pull/1300
- fix: correctly handle aws:SourceIp in policy evaluation (#1301) by @loverustfs in https://github.com/rustfs/rustfs/pull/1306
- Restore globals and add unified TLS/mTLS loading from RUSTFS_TLS_PATH by @houseme in https://github.com/rustfs/rustfs/pull/1309
- fix(iam): preserve decrypt-failed credentials instead of deleting them by @yxrxy in https://github.com/rustfs/rustfs/pull/1312
New Contributors
- @lgpseu made their first contribution in https://github.com/rustfs/rustfs/pull/1265
- @bbb4aaa made their first contribution in https://github.com/rustfs/rustfs/pull/1279
- @LeonWang0735 made their first contribution in https://github.com/rustfs/rustfs/pull/1285
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.77...1.0.0-alpha.78
1.0.0-alpha.77Pre-releaseReleased on 12/25/2025
What's Changed
- add cert manager and ingress annotations support by @majinghe in https://github.com/rustfs/rustfs/pull/1206
- Optimize ci ubicloud by @loverustfs in https://github.com/rustfs/rustfs/pull/1208
- fix: decode form-urlencoded object names in webhook/mqtt Key field by @Copilot in https://github.com/rustfs/rustfs/pull/1210
- chore(ci): restore workflows before 8e0aeb4 by @loverustfs in https://github.com/rustfs/rustfs/pull/1212
- fix(iam): store previous credentials in .rustfs.sys bucket to preserv… by @yxrxy in https://github.com/rustfs/rustfs/pull/1213
- fix: expiration time by @GatewayJ in https://github.com/rustfs/rustfs/pull/1215
- add custom nodeport support by @majinghe in https://github.com/rustfs/rustfs/pull/1217
- fix: resolve event target deletion issue by @yxrxy in https://github.com/rustfs/rustfs/pull/1219
- fix: resolve TLS handshake failure in inter-node communication (#1201) by @loverustfs in https://github.com/rustfs/rustfs/pull/1222
- fix(config):Update argument parsing for volumes and server_domains to support del… by @0xdx2 in https://github.com/rustfs/rustfs/pull/1209
- Fix notification event stream cleanup, add bounded send concurrency, and reduce overhead by @houseme in https://github.com/rustfs/rustfs/pull/1224
- Add Disk Timeout and Health Check Functionality by @weisd in https://github.com/rustfs/rustfs/pull/1196
- helm: allow to define additional config variables by @jurim76 in https://github.com/rustfs/rustfs/pull/1220
- fix: HeadObject returns 404 for deleted objects with versioning enabled by @loverustfs in https://github.com/rustfs/rustfs/pull/1229
- Add: rust installation in Makefile by @cod3mas0n in https://github.com/rustfs/rustfs/pull/1188
- update s3s version by @houseme in https://github.com/rustfs/rustfs/pull/1237
- console port is 9001 by @YiuTerran in https://github.com/rustfs/rustfs/pull/1235
- Custom annotation by @majinghe in https://github.com/rustfs/rustfs/pull/1242
- delete userless helm chart file by @majinghe in https://github.com/rustfs/rustfs/pull/1245
- :technologist: Fix nix develop problem with Git-Based dependecies on nix develop shell by @mhkarimi1383 in https://github.com/rustfs/rustfs/pull/1243
- Revert "fix(iam): store previous credentials in .rustfs.sys bucket to… by @yxrxy in https://github.com/rustfs/rustfs/pull/1238
- feat: add seek support for small objects in rustfs by @reatang in https://github.com/rustfs/rustfs/pull/1231
- helm: fix service/containers ports, fix podAntiAffinity by @jurim76 in https://github.com/rustfs/rustfs/pull/1230
- helm: expose init container parameters as helm values by @Telemaco019 in https://github.com/rustfs/rustfs/pull/1232
- add ca-certificates in mcp-server Dockerfile by @andrea-manzi in https://github.com/rustfs/rustfs/pull/1248
- fix: Add retry mechanism for GLOBAL_CONFIG_SYS initialization by @weisd in https://github.com/rustfs/rustfs/pull/1252
- remove unlinked file by @houseme in https://github.com/rustfs/rustfs/pull/1258
- Inject into HTTP server pipeline and gate traffic until
GlobalReadinessby @houseme in https://github.com/rustfs/rustfs/pull/1255FullReady - feat: Add TONIC_PREFIX prefix matching in ReadinessGateService by @houseme in https://github.com/rustfs/rustfs/pull/1261
New Contributors
- @YiuTerran made their first contribution in https://github.com/rustfs/rustfs/pull/1235
- @Telemaco019 made their first contribution in https://github.com/rustfs/rustfs/pull/1232
- @andrea-manzi made their first contribution in https://github.com/rustfs/rustfs/pull/1248
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.76...1.0.0-alpha.77
1.0.0-alpha.76Pre-releaseReleased on 12/19/2025
Fixed an update error in the unified version number check entry.
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.75...1.0.0-alpha.76
1.0.0-alpha.75Pre-releaseReleased on 12/19/2025
What's Changed
Fixed a bug in alpha.74 that caused slow upload speeds to Ubicloud and enabled global acceleration.
- build(deps): bump s3s from 0.12.0-rc.4 to 0.12.0-rc.5 in the s3s group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1046
- upgrade action checkout version from v5 to v6 by @houseme in https://github.com/rustfs/rustfs/pull/1067
- helm: Use service.type from Values by @simonswine in https://github.com/rustfs/rustfs/pull/1106
- chore: remove unused dependencies to optimize build by @houseme in https://github.com/rustfs/rustfs/pull/1117
- Fix Docker-based Development Workflow by @YGoetschel in https://github.com/rustfs/rustfs/pull/1031
- Feat/e2e s3tests by @overtrue in https://github.com/rustfs/rustfs/pull/1120
- Fix type errors in and apply clippy fixes for Rust 1.92.0 by @houseme in https://github.com/rustfs/rustfs/pull/1121
ecfs.rs - feat: Be able to set region from Helm chart by @swolf-regnology in https://github.com/rustfs/rustfs/pull/1119
- add image pull secret support by @majinghe in https://github.com/rustfs/rustfs/pull/1127
- render imagePullSecrets in Deployment/StatefulSet by @czaloumis in https://github.com/rustfs/rustfs/pull/1130
- fix: update tool chain make everything happy by @yihong0618 in https://github.com/rustfs/rustfs/pull/1134
- flake: add Nix flake for reproducible builds by @Mic92 in https://github.com/rustfs/rustfs/pull/1096
- Replace placeholder content in SECURITY.md by @llominski in https://github.com/rustfs/rustfs/pull/1140
- Add docs for using Nix flake by @Mic92 in https://github.com/rustfs/rustfs/pull/1103
- Fix memory leak in Cache update method by @sunfkny in https://github.com/rustfs/rustfs/pull/1143
- helm: refactor helm chart by @jurim76 in https://github.com/rustfs/rustfs/pull/1122
- helm: Mount /tmp as emptyDir by @simonswine in https://github.com/rustfs/rustfs/pull/1105
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1148
- feat: add pre-commit file by @yihong0618 in https://github.com/rustfs/rustfs/pull/1155
- list object version Interface returns storage_class by @GatewayJ in https://github.com/rustfs/rustfs/pull/1133
- fix: other two memory leak in the code base by @yihong0618 in https://github.com/rustfs/rustfs/pull/1160
- feat: Implement AWS policy variables support by @yxrxy in https://github.com/rustfs/rustfs/pull/1131
- feat: Implement whitelist-based HTTP response compression configuration by @reatang in https://github.com/rustfs/rustfs/pull/1136
- fix: the method for correcting judgment headers by @GatewayJ in https://github.com/rustfs/rustfs/pull/1159
- fix: format of bucket event notifications by @mythrnr in https://github.com/rustfs/rustfs/pull/1138
- Dependabot/cargo/s3s df2434d 1216 by @houseme in https://github.com/rustfs/rustfs/pull/1170
- feat: Replace LRU cache with Moka async cache in policy variables by @yxrxy in https://github.com/rustfs/rustfs/pull/1166
- fix: improve S3 API compatibility for ListObjects operations by @overtrue in https://github.com/rustfs/rustfs/pull/1173
- :technologist: Improve shebang compatibility by @mhkarimi1383 in https://github.com/rustfs/rustfs/pull/1180
- fix: Remove the compression check that has already been handled by . by @reatang in https://github.com/rustfs/rustfs/pull/1190
tower-http::CompressionLayer - Fix/fix event 1216 by @houseme in https://github.com/rustfs/rustfs/pull/1191
New Contributors
- @simonswine made their first contribution in https://github.com/rustfs/rustfs/pull/1106
- @YGoetschel made their first contribution in https://github.com/rustfs/rustfs/pull/1031
- @swolf-regnology made their first contribution in https://github.com/rustfs/rustfs/pull/1119
- @czaloumis made their first contribution in https://github.com/rustfs/rustfs/pull/1130
- @llominski made their first contribution in https://github.com/rustfs/rustfs/pull/1140
- @sunfkny made their first contribution in https://github.com/rustfs/rustfs/pull/1143
- @jurim76 made their first contribution in https://github.com/rustfs/rustfs/pull/1122
- @mythrnr made their first contribution in https://github.com/rustfs/rustfs/pull/1138
- @mhkarimi1383 made their first contribution in https://github.com/rustfs/rustfs/pull/1180
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.73...1.0.0-alpha.74 Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.74...1.0.0-alpha.75
1.0.0-alpha.74Pre-releaseReleased on 12/19/2025
What's Changed
- build(deps): bump s3s from 0.12.0-rc.4 to 0.12.0-rc.5 in the s3s group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1046
- upgrade action checkout version from v5 to v6 by @houseme in https://github.com/rustfs/rustfs/pull/1067
- helm: Use service.type from Values by @simonswine in https://github.com/rustfs/rustfs/pull/1106
- chore: remove unused dependencies to optimize build by @houseme in https://github.com/rustfs/rustfs/pull/1117
- Fix Docker-based Development Workflow by @YGoetschel in https://github.com/rustfs/rustfs/pull/1031
- Feat/e2e s3tests by @overtrue in https://github.com/rustfs/rustfs/pull/1120
- Fix type errors in and apply clippy fixes for Rust 1.92.0 by @houseme in https://github.com/rustfs/rustfs/pull/1121
ecfs.rs - feat: Be able to set region from Helm chart by @swolf-regnology in https://github.com/rustfs/rustfs/pull/1119
- add image pull secret support by @majinghe in https://github.com/rustfs/rustfs/pull/1127
- render imagePullSecrets in Deployment/StatefulSet by @czaloumis in https://github.com/rustfs/rustfs/pull/1130
- fix: update tool chain make everything happy by @yihong0618 in https://github.com/rustfs/rustfs/pull/1134
- flake: add Nix flake for reproducible builds by @Mic92 in https://github.com/rustfs/rustfs/pull/1096
- Replace placeholder content in SECURITY.md by @llominski in https://github.com/rustfs/rustfs/pull/1140
- Add docs for using Nix flake by @Mic92 in https://github.com/rustfs/rustfs/pull/1103
- Fix memory leak in Cache update method by @sunfkny in https://github.com/rustfs/rustfs/pull/1143
- helm: refactor helm chart by @jurim76 in https://github.com/rustfs/rustfs/pull/1122
- helm: Mount /tmp as emptyDir by @simonswine in https://github.com/rustfs/rustfs/pull/1105
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1148
- feat: add pre-commit file by @yihong0618 in https://github.com/rustfs/rustfs/pull/1155
- list object version Interface returns storage_class by @GatewayJ in https://github.com/rustfs/rustfs/pull/1133
- fix: other two memory leak in the code base by @yihong0618 in https://github.com/rustfs/rustfs/pull/1160
- feat: Implement AWS policy variables support by @yxrxy in https://github.com/rustfs/rustfs/pull/1131
- feat: Implement whitelist-based HTTP response compression configuration by @reatang in https://github.com/rustfs/rustfs/pull/1136
- fix: the method for correcting judgment headers by @GatewayJ in https://github.com/rustfs/rustfs/pull/1159
- fix: format of bucket event notifications by @mythrnr in https://github.com/rustfs/rustfs/pull/1138
- Dependabot/cargo/s3s df2434d 1216 by @houseme in https://github.com/rustfs/rustfs/pull/1170
- feat: Replace LRU cache with Moka async cache in policy variables by @yxrxy in https://github.com/rustfs/rustfs/pull/1166
- fix: improve S3 API compatibility for ListObjects operations by @overtrue in https://github.com/rustfs/rustfs/pull/1173
- :technologist: Improve shebang compatibility by @mhkarimi1383 in https://github.com/rustfs/rustfs/pull/1180
- fix: Remove the compression check that has already been handled by . by @reatang in https://github.com/rustfs/rustfs/pull/1190
tower-http::CompressionLayer - Fix/fix event 1216 by @houseme in https://github.com/rustfs/rustfs/pull/1191
New Contributors
- @simonswine made their first contribution in https://github.com/rustfs/rustfs/pull/1106
- @YGoetschel made their first contribution in https://github.com/rustfs/rustfs/pull/1031
- @swolf-regnology made their first contribution in https://github.com/rustfs/rustfs/pull/1119
- @czaloumis made their first contribution in https://github.com/rustfs/rustfs/pull/1130
- @llominski made their first contribution in https://github.com/rustfs/rustfs/pull/1140
- @sunfkny made their first contribution in https://github.com/rustfs/rustfs/pull/1143
- @jurim76 made their first contribution in https://github.com/rustfs/rustfs/pull/1122
- @mythrnr made their first contribution in https://github.com/rustfs/rustfs/pull/1138
- @mhkarimi1383 made their first contribution in https://github.com/rustfs/rustfs/pull/1180
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.73...1.0.0-alpha.74
1.0.0-alpha.73Pre-releaseReleased on 12/11/2025
What's Changed
- feat: The observability module can be set separately. by @reatang in https://github.com/rustfs/rustfs/pull/993
- feat(helm): add existingSecret handling and support for extra manifests by @babs in https://github.com/rustfs/rustfs/pull/992
- add helm package ci file by @majinghe in https://github.com/rustfs/rustfs/pull/994
- fix filemeta nil versionid by @weisd in https://github.com/rustfs/rustfs/pull/1002
- update helm package ci file and helm values file by @majinghe in https://github.com/rustfs/rustfs/pull/1004
- feat(helm): split storageSize into data and log storage parameters by @LemonDouble in https://github.com/rustfs/rustfs/pull/1018
- security: Fix timing attack vulnerability in credential comparison by @wmh in https://github.com/rustfs/rustfs/pull/1014
- feat: enhance error handling and add precondition checks for object o… by @0xdx2 in https://github.com/rustfs/rustfs/pull/1008
- fix: detect dead nodes via HTTP/2 keepalives (Issue #1001) by @Jitterx69 in https://github.com/rustfs/rustfs/pull/1025
- fix: correct ARN parsing for notification targets by @tennisleng in https://github.com/rustfs/rustfs/pull/1010
- fix(net): resolve 1GB upload hang and macos build (Issue #1001 regression) by @Jitterx69 in https://github.com/rustfs/rustfs/pull/1035
- Feature/improve profiling by @houseme in https://github.com/rustfs/rustfs/pull/1038
- docs: fix some dead link by @yihong0618 in https://github.com/rustfs/rustfs/pull/1053
- Fix/issue #1001 dead node detection by @Jitterx69 in https://github.com/rustfs/rustfs/pull/1054
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/1052
- fix: the If-None-Match error handling in the put_object method when t… by @shiroleeee in https://github.com/rustfs/rustfs/pull/1034
- feat: add is-admin user api by @yxrxy in https://github.com/rustfs/rustfs/pull/1063
- simple deployment via docker-compose by @cod3mas0n in https://github.com/rustfs/rustfs/pull/1043
- [Security] Fix HIGH vulnerability: yaml.docker-compose.security.writable-filesystem-service.writable-filesystem-service by @orbisai0security in https://github.com/rustfs/rustfs/pull/1005
- fix: the If-None-Match error handling in the complete_multipart_uploa… by @shiroleeee in https://github.com/rustfs/rustfs/pull/1065
- Add comprehensive special character handling with validation refactoring and extensive test coverage by @Copilot in https://github.com/rustfs/rustfs/pull/1078
- improve code for is admin by @houseme in https://github.com/rustfs/rustfs/pull/1082
- enhancement logs output for container deployment by @majinghe in https://github.com/rustfs/rustfs/pull/1090
- fix github action security found by github CodeQL by @majinghe in https://github.com/rustfs/rustfs/pull/1091
- fix(lifecycle): Return NoSuchLifecycleConfiguration error for missing lifecycle config by @tennisleng in https://github.com/rustfs/rustfs/pull/1087
- Content encoding by @Mic92 in https://github.com/rustfs/rustfs/pull/1089
- feat(ci): add codeql to scanner code by @0xdx2 in https://github.com/rustfs/rustfs/pull/1076
- fix: decode percent-encoded paths in get_file_path() by @jacoblyles in https://github.com/rustfs/rustfs/pull/1072
- fix(lifecycle): Fix ObjectInfo fields and mod_time error handling by @tennisleng in https://github.com/rustfs/rustfs/pull/1088
- fix: is-admin api (For STS/temporary credentials, we need to check the… by @yxrxy in https://github.com/rustfs/rustfs/pull/1101
- fix: ListObjectsV2 correctly handles repeated folder names in prefixes by @yxrxy in https://github.com/rustfs/rustfs/pull/1104
- fix: harden data usage aggregation and cache handling by @guojidan in https://github.com/rustfs/rustfs/pull/1102
New Contributors
- @babs made their first contribution in https://github.com/rustfs/rustfs/pull/992
- @LemonDouble made their first contribution in https://github.com/rustfs/rustfs/pull/1018
- @wmh made their first contribution in https://github.com/rustfs/rustfs/pull/1014
- @tennisleng made their first contribution in https://github.com/rustfs/rustfs/pull/1010
- @yxrxy made their first contribution in https://github.com/rustfs/rustfs/pull/1063
- @cod3mas0n made their first contribution in https://github.com/rustfs/rustfs/pull/1043
- @orbisai0security made their first contribution in https://github.com/rustfs/rustfs/pull/1005
- @Mic92 made their first contribution in https://github.com/rustfs/rustfs/pull/1089
- @jacoblyles made their first contribution in https://github.com/rustfs/rustfs/pull/1072
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.72...1.0.0-alpha.73
1.0.0-alpha.72Pre-releaseReleased on 12/5/2025
What's Changed
- console: add and improve comments by @houseme in https://github.com/rustfs/rustfs/pull/975
version_handler - Delete duplicate titles in the README by @magestacks in https://github.com/rustfs/rustfs/pull/977
- fix: listdir rpc by @weisd in https://github.com/rustfs/rustfs/pull/979
- fix: add the is_truncated field to the return of the list_object_vers… by @shiroleeee in https://github.com/rustfs/rustfs/pull/985
- Fix link to CONTRIBUTING.md in README by @asteurer in https://github.com/rustfs/rustfs/pull/991
New Contributors
- @magestacks made their first contribution in https://github.com/rustfs/rustfs/pull/977
- @asteurer made their first contribution in https://github.com/rustfs/rustfs/pull/991
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.71...1.0.0-alpha.72
1.0.0-alpha.71Pre-releaseReleased on 12/3/2025
What's Changed
- fix out of range for slice by @reatang in https://github.com/rustfs/rustfs/pull/931
- Updated RUSTFS_VOLUMES to fix pod crashing by @serhiynovos in https://github.com/rustfs/rustfs/pull/922
- Optimize concurrent GetObject performance with Moka cache, comprehensive metrics, complete test suite, cache writeback, and comprehensive documentation by @Copilot in https://github.com/rustfs/rustfs/pull/916
- Improve health check handlers for endpoint and console (GET/HEAD, safer error handling) by @houseme in https://github.com/rustfs/rustfs/pull/942
- build(deps): bump criterion from 0.7.0 to 0.8.0 in the dependencies group by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/947
- fix: add the is_truncated field to the return of the list_objects int… by @shiroleeee in https://github.com/rustfs/rustfs/pull/958
- add logs by @weisd in https://github.com/rustfs/rustfs/pull/962
- Fix Admin Heal API and Add Pagination Support for Large Buckets by @weisd in https://github.com/rustfs/rustfs/pull/933
- upgrade crate version and improve heal config by @houseme in https://github.com/rustfs/rustfs/pull/963
New Contributors
- @reatang made their first contribution in https://github.com/rustfs/rustfs/pull/931
- @serhiynovos made their first contribution in https://github.com/rustfs/rustfs/pull/922
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.70...1.0.0-alpha.71
1.0.0-alpha.70Pre-releaseReleased on 11/26/2025
What's Changed
- build(deps): bump the dependencies group with 5 updates by @houseme in https://github.com/rustfs/rustfs/pull/896
- update tls configuration in helm chart by @majinghe in https://github.com/rustfs/rustfs/pull/900
- build(deps): bump the dependencies group with 10 updates by @houseme in https://github.com/rustfs/rustfs/pull/914
- Fix/objectdelete by @weisd in https://github.com/rustfs/rustfs/pull/917
- Fix/getobjectlength by @houseme in https://github.com/rustfs/rustfs/pull/920
- remove debug by @shyim in https://github.com/rustfs/rustfs/pull/912
New Contributors
- @shyim made their first contribution in https://github.com/rustfs/rustfs/pull/912
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.69...1.0.0-alpha.70
1.0.0-alpha.69Pre-releaseReleased on 11/20/2025
⚠️ Breaking Changes / Upgrade Notes
Container Security Update: The container startup user has been changed to UID 10001 (non-root) for improved security. Action Required: If you encounter "Permission Denied" errors after upgrading, please update the ownership of your mounted data directory to the new user.
# Example: Fix permissions for your mounted volume chown -R 10001:10001 /data chown -R 10001:10001 /logs
What's Changed
- fix: modify logger from warn to info by @houseme in https://github.com/rustfs/rustfs/pull/842
- enhance security context part for k8s deployment by @majinghe in https://github.com/rustfs/rustfs/pull/850
- feat(obs): unify metrics initialization and fix exporter move error by @houseme in https://github.com/rustfs/rustfs/pull/851
- remove linux dep and upgrade Protocol Buffers and FlatBuffers by @houseme in https://github.com/rustfs/rustfs/pull/853
- delete sink file path env and update readme file with container user change by @majinghe in https://github.com/rustfs/rustfs/pull/852
- Fix audit system state transition with empty targets by @houseme in https://github.com/rustfs/rustfs/pull/854
- build(deps): bump the dependencies group with 8 updates by @houseme in https://github.com/rustfs/rustfs/pull/857
- ci: update s3s weekly by @Nugine in https://github.com/rustfs/rustfs/pull/858
- ci: fix dependabot by @Nugine in https://github.com/rustfs/rustfs/pull/860
- Fix KMS configuration synchronization across cluster nodes by @Copilot in https://github.com/rustfs/rustfs/pull/855
- fix multipart upload lock management by @weisd in https://github.com/rustfs/rustfs/pull/866
- fix replication by @weisd in https://github.com/rustfs/rustfs/pull/875
- Fix large file upload freeze with adaptive buffer sizing by @Copilot in https://github.com/rustfs/rustfs/pull/869
- fix: filemeta version handling and delete operations by @weisd in https://github.com/rustfs/rustfs/pull/879
- Implement adaptive buffer sizing with workload profiles - Production-Ready Implementation by @Copilot in https://github.com/rustfs/rustfs/pull/878
- feat:ListObjects supports displaying deleted objects by @weisd in https://github.com/rustfs/rustfs/pull/882
- fix: listbucket verification by @weisd in https://github.com/rustfs/rustfs/pull/890
- add standalone mode support by @majinghe in https://github.com/rustfs/rustfs/pull/881
- fix: removing the Limit on the Number of Object Versions (#819) by @shiroleeee in https://github.com/rustfs/rustfs/pull/892
- Fix: Implement priority-based heal queue with comprehensive diagnostic logging by @Copilot in https://github.com/rustfs/rustfs/pull/884
- feat: add ifmatch support by @weisd in https://github.com/rustfs/rustfs/pull/885
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.68...1.0.0-alpha.69
1.0.0-alpha.68Pre-releaseReleased on 11/12/2025
What's Changed
- fix list max keys by @weisd in https://github.com/rustfs/rustfs/pull/795
- Refactor modify stdout by @houseme in https://github.com/rustfs/rustfs/pull/797
- fix: when the Object Lock configuration does not exist, an error mess… by @shiroleeee in https://github.com/rustfs/rustfs/pull/798
- feat:add api error message by @weisd in https://github.com/rustfs/rustfs/pull/801
- Refactor Telemetry Initialization and Environment Utilities by @houseme in https://github.com/rustfs/rustfs/pull/811
- add non root user support for container deployment by @majinghe in https://github.com/rustfs/rustfs/pull/817
- Update configuration.md by @agbykov in https://github.com/rustfs/rustfs/pull/812
- improve code for logger by @houseme in https://github.com/rustfs/rustfs/pull/822
- feat(storage): refactor audit and notification with OperationHelper by @houseme in https://github.com/rustfs/rustfs/pull/825
- fix bucket policy error handling by @weisd in https://github.com/rustfs/rustfs/pull/828
- fix list object err by @weisd in https://github.com/rustfs/rustfs/pull/831
- perf: cache disk health and fail writes fast on quorum shortages by @overtrue in https://github.com/rustfs/rustfs/pull/830
- 🔒 Upgrade Cryptography Libraries to Latest RC Versions by @houseme in https://github.com/rustfs/rustfs/pull/837
New Contributors
- @agbykov made their first contribution in https://github.com/rustfs/rustfs/pull/812
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.67...1.0.0-alpha.68
1.0.0-alpha.67Pre-releaseReleased on 11/5/2025
What's Changed
- add rustfs helm chart files by @majinghe in https://github.com/rustfs/rustfs/pull/747
- fix: restore localized samples in tests by @overtrue in https://github.com/rustfs/rustfs/pull/749
- modify logger level from to
infoby @houseme in https://github.com/rustfs/rustfs/pull/744error - Delete deploy/config/rustfs-zh.env by @overtrue in https://github.com/rustfs/rustfs/pull/755
- Delete deploy/build/rustfs-zh.service by @overtrue in https://github.com/rustfs/rustfs/pull/756
- Delete deploy/build/rustfs.run-zh.md by @overtrue in https://github.com/rustfs/rustfs/pull/757
- Remove unnecessary tools folder in CI workflow by @overtrue in https://github.com/rustfs/rustfs/pull/770
- Issue 762 by @loverustfs in https://github.com/rustfs/rustfs/pull/763
- Add default storage class to ListObjectsV2 by @nikeee in https://github.com/rustfs/rustfs/pull/765
- feat(admin): Add admin v3 API routes and profiling endpoints for RustFS by @houseme in https://github.com/rustfs/rustfs/pull/774
- fix: remove file by @houseme in https://github.com/rustfs/rustfs/pull/776
- build(deps): bump the dependencies group with 6 updates by @dependabot[bot] in https://github.com/rustfs/rustfs/pull/777
- fix windows response by @houseme in https://github.com/rustfs/rustfs/pull/781
- fix: iam load policy by @weisd in https://github.com/rustfs/rustfs/pull/783
- fix rmdir versionid by @weisd in https://github.com/rustfs/rustfs/pull/784
- Refactor telemetry initialization for non-production environments by @houseme in https://github.com/rustfs/rustfs/pull/789
- fix: resolve logic errors in ahm heal module by @overtrue in https://github.com/rustfs/rustfs/pull/788
- improve import,crate version,and copyright by @houseme in https://github.com/rustfs/rustfs/pull/790
New Contributors
- @nikeee made their first contribution in https://github.com/rustfs/rustfs/pull/765
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.66...1.0.0-alpha.67
1.0.0-alpha.66Pre-releaseReleased on 10/28/2025
What's Changed
- fix: Improve the peer client by @weisd in https://github.com/rustfs/rustfs/pull/693
- chore: bump dependencies, add metrics support, remove DNS resolver by @houseme in https://github.com/rustfs/rustfs/pull/699
- docs: add Star History section to README files by @damonxue in https://github.com/rustfs/rustfs/pull/696
- improve code for metrics and switch tokio-tar to astral-tokio-tar by @houseme in https://github.com/rustfs/rustfs/pull/705
- fix: multipart upload checksum validation by @weisd in https://github.com/rustfs/rustfs/pull/712
- fix:add favicon.ico route by @weisd in https://github.com/rustfs/rustfs/pull/713
- fix: The issue of multi-level objects created in Windows not being di… by @shiroleeee in https://github.com/rustfs/rustfs/pull/723
- fix: take content type from PutObjectInput instead of headers by @DASPRiD in https://github.com/rustfs/rustfs/pull/718
- Fix/ilm by @likewu in https://github.com/rustfs/rustfs/pull/721
- fix: scandir object by @weisd in https://github.com/rustfs/rustfs/pull/733
- fix: when the error returned by make_bucket is BucketExists, replace … by @shiroleeee in https://github.com/rustfs/rustfs/pull/735
New Contributors
- @damonxue made their first contribution in https://github.com/rustfs/rustfs/pull/696
- @DASPRiD made their first contribution in https://github.com/rustfs/rustfs/pull/718
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.65...1.0.0-alpha.66
1.0.0-alpha.65Pre-releaseReleased on 10/23/2025
What's Changed
- fix(export): fix the policy and service account export by @songhahaha66 in https://github.com/rustfs/rustfs/pull/665
- Refactor: Introduce content checksums and improve multipart/object metadata handling by @weisd in https://github.com/rustfs/rustfs/pull/671
- fix docker healthcheck unhealthy issue by @majinghe in https://github.com/rustfs/rustfs/pull/672
- fix: DataUsageInfo add list bucket permission by @weisd in https://github.com/rustfs/rustfs/pull/674
- Fix CRC32C Checksum Implementation and Enhance Authentication System by @weisd in https://github.com/rustfs/rustfs/pull/678
- fix: prevent duplicate data volumes in entrypoint.sh by @livelycode36 in https://github.com/rustfs/rustfs/pull/681
- Refactor object metadata filtering logic by @weisd in https://github.com/rustfs/rustfs/pull/682
- add make bucket error logs by @weisd in https://github.com/rustfs/rustfs/pull/683
- feat: adjust metrics push interval to 3 seconds by @houseme in https://github.com/rustfs/rustfs/pull/686
- Refactor Console Server Architecture by @weisd in https://github.com/rustfs/rustfs/pull/685
- Refactor: Add observability enable flag, improve comments, remove unused config params, and enhance run function error logging. by @houseme in https://github.com/rustfs/rustfs/pull/689
New Contributors
- @songhahaha66 made their first contribution in https://github.com/rustfs/rustfs/pull/665
- @livelycode36 made their first contribution in https://github.com/rustfs/rustfs/pull/681
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.64...1.0.0-alpha.65
1.0.0-alpha.64Pre-releaseReleased on 10/20/2025
What's Changed
- chore(docs): update README and README_ZH by @loverustfs in https://github.com/rustfs/rustfs/pull/649
- Refactor mnmd docker compose for scalability using docker x-template. by @majinghe in https://github.com/rustfs/rustfs/pull/652
- test: allow mocking dns resolver by @overtrue in https://github.com/rustfs/rustfs/pull/656
- feat: adapt to s3s typed etag support by @overtrue in https://github.com/rustfs/rustfs/pull/653
- feat: Simple OPA support by @GatewayJ in https://github.com/rustfs/rustfs/pull/644
- fix: update ahm integration test fixture by @overtrue in https://github.com/rustfs/rustfs/pull/659
- fix(targets): make target removal and reload transactional; prevent reappearing entries by @houseme in https://github.com/rustfs/rustfs/pull/662
- chore(docs): move root to
examplesand update README by @houseme in https://github.com/rustfs/rustfs/pull/663docs/examples/docker - add ansible installation with mnmd by @majinghe in https://github.com/rustfs/rustfs/pull/664
- build(deps): upgrade s3s by @Nugine in https://github.com/rustfs/rustfs/pull/667
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.63...1.0.0-alpha.64
1.0.0-alpha.63Pre-releaseReleased on 10/12/2025
What's Changed
- fix:#630 by @weisd in https://github.com/rustfs/rustfs/pull/633
- chore: improve event and docker-compose ,Improve the permissions of the health interface, upgrade otel from 0.30.0 to 0.31.0 by @houseme in https://github.com/rustfs/rustfs/pull/620
endpoint - Add complete MNMD Docker deployment example with startup coordination and VolumeNotFound fix by @Copilot in https://github.com/rustfs/rustfs/pull/642
- Revert "feat(append): implement object append operations with state racking (#599)" by @overtrue in https://github.com/rustfs/rustfs/pull/646
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.62...1.0.0-alpha.63
1.0.0-alpha.62Pre-releaseReleased on 10/8/2025
What's Changed
- fix typos and bump the dependencies group with 9 updates by @houseme in https://github.com/rustfs/rustfs/pull/614
- fix: CompleteMultipartUpload encryption by @Nugine in https://github.com/rustfs/rustfs/pull/626
- fix: normalize ETag comparison in multipart upload and replication by @overtrue in https://github.com/rustfs/rustfs/pull/627
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.61...1.0.0-alpha.62
1.0.0-alpha.61Pre-releaseReleased on 10/2/2025
What's Changed
- feat(lock): enhance lock management with timeout and ownership tracking by @guojidan in https://github.com/rustfs/rustfs/pull/589
- refactor: Reimplement bucket replication system with enhanced architecture by @weisd in https://github.com/rustfs/rustfs/pull/590
- Fix ETag format to comply with HTTP standards by wrapping with quotes by @Copilot in https://github.com/rustfs/rustfs/pull/592
- Improve lock by @guojidan in https://github.com/rustfs/rustfs/pull/596
- feat(append): implement object append operations with state tracking by @guojidan in https://github.com/rustfs/rustfs/pull/599
- build(deps): upgrade s3s by @Nugine in https://github.com/rustfs/rustfs/pull/595
- Refactor: introduce IAM notifications and migrate tonic_service to rustfs storage by @weisd in https://github.com/rustfs/rustfs/pull/604
Full Changelog: https://github.com/rustfs/rustfs/compare/1.0.0-alpha.60...1.0.0-alpha.61