-
Garage v1.0.1 Stable
released this
2024-09-22 12:57:42 +00:00 | 16 commits to main since this releaseThis patch release includes the following improvements and fixes:
Features:
Bug fixes:
-
Discard old layout info when it is completely out-of-date, fixes introducing new nodes in an old cluster (#841, #861)
-
PostObject: don't modify request before validating policy (#850)
-
Kill opened connections after SIGINT after 10s deadline (#806, #864)
Other:
-
Update the
time
dependency to fix builds using Rust 1.80 (#849, #865) -
Improvements to Nix tooling (#816)
-
Toolchain updates (#866)
Thanks to the following contributors for their partitipation in this release: Armaël Guéneau, Benjamin von Mossner, bodaciousbiscuits, Faustin Lammler, Florian Klink, Julien Kritter, kosssi, marvin-j97, Maximilien R., P. Douglas Reeder, Quentin Dufour, trinity-1686a.
Downloads
-
Source code (ZIP)
20 downloads
-
Source code (TAR.GZ)
76 downloads
-
-
Garage v1.0.0 Stable
released this
2024-04-10 15:20:10 +00:00 | 67 commits to main since this release⚠️ Some users reported issues with 1.0 layout migrations when adding new nodes. We're investigating those issues, but in the meantime remembrer that changing a cluster layout can be still considered a significant change and you should backup your data beforehand.
This release is the final stable release of Garage v1.0.0.
A migration guide has been published for users that wish to migrate an existing v0.9.x Garage cluster.
The following changes since v0.9.4 are included:
Breaking changes:
- The Sled database engine has been removed (#767)
New features:
-
Add a repair procedure for block reference counters (#782)
-
The
replication_mode
configuration parameter is now dividied inreplication_factor
andconsistency_mode
, allowing for arbitrary replication factors (#750). This is not a breaking change, as the oldreplication_mode
parameter can still be used.
Bug fixes:
-
Properly maintain consistency when cluster composition is updated (adding or removing nodes) and data is being rebalanced between nodes (#667)
Other:
-
Remove migration path from Garage v0.5 (#766)
-
Internals: remove
max_write_errors
andmax_faults
(#760) -
Documentation updates (#795)
-
Jepsen testing of Garage v1.0 (#796)
Thanks to Yureka for contributing to this release.
Downloads
-
Source code (ZIP)
24 downloads
-
Source code (TAR.GZ)
218 downloads
-
Garage v0.9.4 Stable
released this
2024-04-08 09:55:48 +00:00 | 187 commits to main since this releaseThis minor release includes the following improvements and fixes:
New features:
-
Add snapshotting of metadata db, manual with
garage meta snapshot
and automatic with themetadata_auto_snapshot_interval
configuration parameter (#775) -
Add a
disable_scrub
configuration option (#774) -
CLI: allow manipulating buckets using a prefix of their full hex id (#783)
-
Add marker file in data directory that is checked upon startup (#601, #785)
Bug fixes:
-
Avoid unbounded buffering in RAM, add config option
block_ram_buffer_max
(#788, #792) -
Allow utf-8 in headers such as object metadata (#763)
Other:
-
db engines: refactoring, improved defaults, connection pooling for sqlite backend, testing of multiple backends (#660, #765, #779, #793)
-
refactoring: add request helper (#751)
Thanks to all of the contributors for this release: jirutka, stefano, Yureka
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
2 downloads
-
-
Garage v1.0.0 RC1 Pre-release
released this
2024-03-28 16:06:07 +00:00 | 77 commits to main since this releaseThis release is the first Release Candidate for Garage 1.0.
The following changes are unique to the 1.0 series:
New features:
-
Add a repair procedure for block reference counters (#782)
-
The
replication_mode
configuration parameter is now dividied inreplication_factor
andconsistency_mode
, allowing for arbitrary replication factors (#750)
Bug fixes:
-
Properly maintain consistency when cluster composition is updated (adding or removing nodes) and data is being rebalanced between nodes (#667)
Other:
-
Remove migration path from Garage v0.5 (#766)
-
Remove the Sled database engine (#767)
-
Internals: remove
max_write_errors
andmax_faults
(#760)
The following changes are included in this release and will also be part of a future v0.9.x release:
New features:
-
Add snapshotting of metadata db, manual with
garage meta snapshot
and automatic with themetadata_auto_snapshot_interval
configuration parameter (#775) -
Add a
disable_scrub
configuration option (#774) -
CLI: allow manipulating buckets using a prefix of their full hex id (#783)
-
Add marker file in data directory that is checked upon startup (#601, #785)
Bug fixes:
-
Avoid unbounded buffering in RAM, add config option
block_ram_buffer_max
(#788, #792) -
Allow utf-8 in headers such as object metadata (#763)
Other:
-
db engines: refactoring, improved defaults, connection pooling for sqlite backend, testing of multiple backends (#660, #765, #779, #793)
-
refactoring: add request helper (#751)
Thanks to all of the contributors for this release: jirutka, stefano, Yureka
Click here to get a binary release suited to your platform (scroll down to "extra builds")
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
2 downloads
-
Garage v0.8.7 Stable
released this
2024-03-04 14:35:38 +00:00 | 632 commits to main since this releaseThis minor version fixes a regression in v0.9.2 which broke presigned URLs. Thanks to asonix for identifying the issue and providing a patch.
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
1 download
-
Source code (ZIP)
-
Garage v0.9.3 Stable
released this
2024-03-04 13:25:40 +00:00 | 233 commits to main since this releaseThis minor version fixes a regression in v0.9.2 which broke presigned URLs. Thanks to asonix for identifying the issue and providing a patch.
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
2 downloads
-
Source code (ZIP)
-
Garage v0.9.2 Stable
released this
2024-03-01 16:18:39 +00:00 | 244 commits to main since this releaseThis minor release includes the following improvements and fixes:
Security fixes:
-
Fix timing side-channel vulnerability in admin/metrics token comparison and in AWS signature v4 verification (#737)
-
Ensure that the correct set of headers (in particular,
x-amz-*
headers) are included in signature calculation (#735, #745)
New features:
-
allow to specify custom LMDB map size when using
garage convert-db
(#691) -
garage block info
can now find blocks using only a prefix of the hash (#682, #712) -
header overriding in GetObject using
response-*
query parameters (#650, #713) -
allow option to bind outgoing RPC sockets to same IP address as listening socket (#638, #721)
-
add health and node status metrics to prometheus exports (#545, #726)
Bug fixes:
-
allow multi-character delimiters in List* API calls (#692, #711)
-
take into account rpc secret file for CLI commands (#695, #715)
-
retry RPC connections when new IP address for a peer is learned (#652, #724)
-
filter nodes Garage tries to reconnect to, to avoid connecting to old nodes (#555, #719)
-
add a lock ON EACH NODE ONLY for CreateBucket and other bucket/key operations (#723, #728)
Optimization:
-
rewrite of PutObject with potential speed-ups (not benchmarked) (#734)
-
enable LTO in release builds, reduces binary size significantly (#704, #707)
Other:
-
import code of the netapp crate into the garage codebase, as new crate
garage_net
(#717) -
convert CI pipelines to Woodpecker + improvements and simplifications to CI code (#708, #706)
Thanks to all of the contributors that have participated in this new version: Armaël Gueneau, emilylange, hartraft, Jonathan Davies, yuka, Zdenek Crha. Thanks to Radicallly Open Security for auditing the code and finding the timing side-channel vulnerabilities.
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
2 downloads
-
-
Garage v0.8.6 Stable
released this
2024-03-01 14:05:01 +00:00 | 638 commits to main since this releaseGarage v0.8.6
This minor release is a security release that fixes the following issues:
-
Fix timing side-channel vulnerability in admin/metrics token comparison and in AWS signature v4 verification (#737, backported in #740)
-
Ensure that the correct set of headers (in particular,
x-amz-*
headers) are included in signature calculation (#735, #745, backported in #744)
Thanks to Radicallly Open Security for auditing the code and finding the timing side-channel vulnerabilities.
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
1 download
-
-
Garage v0.9.1 Stable
released this
2024-01-17 11:59:19 +00:00 | 380 commits to main since this releaseThis minor release includes the following improvements and fixes:
New features:
-
Add support for specifying RPC secret and admin tokens as environment variables (#643)
-
Add
allow_world_readable_secrets
option to config file (#658, #663, #685)
Bug fixes:
-
Fix bug in ListObjects and refactoring (#655)
-
Allow 0 as a part number (#670)
-
Ensure increasing timestamps when new objects are created (#543). This patch modifies the internal behavior of PutObject, DeleteObject(s) and CreateMultipartUploads, and may cause a small performance penalty on these endpoints when compared to previous versions.
-
Add missing CORS headers to PostObject response (#609, #656)
-
Monitoring: finer histogram boundaries in Prometheus exported metrics (#531, #686)
-
Fix compilation on MacOS (#654)
Ecosystem:
-
Jepsen testing (#544), which led to the timestamp fix mentionned above (#543)
-
OpenAPI specification of Admin API v1 (#672)
-
Build system updates to use mold as a linker for local dev builds (#646, #664)
Other:
-
CLI usability: make clear that full-length node ID = public key' (#688)
Thanks to all of the contributors that have participated in this new version: asonix, Félix Baylac Jacqué, Lapineige, networkException, Quentin Dufour, trinity-1686a.
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
3 downloads
-
-
Garage v0.8.5 Stable
released this
2024-01-16 10:31:10 +00:00 | 647 commits to main since this releaseThis release includes the following improvements and fixes over v0.8.4:
New features:
-
Configuration: make LMDB's
map_size
configurable and makeblock_size
andsled_cache_capacity
expressable as strings (such as10M
) (#628, #630) -
Add support for binding to Unix sockets for the S3, K2V, Admin and Web API servers (#640)
-
Move the
convert_db
command into the main Garage binary (#645) -
Add support for specifying RPC secret and admin tokens as environment variables (#643)
-
Add
allow_world_readable_secrets
option to config file (#658, #663, #685)
Bug fixes:
-
Use
statvfs
instead of mount list to determine free space in metadata/data directories (#611, #631) -
Add missing casts to fix 32-bit build (#632)
-
Fix error when none of the HTTP servers (S3/K2V/Admin/Web) is started and fix shutdown hang (#613, #633)
-
Add missing CORS headers to PostObject response (#609, #656)
-
Monitoring: finer histogram boundaries in Prometheus exported metrics (#531, #686)
Other:
- Documentation improvements (#641)
This will be the last release of the v0.8.x series, unless severe bugs or security flaws are discovered, in which case patch releases will be made until the end of 2024.
Thanks to all of the contributors that have participated in this new version: Félix Baylac Jacqué, Florian Klink, networkException.
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
2 downloads
-