Skip to content

Latest commit

 

History

History
98 lines (81 loc) · 6.44 KB

CHANGELOG.md

File metadata and controls

98 lines (81 loc) · 6.44 KB

0.7.0 - 2023-03-06

  • Update prost to 0.11 (#496)
  • Make priority an i64 so a lower than default priority can be configured (#495)
  • Allow fetching entries in asynchronous manner (#459)
  • Support setting max-inflight-msgs in runtime to reduce memory usage (#450)

0.6.0 - 2021-06-16

  • 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 uncommitted 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.6.0-alpha - 2019-07-24

  • Protos now is a separate crate (#247)
  • raft-rs is rust-2018 compatible (#184)
  • Optional support for batch MsgAppend (#179)
  • Harden follower read (#220)
  • Migrate to slog (#185)
  • Several code refactor and API clean up
  • Optional support for prost

0.5.0 - 2019-02-11

  • Introduced an experimental Joint Consensus based arbitrary membership change feature. (#101)
  • Harmonized protobuf dependency to match important downstreams. (#181)
  • Unified the Progress collections inside ProgressSet. (#108)
  • Raft::new() now returns a Result. (#122)
  • Removed the Progress.is_learner field. Check via function in ProgressSet 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)

0.4.0 - 2018-09-18

  • 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)

0.3.1 - 2018-07-10

  • Bugfix: Reset leader_id when becoming precandidate to resolve prevote and check_quorum compatability (#84)
  • Bugfix: Becoming a precandidate should reset votes (#83)
  • Fixed some typos, improve variable naming, and other small documentation fixes (#77, #79, #78, #80)
  • Implemented Default for Config and fleshed out an example (#81)
  • Improved our changelog format (#85)
  • Removed custom Rustfmt configuration (#86)

0.3.0 - 2018-06-07

  • Supported configuring the election timeout range (#63).
  • Kept compatible with rust-protobuf 2.0 (#64, #75)
  • Made Raft now Send (#67)
  • Added documentation examples (#69)
  • Fixed a deadlock in the prevote migration process (#42)

0.2.0 - 2018-05-14

  • Deprecated sync-log and add context (#59)
  • Fixed learner isolation bug (#58)
  • Ported several tests (#54, #41)
  • Added examples (#44)
  • Added fxhash (#48)

0.1.0 - 2018-02-26

  • initial release