Skip to content

deps: batch the pending Dependabot bumps - #535

Merged
wchwawa merged 2 commits into
mainfrom
deps/batch-20261016
Oct 16, 2026
Merged

wchwawa merged 2 commits into
mainfrom
deps/batch-20261016

Conversation

@wchwawa

@wchwawa wchwawa commented Oct 16, 2026 •

Copy link
Copy Markdown
Member

Related Issue

Dependency chore exception (no issue). This PR supersedes nine open Dependabot PRs. main requires branches to be up to date, so merging those one at a time would cost a rebase and a full CI run each.

Supersedes #531, #528, #525, #440, #499, #529, #339, #527, #526. I will close them once this merges.

Summary

Dependency From To Notes
tokio 1.53.1 1.53.2 lockfile only
libc 0.2.189 0.2.190 lockfile only
pyo3 0.29.0 0.29.3 lockfile only
base64 0.23.0 0.23.1 lockfile only
etcd-client 0.19.0 0.20.0 additive (trust roots, aws-lc-rs, token refresh); NoKV builds it with default-features = false
signal-hook =0.3.18 =0.4.5 0.4 only changes low_level::pipe; NoKV uses consts and flag::register. scripts/workbench/local_wal_recovery_gate_test.py pins this exact version for the async-safe shutdown flags, so it moves with the bump (separate commit). The live local-WAL recovery gate (graceful SIGTERM release) is the re-qualification
sha2 0.10 0.11 resolves to the sha2 0.11.0 already in the lockfile. The digest no longer implements LowerHex, so the sdk_facade test helper hex-encodes the bytes itself
actions/upload-artifact 7.0.1 7.0.2 SHA pin as proposed by Dependabot
actions/download-artifact 8.0.1 8.0.2 SHA pin as proposed by Dependabot

I updated the lockfile with targeted cargo update -p <name> --precise <version> commands and re-resolved only the manifest bumps. The package set differs from main only in the rows above, plus the pyo3-* sub-crates that move with pyo3.

Not included

Scope

  • This PR changes one logical boundary only (dependency versions).
  • No unrelated refactor, benchmark, metadata model, Holt layout, object-store, agent interface, or docs change is mixed in.
  • The linked issue describes the user-visible problem, design decision, or maintenance task this PR resolves. (Dependency chore exception.)
  • Any breaking change is intentional and documented.
  • No compatibility shim, deprecated alias, or forwarding wrapper was added without a removal condition.

Change Size And Review

  • I checked GitHub's additions plus deletions for this pull request (about 100 lines).
  • If the total is more than 5,000 lines, one core maintainer other than the current-head pusher approved the exact current head commit. (Not applicable.)
  • This change is still small enough for a focused review; approval count is not being used to justify mixed package or lifecycle boundaries.

Code Contract (Code Changes Only)

  • Not applicable; this is a docs/config-only change.
  • Package boundaries follow docs/development/code_contract.md.
  • Shared helpers reuse the standard library or existing repository helpers. (The test helper uses std formatting.)
  • File names and file placement follow the code contract.
  • New types, interfaces, structs, fields, and functions use domain-specific names. (None added.)
  • New errors are in the owning package's errors.rs and carry stable error kinds when crossing package boundaries. (None.)
  • New metrics/stats are owned by the package that reports or serves them. (None.)
  • Metadata changes document durability, atomicity, revision-reference lifetime, snapshot/commit/event retention, GC epochs, and fail-closed recovery boundaries. (No metadata change.)
  • Placement or routing changes preserve persisted RootId -> LogicalShardId affinity, one active writer per shard, owner-epoch fencing, and explicit shard-local atomicity; no split root or cross-shard transaction is implied. (None.)
  • Agent-interface changes keep the transport-free facade and schemas in nokv-agent, routing and workflows in nokv-client, and the concrete backend plus native full CLI wiring in nokv. (None.)
  • User-facing integration guidance orders the native full CLI first, the direct Python SDK second, and the Rust SDK third, and does not present the deprecated nokv mcp sidecar as a supported NoKV surface. (None.)

Claims and Evidence

  • User-facing documentation distinguishes current, experimental, and planned capabilities. (None.)
  • Security claims do not treat a Workbench root or Agent scope as tenant authentication or authorization. (None.)
  • Performance claims state the topology, comparison boundary, cache state, run count, and raw-evidence location. (None.)
  • Benchmark-only behavior does not alter product semantics.

Validation

Local runs use rustc and clippy 1.99.1, the CI pin:

  • cargo fmt --all -- --check: ok
  • cargo clippy --workspace --all-targets -- -D warnings: ok
  • cargo clippy -p nokv-meta -p nokv-bench --all-targets --features metadata-read-stats -- -D warnings: ok
  • cargo clippy -p nokv-meta-holt --all-targets --features read-stats -- -D warnings: ok
  • cargo clippy -p nokv-server --all-targets --features restore-crash-test-support -- -D warnings: ok
  • cargo clippy -p nokv-bench --all-targets --features restore-crash-test-support -- -D warnings: ok
  • cargo build --locked -p nokv --bin nokv (default etcd feature, so signal-hook 0.4.5 and etcd-client 0.20.0 are linked): ok
  • cargo test -p nokv-agent --test sdk_facade: ok
  • cargo test -p nokv-control --features etcd: ok
  • git diff --check: ok
  • Every script in the workbench-contract "Check Workbench contract and live workflow" step (ledger, contract and gate tests, bash -n): ok
  • Not run locally (with reason): full workspace tests, live gates, and the Docker build at Rust 1.88. This PR's CI runs all of them; the Docker image check also covers the declared MSRV for the new dependency versions.

Contributor Sign-off

  • Every commit in this PR includes a DCO Signed-off-by trailer.

Apply nine open Dependabot updates in one change. Main requires an
up-to-date branch, so merging them one at a time would cost a rebase and a
full CI run each.

Cargo:
- tokio 1.53.1 -> 1.53.2, libc 0.2.189 -> 0.2.190, pyo3 0.29.0 -> 0.29.3,
  base64 0.23.0 -> 0.23.1 (lockfile only)
- etcd-client 0.19.0 -> 0.20.0: additive release (trust roots, aws-lc-rs,
  token refresh); NoKV builds it with default features off
- signal-hook =0.3.18 -> =0.4.5: 0.4 only changes the low-level pipe API;
  NoKV uses consts and flag::register
- sha2 0.10 -> 0.11: the workspace now resolves to the sha2 0.11.0 already in
  the lockfile. Its digest no longer implements LowerHex, so the sdk_facade
  test helper formats the bytes itself.

The lockfile was updated with targeted --precise updates only, so no other
package moves.

GitHub Actions:
- actions/upload-artifact 7.0.1 -> 7.0.2
- actions/download-artifact 8.0.1 -> 8.0.2

Signed-off-by: wchwawa <wch19961116@gmail.com>
@wchwawa
wchwawa requested a review from feichai0017 as a code owner October 16, 2026 05:06
@feichai0017 feichai0017 moved this to In Progress in NoKV Delivery Oct 16, 2026
The local-WAL recovery gate contract pins the exact signal-hook version behind the async-safe SIGINT/SIGTERM flags installed before owner acquisition, so a version change has to move the contract with it. signal-hook 0.4 changes only the low-level pipe API; flag::register, consts, and the unchanged signal-hook-registry stay the same. The live interrupted local-WAL successor recovery gate, including the graceful SIGTERM release, passed on this branch with 0.4.5.

Signed-off-by: wchwawa <wch19961116@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants