-
Notifications
You must be signed in to change notification settings - Fork 44
chore(release): update changelog and bump version to 2.1.0-dev.4 #2779
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughAdds a new 2.1.0-dev.4 changelog entry, bumps many npm package and Rust crate versions across the monorepo, updates dashmate migration to set platform Docker image fields, and extends release tooling: Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Dev as Developer
participant SH as release.sh
participant JS as bump_version.js
participant FS as Files (package.json/Cargo.toml)
participant GIT as Git
Dev->>SH: ./release.sh [-t TYPE] [-v VERSION]
alt VERSION provided
SH->>SH: validate TARGET_VERSION (semver) & infer RELEASE_TYPE
SH->>JS: node bump_version.js --target-version=VERSION [--type TYPE]
JS->>JS: parseArgs(argv) & validate semver
JS->>FS: setExactVersion(VERSION) → update all package.json and Cargo.toml
JS->>GIT: write root package.json with target version
else No VERSION provided
SH->>JS: node bump_version.js --type TYPE
JS->>FS: bump versions by release type (prerelease/release)
end
SH->>GIT: continue normal release flow (changelog/PR/metadata)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests
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. Comment |
✅ gRPC Query Coverage Report
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🧹 Nitpick comments (9)
packages/withdrawals-contract/Cargo.toml (1)
3-4
: Fix minor typo in description.Spelling nit.
Apply this diff:
-description = "Witdrawals data contract schema and tools" +description = "Withdrawals data contract schema and tools"packages/wallet-lib/package.json (1)
3-3
: Confirm publish strategy for prerelease/major version shift.Going from 9.x to 2.1.0-dev.4 can surprise npm consumers if published to latest. Recommend using a dev dist-tag.
Consider adding publishConfig to enforce dev tag:
"homepage": "https://github.com/dashevo/wallet-lib#readme", + "publishConfig": { + "tag": "dev" + }, "dependencies": {And publish with: npm publish --tag dev (or via your release tooling).
packages/rs-drive/Cargo.toml (1)
5-10
: Fix malformed author entry (missing '>').
The last author string lacks a closing angle bracket, which is untidy and could surface in packaging metadata.Apply:
authors = [ "Samuel Westrich <sam@dash.org>", "Ivan Shumkov <ivan@shumkov.ru>", "Djavid Gabibiyan <djavid@dash.org>", - "Wisdom Ogwu <wisdom@dash.org", + "Wisdom Ogwu <wisdom@dash.org>", ]CHANGELOG.md (1)
59-61
: Typo: use “don’t” instead of “dont”.Minor wording fix for polish.
- * dont do CI when it's not needed ([#2774](https://github.com/dashpay/platform/issues/2774)) + * don't do CI when it's not needed ([#2774](https://github.com/dashpay/platform/issues/2774))scripts/release/release.sh (1)
15-18
: Good: new -v/--version option documented. Also accept space-separated args?Currently parsing supports only
-v=2.1.0-dev.4
. Many users type-v 2.1.0-dev.4
. Consider accepting both forms for better UX.for i in "$@" do case ${i} in @@ - -t=*|--type=*) + -t=*|--type=*) RELEASE_TYPE="${i#*=}" ;; - -v=*|--version=*) + -v=*|--version=*) TARGET_VERSION="${i#*=}" ;; @@ esac done + +# Support space-separated flags (-t dev, -v 2.1.0-dev.4) +while [[ $# -gt 0 ]]; do + case "$1" in + -t|--type) + RELEASE_TYPE="$2"; shift 2; continue;; + -v|--version) + TARGET_VERSION="$2"; shift 2; continue;; + *) + shift;; + esac +donescripts/release/bump_version.js (4)
17-17
: Keep versionFunc arity consistent for clarityAlign the exact-version function’s signature with callers to avoid reader confusion about ignored params.
-const setExactVersion = (targetVersion) => () => targetVersion; +const setExactVersion = (targetVersion) => (_version, _releaseType) => targetVersion;
19-55
: CLI UX: add short flags (-v/-t) and guard missing valuesRelease script advertises -v/--version; this parser handles only long forms. Also, add a concise value check to fail fast when a flag value is omitted.
const parseArgs = (argv) => { let releaseType; let targetVersion; for (let i = 0; i < argv.length; i += 1) { const arg = argv[i]; + const takeNext = () => { + const next = argv[i + 1]; + if (next === undefined || next.startsWith('-')) { + throw new Error(`Missing value for ${arg}`); + } + i += 1; + return next; + }; + if (arg.startsWith('--target-version=')) { targetVersion = arg.split('=')[1]; continue; } if (arg === '--target-version') { - targetVersion = argv[i + 1]; - i += 1; + targetVersion = takeNext(); continue; } + + if (arg === '-t') { + targetVersion = takeNext(); + continue; + } if (arg.startsWith('--version=')) { targetVersion = arg.split('=')[1]; continue; } if (arg === '--version') { - targetVersion = argv[i + 1]; - i += 1; + targetVersion = takeNext(); + continue; + } + + if (arg === '-v') { + targetVersion = takeNext(); continue; } if (!releaseType && !arg.startsWith('-')) { releaseType = arg; } } return { releaseType, targetVersion }; };
93-103
: Normalize targetVersion once; accept common “v” prefix and reuse normalized valueNormalize/clean the provided version before validation and reuse the normalized value below. This avoids edge cases like “v2.1.0-dev.4” and eliminates repeating semver.prerelease on the raw input.
- let releaseType = releaseTypeArg; + let releaseType = releaseTypeArg; - if (targetVersion !== undefined && !semver.valid(targetVersion)) { - throw new Error(`Invalid target version: ${targetVersion}`); - } + const normalizedTarget = + targetVersion === undefined ? undefined : (semver.valid(targetVersion) || semver.clean(targetVersion)); + if (targetVersion !== undefined && !normalizedTarget) { + throw new Error(`Invalid target version: ${targetVersion}`); + } - if (targetVersion !== undefined && releaseType === undefined) { - const targetPrerelease = semver.prerelease(targetVersion); + if (normalizedTarget !== undefined && releaseType === undefined) { + const targetPrerelease = semver.prerelease(normalizedTarget); releaseType = targetPrerelease !== null ? targetPrerelease[0] : 'release'; } @@ - if (targetVersion !== undefined) { - const targetPrerelease = semver.prerelease(targetVersion); + if (normalizedTarget !== undefined) { + const targetPrerelease = semver.prerelease(normalizedTarget); const targetVersionType = targetPrerelease !== null ? targetPrerelease[0] : 'release'; if (releaseType !== targetVersionType) { throw new Error(`Specified release type (${releaseType}) does not match target version type (${targetVersionType})`); } - bumpNpmPackages(setExactVersion(targetVersion), releaseType); - bumpRustPackages(setExactVersion(targetVersion), releaseType); + bumpNpmPackages(setExactVersion(normalizedTarget), releaseType); + bumpRustPackages(setExactVersion(normalizedTarget), releaseType); - rootPackageJson.version = targetVersion; + rootPackageJson.version = normalizedTarget; fs.writeFileSync(path.join(__dirname, '..', '..', 'package.json'), `${JSON.stringify(rootPackageJson, null, 2)}\n`); return; }Also applies to: 110-125
110-125
: Nit: de-duplicate root package pathMinor readability: define root path once.
(async () => { + const rootPackagePath = path.join(__dirname, '..', '..', 'package.json'); @@ - fs.writeFileSync(path.join(__dirname, '..', '..', 'package.json'), `${JSON.stringify(rootPackageJson, null, 2)}\n`); + fs.writeFileSync(rootPackagePath, `${JSON.stringify(rootPackageJson, null, 2)}\n`);
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
Cargo.lock
is excluded by!**/*.lock
📒 Files selected for processing (61)
CHANGELOG.md
(1 hunks)package.json
(1 hunks)packages/bench-suite/package.json
(1 hunks)packages/check-features/Cargo.toml
(1 hunks)packages/dapi-grpc/Cargo.toml
(1 hunks)packages/dapi-grpc/package.json
(1 hunks)packages/dapi/package.json
(1 hunks)packages/dash-platform-balance-checker/Cargo.toml
(1 hunks)packages/dash-spv/package.json
(1 hunks)packages/dashmate/package.json
(1 hunks)packages/dashpay-contract/Cargo.toml
(1 hunks)packages/dashpay-contract/package.json
(1 hunks)packages/data-contracts/Cargo.toml
(1 hunks)packages/dpns-contract/Cargo.toml
(1 hunks)packages/dpns-contract/package.json
(1 hunks)packages/feature-flags-contract/Cargo.toml
(1 hunks)packages/feature-flags-contract/package.json
(1 hunks)packages/js-dapi-client/package.json
(1 hunks)packages/js-dash-sdk/package.json
(1 hunks)packages/js-evo-sdk/package.json
(1 hunks)packages/js-grpc-common/package.json
(1 hunks)packages/keyword-search-contract/Cargo.toml
(1 hunks)packages/keyword-search-contract/package.json
(1 hunks)packages/masternode-reward-shares-contract/Cargo.toml
(1 hunks)packages/masternode-reward-shares-contract/package.json
(1 hunks)packages/platform-test-suite/package.json
(1 hunks)packages/rs-context-provider/Cargo.toml
(1 hunks)packages/rs-dapi-client/Cargo.toml
(1 hunks)packages/rs-dapi-grpc-macros/Cargo.toml
(1 hunks)packages/rs-dpp/Cargo.toml
(1 hunks)packages/rs-drive-abci/Cargo.toml
(1 hunks)packages/rs-drive-proof-verifier/Cargo.toml
(1 hunks)packages/rs-drive/Cargo.toml
(1 hunks)packages/rs-json-schema-compatibility-validator/Cargo.toml
(1 hunks)packages/rs-platform-serialization-derive/Cargo.toml
(1 hunks)packages/rs-platform-serialization/Cargo.toml
(1 hunks)packages/rs-platform-value-convertible/Cargo.toml
(1 hunks)packages/rs-platform-value/Cargo.toml
(1 hunks)packages/rs-platform-version/Cargo.toml
(1 hunks)packages/rs-platform-versioning/Cargo.toml
(1 hunks)packages/rs-platform-wallet/Cargo.toml
(1 hunks)packages/rs-sdk-ffi/Cargo.toml
(1 hunks)packages/rs-sdk-trusted-context-provider/Cargo.toml
(1 hunks)packages/rs-sdk/Cargo.toml
(1 hunks)packages/simple-signer/Cargo.toml
(1 hunks)packages/strategy-tests/Cargo.toml
(1 hunks)packages/token-history-contract/Cargo.toml
(1 hunks)packages/token-history-contract/package.json
(1 hunks)packages/wallet-lib/package.json
(1 hunks)packages/wallet-utils-contract/Cargo.toml
(1 hunks)packages/wallet-utils-contract/package.json
(1 hunks)packages/wasm-dpp/Cargo.toml
(1 hunks)packages/wasm-dpp/package.json
(1 hunks)packages/wasm-drive-verify/Cargo.toml
(1 hunks)packages/wasm-drive-verify/package.json
(1 hunks)packages/wasm-sdk/Cargo.toml
(1 hunks)packages/wasm-sdk/package.json
(1 hunks)packages/withdrawals-contract/Cargo.toml
(1 hunks)packages/withdrawals-contract/package.json
(1 hunks)scripts/release/bump_version.js
(3 hunks)scripts/release/release.sh
(3 hunks)
🧰 Additional context used
📓 Path-based instructions (4)
packages/platform-test-suite/**
📄 CodeRabbit inference engine (AGENTS.md)
packages/platform-test-suite/**
: Keep end-to-end tests and helpers in packages/platform-test-suite
Keep all E2E tests exclusively in packages/platform-test-suite
Files:
packages/platform-test-suite/package.json
packages/rs-sdk-ffi/**
📄 CodeRabbit inference engine (AGENTS.md)
Keep iOS/FFI Rust SDK artifacts in packages/rs-sdk-ffi
Files:
packages/rs-sdk-ffi/Cargo.toml
packages/wasm-sdk/**
📄 CodeRabbit inference engine (CLAUDE.md)
Keep WASM SDK docs in sync (run generate_docs.py) when updating the WASM SDK
Files:
packages/wasm-sdk/Cargo.toml
packages/wasm-sdk/package.json
scripts/**
📄 CodeRabbit inference engine (AGENTS.md)
Place automation and helper scripts in scripts/
Files:
scripts/release/bump_version.js
scripts/release/release.sh
🧠 Learnings (16)
📚 Learning: 2024-12-05T09:29:38.918Z
Learnt from: shumkov
PR: dashpay/platform#2375
File: packages/rs-drive-abci/Cargo.toml:61-63
Timestamp: 2024-12-05T09:29:38.918Z
Learning: In the `drive-abci` package, avoid adding unused dependencies like `hashbrown` to `Cargo.toml`. The team relies on CI to detect dependency version issues.
Applied to files:
packages/rs-drive-abci/Cargo.toml
📚 Learning: 2025-01-19T07:36:46.042Z
Learnt from: QuantumExplorer
PR: dashpay/platform#2431
File: packages/rs-drive/Cargo.toml:55-60
Timestamp: 2025-01-19T07:36:46.042Z
Learning: The grovedb dependencies in packages/rs-drive/Cargo.toml and related files are intentionally kept at specific revisions rather than using the latest stable version, with plans to update them at a later time.
Applied to files:
packages/rs-drive-abci/Cargo.toml
packages/data-contracts/Cargo.toml
packages/rs-json-schema-compatibility-validator/Cargo.toml
packages/rs-sdk-ffi/Cargo.toml
packages/rs-platform-serialization-derive/Cargo.toml
packages/rs-sdk/Cargo.toml
packages/rs-platform-wallet/Cargo.toml
packages/rs-drive-proof-verifier/Cargo.toml
packages/rs-platform-value-convertible/Cargo.toml
packages/rs-platform-value/Cargo.toml
packages/rs-platform-versioning/Cargo.toml
packages/rs-platform-serialization/Cargo.toml
packages/rs-drive/Cargo.toml
packages/rs-context-provider/Cargo.toml
packages/rs-platform-version/Cargo.toml
packages/rs-sdk-trusted-context-provider/Cargo.toml
packages/wasm-drive-verify/Cargo.toml
📚 Learning: 2025-09-03T16:37:11.605Z
Learnt from: QuantumExplorer
PR: dashpay/platform#2756
File: packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_list/update_state_masternode_list/v0/mod.rs:11-11
Timestamp: 2025-09-03T16:37:11.605Z
Learning: In packages/rs-dpp/Cargo.toml, the abci feature already includes core_rpc_client, and core_rpc_client is defined as ["dep:dashcore-rpc"]. This means rs-drive-abci can access dashcore-rpc types through dpp when using the abci feature.
Applied to files:
packages/rs-drive-abci/Cargo.toml
packages/rs-dapi-client/Cargo.toml
packages/rs-sdk-ffi/Cargo.toml
📚 Learning: 2024-10-29T10:42:00.521Z
Learnt from: lklimek
PR: dashpay/platform#2277
File: packages/rs-dapi-client/Cargo.toml:22-22
Timestamp: 2024-10-29T10:42:00.521Z
Learning: In `packages/rs-dapi-client/Cargo.toml`, `backon` will not work without the `tokio-sleep` feature in our setup, so it's unnecessary to declare `tokio-sleep` as a separate feature in the `[features]` section.
Applied to files:
packages/rs-dapi-client/Cargo.toml
📚 Learning: 2025-09-12T13:18:08.661Z
Learnt from: CR
PR: dashpay/platform#0
File: AGENTS.md:0-0
Timestamp: 2025-09-12T13:18:08.661Z
Learning: Applies to packages/platform-test-suite/** : Keep end-to-end tests and helpers in packages/platform-test-suite
Applied to files:
packages/platform-test-suite/package.json
📚 Learning: 2025-09-12T13:18:08.661Z
Learnt from: CR
PR: dashpay/platform#0
File: AGENTS.md:0-0
Timestamp: 2025-09-12T13:18:08.661Z
Learning: Applies to packages/rs-sdk-ffi/** : Keep iOS/FFI Rust SDK artifacts in packages/rs-sdk-ffi
Applied to files:
packages/rs-sdk-ffi/Cargo.toml
📚 Learning: 2024-10-18T15:39:51.172Z
Learnt from: lklimek
PR: dashpay/platform#2254
File: packages/rs-sdk/src/sdk.rs:585-585
Timestamp: 2024-10-18T15:39:51.172Z
Learning: The 'platform' project uses Rust version 1.80, so code in 'packages/rs-sdk' can use features available in Rust 1.80, such as the `abs_diff()` method.
Applied to files:
packages/rs-sdk-ffi/Cargo.toml
packages/rs-platform-serialization-derive/Cargo.toml
packages/rs-sdk/Cargo.toml
packages/rs-platform-wallet/Cargo.toml
packages/rs-platform-value-convertible/Cargo.toml
packages/wasm-sdk/Cargo.toml
packages/rs-platform-value/Cargo.toml
packages/rs-platform-versioning/Cargo.toml
packages/rs-platform-serialization/Cargo.toml
packages/rs-platform-version/Cargo.toml
packages/rs-sdk-trusted-context-provider/Cargo.toml
📚 Learning: 2025-09-07T22:18:50.883Z
Learnt from: CR
PR: dashpay/platform#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-07T22:18:50.883Z
Learning: Applies to packages/rs-sdk-ffi/**/*.{h,rs} : Follow unified SDK function prefixes: dash_core_sdk_* for Core, dash_sdk_* for Platform, dash_unified_sdk_* for unified APIs
Applied to files:
packages/rs-sdk-ffi/Cargo.toml
packages/rs-sdk/Cargo.toml
📚 Learning: 2024-10-09T00:22:57.778Z
Learnt from: shumkov
PR: dashpay/platform#2206
File: packages/rs-platform-version/src/version/protocol_version.rs:155-157
Timestamp: 2024-10-09T00:22:57.778Z
Learning: In the dashmate default configurations, the default protocol version for local networks has been removed, and an update mechanism for the protocol version in the consensus parameters has been implemented.
Applied to files:
packages/dashmate/package.json
📚 Learning: 2024-10-08T13:28:03.529Z
Learnt from: QuantumExplorer
PR: dashpay/platform#2227
File: packages/rs-drive-abci/src/platform_types/platform_state/mod.rs:141-141
Timestamp: 2024-10-08T13:28:03.529Z
Learning: When converting `PlatformStateV0` to `PlatformStateForSavingV1` in `packages/rs-drive-abci/src/platform_types/platform_state/mod.rs`, only version `0` needs to be handled in the match on `platform_state_for_saving_structure_default` because the changes are retroactive.
Applied to files:
packages/rs-platform-serialization-derive/Cargo.toml
packages/rs-platform-wallet/Cargo.toml
packages/rs-platform-value-convertible/Cargo.toml
packages/rs-platform-value/Cargo.toml
packages/rs-platform-versioning/Cargo.toml
packages/rs-platform-version/Cargo.toml
📚 Learning: 2025-03-11T09:39:23.071Z
Learnt from: shumkov
PR: dashpay/platform#2489
File: packages/rs-dpp/Cargo.toml:32-32
Timestamp: 2025-03-11T09:39:23.071Z
Learning: In the Dash Platform project, dependencies are currently managed using Git repository references with tags (repo+tag format in Cargo.toml) rather than published crates, as the team is not currently publishing crates to crates.io.
Applied to files:
packages/rs-sdk/Cargo.toml
📚 Learning: 2025-09-07T22:18:50.883Z
Learnt from: CR
PR: dashpay/platform#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-07T22:18:50.883Z
Learning: Applies to packages/wasm-sdk/** : Keep WASM SDK docs in sync (run generate_docs.py) when updating the WASM SDK
Applied to files:
packages/wasm-sdk/Cargo.toml
packages/wasm-sdk/package.json
📚 Learning: 2025-09-03T14:42:29.958Z
Learnt from: thephez
PR: dashpay/platform#2754
File: packages/wasm-sdk/docs.html:1970-1971
Timestamp: 2025-09-03T14:42:29.958Z
Learning: In packages/wasm-sdk/, the docs.html file is auto-generated from api-definitions.json. Any documentation fixes should be made in api-definitions.json rather than directly in docs.html, as manual changes to docs.html would be overwritten during regeneration.
Applied to files:
packages/wasm-sdk/Cargo.toml
packages/wasm-sdk/package.json
📚 Learning: 2025-09-03T14:41:16.196Z
Learnt from: thephez
PR: dashpay/platform#2754
File: packages/wasm-sdk/AI_REFERENCE.md:766-766
Timestamp: 2025-09-03T14:41:16.196Z
Learning: In packages/wasm-sdk/, the AI_REFERENCE.md file is auto-generated from api-definitions.json. Any documentation fixes should be made in api-definitions.json rather than directly in AI_REFERENCE.md, as manual changes to AI_REFERENCE.md would be overwritten during regeneration.
Applied to files:
packages/wasm-sdk/Cargo.toml
packages/wasm-sdk/package.json
📚 Learning: 2024-10-03T11:51:06.980Z
Learnt from: shumkov
PR: dashpay/platform#2201
File: packages/rs-platform-version/src/version/v2.rs:1186-1188
Timestamp: 2024-10-03T11:51:06.980Z
Learning: In the `IdentityTransitionVersions` structure within `packages/rs-platform-version/src/version/v2.rs`, the field `credit_withdrawal` does not need the `identity_` prefix since it is already encompassed within identity state transitions.
Applied to files:
packages/withdrawals-contract/Cargo.toml
📚 Learning: 2025-07-28T20:00:08.502Z
Learnt from: QuantumExplorer
PR: dashpay/platform#2711
File: packages/wasm-sdk/AI_REFERENCE.md:771-783
Timestamp: 2025-07-28T20:00:08.502Z
Learning: In packages/wasm-sdk/AI_REFERENCE.md, the documentation correctly shows the actual SDK method signatures (including identityCreate and identityTopUp with their full parameter lists), which may differ from the UI inputs shown in fixed_definitions.json. The UI may collect fewer parameters from users while handling additional requirements internally.
Applied to files:
CHANGELOG.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (175)
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Detect immutable structure changes
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Linting
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (dashpay-contract) / Formatting
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (wasm-sdk) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Tests
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (json-schema-compatibility-validator) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (rs-sdk-ffi) / Tests
- GitHub Check: Build Docker images (Drive, drive, drive-abci) / Build Drive image
- GitHub Check: Build Docker images (Dashmate helper, dashmate-helper, dashmate-helper) / Build Dashmate helper image
- GitHub Check: Build Docker images (DAPI, dapi, dapi) / Build DAPI image
- GitHub Check: Build JS packages / Build JS
🔇 Additional comments (61)
packages/rs-platform-wallet/Cargo.toml (1)
3-3
: LGTM.Metadata-only bump; no API surface change.
packages/strategy-tests/Cargo.toml (1)
3-3
: LGTM.Version aligns with workspace.
packages/rs-drive-proof-verifier/Cargo.toml (1)
3-3
: LGTM.No feature/dependency drift introduced.
packages/rs-dapi-client/Cargo.toml (1)
3-3
: LGTM.No changes to features/targets; safe metadata update.
packages/dashpay-contract/package.json (1)
3-3
: LGTM.Contract package version synced with workspace.
packages/dapi/package.json (1)
4-4
: Confirm OA3 docs reflect package.json version — manual check requiredScript returned no output so I couldn't verify. Manually confirm doc/swaggerDef.js and any committed swagger.json include version '2.1.0-dev.4' (CI/scripts read package.json for the version).
packages/rs-drive-abci/Cargo.toml (1)
3-3
: LGTM — version bump is consistentRepo-wide check: all package manifests (Cargo.toml and package.json) are set to 2.1.0-dev.4; remaining differing occurrences are confined to lockfiles (Cargo.lock / package-lock.json) as dependency records — expected. No dependency changes observed.
packages/wasm-sdk/package.json (1)
3-3
: Regenerate WASM SDK docs for version 2.1.0-dev.4.
Regenerate docs from api-definitions.json (do not hand-edit AI_REFERENCE.md or docs.html) and commit updated artifacts under packages/wasm-sdk (AI_REFERENCE.md, docs.html). Automated verification in the sandbox failed (error: "/dev/fd/63"); confirm the generated docs contain "2.1.0-dev.4" by running the included verification script locally.packages/feature-flags-contract/Cargo.toml (1)
4-4
: Version bump looks goodCrate version set to 2.1.0-dev.4; no other manifest changes. Ensure workspace publish flow/tagging matches this prerelease.
packages/rs-dpp/Cargo.toml (1)
3-3
: Aligned to 2.1.0-dev.4Looks consistent with the release. No feature/deps changes in this diff.
packages/dapi-grpc/Cargo.toml (1)
4-4
: Version updated to 2.1.0-dev.4Matches workspace prerelease scheme.
packages/wallet-utils-contract/Cargo.toml (1)
4-4
: Version bump OKConsistent with other contracts at 2.1.0-dev.4.
packages/wasm-drive-verify/package.json (1)
6-6
: NPM package version set to 2.1.0-dev.4Looks fine. Ensure the corresponding Cargo.toml for this package is also 2.1.0-dev.4 and that the build/publish pipeline pushes matching artifacts.
packages/dpns-contract/package.json (1)
3-3
: Version bump OKNo other changes; aligns with monorepo version.
packages/js-dapi-client/package.json (1)
3-3
: Approve — client lib version set to 2.1.0-dev.4.All package.json versions are 2.1.0-dev.4. After merge run a workspace install to refresh lockfiles and ensure workspace:* deps resolve.
packages/rs-platform-value-convertible/Cargo.toml (1)
5-5
: LGTM: crate version bumped to 2.1.0-dev.4.No other manifest changes; fine for a metadata-only release. If any external crates depend on this by version (not path), ensure their constraints admit the pre-release tag.
packages/dashmate/package.json (1)
3-3
: LGTM: package version set to 2.1.0-dev.4.No script/deps changes. Remember to publish only after all workspace packages are bumped to the same dev version to avoid mixed installs.
packages/dapi-grpc/package.json (1)
3-3
: LGTM: version bump only.Nothing else changed; safe.
packages/rs-platform-versioning/Cargo.toml (1)
5-5
: LGTM: proc-macro crate version bumped.Pre-release is fine. Downstream crates should use path dependencies (as they do in this repo), so no further action expected.
packages/feature-flags-contract/package.json (1)
3-3
: LGTM: version bump only.No build/test changes; fine.
packages/bench-suite/package.json (1)
4-4
: LGTM: version bump only.Private package; no publish concerns.
packages/wasm-sdk/Cargo.toml (1)
3-3
: Regenerate WASM SDK docs (docs.html & AI_REFERENCE.md) from packages/wasm-sdk/api-definitions.json and commit the changes. Automated check did not find packages/wasm-sdk/generate_docs.py (output: "generate_docs.py not found"); run the repo's doc generator and commit any diffs, or provide the correct generator path so I can re-run verification.package.json (1)
3-3
: LGTM — root and workspace bumped to 2.1.0-dev.4
Checked all package.json files: each reports 2.1.0-dev.4; no package.json remains at 2.0.0.packages/wallet-utils-contract/package.json (1)
3-3
: LGTM: version bump only.No functional changes; aligns with workspace 2.1.0-dev.4.
packages/rs-sdk/Cargo.toml (1)
3-3
: LGTM: crate version bump.Manifest otherwise unchanged; no API impact.
packages/rs-platform-serialization-derive/Cargo.toml (1)
5-5
: LGTM: derive crate version bump.Proc-macro manifest stable; no behavior change.
packages/platform-test-suite/package.json (1)
4-4
: LGTM: test suite version bump.File remains private; E2E stays in packages/platform-test-suite per guidelines.
packages/simple-signer/Cargo.toml (1)
3-3
: LGTM: crate version bump.No other manifest changes.
packages/wasm-dpp/package.json (1)
3-3
: LGTM: version bump only.No dependency/script changes.
packages/dpns-contract/Cargo.toml (1)
4-4
: LGTM: crate version bump.Metadata-only change.
packages/rs-platform-version/Cargo.toml (1)
5-5
: LGTM on metadata-only bump.Pre-release format is valid for Cargo; no dependency changes. Ensure any external crates (if published) that depend on this one are coordinated.
packages/rs-platform-value/Cargo.toml (1)
5-5
: LGTM.Version aligns with workspace target; deps unchanged. No further action.
packages/js-evo-sdk/package.json (1)
3-3
: LGTM; confirm build step before publish.Version matches 2.1.0-dev.4. Please ensure “yarn build” (prepack) still passes with this release.
packages/masternode-reward-shares-contract/Cargo.toml (1)
4-4
: LGTM.Crate version updated; no other manifest changes.
packages/token-history-contract/package.json (1)
3-3
: LGTM; Rust/JS package parity maintained.Version matches the corresponding Cargo.toml (2.1.0-dev.4). Good cross-language consistency.
packages/js-grpc-common/package.json (1)
3-3
: LGTM.Metadata-only bump; scripts and deps unchanged.
packages/rs-sdk-trusted-context-provider/Cargo.toml (1)
3-3
: LGTM.Crate version bumped; dependency set unchanged (reqwest 0.12 with rustls).
packages/token-history-contract/Cargo.toml (1)
4-4
: Version bump looks good; workspace-wide sync couldn't be confirmedSandbox verification failed with "/bin/bash: -c: line 14: conditional binary operator expected". Run the check below locally and paste the output.
#!/usr/bin/env python3 import os, sys, json, re TARGET = "2.1.0-dev.4" mismatch = [] pkgjson_found = False cargo_found = False for root, _, files in os.walk("."): for name in files: if name == "package.json": pkgjson_found = True path = os.path.join(root, name) try: with open(path, "r", encoding="utf-8") as fh: data = json.load(fh) v = data.get("version") if v is not None and v != TARGET: mismatch.append((path, v)) except Exception as e: print(f"Error parsing {path}: {e}", file=sys.stderr) for root, _, files in os.walk("."): if "Cargo.toml" in files: cargo_found = True path = os.path.join(root, "Cargo.toml") try: with open(path, "rb") as fh: data = None try: import tomllib as toml fh.seek(0) data = toml.load(fh) except Exception: try: import tomli as toml fh.seek(0) data = toml.load(fh) except Exception: fh.seek(0) text = fh.read().decode("utf-8", errors="ignore") pkg_section = False ver = None for line in text.splitlines(): if line.strip().startswith("[package]"): pkg_section = True continue if pkg_section: m = re.match(r'\s*version\s*=\s*["\']([^"\']+)["\']', line) if m: ver = m.group(1) break if line.strip().startswith("["): break data = {"package": {"version": ver}} if ver else {} pkg = data.get("package", {}) v = pkg.get("version") if v and v != TARGET: mismatch.append((path, v)) except Exception as e: print(f"Error parsing {path}: {e}", file=sys.stderr) if not pkgjson_found: print("No package.json files found.", file=sys.stderr) if not cargo_found: print("No Cargo.toml files found.", file=sys.stderr) for p, v in mismatch: print(f"Mismatch: {p} -> {v}") sys.exit(0 if not mismatch else 1)packages/check-features/Cargo.toml (1)
3-3
: LGTM on package version.Tooling crate; safe metadata update.
packages/withdrawals-contract/Cargo.toml (1)
4-4
: Version bump OK.No dependency drift introduced.
packages/masternode-reward-shares-contract/package.json (1)
3-3
: Package version bump looks consistent.Nothing else changed; OK for the dev.4 release line.
packages/dashpay-contract/Cargo.toml (1)
4-4
: LGTM on version update.No feature/deps adjustments; metadata-only.
packages/rs-dapi-grpc-macros/Cargo.toml (1)
4-4
: Macro crate version bump approved — no version-pinned deps found.rg check returned: "No version-pinned deps found (expected)".
packages/data-contracts/Cargo.toml (1)
4-4
: Action: verify/update stray 2.0.0 dependency references found by audit.Found matches — align to the intended bump or confirm they should remain:
- packages/wasm-drive-verify/Cargo.toml:37 — indexmap = { version = "2.0.0" }
- packages/wasm-drive-verify/Cargo.toml:39 — bincode = { version = "2.0.0-rc.3" }
- packages/rs-sdk/Cargo.toml:25 — rustls-pemfile = { version = "2.0.0" }
packages/rs-sdk-ffi/Cargo.toml (1)
3-3
: Approve: FFI crate version bump verified — no stray iOS/FFI artifacts found outside packages/rs-sdk-ffirg output shows many false positives (e.g. ".to.be.a" in JS tests). Actual FFI header/libs (e.g. packages/rs-sdk-ffi/include/dash_sdk_ffi.h and XCFramework artifacts) are under packages/rs-sdk-ffi; swift-sdk only references/symlinks/copies them via scripts. No action required.
packages/keyword-search-contract/package.json (1)
3-3
: LGTM: package.json bumped to 2.1.0-dev.4.
If publishing to npm, consider publishConfig.tag = "next" (or similar) so prereleases don’t land under “latest.”packages/rs-drive/Cargo.toml (1)
4-4
: LGTM: drive crate version 2.1.0-dev.4.
Grovedb pins remain at the known revs; no changes—good.packages/rs-json-schema-compatibility-validator/Cargo.toml (1)
3-3
: LGTM: version to 2.1.0-dev.4.
Self-dev-dep via path + features remains valid.packages/rs-context-provider/Cargo.toml (1)
3-3
: LGTM: version updated to 2.1.0-dev.4.
No other manifest changes.packages/keyword-search-contract/Cargo.toml (1)
4-4
: LGTM: crate version 2.1.0-dev.4.
Matches package.json; good cross-ecosystem consistency.packages/wasm-dpp/Cargo.toml (1)
3-3
: LGTM: version bump aligns with workspace.
wasm-bindgen is pinned to =0.2.100 (Line 21). Ensure all scripts referencing wasm-bindgen match this version to avoid cargo/script drift.Quick check:
packages/dash-platform-balance-checker/Cargo.toml (1)
3-3
: LGTM — crate version bumped to 2.1.0-dev.4
packages/dash-platform-balance-checker/Cargo.toml updated to 2.1.0-dev.4; no other manifest changes seen in this PR. Repo-wide verification script errored with a Python SyntaxError (escaped '!='). Re-run the corrected check or manually verify there are no mismatched versions across Cargo.toml/package.json files.packages/rs-platform-serialization/Cargo.toml (1)
5-5
: Version bump looks fine; verify workspace toolchain alignment.Crate version bump to 2.1.0-dev.4 is consistent. Since the changelog mentions "update rust to 1.89", please confirm the workspace rust-toolchain/rust-version also reflects 1.89 and CI images are updated accordingly, as this crate inherits rust-version from the workspace.
packages/withdrawals-contract/package.json (1)
3-3
: LGTM: package version updated to 2.1.0-dev.4.No functional changes. Ensure any paired Rust manifests for this package were also bumped to avoid mixed versions in the workspace.
CHANGELOG.md (2)
1-18
: Changelog entry is comprehensive; date/tag look correct.Compare link v2.0.0...v2.1.0-dev.4 and date 2025-09-18 align with the release. No structural issues.
66-69
: Confirm toolchain upgrade note matches repo config.Entry says “update rust to 1.89”; please ensure rust-toolchain.toml and CI runners use 1.89 to avoid mismatch during releases.
scripts/release/release.sh (2)
68-72
: Correct integration with bump_version.js.Passing
--target-version
when provided is the right behavior; confirms deterministic bumps.Please ensure scripts/release/bump_version.js actually supports
--target-version
and rejects mismatched--type
/--target-version
combinations.
74-74
: cargo metadata flag update is fine.No behavior change; keeps the Rust workspace ready for subsequent steps. Ensure cargo is available in release environments.
scripts/release/bump_version.js (3)
82-82
: LGTM: centralized arg parsingSwitching to parseArgs simplifies the main flow. No issues.
118-123
: Sanity-check propagation: re-run verification (script failed)Verification errored: "/bin/bash: -c: line 10: conditional binary operator expected". Re-run this POSIX-safe check from the repo root and paste the output.
#!/usr/bin/env bash set -euo pipefail root_js_version=$(jq -r '.version' package.json) echo "root_js_version=$root_js_version" echo "Verifying package.json versions..." found=0 while IFS= read -r -d $'\0' f; do v=$(jq -r '.version // empty' "$f") if [ -n "$v" ] && [ "$v" != "$root_js_version" ]; then printf 'Mismatch: %s -> %s (root: %s)\n' "$f" "$v" "$root_js_version" found=1 fi done < <(find . -type f -name 'package.json' -not -path '*/node_modules/*' -not -path '*/dist/*' -not -path '*/build/*' -print0) [ "$found" -eq 0 ] && echo "OK" echo echo "Verifying Cargo package versions (best-effort)…" rg -nUP '(?s)^\[package\].*?^version\s*=\s*"([^"]+)"' --glob 'Cargo.toml' \ | awk -v root="$root_js_version" -F':' ' { file=$1; sub(/:.*/,"",file); match($0,/version\s*=\s*"([^"]+)"/,m); v=m[1]; if (v != root) { printf("Mismatch: %s -> %s (root: %s)\n", file, v, root); found=1 } } END { exit(found?1:0) }' || echo "OK (or review mismatches above)"
19-55
: Verify script routing and flags between release.sh and bump_version.js
- scripts/release/release.sh (lines ~66–72): when TARGET_VERSION is set it calls bump_version.js with --target-version (line 69); otherwise it invokes bump_version.js with only the positional RELEASE_TYPE.
- No usages of the short '-v' flag were found in the repo.
- Repo-wide check for other callers passing positional target/version failed due to a PCRE2 regex error during the run; cannot conclusively rule out other call sites — re-run the positional-invocation search or allow a follow-up run with a corrected command.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See CodeRabbit comments, other than that LGTM
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
packages/dashmate/configs/getConfigFileMigrationsFactory.js (1)
1106-1109
: Prefer sourcing images from defaults instead of hardcodingTo keep migrations aligned with default configs and reduce future churn, consider reading the image from
base
(or the resolved default for the config) rather than hardcoding tags.Proposed minimal change (use base config values):
- options.platform.drive.abci.docker.image = 'dashpay/drive:2-dev'; - options.platform.dapi.api.docker.image = 'dashpay/dapi:2-dev'; + options.platform.drive.abci.docker.image = base.get('platform.drive.abci.docker.image'); + options.platform.dapi.api.docker.image = base.get('platform.dapi.api.docker.image');If you want per-config specificity (name/group-aware), switch the iterator to
([name, options])
and resolve viagetDefaultConfigByNameOrGroup(name, options.group)
.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
packages/dash-spv/package.json
(1 hunks)packages/dashmate/configs/getConfigFileMigrationsFactory.js
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- packages/dash-spv/package.json
🧰 Additional context used
📓 Path-based instructions (1)
packages/**/**/*.{js,ts,jsx,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
packages/**/**/*.{js,ts,jsx,tsx}
: Adhere to ESLint with Airbnb/TypeScript configs for JS/TS code
Use camelCase for JS/TS variables and functions
Use PascalCase for JS/TS classes
Prefer kebab-case filenames within JS packages
Files:
packages/dashmate/configs/getConfigFileMigrationsFactory.js
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (178)
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (drive) / Linting
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
- GitHub Check: Rust packages (wasm-sdk) / Formatting
- GitHub Check: Rust packages (dpns-contract) / Tests
- GitHub Check: Rust packages (dpns-contract) / Linting
- GitHub Check: Rust packages (dpns-contract) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Unused dependencies
- GitHub Check: Rust packages (wasm-sdk) / Linting
- GitHub Check: Rust packages (dapi-grpc) / Formatting
- GitHub Check: Rust packages (drive-abci) / Check each feature
- GitHub Check: Rust packages (dapi-grpc) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Tests
- GitHub Check: Rust packages (drive-abci) / Formatting
- GitHub Check: Rust packages (dapi-grpc) / Check each feature
- GitHub Check: Rust packages (drive) / Tests
- GitHub Check: Rust packages (drive-abci) / Unused dependencies
- GitHub Check: Rust packages (drive-abci) / Linting
- GitHub Check: Rust packages (drive) / Unused dependencies
- GitHub Check: Rust packages (wallet-utils-contract) / Unused dependencies
- GitHub Check: Build JS packages / Build JS
🔇 Additional comments (1)
packages/dashmate/configs/getConfigFileMigrationsFactory.js (1)
1106-1109
: Confirm intent: unconditionally set Drive/DAPI images to 2-dev for all configsThe migration in packages/dashmate/configs/getConfigFileMigrationsFactory.js unconditionally sets options.platform.drive.abci.docker.image = 'dashpay/drive:2-dev' and options.platform.dapi.api.docker.image = 'dashpay/dapi:2-dev' for every config (lines 1106–1109). The file contains mixed precedent — some dev migrations set '*-dev' images unconditionally (e.g., 944–947, 1038–1040) while others gate by network (e.g., 891–894). Confirm whether overriding mainnet/base configs is intended; if not, gate this change (options.network === NETWORK_TESTNET/NETWORK_LOCAL) or restrict it to dev profiles.
Issue being fixed or feature implemented
Release new Dash Platform version
What was done?
How Has This Been Tested?
None
Breaking Changes
None
Checklist:
For repository code-owners and collaborators only
Summary by CodeRabbit
Breaking Changes
New Features
Bug Fixes
CI/Build
Documentation
Chores