This was deprecated in v27.0, for removal in v28.0. See discussion in PR #29189.
Remove libbitcoinconsensus #29648
pull fanquake wants to merge 1 commits into bitcoin:master from fanquake:remove_libbitcoin_consensus changing 17 files +10 −694-
fanquake commented at 2:34 PM on March 13, 2024: member
-
DrahtBot commented at 2:34 PM on March 13, 2024: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
Code Coverage
For detailed information about the code coverage, see the test coverage report.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline for information on the review process.
Type Reviewers ACK TheCharlatan, hebasto Concept ACK theuni, m3dwards If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
<!--174a7506f384e20aa4161008e828411d-->
Conflicts
Reviewers, this pull request conflicts with the following ones:
- #29494 (build: Assume HAVE_CONFIG_H, Add IWYU pragma keep to bitcoin-config.h includes by maflcko)
- #29221 (Implement 64 bit arithmetic op codes in the Script interpreter by Christewart)
- #29050 (Add OP_TXHASH and OP_CHECKTXHASHVERIFY opcodes by stevenroose)
- #29015 (kernel: Streamline util library by ryanofsky)
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
- fanquake force-pushed on Mar 13, 2024
-
DrahtBot commented at 3:21 PM on March 13, 2024: contributor
<!--85328a0da195eb286784d51f73fa0af9-->
🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.
Leave a comment here, if you need help tracking down a confusing failure.
<sub>Debug: https://github.com/bitcoin/bitcoin/runs/22614510960</sub>
- DrahtBot added the label CI failed on Mar 13, 2024
- DrahtBot removed the label CI failed on Mar 13, 2024
- glozow added this to the milestone 28.0 on Mar 14, 2024
-
hebasto commented at 12:40 PM on March 18, 2024: member
Concept ACK.
To fix MSVC build, suggesting:
--- a/build_msvc/libbitcoin_consensus/libbitcoin_consensus.vcxproj +++ b/build_msvc/libbitcoin_consensus/libbitcoin_consensus.vcxproj @@ -15,7 +15,6 @@ <ClCompile Include="..\..\src\primitives\block.cpp" /> <ClCompile Include="..\..\src\primitives\transaction.cpp" /> <ClCompile Include="..\..\src\pubkey.cpp" /> - <ClCompile Include="..\..\src\script\bitcoinconsensus.cpp" /> <ClCompile Include="..\..\src\script\interpreter.cpp" /> <ClCompile Include="..\..\src\script\script.cpp" /> <ClCompile Include="..\..\src\script\script_error.cpp" /> - fanquake force-pushed on Mar 18, 2024
- fanquake marked this as ready for review on Mar 18, 2024
-
fanquake commented at 2:58 PM on March 18, 2024: member
To fix MSVC build
Taken.
-
in doc/design/libraries.md:12 in a4b3a7cc41 outdated
11 | +| *libbitcoin_consensus* | Stable, backwards-compatible consensus functionality used by *libbitcoin_node* and *libbitcoin_wallet*. | 12 | +| *libbitcoin_kernel* | Consensus engine and support library used for validation by *libbitcoin_node*. | 13 | +| *libbitcoinqt* | GUI functionality used by *bitcoin-qt* and *bitcoin-gui* executables. | 14 | | *libbitcoin_ipc* | IPC functionality used by *bitcoin-node*, *bitcoin-wallet*, *bitcoin-gui* executables to communicate when [`--enable-multiprocess`](multiprocess.md) is used. | 15 | | *libbitcoin_node* | P2P and RPC server functionality used by *bitcoind* and *bitcoin-qt* executables. | 16 | | *libbitcoin_util* | Home for common functionality shared by different executables and libraries. Similar to *libbitcoin_common*, but lower-level (see [Dependencies](#dependencies)). |
TheCharlatan commented at 4:31 PM on March 18, 2024:The first point in the Conventions section below should be corrected too, since it refers to the now removed
shared-libraries.md. Also need to remove the link toshared-librariesindoc/README.md.
fanquake commented at 4:45 PM on March 18, 2024:Thanks. Adjusted the docs a bit.
Also need to remove the link to shared-libraries in doc/README.md.
Dropped.
TheCharlatan changes_requestedTheCharlatan commented at 4:39 PM on March 18, 2024: contributorJust a small comment; seems good to go.
fanquake force-pushed on Mar 18, 2024in doc/design/libraries.md:19 in 78e1d72ada outdated
15 | @@ -17,7 +16,7 @@ 16 | 17 | ## Conventions 18 | 19 | -- Most libraries are internal libraries and have APIs which are completely unstable! There are few or no restrictions on backwards compatibility or rules about external dependencies. Exceptions are *libbitcoin_consensus* and *libbitcoin_kernel* which have external interfaces documented at [../shared-libraries.md](../shared-libraries.md). 20 | +- Most libraries are internal libraries and have APIs which are completely unstable! There are few or no restrictions on backwards compatibility or rules about external dependencies. Exceptions are *libbitcoin_consensus* and *libbitcoin_kernel*, which, at some future point, will have documented external interfaces.
hebasto commented at 4:48 PM on March 18, 2024:In the future,
libbitcoin_kernelwill have "documented external interface", but notlibbitcoin_consensus, right?fanquake force-pushed on Mar 18, 202480f8b92f4fremove libbitcoinconsensus
This was deprecated in v27.0, for removal in v28.0. See discussion in PR #29189.
in configure.ac:1766 in 56ba9c76d0 outdated
1762 | @@ -1780,8 +1763,8 @@ else 1763 | AC_MSG_RESULT([no]) 1764 | fi 1765 | 1766 | -if test "$build_bitcoin_wallet$build_bitcoin_cli$build_bitcoin_tx$build_bitcoin_util$build_bitcoin_libs$build_bitcoind$bitcoin_enable_qt$enable_fuzz_binary$use_bench$use_tests" = "nononononononononono"; then 1767 | - AC_MSG_ERROR([No targets! Please specify at least one of: --with-utils --with-libs --with-daemon --with-gui --enable-fuzz(-binary) --enable-bench or --enable-tests]) 1768 | +if test "$build_bitcoin_wallet$build_bitcoin_cli$build_bitcoin_tx$build_bitcoin_util$build_bitcoind$bitcoin_enable_qt$enable_fuzz_binary$use_bench$use_tests" = "nononononononononono"; then
hebasto commented at 4:56 PM on March 18, 2024:56ba9c76d0f8314f0fc1f3bce9774eb7cb6d32c5: There are 9 concatenated variables being tested, but 10 concatenated "no".
fanquake force-pushed on Mar 18, 2024TheCharlatan approvedTheCharlatan commented at 5:44 PM on March 19, 2024: contributorACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c
DrahtBot requested review from hebasto on Mar 19, 2024fanquake requested review from theuni on Mar 20, 2024theuni commented at 6:23 PM on March 20, 2024: memberConcept ACK and light review ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c. My only hesitation here is that (afaics?) there's now nothing keeping undesired features like threading or globals from working their way into the interpreter in future commits.
Is there anything I'm missing in that regard? Otherwise, any ideas for checks to keep them out via c-i?
m3dwards commented at 7:39 PM on March 20, 2024: contributorConcept ACK https://github.com/bitcoin/bitcoin/pull/29648/commits/80f8b92f4f2311b9e9a25361c9dd973244e6f95c
I've tested this branch on MSVC, Mac and Debian and reviewed the changes.
I still feel a bit too green to this area to give stronger than concept ACK.
hebasto approvedhebasto commented at 11:31 AM on March 21, 2024: memberACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c, I have reviewed the code and it looks OK.
theuni commented at 7:52 PM on March 28, 2024: memberI didn't mean for my comment above to be a blocker btw. I think we can just be vigilant in review about dependencies in the interpreter.
fanquake merged this on Apr 1, 2024fanquake closed this on Apr 1, 2024fanquake deleted the branch on Apr 1, 2024fanquake referenced this in commit d83b2ef5f2 on Apr 2, 2024fanquake referenced this in commit fd8527a20e on Apr 2, 2024fanquake referenced this in commit 3b12fc7bcd on Apr 2, 2024davidgumberg referenced this in commit 46ba1978f6 on Apr 2, 2024hebasto referenced this in commit a4f007e98d on Apr 3, 2024hebasto referenced this in commit 3cb80febb8 on Apr 3, 2024fanquake referenced this in commit 3900854ba3 on Apr 4, 2024ajtowns referenced this in commit 7f36abdcd0 on May 17, 2024fanquake referenced this in commit d7333ece15 on Aug 6, 2024fanquake referenced this in commit d9bc08a1f1 on Oct 7, 2024fanquake referenced this in commit e0287bc4b2 on Oct 7, 2024fanquake referenced this in commit 5d5cc021ce on Oct 8, 2024m3dwards referenced this in commit ed643895da on Oct 15, 2024PastaPastaPasta referenced this in commit 8e91c5960c on Oct 25, 2024PastaPastaPasta referenced this in commit 4e68daf13a on Oct 25, 2024luke-jr referenced this in commit 49a801501e on Feb 22, 2025luke-jr referenced this in commit d8a79a212c on Feb 22, 2025luke-jr referenced this in commit b63443c27c on Feb 22, 2025luke-jr referenced this in commit 56abdb4993 on Feb 24, 2025luke-jr referenced this in commit 596bbf0b15 on Feb 24, 2025luke-jr referenced this in commit 2224a5b78a on Feb 24, 2025luke-jr referenced this in commit a3f9e068ba on Feb 26, 2025luke-jr referenced this in commit fdcbdb9f0a on Feb 26, 2025luke-jr referenced this in commit 7ad32d39d7 on Feb 26, 2025luke-jr referenced this in commit a475bdc544 on Feb 28, 2025luke-jr referenced this in commit 0ddd133696 on Feb 28, 2025luke-jr referenced this in commit 81fdcb1455 on Feb 28, 2025luke-jr referenced this in commit 6ff758d42b on Mar 5, 2025luke-jr referenced this in commit 3e63c467e5 on Mar 5, 2025luke-jr referenced this in commit c317b89223 on Mar 5, 2025bitcoin locked this on Apr 3, 2025
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-13 21:13 UTC
More mirrored repositories can be found on mirror.b10c.me