Gwen Lg
bbb62dfa85
refactor: use u64::midpoint instead of manual implementation
...
warning: manual implementation of `midpoint` which can overflow
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.93.0/index.html#manual_midpoint
2026-02-17 18:38:44 +00:00
Gwen Lg
f59a8b7f62
style: corrects the use of ';' to improve readability
...
- remove unnecessary semicolon
and enable lint warning: unnecessary semicolon
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.93.0/index.html#unnecessary_semicolon
- add `;` to the last statement for consitent formatting
and enable lint `clippy::semicolon_if_nothing_returned`
warning: consider adding a `;` to the last statement for consistent formatting
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.93.0/index.html#semicolon_if_nothing_returned
2026-02-17 18:38:44 +00:00
Gwen Lg
08fd6e659f
docs: add missing backticks in documentation
...
this improve readability of documentation.
enable associated clippy lint `doc_markdown`
2026-02-17 18:38:44 +00:00
Gwen Lg
6cde00073f
chore: enable workspace configuration of lints in Cargo.toml
...
and use workspace configuration in each package.
This allow to customize clippy and rust lint configuration for project.
No particular configuration in this commit.
2026-02-17 18:38:44 +00:00
Gwen Lg
0043ad08fa
docs: remove obsolete mention of cargo2nix tool ( #1350 )
...
fix issue #1333
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1350
Co-authored-by: Gwen Lg <me@gwenlg.fr >
Co-committed-by: Gwen Lg <me@gwenlg.fr >
2026-02-17 18:16:04 +00:00
Maximilien Richer
0c70c87391
Add FOSDEM 2026 talk ( #1344 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1344
Co-authored-by: Maximilien Richer <me@mricher.fr >
Co-committed-by: Maximilien Richer <me@mricher.fr >
2026-02-15 15:17:27 +00:00
trinity-1686a
b0840ab256
emit headers on Not Modified per RFC-9110, fix #1330 ( #1340 )
...
also fix a small information disclosure where a client with valid token, but no encryption keys, can use Not Modified has an oracle to know if etag matches or not
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1340
Co-authored-by: trinity-1686a <trinity@deuxfleurs.fr >
Co-committed-by: trinity-1686a <trinity@deuxfleurs.fr >
2026-02-15 11:00:31 +00:00
Alex Auvolat
7ad0f96222
release builds: set lto="thin" and strip="debuginfo" ( #1342 )
...
- thin LTO is much much faster to compile, this will help when making
release builds
- strip="debuginfo" allows to still have symbols when unwinding stack
traces, which are usefull to have in user's bug reports. Binary size
is increased from 23M to 27M, so a reasonable increase
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1342
Co-authored-by: Alex Auvolat <lx@deuxfleurs.fr >
Co-committed-by: Alex Auvolat <lx@deuxfleurs.fr >
2026-02-15 08:58:57 +00:00
trinity-1686a
c373222e3a
run push CI only on main branch ( #1343 )
...
currently, ci runs twice for people pushing directly to this repository (e.g. https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1340 , you can see both woodpecker/{pr,pull}/debug)
that's a waste of resources, we'll do twice exactly the same thing.
i propose we only run push ci on `main-*` branches, so that creating a PR doesn't create two jobs
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1343
Co-authored-by: trinity-1686a <trinity@deuxfleurs.fr >
Co-committed-by: trinity-1686a <trinity@deuxfleurs.fr >
2026-02-15 08:57:52 +00:00
Alex
c73268fd77
Merge pull request 'chore: update nom dependency to 0.8' ( #1341 ) from gwenlg/garage:nom_upgrade into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1341
Reviewed-by: Alex <lx@deuxfleurs.fr >
2026-02-14 19:25:49 +00:00
Gwen Lg
c82015f6cf
chore: update nom dependency to 0.8
...
update syntax with :
- add explicit call of `parse` method
- add ref slice management for `tag` fn
2026-02-14 19:25:49 +00:00
Alex
3af9e8d3d2
Merge pull request 'Make initial setup easier' ( #1329 ) from easy-bootstrap into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1329
2026-02-14 18:26:43 +00:00
Alex Auvolat
1d588282bf
print path to configuration file in startup logs
2026-02-14 19:25:47 +01:00
Alex Auvolat
f7ec4b1338
update quick start guide
2026-02-14 19:25:47 +01:00
Alex Auvolat
00cbc5c31d
relax requirements on imported access keys to allow easier transition from other S3 storage providers ( fix #1262 )
2026-02-14 19:23:44 +01:00
Alex Auvolat
95aa3bc795
bootstrap: add --default-access-key and --default-bucket flags
2026-02-14 19:23:44 +01:00
Alex Auvolat
53ace58e44
bootstrap: add --single-node flag that creates a single-node layout
2026-02-14 19:23:44 +01:00
Alex
c22c4ff2e5
Merge pull request 'style: replace wildcard import of garage model in website' ( #1334 ) from gwenlg/garage:avoid_import_conflict into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1334
2026-02-14 18:21:31 +00:00
Gwen Lg
6f511fc149
style: replace wildcard import of garage model in website
...
this avoid rust-analyzer indicate invalid field error on `Redirect` for
`replace_prefix` and `replace_full` because of a conflict between struct :
`api::s3::website::Redirect` and `model::bucket_table::Redirect`
2026-02-14 18:21:31 +00:00
Alex
70b8ebc8b6
Merge pull request 'Document how to use Apache as a reverse proxy' ( #1331 ) from jasonaowen/garage:cookbook-reverse-proxy-apache into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1331
2026-02-14 18:08:08 +00:00
Alex
02db2d5f9d
Merge pull request 'fix path missmatch between config and docker in quickstart doc' ( #1339 ) from 1686a/doc-incoherent-path into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1339
Reviewed-by: maximilien <git@mricher.fr >
2026-02-14 17:53:36 +00:00
trinity-1686a
cc749a6290
fix path missmatch between config and docker in quickstart doc
2026-02-14 11:19:28 +01:00
Jason Owen
9f969ef43e
Document how to use Apache as a reverse proxy
...
Replace the TODO in the reverse proxy cookbook entry with instructions
on how to configure Apache httpd as a reverse proxy for Garage.
2026-02-12 00:21:40 -08:00
Alex
4989be7853
Merge pull request 'update almost all dependencies to the last version' ( #1316 ) from gwenlg/garage:maintenance_deps into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1316
2026-02-10 19:16:49 +00:00
Gwen Lg
8ce4415edb
chore: update k8s related dependencies
...
- k8s-openapi, kube and schemars
2026-02-10 19:16:49 +00:00
Gwen Lg
75c28faa5b
chore: update tokio and hyper-rustls dependencies
2026-02-10 19:16:49 +00:00
Gwen Lg
8644511ebc
chore: update aws dependencies
...
aws-sigv4, aws-smithy-runtime, aws-sdk-config, aws-sdk-s3
2026-02-10 19:16:49 +00:00
Gwen Lg
e5627bbd6b
chore: update reqwest dependency to 0.13
2026-02-10 19:16:49 +00:00
Gwen Lg
3aeb6d88af
update fjall dep to 2.11
2026-02-10 19:16:49 +00:00
Gwen Lg
6f44631973
chore: update various dependencies than don't need code changes
...
and run cargo update
2026-02-10 19:16:49 +00:00
Gwen Lg
566a0b44c0
chore: update bytesize dependency to 2.3
...
include code update to follow display management change.
2026-02-10 19:16:49 +00:00
Gwen Lg
934c4c31f1
chore: update dependency rand to 0.9
2026-02-10 19:16:49 +00:00
Gwen Lg
be8e4c9dcf
chore: remove patch version of deps in Cargo.toml
...
as cargo can update a crate to last patch version anyway, it's can be
confusing.
2026-02-10 19:16:49 +00:00
Alex
1b20713421
Merge pull request 'adapt code to unsafety of env::set_var fn' ( #1317 ) from gwenlg/garage:env_set_var into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1317
2026-02-10 19:12:52 +00:00
Gwen Lg
473b66ca5b
fix: mark unsafety of std::env::set_var
...
and document the function.
2026-02-10 18:46:55 +01:00
Gwen Lg
5c8a31708e
refactor: manualy build tokio runtime for k2v-cli
2026-02-10 18:46:55 +01:00
Gwen Lg
ca1211d927
refactor: manualy build tokio runtime for garage
...
to allow do some initialization before
2026-02-10 18:46:55 +01:00
bytechunk
b012431df0
S3 api DeleteObject fix invalid XML ( #1324 )
...
linked to #1323
Do only check element nodes when validating XML content (skip text
nodes).
If text nodes are skipped then the validation fails when providing
formatted XML content as body of the request.
Co-authored-by: frederic vroman <fred@lesmouths.net >
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1324
Co-authored-by: bytechunk <bytechunk.a52b055@track-it.pw >
Co-committed-by: bytechunk <bytechunk.a52b055@track-it.pw >
2026-02-09 13:05:58 +00:00
Gwen Lg
6e98f5e74e
upgrade heed to version 0.22 ( #1318 )
...
- migration from `ByteSlice` to `Bytes` heed type.
- not sure about the impact of only one `read_txn` for the entire function `list_trees`, whereas before `open_database` call uses their own access controller.
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1318
Co-authored-by: Gwen Lg <me@gwenlg.fr >
Co-committed-by: Gwen Lg <me@gwenlg.fr >
2026-02-07 13:22:46 +00:00
Gwen Lg
c7d6eb631f
chore: update cmd parameter name in shell.nix
...
should fix the warning :
WARN[0000] Flag --customPlatform is deprecated. Use: --custom-platform
2026-01-29 22:14:34 +00:00
Gwen Lg
5eb381a22a
refactor: use OnceLock for Instance in test
...
... instead of unsafe `static mut` as it's not safe.
Change terminate to apply on `&self` and use a Mutex for Instance interior mutability.
2026-01-29 20:50:05 +01:00
Gwen Lg
3b6daa7d0f
refactor: rework init_tracing to avoid unused variable
...
... when feature `telemetry-otlp` is not enabled
move feature management into tracing_setup module to make the server code cleaner.
2026-01-29 20:50:05 +01:00
Gwen Lg
7d05d9d520
chore: set aws_s3 BehaviorVersion to latest in tests common client
...
ok because this code shouldn't be reliant on extremely specific behavior characteristics.
And this avoid use of deprecated version.
2026-01-29 20:50:05 +01:00
Gwen Lg
f0b443652a
ci: add lints check with clippy in debug workflow
2026-01-29 20:50:04 +01:00
Gwen Lg
cd5cd37ecc
style: improve lisibility of db_path code
...
split suffix get from match self and path construction
2026-01-29 20:49:28 +01:00
Gwen Lg
e5f87fb51e
refactor: use let Some instead of is_some + unwrap
...
lint message: called `unwrap` on `config.k2v_api` after checking its variant with `is_some`
lint message: called `unwrap` on `config.admin.trace_sink` after checking its variant with `is_some`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.93.0/index.html#unnecessary_unwrap
2026-01-29 20:49:28 +01:00
Gwen Lg
b0ee7dd3c9
chore: localy disable some lints
...
- clippy::nonminimal_bool disabled for check_size_filter function
clippy message: this boolean expression can be simplified
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#nonminimal_bool
- clippy::large_enum_variant for `DecryptStreamState` and `State`
- clippy::too_many_arguments for `put_block_and_meta` and
`test_read_encrypted`
- clippy::deref_addrof for specific unsafe code
- clippy::doc_overindented_list_items and clippy::doc_lazy_continuation
2026-01-29 20:49:28 +01:00
Gwen Lg
4a0be692b3
docs: various fixes in Rust code documentation
...
- add backticks on struct doc comments
lint message: unclosed HTML tag `M`
- add a blanck line for proper doc formating
lint message: doc list item without indentation
help: if this is supposed to be its own paragraph, add a blank line
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#doc_lazy_continuation
- fix hyperlink in doc + one url invalid
lint message: this URL is not a hyperlink
note: bare URLs are not automatically turned into clickable links
- ajust space in doc
lint message: doc list item overindented
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#doc_overindented_list_items
2026-01-29 20:49:28 +01:00
Gwen Lg
a5d047b5ae
style: use if else instead of then_some + unwrap_or
...
create dedicated fn for `deleted` printing to improve lisibility an
deduplicate code.
clippy message: this method chain can be written more clearly with `if .. else ..`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#obfuscated_if_else
2026-01-29 20:49:28 +01:00
Gwen Lg
24e11e99ee
style: some small fixes
...
- remove invalid struct pattern
lint message: struct pattern is not needed for a unit variant
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#unneeded_struct_pattern
- remove call to default() on unit struct
lint message: use of `default` to create a unit struct
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#default_constructed_unit_structs
- replace if/else by direct affectation
lint message: this if-then-else expression assigns a bool literal
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_bool_assign
- replace assert_eq on unit by `unwrap` + let typed binding
2026-01-29 20:49:28 +01:00