diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e2c8680892..3c31bd08dde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -111,8 +111,12 @@ if(WITH_SQLITE) if(VCPKG_TARGET_TRIPLET) # Use of the `unofficial::` namespace is a vcpkg package manager convention. find_package(unofficial-sqlite3 CONFIG REQUIRED) + add_library(SQLite3::SQLite3 ALIAS unofficial::sqlite3::sqlite3) else() find_package(SQLite3 3.7.17 REQUIRED) + if(NOT TARGET SQLite3::SQLite3) # CMake < 4.3 + add_library(SQLite3::SQLite3 ALIAS SQLite::SQLite3) + endif() endif() set(USE_SQLITE ON) endif() diff --git a/ci/test/00_setup_env_i686_multiprocess.sh b/ci/test/00_setup_env_i686_multiprocess.sh index d7c8e3ef1b9..44bc38e319c 100755 --- a/ci/test/00_setup_env_i686_multiprocess.sh +++ b/ci/test/00_setup_env_i686_multiprocess.sh @@ -10,6 +10,7 @@ export HOST=i686-pc-linux-gnu export CONTAINER_NAME=ci_i686_multiprocess export CI_IMAGE_NAME_TAG="mirror.gcr.io/ubuntu:24.04" export CI_IMAGE_PLATFORM="linux/amd64" +export CI_CONTAINER_CAP="--security-opt seccomp=unconfined" export PACKAGES="llvm clang g++-multilib" export DEP_OPTS="DEBUG=1 MULTIPROCESS=1" export GOAL="install" diff --git a/doc/release-notes.md b/doc/release-notes.md index 764f778e5d4..c69faf32572 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -41,19 +41,34 @@ Notable changes - #34093 netif: fix compilation warning in QueryDefaultGatewayImpl() +### Build + +- #34848 cmake: Migrate away from deprecated SQLite3 target + ### Doc - #34510 doc: fix broken bpftrace installation link - #34561 wallet: rpc: manpage: fix example missing `fee_rate` argument - #34671 doc: Update Guix install for Debian/Ubuntu +### CI + +- #35202 ci: restore sockets in i686, no IPC job + +### Misc + +- #35175 multi_index: fix compilation failure with boost >= 1.91 + Credits ======= Thanks to everyone who directly contributed to this release: +- Cory Fields +- Daniel Pfeifer - Hennadii Stepanov - jayvaliya +- Lőrinc - MarcoFalke - SomberNight - ToRyVand diff --git a/src/node/miner.h b/src/node/miner.h index 56101561b11..c45c97100d8 100644 --- a/src/node/miner.h +++ b/src/node/miner.h @@ -102,7 +102,9 @@ struct CompareTxIterByAncestorCount { }; -struct CTxMemPoolModifiedEntry_Indices final : boost::multi_index::indexed_by< +using indexed_modified_transaction_set = boost::multi_index_container< + CTxMemPoolModifiedEntry, + boost::multi_index::indexed_by< boost::multi_index::ordered_unique< modifiedentry_iter, CompareCTxMemPoolIter @@ -115,12 +117,7 @@ struct CTxMemPoolModifiedEntry_Indices final : boost::multi_index::indexed_by< CompareTxMemPoolEntryByAncestorFee > > -{}; - -typedef boost::multi_index_container< - CTxMemPoolModifiedEntry, - CTxMemPoolModifiedEntry_Indices -> indexed_modified_transaction_set; +>; typedef indexed_modified_transaction_set::nth_index<0>::type::iterator modtxiter; typedef indexed_modified_transaction_set::index::type::iterator modtxscoreiter; diff --git a/src/txmempool.h b/src/txmempool.h index 10acb2aa22f..acc52aef1d9 100644 --- a/src/txmempool.h +++ b/src/txmempool.h @@ -329,7 +329,9 @@ public: static const int ROLLING_FEE_HALFLIFE = 60 * 60 * 12; // public only for testing - struct CTxMemPoolEntry_Indices final : boost::multi_index::indexed_by< + using indexed_transaction_set = boost::multi_index_container< + CTxMemPoolEntry, + boost::multi_index::indexed_by< // sorted by txid boost::multi_index::hashed_unique, // sorted by wtxid @@ -357,11 +359,7 @@ public: CompareTxMemPoolEntryByAncestorFee > > - {}; - typedef boost::multi_index_container< - CTxMemPoolEntry, - CTxMemPoolEntry_Indices - > indexed_transaction_set; + >; /** * This mutex needs to be locked when accessing `mapTx` or other members diff --git a/src/txrequest.cpp b/src/txrequest.cpp index 5909146427b..521ddec901d 100644 --- a/src/txrequest.cpp +++ b/src/txrequest.cpp @@ -212,17 +212,15 @@ struct ByTimeViewExtractor } }; -struct Announcement_Indices final : boost::multi_index::indexed_by< - boost::multi_index::ordered_unique, ByPeerViewExtractor>, - boost::multi_index::ordered_non_unique, ByTxHashViewExtractor>, - boost::multi_index::ordered_non_unique, ByTimeViewExtractor> -> -{}; /** Data type for the main data structure (Announcement objects with ByPeer/ByTxHash/ByTime indexes). */ using Index = boost::multi_index_container< Announcement, - Announcement_Indices + boost::multi_index::indexed_by< + boost::multi_index::ordered_unique, ByPeerViewExtractor>, + boost::multi_index::ordered_non_unique, ByTxHashViewExtractor>, + boost::multi_index::ordered_non_unique, ByTimeViewExtractor> + > >; /** Helper type to simplify syntax of iterator types. */ diff --git a/src/wallet/CMakeLists.txt b/src/wallet/CMakeLists.txt index 121e6e3c837..ee81c6b17a2 100644 --- a/src/wallet/CMakeLists.txt +++ b/src/wallet/CMakeLists.txt @@ -49,8 +49,7 @@ if(USE_SQLITE) target_sources(bitcoin_wallet PRIVATE sqlite.cpp) target_link_libraries(bitcoin_wallet PRIVATE - $ - $ + SQLite3::SQLite3 ) endif() if(USE_BDB)