Skip to content

build: update grovedb dependency from git revision to v5.0.0 tag#3971

Merged
QuantumExplorer merged 1 commit into
v3.1-devfrom
claude/pedantic-goodall-ce0cc7
Jun 30, 2026
Merged

build: update grovedb dependency from git revision to v5.0.0 tag#3971
QuantumExplorer merged 1 commit into
v3.1-devfrom
claude/pedantic-goodall-ce0cc7

Conversation

@QuantumExplorer

@QuantumExplorer QuantumExplorer commented Jun 30, 2026

Copy link
Copy Markdown
Member

Issue being fixed or feature implemented

Replace pinned git revision (fc814983d4d36c6ea049642556b9a31ab8d4dfaa) with the v5.0.0 tag for all grovedb dependencies, making the dependency version explicit and human-readable.

What was done?

Updated all 14 grovedb rev = "fc8149..." references across 6 Cargo.toml files to use tag = "v5.0.0" instead:

  • packages/rs-drive/Cargo.toml — grovedb, grovedb-costs, grovedb-path, grovedb-storage, grovedb-version, grovedb-epoch-based-storage-flags
  • packages/rs-drive-abci/Cargo.toml — grovedb-commitment-tree (deps + dev-deps), grovedb-path, grovedb-storage
  • packages/rs-dpp/Cargo.toml — grovedb-commitment-tree
  • packages/rs-sdk/Cargo.toml — grovedb-commitment-tree
  • packages/rs-platform-wallet/Cargo.toml — grovedb-commitment-tree
  • packages/rs-platform-version/Cargo.toml — grovedb-version

The v5.0.0 tag (commit 9b98a356) is 2 commits ahead of the previous rev (fc814983).

How Has This Been Tested?

  • cargo check --workspace passes cleanly
  • cargo update resolves all grovedb sub-crates to 5.0.0 from the tag

Breaking Changes

None. This is a dependency source change (rev → tag) pointing to a near-identical commit.

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have added "!" to the title and described breaking changes in the corresponding section if my code contains any
  • I have made corresponding changes to the documentation if needed

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Updated several bundled backend dependencies to a newer released version, aligning the workspace on a consistent library release.
    • This should help keep the platform current and reduce drift across packages.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Six Cargo.toml files across the Rust workspace replace pinned git commit hashes (rev = fc814983...) with tag = "v5.0.0" for all grovedb-family dependencies (grovedb, grovedb-costs, grovedb-path, grovedb-storage, grovedb-version, grovedb-epoch-based-storage-flags, grovedb-commitment-tree).

Changes

GroveDB v5.0.0 tag pin

Layer / File(s) Summary
Switch grovedb deps from rev to v5.0.0 tag
packages/rs-platform-version/Cargo.toml, packages/rs-dpp/Cargo.toml, packages/rs-drive/Cargo.toml, packages/rs-drive-abci/Cargo.toml, packages/rs-platform-wallet/Cargo.toml, packages/rs-sdk/Cargo.toml
All grovedb-family git dependencies replace rev = <commit> with tag = "v5.0.0" while preserving optional flags, features, and other metadata.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Suggested reviewers

  • shumkov

Poem

🐇 A tag is a gift, neat and trim,
No more long hashes on a whim!
v5.0.0 shines bright and true,
Six crates updated, all fresh and new.
The bunny hops on, version pinned with cheer! 🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: moving grovedb dependencies from a pinned git revision to the v5.0.0 tag.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/pedantic-goodall-ce0cc7

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@thepastaclaw

thepastaclaw commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

✅ Review complete (commit 5bd6b75)

@QuantumExplorer QuantumExplorer left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Self Reviewed

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
packages/rs-drive/Cargo.toml (1)

55-60: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick win

packages/rs-drive/Cargo.toml:55-60 — Pin these Git dependencies with rev instead of tag. The lockfile currently resolves v5.0.0 to 9b98a35644cdea73cc1b21d7c122cb58ae9fafd8, but tag = "v5.0.0" still makes future relocks depend on a mutable upstream ref. Use rev = "9b98a35644cdea73cc1b21d7c122cb58ae9fafd8" here.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@packages/rs-drive/Cargo.toml` around lines 55 - 60, The Grovedb Git
dependencies in the rs-drive Cargo.toml entry are still pinned by tag, which
leaves future relocks dependent on a mutable upstream ref. Update the dependency
declarations for grovedb, grovedb-costs, grovedb-path, grovedb-storage,
grovedb-version, and grovedb-epoch-based-storage-flags to use the fixed commit
revision instead of tag, matching the resolved commit hash from the lockfile.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@packages/rs-drive/Cargo.toml`:
- Around line 55-60: The Grovedb Git dependencies in the rs-drive Cargo.toml
entry are still pinned by tag, which leaves future relocks dependent on a
mutable upstream ref. Update the dependency declarations for grovedb,
grovedb-costs, grovedb-path, grovedb-storage, grovedb-version, and
grovedb-epoch-based-storage-flags to use the fixed commit revision instead of
tag, matching the resolved commit hash from the lockfile.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: df6c3d2b-4f14-4fdd-9af6-2949393d4313

