Date: November 4, 2025
Status: IN PROGRESS - Significant progress made
Issue: CCheckQueue API changed
- Constructor now takes
worker_threads_numparameter - Threads start automatically in constructor
- Removed
StartWorkerThreads()andStopWorkerThreads()methods
Fixes Applied:
- Updated all
make_unique<Queue>(QUEUE_BATCH_SIZE)calls - Added
SCRIPT_CHECK_THREADSparameter - Removed all manual thread management calls
Issue: Stream class renamed
CDataStream→DataStream
Fixes Applied:
- Global find/replace of CDataStream with DataStream
Issue: Random seed function renamed
SeedInsecureRand()→SeedRandomForTest()
Fixes Applied:
- Updated all function calls
Issue: Same as cuckoocache_tests.cpp
Fixes Applied:
- Updated SeedInsecureRand to SeedRandomForTest
Issue: Type change in CMerkleBlock constructor
- Old:
std::set<uint256> - New:
std::set<Txid>
Fixes Applied:
- Added
#include <util/transaction_identifier.h> - Changed
std::set<uint256>tostd::set<Txid> - Use
Txid::FromUint256()to convert uint256 to Txid
Issues: Multiple API changes
Shuffle()→std::shuffle()GetSerializeSize()no longer takesPROTOCOL_VERSION
Fixes Applied:
- Added
#include <algorithm> - Changed
Shuffle()tostd::shuffle() - Removed
PROTOCOL_VERSIONparameter fromGetSerializeSize()
SeedInsecureRand()→SeedRandomForTest()Shuffle()→std::shuffle()
CDataStream→DataStream
CCheckQueue::StartWorkerThreads()removedCCheckQueue::StopWorkerThreads()removed- Threads now managed automatically by constructor/destructor
uint256→Txidfor transaction identifiers- Use
Txid::FromUint256()for conversion
GetSerializeSize(obj, PROTOCOL_VERSION)→GetSerializeSize(obj)
Based on the build, additional files may need fixes:
- Other test files that use similar deprecated APIs
- Files discovered during continued build
- Main binaries: bitcoind, bitcoin-cli, bitcoin-tx, bitcoin-util
- Many test files compiled successfully
- 29+ test object files created
- Full test suite build
- Discovering and fixing API incompatibilities
- Check for renamed/removed functions
- Look for type system changes (uint256 vs Txid)
- API signature changes (added/removed parameters)
- Standard library usage (std:: prefix required)
- Add necessary includes (, <util/transaction_identifier.h>)
- Use proper type conversions (Txid::FromUint256)
- Check for parameter requirement changes
- Update to latest API patterns
- Continue
make checkbuild - Fix remaining test file issues as discovered
- Run full test suite
- Document all API changes found
- Create migration guide for developers
Files Modified: 6+ test files
API Changes: 6 major changes identified
Build Progress: ~90% of tests compiling
Remaining Work: Fix remaining discovered issues
Status: Making excellent progress. Most common API changes identified and fixed.