Releases Tags
-
Garage v0.8.2 Stable
released this 3 months ago | 62 commits to main since this release
This minor release includes the following improvements and fixes:
CLI improvements:
- report available disk usage (#479, #487)
- improve
garage worker set
and implementgarage worker get
(#464) - clearer LMDB error message (#517, #519)
New features:
- secrets can be configured using separate files and environment varialbes (#466, #499)
- K2V PollRange (#471)
- added system metrics (#472, #524)
/check
web endpoint for domain verification by Caddy (#474, #491, #505)- log
X-Forwarded-For
header when available (#500, #504)
Bug fixes:
- PutObject: better cleanup when interrupted in the middle, to avoid accumulation of useless .tmp files (#462)
- scrub now has an interval of 25 + 10 random days to avoid scrubbing all nodes at once (#516, #523)
- fix duplicated content-type in error document (#493)
- fix an error message (#497)
- fix testing framework (#526, #528)
Internals / refactorings:
- unified queue for asynchronous table updates (#451)
- refactoring/simplification of background workers (#451, #463)
- refactoring of encoding/decoding functions and data migration code (#461)
- updated Cargo dependencies (#484, #494, #514)
Other:
- improvements to helm chart (#409, #425)
- improvements to documentation (#475, #477, #482, #485, #489, #496, #501, #505, #512, #513, #515)
Thanks to all of the contributors that have participated in this release: Baptiste Jonglez, Felix Scheiniost, Jonathan Davies, kaiyou, Maximilien Richer, Mike Coleman, Patrick Jahns, Quentin Dufour, teutat3s, wilson
Downloads
-
Garage v0.8.1 Stable
released this 5 months ago | 257 commits to main since this release
This minor release includes a few improvements and fixes:
-
New
/health
and/v0/health
admin API endpoints to check node health (#440) -
Various CLI improvements, including new debug options for lost blocks (#448)
-
Properly enforce
allow_create_bucket
permission flag (#445, #447) -
Fix router keyword handling with non-empty value (#442, #446)
-
Fix logs appearing twice (#435)
-
Make Git repository into a Nix flake (#424)
-
Many documentation updates
Thanks to all of the contributors that have participated in this release: felix.scheinost, kaiyou, Maximilien R, Patrick Jahns, tompearson.
Downloads
-
-
Garage v0.8.0 Stable
released this 7 months ago | 303 commits to main since this release
This release is the final version of Garage v0.8.0. Most changes have already been listed in the release notes of v0.8.0 RC1 and RC2. Here are the main highlights of v0.8.0 compared to v0.7.3:
-
LMDB is now officially supported as an alternative database engine to replace Sled
-
Bucket size monitoring and quotas
-
Many improvements to background maintenance tasks, including scheduled automatic scrub of the data store
-
Significant performance improvements
-
Our experimental K2V API is included in release builds (though not activated if you haven't configured it)
The following has changed since RC2:
-
Many documentation updates
-
OpenAPI specification of the Admin API (see https://garagehq.deuxfleurs.fr/api/garage-admin-v0.html for a rendered version)
-
Show a backtrace and a nice message when Garage panics
-
Added an experimental
garage bucket cleanup-unfinished-uploads
command to help remove unfinished multipart uploads when they take too much space.
There is one known bug for this release:
- #414: Panic during application of new cluster layout in 0.8.0-rc1. Please comment on the issue if you also had it, so that we know this is not an isolated case.
Thanks to all of the contributors that have participated in this new version since v0.7.3: Alex, chemicstry, Jakub Jirutka, Maximilien, Quentin, Simon C, Tobias Krischer, Zorun.
**Click here to get a binary release suited to your platform
Downloads
-
-
Garage v0.8.0 RC2 Pre-Release
released this 7 months ago | 339 commits to main since this release
This release is the second Release Candidate for Garage 0.8.0. Improvements in this version are the following:
-
Shutdown properly on SIGTERM/SIGHUP and on Windows signals (#396)
-
Fix time calculations that made Garage panic in extreme scenarios (#398, thanks to Zorun for the intensive testing)
-
Add Helm chart for running Garage inside of Kubernetes (#331, thanks chemicstry and Maximilien)
-
Upgraded build toolchain with Rust >= 1.63.0 (#400)
-
Admin API and K2V API: return HTTP 204 No Content when appropriate (#376, #403, thanks Tobias Krischer for the contribution)
-
Add support for talking to Consul through HTTPS (#405)
-
Many documentation updates
Thanks to all of the contributors for this release: Alex, chemicstry, Maximilien, Tobias Krischer, Zorun.
Click here to get a binary release suited to your platform (scroll down to "extra builds")
Downloads
-
-
Garage v0.8.0 RC1 Pre-Release
released this 8 months ago | 378 commits to main since this release
This release is the first Release Candidate for Garage 0.8. Improvements in this version are the following:
-
Ability to replace sled with lmdb or sqlite for the metadata storage (#284, #322)
-
K2V now included in official release builds, still as a technical
preview (the API is unstable and might be subject to changes) (#302) -
Update to Netapp 0.5 with streaming body; stream data blocks to client
as they are received (#343) -
Scrub is scheduled automatically, can be paused/resumed/made faster or
slower at runtime (#207, #255, #332) -
Background block resync can be made faster or slower at runtime (#369)
-
Many computationally-intensive tasks have been moved to dedicated
tokio threads for blocking tasks (#342) -
Reduce lock contention in block manager (#342)
-
Less sensitive timeouts for RPC operations, avoiding nodes
deconnecting or requests timing out on slow connections (#387) -
Cleaner and better optimized handling of byte chunks with the bytes
crate (#342, #343) -
Many improvements in build system; cargo features for everything (#370, #372, #373)
-
HTTP servers (S3 API, K2V API, Admin API) are no longer mandatory: by
removing the corresponding config section, they are simply not started (#354, #373) -
pretty_env_logger is replaced by tracing_subscriber::fmt
-
Fix the build version reported by the CLI (#328, #350, #352)
-
Avoid using/propagating broken cluster layouts (#363, #364, #380)
-
Allow for hostnames in bootstrap_peers and rpc_public_addr (#353, #383)
-
Some documentation updates (not finished yet)
Thanks to all of the contributors for this release: Alex, Quentin, Jakub Jirutka, Simon C.
Click here to get a binary release suited to your platform (scroll down to "extra builds")
Downloads
-
-
Garage v0.7.3 Stable
released this 9 months ago | 0 commits to dev0.7.3 since this release
This minor release includes a small number of fixes:
- The correct Garage version is now reported by
garage --version
- ARM and ARM64 builds now work
- The
Content-Type
header is now set correctly in all JSON responses in the Admin and K2V API endpoints
Warning. v0.7.3 is (unexpectedly) incompatible with v0.7.1. Make sure to update your entire cluster at once.
Downloads
- The correct Garage version is now reported by
-
Garage v0.7.2 Stable
released this 9 months ago | 535 commits to main since this release
This release introduces a more complete API for administrative operations (#298), building upon the API endpoint that was introduced previously for exposing Prometheus metrics. Now, almost all operations accessible from the CLI (cluster layout management, bucket and access key management, ...) are also accessible using a REST API. Note that at this stage, there is no committement to the stability of these API endpoints. Documentation of these APIs in their current form can be found here.
This release also contains code for a first iteration of the K2V storage service, which we designed to complement S3 for the storage of small values (#293). K2V is currently disabled at compile-time by default and is not distributed in the published binaries, as its API is still experimental and subject to changes. Special builds featuring K2V can be found in our "extra builds" section on the Download page, and can also be produced by activating the
k2v
Cargo feature flag. Specification of the K2V API in its current form can be found here.Downloads
-
Garage v0.7.1 Stable
released this 1 year ago | 542 commits to main since this release
This minor release includes a few improvements and fixes:
Downloads
-
Garage v0.7.0 Stable
released this 1 year ago | 549 commits to main since this release
The Garage team is very proud to announce the public release of our second Beta version of Garage, version 0.7.0. The main features of this new version are better Kubernetes integration and observability using OpenTelemetry; these features are discussed extensively on our blog.
Changes in this release are mostly covered in the release notes for v0.7 RC1. The following patches were added:
- Many documentation updates
- Introduce new replication modes
2-dangerous
,3-degraded
and3-dangerous
with different guarantees - Log GET requests on the admin endpoint at debug level to reduce noise
- Add "blocks in errored state" to
garage stats
- Reduce maximum exponential backoff time for block resync
- Updated netapp dependency to
0.4.2
Thanks to all of the contributors for this release: Alex, Jill, Max Audron, Maximilien, Quentin, Rune Henrisken, Steam, and trinity-1686a.
Downloads
-
Garage v0.7.0 RC1 Pre-Release
released this 1 year ago | 563 commits to main since this release
This release is the first Release Candidate for Garage 0.7. Improvements in this version are the following:
-
Support for extracting metrics and traces through the opentelemetry framework (#111, #243)
-
Support for automatic discovery of nodes in a Kubernetes cluster (#241, #262, #269, #276)
-
Fixes in block manager: exponential backoff when errors happen, more aggressive fsync's to avoid losing data (#252, #256, #257, #259)
-
Updated Netapp that includes cross-node tracing support, as well as better detection of node failure scenarios (#243, #264, #268)
-
Handle streaming payload signatures in all requests with a body (#239, #247)
-
Improved test suite with many more functionnal tests (#240, #242, #261)
-
Fixes to the partition assignation algorithm (#266)
Thanks to all of the contributors for this release: Alex, Jill, Max Audron, Maximilien, Quentin, Rune Henrisken, Steam, trinity-1686a
Click here to get a binary release suited to your platform (the build is under "extra builds")
Downloads
-