• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

databendlabs / openraft / 22909938482
88%

Build:
DEFAULT BRANCH: main
Ran 10 Mar 2026 03:24PM UTC
Jobs 1
Files 258
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

10 Mar 2026 03:21PM UTC coverage: 87.552% (-0.02%) from 87.574%
22909938482

push

github

drmingdrmer
change: in 0.10.0: decouple `MembershipState`, `ChangeMembershipError`, and `InProgress` from `RaftTypeConfig`

Replace the monolithic `C: RaftTypeConfig` parameter with only the
specific types each definition actually needs, continuing the
type-decoupling effort.

`MembershipState<C>` becomes `MembershipState<CLID, NID, N>` since it
only wraps `EffectiveMembership` (already decoupled) and `LogId`.
`ChangeMembershipError<C>` becomes `ChangeMembershipError<CLID, NID>`
since it only contains `InProgress<CLID>` and `LearnerNotFound<NID>`.
`InProgress<C>` becomes `InProgress<CLID>` since it only stores
`LogId<CLID>` fields.

`ChangeHandler` (pub(crate)) is updated accordingly.

Changes:
- Add `MembershipStateOf<C>`, `ChangeMembershipErrorOf<C>`, `InProgressOf<C>` type aliases
- Implement `Default` manually for `MembershipState` to avoid over-constraining bounds

Upgrade tip:

    Replace `MembershipState<C>` with `MembershipState<CLID, NID, N>`,
    or use the type alias `MembershipStateOf<C>`:

    // Before
    let ms: MembershipState<MyConfig> = ...;

    // After
    use openraft::alias::MembershipStateOf;
    let ms: MembershipStateOf<MyConfig> = ...;

    Replace `ChangeMembershipError<C>` with `ChangeMembershipError<CLID, NID>`:

    // Before
    fn handle(e: ChangeMembershipError<MyConfig>) { ... }

    // After
    fn handle(e: ChangeMembershipError<MyCommittedLeaderId, MyNodeId>) { ... }

    Replace `InProgress<C>` with `InProgress<CLID>`:

    // Before
    fn check(e: InProgress<MyConfig>) { ... }

    // After
    fn check(e: InProgress<MyCommittedLeaderId>) { ... }

39 of 39 new or added lines in 7 files covered. (100.0%)

6 existing lines in 3 files now uncovered.

15924 of 18188 relevant lines covered (87.55%)

145617.03 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
83.33
0.0% openraft/src/metrics/serde_instant.rs
2
93.39
-1.65% openraft/src/replication/stream_state.rs
3
86.96
-3.26% openraft/src/core/heartbeat/worker.rs
Jobs
ID Job ID Ran Files Coverage
1 22909938482.1 10 Mar 2026 03:24PM UTC 258
87.55
GitHub Action Run
Source Files on build 22909938482
  • Tree
  • List 258
  • Changed 12
  • Source Changed 9
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #22909938482
  • 67eb5049 on github
  • Prev Build on main (#22907664414)
  • Next Build on main (#22936923613)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc