Skip to content

contrib: remove obsolete scripts and document lock file updates#575

Merged
tcharding merged 2 commits into
rust-bitcoin:masterfrom
satsfy:cleanup-contrib-scripts
May 6, 2026
Merged

contrib: remove obsolete scripts and document lock file updates#575
tcharding merged 2 commits into
rust-bitcoin:masterfrom
satsfy:cleanup-contrib-scripts

Conversation

@satsfy
Copy link
Copy Markdown
Contributor

@satsfy satsfy commented May 1, 2026

Based on #574 (comment)

Remove contrib scripts that are no longer needed and add clarification to the remaining lock file update script.

Changes:

  • Delete bitcoind/contrib/extra_tests.sh (version-specific tests now in CI)
  • Delete contrib/crates.sh (no longer used by test scripts)
  • Document why contrib/update-lock-files.sh cannot be replaced by cargo rbmt

The update-lock-files.sh script requires custom feature configuration for SPECIFIC_FEATURES_CRATES (integration_test, bitcoind) that cargo rbmt lock does not support.

@tcharding
Copy link
Copy Markdown
Member

NACK patch 2. I believe there is a facility in cargo rbmt already for this.

Re patch 1, I know I have context in mind but for either new reviewers or future debuggers can you flesh out the git log. Here is a post I always point devs to to learn the craft of git log writing.

https://chris.beams.io/posts/git-commit/

Copy link
Copy Markdown
Collaborator

@jamillambert jamillambert left a comment

Choose a reason for hiding this comment

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

Patch 2 is NACKed and patch 1 is in #574. So currently there is nothing here. But...

What Tobin really means is please look at rust-bitcoin and copy what is done there in this PR for updating lock files.

extra_tests.sh was a manual runner for version-specific tests
that are now covered by CI. crates.sh listed workspace crates
for test scripts that have since been reorganised.
@satsfy
Copy link
Copy Markdown
Contributor Author

satsfy commented May 2, 2026

NACK patch 2. I believe there is a facility in cargo rbmt already for this.

Attempted to use cargo rbmt lock, but it runs cargo check --all-features -Z direct-minimal-versions which currently fails on this repo due to inconsistent minimum version bounds across Cargo.toml files. Sample output:

Output Logs

$ cargo rbmt lock
Updating lock files in: /home/renato/Desktop/rust-bitcoin/corepc2
Checking direct minimal versions...
$ cargo check --all-features -Z direct-minimal-versions
    Updating crates.io index
error: failed to select a version for `serde`.
    ... required by package `jsonrpc v0.20.0 (/home/renato/Desktop/rust-bitcoin/corepc2/jsonrpc)`
    ... which satisfies path dependency `jsonrpc` of package `corepc-client v0.13.0 (/home/renato/Desktop/rust-bitcoin/corepc2/client)`
    ... which satisfies path dependency `corepc-client` of package `bitcoind v0.38.0 (/home/renato/Desktop/rust-bitcoin/corepc2/bitcoind)`
versions that meet the requirements `^1` are: 1.0.0

all possible versions conflict with previously selected packages.

  previously selected package `serde v1.0.103`
    ... which satisfies dependency `serde = "^1.0.103"` of package `corepc-client v0.13.0 (/home/renato/Desktop/rust-bitcoin/corepc2/client)`
    ... which satisfies path dependency `corepc-client` of package `bitcoind v0.38.0 (/home/renato/Desktop/rust-bitcoin/corepc2/bitcoind)`

failed to select a version for `serde` which could resolve this conflict
Error updating lock files: command exited with non-zero code `cargo check --all-features -Z direct-minimal-versions`: 101

Making it work required bumping minimum bounds in nearly every Cargo.toml in the workspace (serde, serde_json, base64, log, tar, flate2, tempfile, native-tls...). Didn't follow through because of how many changes it would introduce. Do you suggest going ahead or another course of action? Alternatively, nyonson (not pinging yet) may have context on whether rbmt is meant to handle these issues or if using rbmt may be not be the right choice.

@satsfy satsfy marked this pull request as draft May 2, 2026 23:27
@satsfy satsfy force-pushed the cleanup-contrib-scripts branch from 5a4fd2c to f426e07 Compare May 2, 2026 23:28
@satsfy
Copy link
Copy Markdown
Contributor Author

satsfy commented May 2, 2026

Latest rebase improves commit message and removed NACKed solution.

@tcharding
Copy link
Copy Markdown
Member

Oh yeah cargo rbmt is not going to work here. My bad, sorry for the wild goose chase.

Lets just leave contrib/update-lock-files.sh in place. Perhaps throw a comment on it saying "Cannot be replaced by cargo rbmt because of the SPECIFIC_FEATURES_CRATES stuff".

@tcharding
Copy link
Copy Markdown
Member

ack the removal of the other files. If you update the title and PR description this can go in eh.

@satsfy satsfy changed the title contrib: remove obsolete scripts and move lockfile updates to justfile contrib: remove obsolete scripts and document lock file updates May 4, 2026
@satsfy satsfy marked this pull request as ready for review May 4, 2026 14:51
@satsfy satsfy force-pushed the cleanup-contrib-scripts branch from 308f3ef to 7053c09 Compare May 4, 2026 15:01
Copy link
Copy Markdown
Collaborator

@jamillambert jamillambert left a comment

Choose a reason for hiding this comment

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

ACK 7053c09

Comment thread contrib/update-lock-files.sh Outdated
Document why cargo rbmt lock cannot replace this script.
SPECIFIC_FEATURES_CRATES requires custom feature config.
@satsfy satsfy force-pushed the cleanup-contrib-scripts branch from 7053c09 to 8d74097 Compare May 5, 2026 15:36
Copy link
Copy Markdown
Member

@tcharding tcharding left a comment

Choose a reason for hiding this comment

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

ACK 8d74097

@tcharding tcharding merged commit 92c44b3 into rust-bitcoin:master May 6, 2026
39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants