Impact Score: 5/10
MinIO: Major Feature Release
Source available โ automated, not human-reviewed
Component: minio ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
โก Executive Summary (TL;DR)
MinIO RELEASE.2021-11-24T23-19-33Z. Source highlight: Click here to download the latest version of MinIO.
Who Does This Impact? (Role-Based Analysis)
๐ป Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
๐ Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
โ๏ธ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
โจ New Features & Capabilities (6)
- Adds explicit deny support for **AddServiceAccoun**, refer #13657
- Add CI for etcd IAM backend
- add multi-site replication tests
- Add tests for OpenID STS creds and add to CI
- add explicit deny support for service accounts
- add gocritic/ruleguard checks back again, cleanup code.
โก Performance & Enhancements (2)
- Re-implementation of `xl.meta` metadata handling for objects with multiple versions, provides following improvements - refer #13573
- Improve performance on multiple versions
๐ง Bug Fixes & Patches (6)
- Other miscellaneous bug fixes in ListObjects(), Tiering and LDAP service account handling.
- fix: use equalFold() instead of lower and compare
- Fix missing entries on first list resume
- fix: backend not reachable should be more descriptive
- add a tool to read healing.bin for debugging
- fix: restored object to preserve x-amz-meta properly
๐ View Raw Release Notes (Original Developer Log)
## Highlights
- Click [here](https://min.io/download) to download the latest version of MinIO.
- Click [here](https://min.io/pricing) for production support.
- **Downgrades are not supported in this release** for erasure-coded clusters, due to on-disk data format version bump - once upgraded erasure-coded clusters cannot be downgraded to the previous release. Please upgrade **staging** or **testing** environments first.
- Re-implementation of `xl.meta` metadata handling for objects with multiple versions, provides following improvements - refer #13573
- Allows checking if a version exists.
- Allows reading a single version without file wide unmarshal.
- Allows reading latest version of type without file wide unmarshal.
- Allows reading the latest version without file wide unmarshal.
- Allows checking if the latest is delete-marker by reading the first entry.
- Allows adding/updating/deleting a version with only header deserialization.
- Reduces allocations on conversion to internal data structures.
- 'Host' header-based dynamic redirect_uri when OpenID SSO is enabled.
```
mc admin config set alias/ identity_openid --env
...
MINIO_IDENTITY_OPENID_REDIRECT_URI_DYNAMIC (on|off) Enable 'Host' header based dynamic redirect URI
```
- Multiple healing-related issues were addressed related to objects healed from `xl.json -> xl.meta` format, refer #13671 #13681 #13717 #13715
- Disk caching now supports multipart **write-through** caching by default, refer #13613
- Adds explicit deny support for **AddServiceAccoun**, refer #13657
- Other miscellaneous bug fixes in ListObjects(), Tiering and LDAP service account handling.
## What's Changed
* Add CI for etcd IAM backend by @donatello in https://github.com/minio/minio/pull/13614
* allocate new highwayhash for each string hash by @harshavardhana in https://github.com/minio/minio/pull/13623
* Default multipart caching to writethrough by @poornas in https://github.com/minio/minio/pull/13613
* fix: use equalFold() instead of lower and compare by @harshavardhana in https://github.com/minio/minio/pull/13624
* Support dynamic reset of minio config by @anjalshireesh in https://github.com/minio/minio/pull/13626
* Fix missing entries on first list resume by @klauspost in https://github.com/minio/minio/pull/13627
* add multi-site replication tests by @harshavardhana in https://github.com/minio/minio/pull/13631
* fix: backend not reachable should be more descriptive by @harshavardhana in https://github.com/minio/minio/pull/13634
* Add tests for OpenID STS creds and add to CI by @donatello in https://github.com/minio/minio/pull/13638
* IAM: init IAM with Init() rather than InitStore() in tests by @donatello in https://github.com/minio/minio/pull/13643
* add a tool to read healing.bin for debugging by @harshavardhana in https://github.com/minio/minio/pull/13650
* add explicit deny support for service accounts by @harshavardhana in https://github.com/minio/minio/pull/13657
* ignore swapped drives instead of throwing errors by @harshavardhana in https://github.com/minio/minio/pull/13655
* fix: restored object to preserve x-amz-meta properly by @harshavardhana in https://github.com/minio/minio/pull/13664
* Fix: Thread context in surrounding function into IAM functions by @donatello in https://github.com/minio/minio/pull/13658
* add gocritic/ruleguard checks back again, cleanup code. by @harshavardhana in https://github.com/minio/minio/pull/13665
* reduceErrs to handle context.Canceled errors by @krisis in https://github.com/minio/minio/pull/13670
* support dynamic redirect_uri based on incoming 'host' header by @harshavardhana in https://github.com/minio/minio/pull/13666
* honor requests_max based on cgroup_limits if configured by @harshavardhana in https://github.com/minio/minio/pull/13673
* metrics: Add replication latency metrics by @vadmeste in https://github.com/minio/minio/pull/13515
* de-couple bucket metadata loading with lock context by @harshavardhana in https://github.com/minio/minio/pull/13679
* Add grafana json file for replication metrics by @sinhaashish in https://github.com/minio/minio/pull/13678
* fallback O_DIRECT if not supported, do regular reads() by @harshavardhana in https://github.com/minio/minio/pull/13680
* heal legacy objects when versioning is enabled after upgrade by @harshavardhana in https://github.com/minio/minio/pull/13671
* Use pointer based TLS field by @anjalshireesh in https://github.com/minio/minio/pull/13659
* Improve performance on multiple versions by @klauspost in https://github.com/minio/minio/pull/13573
* fix: Use policies from claims for service accounts by @donatello in https://github.com/minio/minio/pull/13690
* add missing copyright on testfile by @harshavardhana in https://github.com/minio/minio/pull/13691
* do not flush if Write() failed by @harshavardhana in https://github.com/minio/minio/pull/13597
* Fix the unit of measurement by @mshanmu in https://github.com/minio/minio/pull/13686
* allow in-memory persistence for gateway by @harshavardhana in https://github.com/minio/minio/pull/13694
* retry disk replacement healing if listing fails by @harshavardhana in https://github.com/minio/minio/pull/13689
* simplify the reader for speedtest by @harshavardhana in https://github.com/minio/minio/pull/13682
* Allow users to list their own service accounts by @donatello in https://github.com/minio/minio/pull/13706
* fix: allow scanner compaction on replicated buckets by @harshavardhana in https://github.com/minio/minio/pull/13711
* Add caching to CI job by @donatello in https://github.com/minio/minio/pull/13712
* Add MaxNoncurrentVersions to NoncurrentExpiration action by @krisis in https://github.com/minio/minio/pull/13580
* Fix entries not cleared on resolve by @klauspost in https://github.com/minio/minio/pull/13705
* Fix OpenID service accounts creation and update by @donatello in https://github.com/minio/minio/pull/13708
* dataDir needs maxima calculation to be correct by @harshavardhana in https://github.com/minio/minio/pull/13715
* re-implement pickValidInfo dataDir, move to quorum calculation by @harshavardhana in https://github.com/minio/minio/pull/13681
* fix: obtaining a valid FileInfo in getLatestFileInfo by @harshavardhana in https://github.com/minio/minio/pull/13717
* fix: make sure esClient is allocated before use by @harshavardhana in https://github.com/minio/minio/pull/13727
* Don't set net.ipv6.conf.wlp59s0.disable_ipv6=1 on host in docker-buildx.sh by @3nprob in https://github.com/minio/minio/pull/13724
* remove "expires" header from presign v2 as metadata by @harshavardhana in https://github.com/minio/minio/pull/13718
* policy: Fix a typo when validating the list of policies by @vadmeste in https://github.com/minio/minio/pull/13735
* Update minio-overview.json by @chrisbecke in https://github.com/minio/minio/pull/13730
* Reduce JWT overhead. by @klauspost in https://github.com/minio/minio/pull/13738
* allow service freeze/unfreeze on a setup by @harshavardhana in https://github.com/minio/minio/pull/13707
* fix: atomic.Value should be a concrete type to avoid panics by @harshavardhana in https://github.com/minio/minio/pull/13740
* Fix "send on closed channel" panic by @klauspost in https://github.com/minio/minio/pull/13745
* multi-delete: Avoid empty Delete tag in the response by @vadmeste in https://github.com/minio/minio/pull/13725
* use acceptedResponseStatusCode everywhere in HTTP logger by @harshavardhana in https://github.com/minio/minio/pull/13755
* Fix returning invalid account-not-exists error for LDAP svc acc by @donatello in https://github.com/minio/minio/pull/13756
## New Contributors
* @mshanmu made their first contribution in https://github.com/minio/minio/pull/13686
* @3nprob made their first contribution in https://github.com/minio/minio/pull/13724
* @chrisbecke made their first contribution in https://github.com/minio/minio/pull/13730
**Full Changelog**: https://github.com/minio/minio/compare/RELEASE.2021-11-09T03-21-45Z...RELEASE.2021-11-24T23-19-33Z