lightninglabs / lightninglabs/pool

Update to btcd v0.26 / v2 modules

Open
#522 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
259
Forks
51
PR merge metrics
No merged PRs in 30d

Description

lnd is migrating to btcd v0.26 and the new split v2 modules:
`wire/v2`, `txscript/v2`, `chaincfg/v2`, `chainhash/v2`, `btcutil/v2`, `psbt/v2`, `address/v2`.

Pool is directly affected and should be updated so it can consume newer lnd and btcsuite module versions without mixing old btcd package paths with the new v2 module types.

Current impact observed on `master`:
- `go.mod` still requires old btcd modules: `github.com/btcsuite/btcd/btcutil`, `github.com/btcsuite/btcd/btcutil/psbt`, `github.com/btcsuite/btcd/chaincfg/chainhash`.
- `go.mod` currently depends on older lnd modules, including `lnd v0.19.0-beta`, `lnd/tlv v1.3.1`, and `lnd/tor v1.1.6`.
- 63 tracked Go files contain old btcd import paths.
- 6 tracked Go files reference moved `btcutil` address symbols.

Useful references:
- btcd migration script: btcsuite/btcd#2547
- lnd tlv/tor submodule update: lightningnetwork/lnd#10902
- lnd migration commit: lightningnetwork/lnd@8047149c6
- lnd tlv/tor pseudo-version source: lightningnetwork/lnd@a067468f0f45

Expected work:
- Run/adapt the btcd v2 migration script.
- Regenerate any generated RPC/API code if needed.
- Update direct dependencies to btcd v0.26 and split v2 modules.
- Update downstream Lightning Labs deps once compatible versions exist.
- Fix manual compile issues such as `address` package shadowing and changed APIs.
- Run module tidy/build/test checks.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with go.mod and the btcd v2 migration script referenced in the issue, then inspect the 63 Go files with old btcd imports and the six files using moved btcutil address symbols. Update dependencies and imports, regenerate RPC/API code if needed, and run module tidy, build, and test checks until the project consumes the v2 modules without mixed package paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, build-system
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.