Releases: minio/minio
Releases · minio/minio
Bug fix release.
NOTE
- GCS Gateway continues to be in alpha state and is not ready for production.
- Admin API functionality continues to be in experimental state and is not ready for production.
Changelog
- posix: do not upstream errors in deleteFile (#4771) (3 hours ago)
- Avoid superfluous error messages after connect (#4762) (5 hours ago)
- fs: use keymarker and uploadidmarker in the multipart purging loop (#4775) (6 hours ago)
- ListMultipartUploads, ListObjectParts return empty response (#4694) (9 hours ago)
- Stop attempting to close nil Listener (#4753) (9 hours ago)
- posix: test isDirEmpty, change error conditional (#4743) (9 hours ago)
- Remove minimum inodes req check (#4747) (24 hours ago)
- Add TLS request for healthcheck (#4740) (24 hours ago)
- fs: drop Stat() call from fsDeleteFile,deleteFile (#4744) (24 hours ago)
- Removes max limit requirement on accessKey and secretKey length (#4730) (24 hours ago)
- Fix sysctl proposed values (#4741) (2 days ago)
- Add Docker command in erasure code document (#4735) (4 days ago)
- jwt,browser: allow short-expiry tokens for GETs (#4684) (11 days ago)
Feature release GCS gateway and bug fixes.
Highlights
- Gateway now supports GCS (Google Cloud Storage) backend.
- Bucket Notifications are now supported for MQTT target.
- Critical bug fixes in HTTP and RPC request timeouts.
NOTE
- GCS Gateway support is in alpha state and not ready for production use.
- Admin API functionality continues to be in experimental state and is not ready for production use.
Changelog
- api: Upon bucket delete remove in-memory state properly. (#4716) (17 hours ago)
- gcs: Better parsing of address flag (#4709) (4 days ago) <A. Elleuch>
- gateway-gcs: remove files older than 2 weeks in minio.sys.temp (#4599). Rename ##minio## to {minio}. (4 days ago)
- rpc: Do not use read/write deadlines for rpc connections. (#4647) (6 days ago)
- build: ditch verifiers on make (#4679) (9 days ago)
- gcs: Save partNumber as part of backend format. (#4666) (11 days ago)
- gateway-azure: Return right error when Part size is > 100MB (#4652) (12 days ago)
- Refactor HTTP server to address bugs (#4636) (12 days ago)
- gcs: Fetch port as GlobalString(). (#4657) (13 days ago)
- gcs: Fix writer/reader go-routine leaks and code re-use (#4651) (13 days ago)
- Append "-1" to etag when it is not MD5 (#4641) (2 weeks ago)
- posix: Check for min disk space and inodes (#4618) (2 weeks ago)
- GCS documentation (#4622) (2 weeks ago)
- Add NATS Streaming doc to event notification doc (#4645) (2 weeks ago)
- Remove dead unused errs and constants. (#4627) (2 weeks ago)
- fs: Fail CompleteMultipartUpload if partSize < 5M unless it is last part (#4642) (2 weeks ago)
- fix confusing code for http.Header handling (#4623) (3 weeks ago)
- ListenBucketNotification should set proper MIME type. (#4621) (3 weeks ago)
- Fix gateway browser screenshot (#4613) (3 weeks ago)
- Fixed one of the images with missing details. (#4612) (4 weeks ago)
- Updated docs with latest images. (#4611) (4 weeks ago)
- Remove deployment scenarios from erasure code guide (#4607) (4 weeks ago)
- GCS ListObjectV2 honours continuationToken (#4608) (4 weeks ago)
- Added new optimized images. (#4609) (4 weeks ago)
- create subcomposed objects if total parts are > 32 (#4593) (4 weeks ago)
- Remove unnecessary newline at beginning of server output (#4600) (4 weeks ago)
- Adds 'gcs not ready for production' msg (#4604) (4 weeks ago)
- cleanup makefile and enable CGO_ENABLED=0 (#4598) (4 weeks ago)
- web: Encode path in presigned GET urls (#4596) (4 weeks ago) <A. Elleuch>
- fix: Remove adverb from erasure coded startup message. (#4594) (4 weeks ago)
- browser: update ui-assets with new changes. (#4595) (4 weeks ago)
- Add support for helm package info in useragent (#4592) (4 weeks ago)
- build: Error out properly when unsupported arch is given. (#4585) (4 weeks ago)
- gcs: Check if the given project id argument exists (#4583) (4 weeks ago) <A. Elleuch>
- gateway/azure: Parse error responses for anonymous requests (#4543) (4 weeks ago)
- gateway-gcs: cleanup minio.sys.temp before deleting the bucket (#4582) (4 weeks ago)
- Added AnonListObjectsV2 support to GCS (#4584) (4 weeks ago)
- api: No need to set x-amz-bucket-region if region is empty. (#4586) (4 weeks ago)
- Improve GCS gateway example instruction (#4587) (4 weeks ago)
- gateway-gcs: double quotes should be striped from ETag (#4590) (4 weeks ago)
- gcs: Add missing AnonListObjectsV2 (5 weeks ago)
- Merge remote-tracking branch 'origin/feature-gcs' (5 weeks ago)
- tests: Enable previously disabled UNC tests on CI. (#4575) (5 weeks ago)
- Name return values to prevent the need (and unnecessary code bloat) (#4576) (5 weeks ago)
- sign: StreamingSign should use region from client. (#4577) (5 weeks ago)
- gateway-gcs: use minio.sys.temp/multipart/v1 as url base (#4562) (5 weeks ago)
- Added HEALTHCHECK in release Dockerfiles (#4550) (5 weeks ago)
- Add MINIO_REGION to server help message (#4558) (5 weeks ago)
- fix: OwnerID in response should be 64 character in length. (#4554) (5 weeks ago)
- Fix GCS help message (#4570) (5 weeks ago)
- Fix spelling of function name to
startLockMaintenance
(#4561) (5 weeks ago) - gateway/gcs: Complete minio browser support for gcs. (#4552) (5 weeks ago)
- Update minio-go dependency (#4551) (5 weeks ago)
- gateway/gcs: Change in multipart backend format (#4455) (5 weeks ago)
- Update Minio on DC/OS doc for latest Minio package (#4549) (5 weeks ago)
- xl/fs: Return InvalidPart{} error for part ETag mismatch. (#4541) (5 weeks ago)
- xl: prepare storage should Abort properly. (#4542) (5 weeks ago)
- Added ListObjectsV2 and ListObjectsV2 Anon support to Gateway S3 and Azure. (#4547) (5 weeks ago)
- Add support for reading and saving config on Gateway. (#4463) (5 weeks ago)
- GCS gateway allows apps to supply their own marker (#4495) (5 weeks ago)
- Allow bucket creation in different regions, closes #4287 and #4241 (5 weeks ago)
- Filter out internal object prefix during listing (#4435) (5 weeks ago)
- Set default ETag value if vendor returns empty md5 string (#4409) (5 weeks ago)
- fix: Check project id before starting gateway (#4412) (5 weeks ago)
- Remove profile option for gcs from gateway help message (#4421) (5 weeks ago)
- Change md5Sum to etag (#4399) (5 weeks ago)
- Cleanup and update the PR with the master branch. (5 weeks ago)
- Map only default region us-east-1 to gcs us region (5 weeks ago)
- gateway/gcs: send proper error responses for Get/SetBucket policies. (#4338) (5 weeks ago)
- gateway: Use default params when no args provided (#4315) (5 weeks ago)
- Fixes #4320 (#4332) (5 weeks ago)
- Fix ListObjectParts to list properly all parts - closes #4322 (5 weeks ago)
- Fix uploadIDMarker handling. (5 weeks ago)
- Fix issue with AbortMultipartUpload, closes #4322 (5 weeks ago)
- Fix issue with UNSIGNED payloads. (5 weeks ago)
- Verify multipart etag during complete, closes #4288 (5 weeks ago)
- Support iterating through ListObjectParts using NextPartNumberMarker, closes #4284 (5 weeks ago)
- Add region to gcs gateway example (5 weeks ago)
- Verify md5 content hash, closes #4285 (5 weeks ago)
- Use maxKeys for iterator (5 weeks ago)
- Support marker, closes #4286 (5 weeks ago)
- Use MINIO_REGION environment variable for region configuration, closes #4287 (5 weeks ago)
- Add access and secret key to example, needed to access Minio Gateway (5 weeks ago)
- Implement bucket policies (5 weeks ago)
- Return correct error when PutObject fails (5 weeks ago)
- Map S3 regions to Google (multi)regions (5 weeks ago)
- Make every backend responsible for parsing its own arguments, fixes #4293 (5 weeks ago)
- Return BucketAlreadyExists when bucket exists with another user (5 weeks ago)
- Allow bucket creation in different regions, closes #4287 and #4241 (5 weeks ago)
- Translate gcs errors to S3 compatible errors, fixes #4278 (5 weeks ago)
- Use default endpoint when not supplied (5 weeks ago)
- Add usage for GCS gateway, closes #4280 (5 weeks ago)
- Initial implementation of Google Cloud Storage (5 weeks ago)
- Added AllAccessDisabled error (5 weuieks ago)
- Add comment, gateway should validate object name (5 weeks ago)
- Move anonymous error to object translation from Azure specific to gateway (5 weeks ago)
- Implement gateway support Google Cloud Storage (5 weeks ago)
- Bump docs references to latest Minio release RELEASE.2017-06-13T19-01-01Z (#4546) (6 weeks ago)
- Reduce macOS instructions (6 weeks ago) <Anand Babu (AB) Periasamy>
- browser: Use custom input number step-up/down function (#4524) (6 weeks ago)
- Add support for MQTT server as a notification target (#4474) (6 weeks ago)
- xl: Fix rare freeze after many disk/network errors (#4438) (6 weeks ago)
- Fix xl.diskWithAllParts to proper checksum algorithm (#4509) (6 weeks ago)
Bug fix and feature release.
Highlights
- Enable minio browser support for Gateway backends Azure and AWS S3.
- Bypass network for lock requests for local server. (dsync) changes.
- Safe locking semantics implemented under NAS backend mode.
NOTE
- S3 Gateway support continues to be in alpha state and not ready for production use.
- Admin API functionality continues to be in experimental state and not ready for production use.
Changelog
- Add steps to remove Minio volumes in the swarm (#4536) (20 hours ago)
- fs: Hold
format.json
readLock ref to avoid GC. (#4532) (28 hours ago) - Update Kubernetes-yaml deployment example and Helm deployment doc with Minio image update steps (#4515) (35 hours ago)
- fs: Add safe locking semantics for
format.json
(#4523) (2 days ago) - Add support for DCOS host detection, improve Docker detection. (#4525) (2 days ago)
- Removed references to docker-machine in Swarm guide (#4502) (4 days ago)
- Clarify macOS instructions on brew paths. Deleted homebrew upgrade instructions. (#4501) (5 days ago)
- Add support for kubernetes host detection (#4514) (5 days ago)
- gateway: make each backend as subcommands. (#4506) (6 days ago)
- Allow "minio server ." to start minio in fs mode (#4513) (6 days ago)
- browser: Disable usage/free stats for browser-gateway (#4497) (6 days ago)
- TestInitListeners: Use port 0 pick available port (#4508) (6 days ago)
- Validate gateway arguments (#4376) (6 days ago)
- tests: Run select statement in separate goroutine (#4499) (6 days ago)
- Give more specific error message on browser for nested policies (#4488) (7 days ago)
- Prevent unnecessary (superfluous) initialization of return variable (#4490) (7 days ago)
- Fix browser download returning zero bytes for s3 (#4483) (8 days ago)
- disable settings change on browser in gateway mode (#4472) (8 days ago)
- fs: Migration should handle bucketConfigs as regular objects. (#4482) (8 days ago)
- Generate sha1sum as well for release for backward compatibility. (#4475) (8 days ago)
- creds: Secretkey should be generated upto 40 characters in length. (#4471) (9 days ago)
- Bypass network in lock requests to local server (#4465) (9 days ago)
- fix: Set UIversion in reply for policy API (#4469) (9 days ago)
- browser: update ui-assets with new changes. (#4467) (12 days ago)
- Fail if formatting is wrong in our CI tests. (#4459) (12 days ago)
- Enable browser support for gateway (#4425) (13 days ago)
- Disable redirect of HTTP request to a HTTPS Minio server (#4454) (2 weeks ago)
- Add errCorruptedFormat to list of ignored errors for metadata operations. (#4447) (2 weeks ago)
- Refactor service stop signal message. (#4428) (2 weeks ago)
- Load IO error count for posix atomically (#4448) (2 weeks ago)
- Fix and cleanup update message and improve related tests (#4361) (2 weeks ago)
- log: Startup banner should strip standard ports. (#4443) (2 weeks ago)
- server: Redirection should use globalMinioPort with host without port. (#4445) (2 weeks ago)
- log: Fix printing of signature error request headers. (#4444) (2 weeks ago)
- gateway-azure: Convert S3 metadata to azure metadata (#4384) (2 weeks ago)
- Some minor fixes (#4441) (2 weeks ago)
- Disable network share test, appveyor bug. (#4446) (2 weeks ago)
- fs: Make sure to validate bucket first in PutObject() (#4427) (3 weeks ago)
- Do not send envVars in ServerInfo() (#4422) (3 weeks ago)
- fix InvalidAccessKeyId error according to amazon documentation (#4404) (3 weeks ago)
- Add dotnet library to minio startup message (#4410) (3 weeks ago)
- Treat 0.0.0.0 as local address in --address flag (#4386) (3 weeks ago)
- Generate random ETag if client does not provide MD5 for PutObjectPart (#4385) (3 weeks ago)
- added secrets to distributed swarm minio (#4374) (3 weeks ago)
- Add nsswitch.conf to our docker image (#4379) (3 weeks ago)
- Bucket names can contain hyphen (#4324) (4 weeks ago)
- Browser: Fix Safari Blob download issue (#4357) (4 weeks ago)
- server/mux: Use constants provided by Go http (#4360) (4 weeks ago)
- gateway: Reject endpoint pointing to local gateway (#4310) (4 weeks ago)
- auth/rpc: Add RWMutex instead of Mutex for granular locking. (#4352) (4 weeks ago)
- Add new ReadFileWithVerify storage-layer API (#4349) (4 weeks ago)
- Make clearing of stale debug lock info independent of deleting map entry of lock itself. (#4353) (4 weeks ago)
- signature: use region from Auth header if server's region not configured (#4329) (4 weeks ago)
- server-info: Change Error type to string (#4346) (4 weeks ago)
- Rename structs for azure and s3 gateway to be consistent. (#4347) (4 weeks ago)
- fs/erasure: Rename meta 'md5Sum' as 'etag'. (#4319) (4 weeks ago)
- build/release: Generate sha256sums also without the release tag. (#4318) (5 weeks ago)
- Add minimum requirements sections to notifications docs (#4328) (5 weeks ago)
- Add slack channel link to corrupted disk err msg (#4270) (5 weeks ago)
- Add a graceful msg when CTRL+C is pressed. (#4248) (5 weeks ago)
- build/release: Generate sha256sums for built binaries. (#4311) (5 weeks ago)
- web-handler: Allow anonymous download of zip (#4309) (5 weeks ago)
- Prevent duplicate policy rows from being created (#4276) (5 weeks ago)
- fs: Verify if parent is an object before i/o. (#4304) (5 weeks ago)
- fs/erasure: Ignore objects with / even for DeleteObject() (#4303) (5 weeks ago)
- gateway: reject requests with unknown authorization (#4297) (5 weeks ago)
- Multi tenancy doc (#4215) (5 weeks ago)
- gateway-s3: Avoid x2 double quotes in ListParts (#4295) (5 weeks ago)
- Bump Docker compose file to latest release (#4271) (5 weeks ago)
- browser: make input number types readonly in share objects modal (#4273) (5 weeks ago)
- config: Do not migrate config file if not needed. (#4264) (6 weeks ago)
- doc: Fix pgsql cmd example (#4265) (6 weeks ago)
- build: Fix release build names. (#4263) (6 weeks ago)
- fs: Migrate object metadata to objects directory. (#4195) (6 weeks ago)
- docs: use IEC format such as iB everywhere. (#4247) (6 weeks ago)
- Implement anonymous uploads, fixes #4250 (#4259) (6 weeks ago)
- Add Kubernetes yaml file deployment example (#4262) (6 weeks ago)
Bug fix and feature release.
Critical Fix
This release fixes a critical bug when deploying Minio in distributed mode using Kubernetes - 4225: Minio Server in RELEASE.2017-04-25T01-27-49Z and above, doesn't start in a distributed mode in Kubernetes. All other Minio deployment scenarios do not encounter this issue.
Breaking Change
If deploying minio in distibuted mode on kubernetes using a custom yaml
file. Remove the command
section, use the args
section instead. See a sample yaml
file reference here.
Highlights
- Azure Gateway now supports custom endpoint.
- Adds MySQL as new bucket notification target.
- Performance improvements in dsync for high concurrent requests.
- Relax TLS cipher suite requirements, minimum TLS protocol version is TLS 1.2.
- Bucket notifications are now supported for GetObject and HeadObject operations
as well, with extra source information.
NOTE
- S3 Gateway support is in alpha state and not ready for production use.
- Admin API functionality is in experimental state and not ready for production use.
Changelog
- Add minimum requirements for MySQL notification (#4260) (88 minutes ago)
- browser: Update ui-assets with new fixes. (#4246) (4 hours ago)
- Webhook endpoints can fail, we must start the server. (#4255) (5 hours ago)
- Bump up minio-go to (fixes #4243) (#4256) (5 hours ago)
- browser: Selecting a new bucket appends objects list to previous bucket's list (#4252) (8 hours ago)
- Make gateway help for s3/azure similar (#4249) (8 hours ago)
- Add waiting on hosts in docker entrypoint for distributed setups. (#4244) (18 hours ago)
- Use s3.amazonaws.com as default endpoint, fixes #4240 (#4242) (20 hours ago)
- Fix bug in JSON representation of object properties (#4238) (23 hours ago)
- Add s3 backend to help, fixes #4219 (#4221) (25 hours ago)
- fix: ignore TLS handshake error. (#4227) (2 days ago)
- tests: Fix rare test crash (#4175) (2 days ago)
- gateway-s3: vendor-update minio-go (#4220) (2 days ago)
- gateway: Restore bucket policy functionality for Azure (#4209) (2 days ago)
- config: Improve config migrate messaging. (#4216) (2 days ago)
- windows: Support all REPARSE_POINT attrib files properly. (#4203) (3 days ago)
- cleanup and fix comments (#4212) (3 days ago)
- gateway: Rename gateway files to have "gateway-" prefix (#4207) (3 days ago)
- gateway: reject bad path segments in URL (#4202) (6 days ago)
- gateway: Fix help message for gateway (#4201) (6 days ago)
- pkg: Update the rpm spec with latest release. (#4187) (6 days ago)
- browser: Listing should append instead of replacing previous listing (#4188) (6 days ago)
- cors: Set Access-Control-Allow-Credentials to true (#4185) (7 days ago)
- Implement gateway S3 support (#3940) (7 days ago)
- web: Simplify and converge common functions in web/obj API. (#4179) (8 days ago)
- Improve duration humanization. (#4071) (9 days ago)
- docs: Update with home brew special note for macOS upgrades. (#4180) (9 days ago)
- docs: Document homebrew install path changes for minio. (#4178) (9 days ago)
- Provide command to help fill issue template (#4174) (10 days ago)
- build: -s -w should be added by gen-ldflags.go (#4172) (10 days ago)
- docs: Point docker compose to new release. (#4171) (10 days ago)
- server: Validate path for bad components in a handler. (#4170) (10 days ago)
- Remove hardcoded min and max limit for erasure coding (#4157) (10 days ago)
- docs: Add Minikube deployment to k8s docs (#4133) (10 days ago)
- Enable build on solaris (#4115) (11 days ago)
- admin: ServerInfo() returns info for each node (#4150) (2 weeks ago)
- api: Fix registering of s3 endpoint peers properly (#4159) (2 weeks ago)
- lock: Vendorize all the new changes made in minio/dsync (#4154) (2 weeks ago)
- server/mux: Fix serverMux to set deadlines based on UTC time. (#4146) (2 weeks ago)
- Add key for Kafka messages (fixes #4143) (#4151) (2 weeks ago)
- lock: Fix missing formatting directives while printing. (#4147) (2 weeks ago)
- docs: Fix and reword FreeBSD documentation. (#4145) (2 weeks ago)
- server: Fix message when corrupted or unsupported format is found. (#4142) (2 weeks ago)
- Remove duration field from lock instrumentation (#4111) (3 weeks ago)
- cache: Increasing caching GC percent from 20 to 50. (#4041) (3 weeks ago)
- docs: Created new illustration for docs. (#4012) (3 weeks ago)
- fs: Remove fs meta lock when PutObject() fails (#4114) (3 weeks ago)
- gateway: Fix help message for custom Azure Blob Storage endpoint. (#4113) (3 weeks ago)
- Return possible states a heal operation (#4045) (3 weeks ago)
- server: Fix CI build complaints (#4119) (3 weeks ago)
- xl: Add stat calls to keep track of ignored errors. (#4117) (3 weeks ago)
- server: Error out if loopback addr is used for Distributed Erasure (#4105) (3 weeks ago)
- tests: Fix the sopradic test failure in TestListObjectPartsDiskNotFound (#4107) (3 weeks ago)
- handlers: Ignore malformatted datetime type header (#4097) (3 weeks ago)
- Cleanup service docs (#4103) (3 weeks ago)
- server: Fix a regression in printing startup banner. (#4100) (3 weeks ago)
- gateway: Support for custom endpoint. (#4086) (3 weeks ago)
- Add extensive endpoints validation (#4019) (3 weeks ago)
- lock/rpc: change rpcPath to be called serviceEndpoint. (#4088) (3 weeks ago)
- Browser: Make login form browser auto-fill compatible (#4091) (3 weeks ago)
- docs: Update docker quick-start guide and adds relevant project URLS (#4075) (3 weeks ago)
- Fix for writes from Apache Spark. (#4074) (3 weeks ago)
- signature-v4: Use sha256("") for calculating canonical request (#4064) (3 weeks ago)
- server: Introduce a new env MINIO_REGION. (#4078) (4 weeks ago)
- Allow cluster to start when only n/2 servers are up (#4066) (4 weeks ago)
- docker: Support docker swarm secrets. (#3977) (4 weeks ago)
- api: SourceInfo should be populated in GET/HEAD notification. (#4073) (4 weeks ago)
- notify: Webhook endpoints can fail, but we must start the server. (#4060) (4 weeks ago)
- Add steps to run Minio distributed on Windows (#4068) (4 weeks ago)
- log: Dump signature request properly. (#4063) (4 weeks ago)
- Fix xml block syntax in admin-api Readme (#4062) (4 weeks ago)
- docs: macOS brew now refers to Minio fork (#4059) (4 weeks ago)
- admin/info: Add HTTPStats value as part of serverInfo() struct. (#4049) (4 weeks ago)
- refactor: extractSignedHeaders() handles headers removed by Go http server (#4054) (4 weeks ago)
- signature-v4: Support for transfer-encoding request header (#4053) (4 weeks ago)
- build: Fix compilation in 32 bits platforms (#4052) (4 weeks ago)
- browser: Generate new UI assets. (4 weeks ago)
- fix: add white space in storage usage section (#4038) (4 weeks ago)
- fs: Enable returning ETag along with ListObjects() (#4042) (4 weeks ago)
- sigv2: Unespace canonicalized resources values (#4034) (4 weeks ago)
- handler: simplify parsing valid location constraint. (#4040) (4 weeks ago)
- Provide mc-admin-heal command on start-up (#4031) (4 weeks ago)
- madmin: Rename HealObjectResult to HealResult (#4035) (4 weeks ago)
- (upstream/master) sys/stats: return cgroup mem limit, fall back to sysinfo() (#4002) (5 weeks ago)
- doc: Explain how to create certificate chain file (#4032) (5 weeks ago)
- build: Reduce binary size by using -s -w (#4027) (5 weeks ago)
- vet: Fix all the go vet complaints (#4029) (5 weeks ago)
- Add disksUnavailable healStatus const (#3990) (5 weeks ago)
- Add
access
format support for Elasticsearch notification target (#4006) (5 weeks ago) - server/tls: Do not rely on a specific cipher suite (#4021) (5 weeks ago)
- notifiers: Stop using url.Parse in validating address format. (#4011) (5 weeks ago)
- Add
deliveryMode
parameter for AMQP notfication target (#4008) (5 weeks ago) - Browser: Use object name with prefix to delete sub-path objects (#4013) (5 weeks ago)
- fix: use its own lock in serverConfigV17 (#4014) (5 weeks ago)
- server: handle command line and env variables at one place. (#3975) (5 weeks ago)
- docs: Fix typo in docs/config/README.md (#4009) (5 weeks ago) <Romain Bouyé>
...
Feature release (gateway)
Highlights
- Gateway now supports custom domains.
Changelog
Critical fixes
Highlights
This release includes critical security fixes. We strongly recommend that you update all your Minio deployments immediately.
ChangeLog
- server: Validate path for bad components in a handler. (#4170) (34 minutes ago)
New feature release
Highlights
- First Stable Release of Minio Gateway.
- Browser now supports downloading multiple files.
- Browser now supports deleting multiple objects.
- Browser now fully supports generating share urls
with custom expiry properly (previously release had
a regression). - Rewrite of graceful HTTP shutdown mechanism.
- Cleanups and many more bug fixes in object layer,
rpc etc.
ChangeLog
- Implement S3 Gateway to third party cloud storage providers. (#3756) (2 hours ago)
- config: Accept more address format + unit test (#3915) (3 hours ago)
- config: Relax browser and region to be empty. (#3912) (4 hours ago)
- Vendor upstream redis library instead of our fork. (#3913) (6 hours ago)
- Simplify credential usage. (#3893) (14 hours ago)
- Use canonicalETag helper wherever needed. (#3910) (18 hours ago)
- config: Check for duplicated entries in all scopes (#3872) (22 hours ago)
- Added that no special config changes reqd (#3906) (30 hours ago)
- browser: Do not show "Loading..." if there are no buckets. (#3904) (2 days ago)
- Browser: Use babel-polyfill to support new ES6 built-ins in older browsers (#3900) (2 days ago)
- xl,fs: Return 404 if object ends with a separator (#3897) (3 days ago)
- api: postPolicy cleanup. Simplify the code and re-use. (#3890) (3 days ago)
- Simplify shared mode document (#3888) (4 days ago)
- Simplify the title for orchestration and some words. (#3887) (5 days ago)
- Browser: Add Object.assign polyfill to support older browsers (#3884) (6 days ago)
- Update kafkacat command with consumer flag (#3882) (6 days ago)
- browser: update ui-assets with new changes. (7 days ago)
- Added documentation for orchestration platforms (#3684) (7 days ago)
- docker: Add ARM64 image build support (#3876) (7 days ago)
- Browser: Show complete bucket name by removing the ellipsis cut off (#3877) (7 days ago)
- cleanup: All conditionals simplified under pkg. (#3875) (7 days ago)
- Fix odd shadowing bug in XL init. (#3874) (8 days ago)
- Make unit testable cert parsing functions. (#3863) (8 days ago)
- Code cleanup - simplify server side code. (#3870) (8 days ago)
- docker: ca-certificates should not be removed. (#3868) (9 days ago)
- docker: Add ARM docker container dockerfile. (#3574) (9 days ago)
- xl: Respect min. space by checking PrepareFile err (#3867) (9 days ago)
- Relax minio server start when disk threshold is reached and adds space check in FS (#3865) (9 days ago)
- browser: Humanize expiry time for Share-Object. (#3861) (10 days ago)
- Remove commands and commandsTree global variables. (#3855) (10 days ago)
- Share object expiry value modification modal was not working (#3860) (10 days ago)
- Browser: Implement multiple object delete (#3859) (10 days ago)
- xl: quickHeal heal bucket only when needed. (#3854) (11 days ago)
- rpm: Add RPM spec for minio build. (#3853) (11 days ago)
- XL: Make listOnlineDisks and outDatedDisks consistent w/ each other. (#3808) (12 days ago)
- browser: Send correct arguments for RemoveObjects web handler. (#3848) (13 days ago)
- api: CopyObjectPart was copying wrong offsets due to shadowing. (#3838) (13 days ago)
- tests: Fix web handlers testing with faulty disks (#3845) (13 days ago)
- Fix check for bucket name: (#3832) (13 days ago)
- quick: Add yaml format support (#3833) (13 days ago)
- api: Increase the maximum object size limit from 5GiB to 16GiB. (#3834) (13 days ago)
- obj: Make checkBucketExist() returns all errors (#3843) (13 days ago)
- web: Validate if bucket names are reserved (#3841) (13 days ago)
- Enhanced newObjectLayerFn (#3837) (2 weeks ago)
- Remove globalQuiet and globalConfigDir global variables (#3830) (2 weeks ago)
- Remove globalMaxCacheSize and globalCacheExpiry variables (#3826) (2 weeks ago)
- quick: Simplify Load() and CheckVersion() (#3831) (2 weeks ago)
- Using RWMutex to guard closing and listeners (#3829) (2 weeks ago)
- Make default values as constants (#3828) (2 weeks ago)
- Move rlimit functions into sys package. (#3824) (2 weeks ago)
- Close client connection after checking for release update (#3820) (2 weeks ago)
- config: Fix creating new config with wrong version (#3821) (2 weeks ago)
- web-handlers: Support removal of multiple objects at once. (#3810) (2 weeks ago)
- Share object expiry value modification modal was not working (#3860) (10 days ago)
- Browser: Implement multiple object delete (#3859) (10 days ago)
- xl: quickHeal heal bucket only when needed. (#3854) (11 days ago)
- rpm: Add RPM spec for minio build. (#3853) (11 days ago)
- XL: Make listOnlineDisks and outDatedDisks consistent w/ each other. (#3808) (12 days ago)
- browser: Send correct arguments for RemoveObjects web handler. (#3848) (13 days ago)
- api: CopyObjectPart was copying wrong offsets due to shadowing. (#3838) (13 days ago)
- tests: Fix web handlers testing with faulty disks (#3845) (13 days ago)
- Fix check for bucket name: (#3832) (13 days ago)
- quick: Add yaml format support (#3833) (13 days ago)
- api: Increase the maximum object size limit from 5GiB to 16GiB. (#3834) (13 days ago)
- obj: Make checkBucketExist() returns all errors (#3843) (13 days ago)
- web: Validate if bucket names are reserved (#3841) (13 days ago)
- Enhanced newObjectLayerFn (#3837) (2 weeks ago)
- Remove globalQuiet and globalConfigDir global variables (#3830) (2 weeks ago)
- Remove globalMaxCacheSize and globalCacheExpiry variables (#3826) (2 weeks ago)
- quick: Simplify Load() and CheckVersion() (#3831) (2 weeks ago)
- Using RWMutex to guard closing and listeners (#3829) (2 weeks ago)
- Make default values as constants (#3828) (2 weeks ago)
- Move rlimit functions into sys package. (#3824) (2 weeks ago)
- Close client connection after checking for release update (#3820) (2 weeks ago)
- config: Fix creating new config with wrong version (#3821) (2 weeks ago)
- web-handlers: Support removal of multiple objects at once. (#3810) (2 weeks ago)
- tests: Fix test server init - cleanup (#3806) (2 weeks ago)
- api: Multi object delete should be protected. (#3814) (2 weeks ago)
- fix: Set globalMaxCacheSize to allowable value. (#3816) (2 weeks ago)
- Browser: Remove duplicate object entries while sorting (#3813) (2 weeks ago)
- config: Add browser parameter (#3807) (2 weeks ago)
- Set disk to nil after write which needs quorum (#3795) (3 weeks ago)
- event: use common initialization logic (#3798) (3 weeks ago)
- rpc: Remove time check for each RPC calls. (#3804) (3 weeks ago)
- cli: Use ADDRESS:PORT to clarify --address behavior (#3803) (3 weeks ago)
- xl: Rename getOrderedDisks as shuffleDisks appropriately. (#3796) (3 weeks ago)
- Browser: Implement multi select user interface for object listings (#3730) (3 weeks ago)
- Added server times note and fix Notes rendering for Doctor. (#3787) (3 weeks ago)
- xl/multipart: Make sure to delete temp renamed object. (#3785) (3 weeks ago)
- ci: For windows builds stick to go1.7.5 (#3786) (3 weeks ago)
- update: For source builds look for absolute path. (#3780) (3 weeks ago)
- Remove unused erasure diagram (#3783) (3 weeks ago)
- Update erasure code image (#3782) (3 weeks ago)
- doc: Small rewrite of bucket events notif intro (#3775) (3 weeks ago)
- For streaming signature do not save content-encoding in PutObject() (#3776) (3 weeks ago)
- Fix rabbitmq reconnect problem (#3778) (3 weeks ago)
- cli: Make sure to add --help flag for subcommands. (#3773) (4 weeks ago)
- copyObject: Be case sensitive for windows only server. (#3766) (4 weeks ago)
- flags: Fix --version output (#3772) (4 weeks ago)
- server-mux: Rewrite graceful shutdown mechanism (#3771) (4 weeks ago)
- config-old: Use interface to avoid code repetition. (#3769) (4 weeks ago)
- auth/rpc: Token can be concurrently edited protect it. (#3764) (4 weeks ago)
- Make sure client initializes to proper lock RPC path. (#3763) (4 weeks ago)
- fs: Do not return reservedBucket names in ListBuckets() (#3754) (4 weeks ago)
- Fix the systemd config path to the new URL (4 weeks ago)
- Fix tests from cli changes (4 weeks ago)
cli regression release
ChangeLog
- cli: Add new features from CLI. (33 minutes ago)
- cli: Bring upstream changes to minio server. (48 minutes ago)
Bug fix release.
Highlights
- CopyObjectPart API implemented supporting recent docker registry release.
- Browser improvements handles large directories now with infinite scrolling.
- Minio server now can be built on OpenBSD, NetBSD, Solaris/Illumos.
- Windows now supports full case insensitive behavior.
- PutObject major optimization change for XL now splits parts properly.
- Retry go-routine control fix for server under high load.
- Bitrot now works properly on ARM.
- JWT secretKey hash now cached.
ChangeLog
- (tag: RELEASE.2017-02-15T22-55-24Z, origin/release) Bump to new release (5 minutes ago)
- Merge branch 'master' into release (7 minutes ago)
- browser: Remove currentPath prefix in object names from list result. (#3750) (2 hours ago)
- sRPC/client: Properly trim storageRPCPath for actual disk path. (#3749) (11 hours ago)
- main/cli: Don't print hidden flags/commands in help template. (#3748) (13 hours ago)
- mainUpdate: refactor to handle quiet flag properly (#3744) (15 hours ago)
- mainVersion: Remove minio init and quiet handling (#3739) (3 days ago)
- objcache: Return io.ReaderAt to avoid Seeking and Reading. (#3735) (4 days ago)
- browser: Implement infinite scrolling for object listing. (#3720) (5 days ago)
- trie: new package (#3729) (5 days ago)
- config: setter/getter for Notifier and Logger into its own struct. (#3721) (6 days ago)
- update the blake2b implementation (#3724) (6 days ago)
- Presigend Post: Error out when File is not found (#3723) (6 days ago)
- web-handlers: Implement API to download files as a zip file. (#3715) (7 days ago)
- Make minio server compile on OpenBSD, NetBSD, Solaris (#3719) (7 days ago)
- Honor envs properly for access and secret key. (#3703) (8 days ago)
- tests: Reduce two functions work to gain test time (#3712) (8 days ago)
- auth/rpc: Make auth rpc client retry configurable. (#3695) (9 days ago)
- Let hijacker and flusher interfaces to be reflected. (#3709) (9 days ago)
- signv4: Read always returns EOF when stream ends (#3692) (9 days ago)
- signature-v4: stringToSign and signingKey should use Scope's date. (#3688) (9 days ago)
- all/windows: Be case in-sensitive about pattern matching. (#3682) (12 days ago)
- server-mux: Simplify graceful shutdown behavior (#3681) (12 days ago)
- Require content-length in POST & Upload requests (#3671) (13 days ago)
- xl: Abort multipart upload should honor quorum properly. (#3670) (2 weeks ago)
- Fix unresponsiveness of
doneCh
due to Sleep call. (#3667) (2 weeks ago) - xl/utils: getPartSizeFromIdx should return error. (#3669) (2 weeks ago)
- browser: Make logo and "Minio Browser" text non-clickable. (#3668) (2 weeks ago)
- Implement CopyObjectPart API (#3663) (2 weeks ago)
- xl/PutObject: Split object into parts (#3651) (2 weeks ago)
- browser: Component attr names should not clash with redux state keys. (#3656) (2 weeks ago)
- xl: bit-rot algo was not set in get-object. (#3652) (2 weeks ago)
- Fail PutBucketPolicy if conditions are incompatible with actions. (#3659) (2 weeks ago)
- Fix handling of StringNotEquals condition operator (#3660) (2 weeks ago)
- heal: Should delete stale object parts before healing (#3649) (2 weeks ago)
- fix: do port availability check only on macOS. (#3654) (2 weeks ago)
- Add aws:Referer condition key support. (#3641) (2 weeks ago)
- xl: Fix GET of an empty multiparted object (#3646) (3 weeks ago)
- Fix issue with webhook events not closing Response body, leaving connections open with remote server (#3645) (3 weeks ago)
- jwt: Cache the bcrypt password hash. (#3526) (3 weeks ago)
- fs: if
fs.json
is empty ignore it while reading metadata. (#3634) (3 weeks ago) - fs: cleanup - do not cache size of metafiles (#3630) (3 weeks ago)
Bug fix and new feature shared backend release
Highlights
- Shared Backend support - standalone server can be run on shared NAS backend.
- CopyObject API is not fully S3 compatible.
- ServerMux now can handle idle connections.
- Management APIs are now available in beta.
- Other misc improvements in locking, re-connection logic etc.
ChangeLog
- Move to blake2b-simd due to perf problems in golang.org/x/crypto (89 minutes ago)
- browser: Access to private paths redirects to login. (#3622) (7 hours ago)
- browser: add yarn.lock and .gitignore files. (#3621) (8 hours ago)
- Add dry-run query param for HealFormat API (#3618) (11 hours ago)
- admin: Enhance set credentials test (#3619) (11 hours ago)
- miniobrowser: Bring Minio browser source into minio repo. (#3617) (25 hours ago)
- signature-v2: Use request.RequestURI for signature calculation. (#3616) (27 hours ago)
- server-mux: Keep listening after Accept() err (#3613) (34 hours ago)
- admin: Add version to service Status API response (#3605) (35 hours ago)
- presign-v2: Compute signature on encoded URL path (#3612) (35 hours ago)
- Implement mgmt REST APIs to heal storage format. (#3604) (2 days ago)
- vendor-update: Minio Browser (#3609) (2 days ago)
- server-mux: Add tcp idle read timeout (#3607) (2 days ago)
- server/mux: PeekProtocol() should return error and connection be closed. (#3608) (2 days ago)
- Make PutObject a nop for an object which ends with "/" and size is '0' (#3603) (4 days ago)
- fs: start even if there are not enough free space (#3606) (4 days ago)
- Handle the region for GetBucketLocation and PutBucket properly (#3596) (5 days ago)
- server/mux: Close the connection even if buffer.Flush() returns error. (#3599) (5 days ago)
- Don't Check Available Inodes on NFS (#3598) (5 days ago)
- heal: Add ListBucketsHeal object API (#3563) (5 days ago)
- storage/rpc: Remove network error restriction. (#3591) (6 days ago)
- admin: Add service Set Credentials API (#3580) (7 days ago)
- add delete and options methods to CORS whitelist (#3589) (7 days ago)
- Implement mgmt REST APIs for heal subcommands (#3533) (7 days ago)
- obj: Return objectInfo for CompleteMultipartUpload(). (#3587) (8 days ago)
- fs: Re-implement object layer to remember the fd (#3509) (8 days ago)
- server/http: Add missing keep alive for incoming tcp connections. (#3585) (9 days ago)
- config: Allow non-standard config dir to be configured with SSL. (#3583) (9 days ago)
- build: Add ARM binary builds for ARMv6 and Aarch64. (#3577) (11 days ago)
- admin: Enhance locks list json response (#3573) (11 days ago)
- Add notifications by webhook. (12 days ago)
- nats: Add support of NATS.io Streaming server (#3494) (13 days ago)
- browser: Allow anonymous browsing of readable buckets. (#3515) (13 days ago)
- event: Enhance event message struct to provide origin server. (#3557) (2 weeks ago)
- handlers: Handle crash if r.URL.Path is empty. (#3554) (2 weeks ago)
- heal: Fix new entries computation in listDirHeal (#3551) (2 weeks ago)
- Presign V2: Unescape non-std queries in urls (#3549) (2 weeks ago)
- api: Set appropriate content-type for success/error responses. (#3537) (3 weeks ago)
- Implement list, clear locks REST API w/ pkg/madmin support (#3491) (3 weeks ago)
- browser: Handle proper login errors. (#3518) (3 weeks ago)
- Adopt dsync interface changes and major cleanup on RPC server/client. (3 weeks ago) <Bala.FA>
- Fix delays and iterim fix for the partial fix in #3502 (#3511) (4 weeks ago)
- Auto-reconnect for regular authRPC client. (#3506) (4 weeks ago)
- Improve reconnection logic, allow jitters. (#3502) (4 weeks ago)
- Support building specific architectures. (4 weeks ago)
- Have simpler JWT authentication. (#3501) (4 weeks ago)
- objAPI: Implement CopyObject API. (#3487) (4 weeks ago)
- Clean up lock-instrumentation and improve comments (#3499) (4 weeks ago)
- Generate and use access/secret keys properly (#3498) (4 weeks ago)
- fix blake2b tests on non-amd64 machines (#3496) (4 weeks ago)
- Fix typo in erasure-utils.go (5 weeks ago)
- bit-rot: Default to sha256 on ARM64. (#3488) (5 weeks ago)
- replace blake2b implementation (#3481) (5 weeks ago)
- fs/xl: Simplify bucket metadata reading. (#3486) (5 weeks ago)
- admin: Add missing madmin examples and API docs. (#3483) (5 weeks ago)
- admin: ServiceStatus() shouldn't have to write double http headers. (#3484) (5 weeks ago)
- admin: Fix wrong vendorized location for s3signer and s3utils. (5 weeks ago)
- Admin Lib: Implement Service API (#3426) (5 weeks ago)
- Fix: Typo in non canonicalized header extraction (#3480) (5 weeks ago)
- PostForm: Return http 303 if redirect is specified (#3479) (5 weeks ago)
- server: Sort disk arguments for consistent ordering (#3469) (5 weeks ago)
- PostForm: Save supported headers in obj metadata (#3474) (5 weeks ago)
- PostForm: Follow success_action_status requirement (#3467) (5 weeks ago)
- rpcclient: fix leaky connection (#3471) (5 weeks ago)
- fs: validate filesystem path argument properly. (#3470) (5 weeks ago)
- Add service API handler stubs for status, stop and restart (#3417) (6 weeks ago)
- signv2: Do not use path encoding for query values. (#3458) (6 weeks ago)
- Add support for Kafka as a notifications target (#2869) (#3439) (6 weeks ago)
- server: checkEndpoints syntax properly. (#3451) (6 weeks ago)
- lock/server: Check if the lock server itself is skewed back. (#3447) (6 weeks ago)
- server: Exit gracefully if no endpoint is local to it. (#3442) (6 weeks ago)