Releases: tikv/raft-rs
Releases · tikv/raft-rs
0.7.0
0.6.0
- Joint Consensus became a stable feature (#379, #380, #382, #383, #385, #386, #411)
- Ported aggresive flow control from etcd/raft (#354)
- Introduced group commit to force geo replication safety (#359)
- Harden read index (#355, #363)
- Support limiting uncommited logs (#398)
- Support asynchronous ready (#403, #410, #417, #433)
- Fast log append rejection (#367)
bytes::Bytes
is used for protos if feature protobuf-codec is enabled (by default) (#438)- Switched to thiserror (#435)
- Implemented committed entries pagination (#440)
0.4.3
0.4.2
0.4.1
0.5.0
- Introduced an experimental Joint Consensus based arbitrary membership change feature. (#101)
- Harmonized
protobuf
dependency to match important downstreams. (#181) - Unified the
Progress
collections insideProgressSet
. (#108) Raft::new()
now returns aResult
. (#122)- Removed the
Progress.is_learner
field. Check via function inProgressSet
instead. (#119) - Added Appvevor. Added then removed bors. (#137, #134)
- Introduced getters and setters for various
Ready
fields. (#120) - Reduced memory allocation on reset. (#130)
- Added issue templates, more links. (#133, #126)
- Moved poll and quorum checking functionality into
ProgressSet
. (#121) - The leader is now trivially in the replicate state. (#146)
- Fixed a problem with lease based read-only requests interacting with
check_quorum
wrong. (#141) - Corrected the
single_mem_node
example. (#162) - Fixed typos. (#159)
- Adopted Hashbrown over
FxHash
. (#160) - Corrected learner checking in
handle_transfer_leader
. (#165) - Resolved some lints (#174, #168, #142, #124)
- Fixed uses of
#[feature(_)]
so that we can build on stable cleanly. (#180)
v0.4.0
- No longer scan the raft log when becoming a leader. (#100)
- Added the ability to skip broadcast commit at runtime. (#115)
- Documented all public API. (#87)
- Refined a few points in the API in preparation for more work. (#102)
- Configuration logic was moved into its own module. (#91)
- Added
fail-rs
based tests. (#114) - Added benchmarking using
criterion
. (#110) - Expanded tested examples. (#118)
- Improved documentation. (#106)
- Refined the CI scripts to ensure strict linting. (#117)
- Tests now output logs. Configure it with
RUST_LOG=raft=info
. (#103) - Eased the
log
dependency. (#116) - Formatting updates. (#104)
- Updated some dependencies. (#97)
- Use the clippy preview from Rustup. (#95)
- Adopted a Code of Conduct. (#107)
v0.3.1
- Bugfix: Reset
leader_id
when becoming precandidate to resolveprevote
andcheck_quorum
compatability (#84) - Bugfix: Becoming a precandidate should reset votes (#83)
- Fix some typos, improve variable naming, and other small documentation fixes (#77, #79, #78, #80)
- Implement
Default
forConfig
and fleshed out an example (#81) - Improve our changelog format (#85)
- Remove custom Rustfmt configuration (#86)