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 |
|
Gwen Lg
|
bddd23136b
|
refactor: reduce number of arguments by use struct
- create and use HandleInfo and DestInfo to reduce number of arguments
lint message: warning: this function has too many arguments (9/7)
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#too_many_arguments
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
a426b00e87
|
style: collapse nested if block
lint message: this `if` statement can be collapsed
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#collapsible_if
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
8772db8228
|
refactor: rename method to avoid confusion
- rename SqliteDb::new to `_::open` as it's not return Self
lint message: methods called `new` usually return `Self`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#new_ret_no_self
- rename method `add` to `add_calgorithm`
The semantics of this has nothing to do with an `add` operation in the sense of the `Add` trait.
And method `add` can be confused for the standard trait method std::ops::Add::add
lint https://rust-lang.github.io/rust-clippy/rust-1.93.0/index.html#should_implement_trait
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
6dbcdcd784
|
style: improve use of std api
- replace get(0) by first()
lint message: accessing first element with `objs.get(0)`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#get_first
- use io::Error::other method available since Rust 1.87
lint message: this can be `std::io::Error::other(_)`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#io_other_error
- implement From<_> instead of Into<_>
lint message: an implementation of `From` is preferred since it gives you `Into<_>` for free where the reverse isn't true
help: `impl From<Local> for Foreign` is allowed by the orphan rules, for more information see
https://doc.rust-lang.org/reference/items/implementations.html#trait-implementation-coherence
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#from_over_into
- use next_back instead of rev + next
lint message: manual backwards iteration
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#manual_next_back
- use saturating_sub instead of manual implement it
lint message: manual arithmetic check found
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#implicit_saturating_sub
- add Default implementation for Checksummer
use derived Default ans use it in new, as new set all value to None
lint message: you should consider adding a `Default` implementation for `Checksummer`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#new_without_default
- use `any` instead of `find` + `is_some`
lint message: called `is_some()` after searching an `Iterator` with `find`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#search_is_some
- replace `and_then` + `Some(_)` with `map`
lint message: using `Option.and_then(|x| Some(y))`, which is more succinctly expressed as `map(|x| y)`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#bind_instead_of_map
- replace `skip_while` + `next` with `find`
lint message: called `skip_while(<p>).next()` on an `Iterator`
help: this is more succinctly expressed by calling `.find(!<p>)` instead
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#skip_while_next
- use `matches!` instead of manual implementation
lint message: match expression looks like `matches!` macro
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#match_like_matches_macro
- use `keys` and `values methods insteads of iterating and ignoring either the keys or values.
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#iter_kv_map
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
f2f6669bf0
|
style: clean use for question_mark
- remove useless `Ok` enclosing with `?`
lint message: enclosing `Ok` and `?` operator are unneeded
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_question_mark
- use question mark instead of manual implementation
lint message: this `match` expression can be replaced with `?`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#question_mark
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
21db7a4d4b
|
chore: remove various useless code
- call expect directly on Result
lint message: called `ok().expect()` on a `Result` value
help: you can call `expect()` directly on the `Result`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#ok_expect
- use assign operation instead of manual implementation
lint message: manual implementation of an assign operation
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#assign_op_pattern
- remove useless call to format
lint message: useless use of `format!`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#useless_format
- remove useless `?Sized`
lint message: `?Sized` bound is ignored because of a `Sized` requirement
note: ...because `Deserialize` has the bound `Sized`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_maybe_sized
- use is_some instead of pattern maching with Some(_)
lint message: redundant pattern matching, consider using `is_some()`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#redundant_pattern_matching
- remove unneeded unit return type
lint message: unneeded unit return type
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#unused_unit
- remove redundant closure
lint message: redundant closure
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#redundant_closure
- use derive Default instead of manual implementation
lint message: this `impl` can be derived
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#derivable_impls
- remove unneeded `return` statement
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_return
- remove empty string from println call
lint message: empty string literal in `println!`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#println_empty_string
- remove clone() on type than implement Copy
lint message: using `clone` on type `Option<ChecksumValue>` which implements the `Copy` trait
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#clone_on_copy
- remove useless let binding
lint message: this let-binding has unit value
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#let_unit_value
- remove useless len comparison to zero, already test of empty
lint message: length comparison to zero
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#len_zero
- remove useless `as_deref` call
lint message: derefed type is same as origin
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_option_as_deref
- remove useless conversion of the same type
lint message: useless conversion to the same type: `replication_mode::ReplicationFactor`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#useless_conversion
- remove useless bool_comparison
lint message: equality checks against false can be replaced by a negation
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#bool_comparison
- remove useless to_string
lint message: unnecessary use of `to_string`
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#unnecessary_to_owned
Signed-off-by: Gwen Lg <me@gwenlg.fr>
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
ea9597819c
|
refactor: clean perf related
- use array instead of vec when it's useless
clippy lint message: useless use of `vec!` help: you can use an array directly.
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#useless_vec
- call as_bytes before slicing
lint message: calling `as_bytes` after slicing a string
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#sliced_string_as_bytes
Signed-off-by: Gwen Lg <me@gwenlg.fr>
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
141b3f24f1
|
chore: clean relative to references and borrows
- lint message: the borrowed expression implements the required traits
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_borrows_for_generic_args
- lint message: this expression creates a reference which is immediately dereferenced by the compiler
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#needless_borrow
- lint message: you don't need to add `&` to all patterns
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#match_ref_pat
- remove useless taken reference
lint message: needlessly taken reference of left operand
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#op_ref
- use &Path instead of &PathBuf as fn parameters
lint message: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#ptr_arg
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
295c850380
|
chore: add taplo.toml and resave Cargo.toml
Signed-off-by: Gwen Lg <me@gwenlg.fr>
|
2026-01-29 20:49:28 +01:00 |
|
Gwen Lg
|
014bebfa1f
|
chore: improve code readability by rename pn var in part_number
|
2026-01-29 14:53:27 +01:00 |
|
Gwen Lg
|
e331f88c85
|
chore: fix typos in rust code comment or error message
|
2026-01-29 14:53:27 +01:00 |
|
Alex Auvolat
|
582b168b6a
|
bump version to v2.2.0
|
2026-01-24 12:32:22 +01:00 |
|
Alex Auvolat
|
cd641a9ed2
|
Merge branch 'main-v1' into merge-v1
|
2026-01-24 09:56:02 +01:00 |
|
joeanderson
|
77ef3c85ea
|
Merge branch 'main-v2' into fix/presigned-post-bucket
|
2026-01-18 15:38:28 +00:00 |
|
Joe Anderson
|
79c7126b67
|
Allow bucket to be missing from presigned post params
|
2026-01-18 15:08:59 +00:00 |
|
Alex Auvolat
|
cf2f058f60
|
openapi: work around issue for flattenned untagged enum (fix #1249)
|
2026-01-06 10:11:12 +01:00 |
|
perrynzhou@gmail.com
|
e3a5ec6ef6
|
rename put_blocks_max_parallel to block_max_concurrent_writes_per_request and update configuration.md
|
2025-12-12 07:09:38 +08:00 |
|
perrynzhou@gmail.com
|
4d124e1c76
|
Add the parameter, which replaces . This is to accommodate different storage media such as HDD and NVMe.
|
2025-12-10 06:43:51 +08:00 |
|
Alex
|
58bc65b9a8
|
Merge pull request 'migrate to this error, garage-v1' (#1218) from thiserror into main-v1
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1218
Reviewed-by: Alex <lx@deuxfleurs.fr>
|
2025-11-12 08:05:32 +00:00 |
|
trinity-1686a
|
ef913843f7
|
fmt
|
2025-11-01 19:35:11 +01:00 |
|
trinity-1686a
|
ac851d6dee
|
fmt
|
2025-11-01 18:04:54 +01:00 |
|
trinity-1686a
|
1fe932d07f
|
migrate to this error
it doesn't generate a bazillion warning at compile time
|
2025-11-01 17:25:23 +01:00 |
|
trinity-1686a
|
82297371bf
|
migrate to this error
it doesn't generate a bazillion warning at compile time
|
2025-11-01 17:20:39 +01:00 |
|
Alex Auvolat
|
1c29d04cc5
|
sigv4: don't enforce x-amz-content-sha256 to be in signed headers list (fix #770)
From the following page:
https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html
> In both cases, because the x-amz-content-sha256 header value is already
> part of your HashedPayload, you are not required to include the
> x-amz-content-sha256 header as a canonical header.
|
2025-10-14 11:18:25 +02:00 |
|
trinity-1686a
|
42fd8583bd
|
properly handle precondition time equal to object time
|
2025-10-08 17:54:22 +02:00 |
|
Alex Auvolat
|
006fb18aea
|
fix compilation warning
|
2025-09-15 15:52:53 +02:00 |
|
Alex Auvolat
|
b43f309ec7
|
bump version to v2.1.0
|
2025-09-15 15:50:02 +02:00 |
|
Alex
|
df4721387c
|
Merge pull request 'Merge changes from v1.x into v2.x' (#1161) from sync-v2-to-v1 into main-v2
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1161
|
2025-09-15 13:24:20 +00:00 |
|
Alex Auvolat
|
4b1fdbef55
|
bump version to v1.3.0
|
2025-09-14 21:36:33 +02:00 |
|
Alex Auvolat
|
0f1b488be0
|
fix rust warnings
|
2025-09-14 21:25:37 +02:00 |
|
Alex Auvolat
|
9c067c0cbd
|
Merge branch 'main-v1' into sync-v2-to-v1
|
2025-09-14 21:04:04 +02:00 |
|
Alex Auvolat
|
7a256b2ebb
|
openapi: fix query parameters (fix #1160)
|
2025-09-14 17:27:37 +02:00 |
|
Alex Auvolat
|
909359ca4c
|
Merge branch 'main-v1' into sync-v2-to-v1
|
2025-09-14 17:02:34 +02:00 |
|
Alex Auvolat
|
4c139bcbca
|
add error case for layout not ready, and fail earlier in many places
|
2025-09-13 20:52:51 +02:00 |
|
Alex
|
17fe11fa81
|
Merge pull request 'fix(openapi): use query params, not path params for Update & Delete Bucket' (#1139) from milas/garage:milas/fix-openapi-v2-params into main-v2
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1139
|
2025-09-04 07:23:45 +00:00 |
|
Alex Auvolat
|
fb95a8819f
|
fix server panic caused by garage json-api Metrics (fix #1132)
|
2025-08-27 23:59:41 +02:00 |
|
Alex
|
47772eb525
|
Merge pull request 'fix: return consistent cors headers on api error' (#1115) from Xstoudi/garage:fix/consistent-cors into main-v2
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1115
|
2025-08-27 16:19:36 +00:00 |
|
Alex
|
d64498c3d3
|
Merge pull request 'log access keys' (#1122) from 1686a/log-access-key into main-v1
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1122
|
2025-08-27 16:18:16 +00:00 |
|
Alex
|
c1ed770e64
|
Merge pull request 'log access keys Garage v2' (#1124) from 1686a/log-access-key-v2 into main-v2
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1124
|
2025-08-27 16:17:39 +00:00 |
|
Milas Bowman
|
4deb57815a
|
fix(api): use query params, not path params for Update & Delete Bucket
|
2025-08-23 13:02:03 -04:00 |
|
MagicRR
|
d8058e7475
|
fix: method name duplicated after client sdk generation
|
2025-08-07 10:14:56 +00:00 |
|
trinity-1686a
|
385fbc606d
|
log user-defined admin api tokens
|
2025-08-03 15:50:36 +02:00 |
|
trinity-1686a
|
6f9d6919a9
|
log access keys
|
2025-08-03 15:31:51 +02:00 |
|
trinity-1686a
|
b340599e68
|
log access keys
|
2025-08-03 15:30:56 +02:00 |
|
trinity-1686a
|
d975960be3
|
hide keys without any permissions from admin api
|
2025-08-02 17:28:14 +02:00 |
|
trinity-1686a
|
5469c95877
|
handle ECONNABORTED
|
2025-08-02 13:14:01 +02:00 |
|
Xavier Stouder
|
985ad68ade
|
fix: run cargo format
|
2025-07-31 22:52:27 +02:00 |
|
Charles Hall
|
b7a853b01f
|
ignore checksums with empty/whitespace-only bodies
aws-sdk-cpp was observed to send request bodies like this via Lix:
```xml
<?xml version="1.0"?>
<CompleteMultipartUpload xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Part>
<ETag>"8a5031bda169553d6a232e6c11068774"</ETag>
<ChecksumCRC32></ChecksumCRC32>
<PartNumber>1</PartNumber>
</Part>
<Part>
<ETag>"da977cc58b75bd17749c1ff460ba301a"</ETag>
<ChecksumCRC32></ChecksumCRC32>
<PartNumber>2</PartNumber>
</Part>
</CompleteMultipartUpload>
```
|
2025-07-31 11:15:33 -07:00 |
|
Charles Hall
|
66faef9fb6
|
factor out repetitive else-if chain into macro
|
2025-07-30 18:44:51 -07:00 |
|