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
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
5307b3f762
chore: remove unnecessary cast usize
...
lint message: casting to the same type is unnecessary (`u64` -> `u64`)
help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.92.0/index.html#unnecessary_cast
+ disable `clippy::unnecessary_cast` for update_disk_usage
where the size of the input values depends on the platform
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
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 Auvolat
d38d62f4d7
bump version to v2.0.0
2025-04-17 12:36:41 +02:00
Alex Auvolat
2f2a96b51d
layout & replication mode refactoring
2025-03-25 11:05:00 +01:00
Alex Auvolat
e6862c5d3d
cli: uniformize output and add some infos
2025-03-12 15:05:37 +01:00
Alex Auvolat
620dc58560
remove async_trait for traits declared in garage_net
2025-02-05 20:22:16 +01:00
Stefan Majer
2eb9fcae20
Fix all typos
2025-01-16 13:22:00 +01:00
Vedad KAJTAZ
6689800986
Formatting with
2025-01-04 16:52:23 +01:00
Vedad KAJTAZ
6ca99fd02c
formatting
2025-01-04 14:46:42 +01:00
Vedad KAJTAZ
b568bb863d
Fix #907
2025-01-04 12:50:10 +01:00
Florian Klink
a0f6bc5b7f
add rpc_public_addr_subnet config option
...
In case `rpc_public_addr` is not set, but autodiscovery is used, this
allows filtering the list of automatically discovered IPs to a specific
subnet.
For example, if nodes should pick *their* IP inside a specific subnet,
but you don't want to explicitly write the IP down (as it's dynamic, or
you want to share configs across nodes), you can use this option.
2024-06-05 08:41:36 +02:00
Alex Auvolat
afad62939e
[next-0.10] bump version number to 1.0
2024-03-28 15:19:44 +01:00
Alex Auvolat
32f1786f9f
[next-0.10] cache layout check result
2024-03-27 13:37:20 +01:00
Alex Auvolat
01a0bd5410
[next-0.10] remove impl Deref for LayoutHelper
2024-03-27 13:32:13 +01:00
Alex Auvolat
961b4f9af3
[net-fixes] fix issues with local peer address ( fix #761 )
2024-03-21 10:45:34 +01:00
Yureka
c1769bbe69
ReplicationMode -> ConsistencyMode+ReplicationFactor
2024-03-07 12:45:33 +01:00
Alex Auvolat
81cebdd124
[next-0.10] fix build
2024-02-22 15:53:47 +01:00
Alex Auvolat
643d1aabd8
Merge branch 'main' into next-0.10
2024-02-20 17:02:44 +01:00
Alex
885405d944
Merge pull request 'system metrics improvements' ( #726 ) from peer-metrics into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/726
2024-02-20 15:35:12 +00:00
Alex Auvolat
182a23cc12
[peer-metrics] refactor SystemMetrics to hold a reference to System
2024-02-20 14:20:58 +01:00
Alex Auvolat
3cdf69f079
[peer-metrics] Add metrics for cluster health, like GetClusterHealth admin API
2024-02-20 13:50:45 +01:00
Alex Auvolat
00d479358d
[peer-metrics] refactor/simplify SystemMetrics
2024-02-20 13:50:45 +01:00
Alex
203bb10035
Merge pull request 'Filter nodes Garage tries to connect to' ( #719 ) from reconnect-only-current into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/719
2024-02-20 10:37:11 +00:00
Alex Auvolat
e91576677e
[reconnect-only-current] filter nodes to reconnect to
...
do not try reconnecting to nodes received from consul/kubernetes
discovery if they are not currently in the layout
2024-02-20 11:07:10 +01:00
Alex Auvolat
b96f84b894
[networking-fixes] add option to bind outgoing RPC sockets ( fix #638 )
...
Thanks to yuka for the original patch.
2024-02-19 11:45:44 +01:00
Alex Auvolat
f0bbad2db9
[networking-fixes] use rpc_public_addr in netapp's HelloMessage
2024-02-19 11:45:44 +01:00
Alex Auvolat
eb4a6ce106
Merge branch 'main' into next-0.10
2024-02-15 14:06:34 +01:00
Alex Auvolat
125c662860
[import-netapp] move and rename FullMeshPeeringSrategy to PeeringManager
2024-02-15 12:15:35 +01:00
Alex Auvolat
5ea24254a9
[import-netapp] import Netapp code into Garage codebase
2024-02-15 12:15:07 +01:00
Alex Auvolat
cf2af186fc
Merge branch 'main' into next-0.10
2024-02-13 11:36:28 +01:00
Alex Auvolat
82a29bf6e5
help, comments: make clear that full-length node ID = public key
...
Generally, avoid using the "public key" terminology
2024-01-16 14:04:11 +01:00
Alex Auvolat
0041b013a4
layout: refactoring and fix in layout helper
2023-12-11 16:09:22 +01:00
Alex Auvolat
85b5a6bcd1
fix some clippy lints
2023-12-11 15:31:47 +01:00
Alex Auvolat
91b874c4ef
rpc: fix system::health
2023-12-08 10:36:37 +01:00
Alex Auvolat
431b28e0cf
fix build with discovery features
2023-12-07 15:15:59 +01:00
Alex Auvolat
9cecea64d4
layout: allow sync update tracker to progress with only quorums
2023-12-07 14:51:20 +01:00
Alex Auvolat
c04dd8788a
admin: more info in admin GetClusterStatus
2023-11-28 14:25:04 +01:00
Alex Auvolat
78362140f5
rpc: update system::health to take into account write sets for all partitions
2023-11-27 12:10:21 +01:00
Alex Auvolat
707442f5de
layout: refactor digests and add "!=" assertions before epidemic bcast
2023-11-16 13:51:40 +01:00
Alex Auvolat
393c4d4515
layout: add helper for cached/external values to centralize recomputation
2023-11-15 14:20:50 +01:00
Alex Auvolat
3b361d2959
layout: prepare for write sets
2023-11-14 14:28:16 +01:00
Alex Auvolat
866196750f
system: add todo wrt new layout
2023-11-14 13:36:58 +01:00
Alex Auvolat
1aab1f4e68
layout: refactoring of all_nodes
2023-11-14 13:12:32 +01:00
Alex Auvolat
ce89d1ddab
table sync: adapt to new layout history
2023-11-11 12:08:32 +01:00
Alex Auvolat
94caf9c0c1
layout: separate code path for synchronizing update trackers only
2023-11-09 14:53:34 +01:00
Alex Auvolat
bfb1845fdc
layout: refactor to use a RwLock on LayoutHistory
2023-11-09 14:12:05 +01:00