📥 Commits

Reviewing files that changed from the base of the PR and between 1157ca7 and 5bd6b75.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (6)
  • packages/rs-dpp/Cargo.toml
  • packages/rs-drive-abci/Cargo.toml
  • packages/rs-drive/Cargo.toml
  • packages/rs-platform-version/Cargo.toml
  • packages/rs-platform-wallet/Cargo.toml
  • packages/rs-sdk/Cargo.toml

@thepastaclaw thepastaclaw left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Verified the single actionable agent finding against the PR diff and current source. The PR introduces tag = "v5.0.0" GroveDB dependencies, and the existing switcher now preserves that tag when rewriting to rev or branch, producing invalid Cargo dependency specs. Claude coverage was degraded because its reviewer run failed authentication, and CodeRabbit supplied no actionable findings.

🟡 2 suggestion(s)

Findings not posted inline (1)

These findings could not be anchored to the current diff, but they are still part of this review.

  • [SUGGESTION] scripts/grovedb_version_switcher.py:147: Remove tag when rewriting GroveDB dependency sources — This PR changes GroveDB dependencies from rev to tag = "v5.0.0", but the dependency switcher only removes git, rev, branch, path, and version before inserting the requested source selector. Switching a tagged dependency back to a revision or branch therefore leaves both selectors in...
🤖 Prompt for all review comments with AI agents
These findings are from an automated code review. Verify each finding against the current code and only fix it if needed.

In `scripts/grovedb_version_switcher.py`:
- [SUGGESTION] scripts/grovedb_version_switcher.py:147: Remove tag when rewriting GroveDB dependency sources
  This PR changes GroveDB dependencies from `rev` to `tag = "v5.0.0"`, but the dependency switcher only removes `git`, `rev`, `branch`, `path`, and `version` before inserting the requested source selector. Switching a tagged dependency back to a revision or branch therefore leaves both selectors in the inline table, for example `{ git = "https://github.com/dashpay/grovedb", rev = "deadbeef", tag = "v5.0.0" }`, which Cargo rejects because a git dependency may specify only one of `rev`, `tag`, or `branch`. Add `tag` to the conflicting-key removal list so the script remains usable after this dependency change.
- [SUGGESTION] scripts/grovedb_version_switcher.py:147: Remove tag when rewriting GroveDB dependency sources
  This PR changes GroveDB dependencies from `rev` to `tag = "v5.0.0"`, but the dependency switcher only removes `git`, `rev`, `branch`, `path`, and `version` before inserting the requested source selector. Switching a tagged dependency back to a revision or branch therefore leaves both selectors in the inline table, for example `{ git = "https://github.com/dashpay/grovedb", rev = "deadbeef", tag = "v5.0.0" }`, which Cargo rejects because a git dependency may specify only one of `rev`, `tag`, or `branch`. Add `tag` to the conflicting-key removal list so the script remains usable after this dependency change.

@codecov

codecov Bot commented Jun 30, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 52.54%. Comparing base (48f0cc3) to head (5bd6b75).
⚠️ Report is 2 commits behind head on v3.1-dev.

Additional details and impacted files
@@              Coverage Diff              @@
##           v3.1-dev    #3971       +/-   ##
=============================================
- Coverage     87.17%   52.54%   -34.63%     
=============================================
  Files          2629       11     -2618     
  Lines        327221     1707   -325514     
=============================================
- Hits         285265      897   -284368     
+ Misses        41956      810    -41146     
Components Coverage Δ
dpp ∅ <ø> (∅)
drive ∅ <ø> (∅)
drive-abci ∅ <ø> (∅)
sdk ∅ <ø> (∅)
dapi-client ∅ <ø> (∅)
platform-version ∅ <ø> (∅)
platform-value ∅ <ø> (∅)
platform-wallet ∅ <ø> (∅)
drive-proof-verifier ∅ <ø> (∅)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@QuantumExplorer QuantumExplorer merged commit a3a4d43 into v3.1-dev Jun 30, 2026
37 of 39 checks passed
@QuantumExplorer QuantumExplorer deleted the claude/pedantic-goodall-ce0cc7 branch June 30, 2026 09:40
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