. #27186

pull han0147 wants to merge 333 commits into bitcoin:master from han0147:patch-1 changing 1033 files +121078 −24896
  1. han0147 commented at 5:12 AM on March 2, 2023: none

    <!-- *** Please remove the following help text before submitting: *** Pull requests without a rationale and clear improvement may be closed immediately. GUI-related pull requests should be opened against https://github.com/bitcoin-core/gui first. See CONTRIBUTING.md -->

    <!-- Please provide clear motivation for your patch and explain how it improves Bitcoin Core user experience or Bitcoin Core developer experience significantly: * Any test improvements or new tests that improve coverage are always welcome. * All other changes should have accompanying unit tests (see `src/test/`) or functional tests (see `test/`). Contributors should note which tests cover modified code. If no tests exist for a region of modified code, new tests should accompany the change. * Bug fixes are most welcome when they come with steps to reproduce or an explanation of the potential issue as well as reasoning for the way the bug was fixed. * Features are welcome, but might be rejected due to design or scope issues. If a feature is based on a lot of dependencies, contributors should first consider building the system outside of Bitcoin Core, if possible. * Refactoring changes are only accepted if they are required for a feature or bug fix or otherwise improve developer experience significantly. For example, most "code style" refactoring changes require a thorough explanation why they are useful, what downsides they have and why they *significantly* improve developer experience or avoid serious programming bugs. Note that code style is often a subjective matter. Unless they are explicitly mentioned to be preferred in the [developer notes](/doc/developer-notes.md), stylistic code changes are usually rejected. -->

    <!-- Bitcoin Core has a thorough review process and even the most trivial change needs to pass a lot of eyes and requires non-zero or even substantial time effort to review. There is a huge lack of active reviewers on the project, so patches often sit for a long time. -->

  2. Merge #21490: [0.21] Backport versionbits tests
    e775b0a6dd8358df0e8921739faf15942027239e tests: Add fuzzing harness for versionbits (Anthony Towns)
    0c471a5f306044cbd2eb230714571f05dd6aaf3c tests: check never active versionbits (Anthony Towns)
    3ba9283a47ac358168db9db7840ae559f443486c tests: more helpful errors for failing versionbits tests (Anthony Towns)
    
    Pull request description:
    
      Backport of unit test (#21334) and fuzz test (#21380) changes for versionbits.
    
    Top commit has no ACKs.
    
    Tree-SHA512: b68b570e48e0076bb2ade3b91c59612029235d2c9e39048d548aa141fa0906343fa492e9a981065fbdbbebecbbb3dcbaf39ec69228c7581178fcca567e8201b8
    1bad33f952
  3. Merge #20901: [0.21.1]: rc1 Backports
    5a2d98c640cf308d3c7e85ba51fbb7e84f99322a doc: Remove outdated comment (Hennadii Stepanov)
    8426e3a8a1aad2e1ea794158ffb9a587f476d8d3 fuzz: Bump FuzzedDataProvider.h (MarcoFalke)
    14e3f2a1c916fccf375a6570e58072c4d007fc3c fuzz: Bump FuzzedDataProvider.h (MarcoFalke)
    a48c9d31610cab3ddd4f7334e83db5cf4f184df1 fuzz: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift)
    6746cd078be8a15c69f8f5ba5253b1768d0acf21 doc: add signet to doc/bitcoin-conf.md (Jon Atack)
    58975d5c0abeab8cb66f6006ee558d4bb7cc12b5 doc: add signet to share/examples/bitcoin.conf (Jon Atack)
    b35711efdebc4e95906b1e809e711bc707852f2d Update vcpkg checkout commit. (Aaron Clauson)
    3a126724195fcf00d84e852a9247475fccd14f38 GUI: Write PSBTs to file with binary mode (Andrew Chow)
    36ecf5eb8752890fdffd617c9fedb08033607f99 tests: Test that a fully signed tx given to signrawtx is unchanged (Andrew Chow)
    4ef1e4bd407ccf80b2a1d40e946e2ac832e624e5 test: disallow sendtoaddress/sendmany when private keys disabled (Jon Atack)
    d6b5eb5fcc8e8f7f0ab778f32d49aabf6e04d80d Disallow sendtoaddress and sendmany when private keys disabled (Andrew Chow)
    08dada84565ea5f49127123e356c82a150626f3c util: Disallow negative mocktime (MarcoFalke)
    95218ee95cdb4046ee7d622eac822e74d94314c7 net: Avoid UBSan warning in ProcessMessage(...) (practicalswift)
    4607019798c543f046bcd22d5b7c09750e7e0ee2 fix the unreachable code at feature_taproot (Bruno Garcia)
    6dc58e99457fe4609fa3c401e89f98c92dbd9878 qt: Use "fusion" style on macOS Big Sur with old Qt (Hennadii Stepanov)
    e2ebc8567a96e92d1c039b2e7c5f48826fece810 raise helpMessageDialog (randymcmillan)
    a98f211940dc6eaed8050263efad7656126b7b3e Fix MSVC build after gui#176 (Hennadii Stepanov)
    bdc64c9030488e7a6b88f369fb876c0b21c04a25 qt: Stop the effect of hidden widgets on the size of QStackedWidget (Hennadii Stepanov)
    7bc4498234e16bc75975555cbe7855384489782f qt: Fix TxViewDelegate layout (Hennadii Stepanov)
    b7086e69ff3825c3f3bfde4ca9af90663a4575dd qt: Add TransactionOverviewWidget class (Hennadii Stepanov)
    0dba346a568882434098dd08566978e23eb4a516 qt: Use layout manager for Create Wallet dialog (Hennadii Stepanov)
    7bf3ed495b96f0959d5c45c6e1936d8628dec730 Bugfix: GUI: Restore SendConfirmationDialog button default to "Yes" (Luke Dashjr)
    bdce029191ab094a4a325b143324487f1c62ba7c test: add test for banning of non-IP addresses (Vasil Dimov)
    c33fbab25c82b6a18773b80e8b355c987066ae5a net: allow CSubNet of non-IP networks (Vasil Dimov)
    
    Pull request description:
    
      Current backports for *0.21.1*.
    
      One conflict was in the test case.
    
    ACKs for top commit:
      ajtowns:
        ACK 5a2d98c640cf308d3c7e85ba51fbb7e84f99322a -- checked 'rebased-from' patches are in master, and rebased patches are clean rebases (except for the first one which changes `""s` to `std::string("")` to avoid c++17 dependency). commits seem fine, but haven't reviewed in detail.
      fanquake:
        ACK 5a2d98c640cf308d3c7e85ba51fbb7e84f99322a - branched off `0.21` and redid the backports. Minor conflict in c33fbab25c82b6a18773b80e8b355c987066ae5a. The diff between my branch and #20901 was just in release notes, `_CLIENT_VERSION_RC` (#20901 branched before 95ea54ba089610019a74c1176a2c7c0dba144b1c) and #21490 which has already been merged into `0.21`.
    
    Tree-SHA512: 75d16d3cf9066a45759758b8185dc3b9dad6a6102c2ac9921f758a310e48d5d3122f0dafa515df42475235fc66a42cc04dd156ee1e61c86a1238bd11707642ea
    a30fd40735
  4. wallet: Use existing feerate instead of getting a new one
    During each loop of CreateTransaction, instead of constantly getting a
    new feerate, use the feerate that we have already fetched for all
    fee calculations. Thix fixes a race condition where the feerate required
    changes during each iteration of the loop.
    
    This commit changes behavior as the "Fee estimation failed" error will
    now take priority over "Signing transaction failed".
    
    Github-Pull: #21083
    Rebased-From: 1a6a0b0dfb90f9ebd4b86d7934c6aa5594974f5f
    48fc675163
  5. wallet: Replace nFeeRateNeeded with effective_fee
    Make sure that all fee calculations use the same feerate.
    coin_selection_params.effective_fee is the variable we use for all fee
    calculations, so get rid of remaining nFeeRateNeeded usages and just
    directly set coin_selection_params.effective_fee.
    
    Does not change behavior.
    
    Github-Pull: #21083
    Rebased-From: e2f429e6bbf7098f278c0247b954ecd3ba53cf37
    34c89f92f3
  6. wallet: Move long term feerate setting to CreateTransaction
    Instead of setting the long term feerate for each SelectCoinsMinConf
    iteration, set it once during CreateTransaction and let it be shared
    with each SelectCoinsMinConf through
    coin_selection_params.m_long_term_feerate.
    
    Does not change behavior.
    
    Github-Pull: #21083
    Rebased-From: 448d04b931f86941903e855f831249ff5ec77485
    bcd716670b
  7. wallet: Move discard feerate fetching to CreateTransaction
    Instead of fetching the discard feerate for each SelectCoinsMinConf
    iteration, fetch and cache it once during CreateTransaction so that it
    is shared for each SelectCoinsMinConf through
    coin_selection_params.m_discard_feerate.
    
    Does not change behavior.
    
    Github-Pull: #21083
    Rebased-From: bdd0c2934b7f389ffcfae3b602ee3ecee8581acd
    5fc381e443
  8. Implement Bech32m encoding/decoding
    Github-Pull: #20861
    Rebased-From: da2bb6976dadeec682d163c258c9afecc87d6428
    1485533092
  9. Add Bech32m test vectors
    Github-Pull: #20861
    Rebased-From: 25b1c6e13ddf1626210d5e3d37298d1f3a78a94f
    8944aaa6d6
  10. Use Bech32m encoding for v1+ segwit addresses
    This also includes updates to the Python test framework implementation,
    test vectors, and release notes.
    
    Github-Pull: #20861
    Rebased-From: fe5e495c31de47b0ec732b943db11fe345d874af
    593e206627
  11. Add signet support to gen_key_io_test_vectors.py
    Github-Pull: #20861
    Rebased-From: 2e7c80fb5be82ad4a3f737cab65b31f70a772a23
    7dfe406e20
  12. naming nits
    Github-Pull: #20861
    Rebased-From: 03346022d611871f2cc185440b19d928b9264d9d
    1e9671116f
  13. Backport invalid address tests
    Reduced version of the test from master/#20861 by John Newbery.
    
    Github-Pull: #20861
    Rebased-From: fe5e495c31de47b0ec732b943db11fe345d874af
    f2195d7c4a
  14. Merge #21469: BIP 350: Implement Bech32m and use it for v1+ segwit addresses (0.21 backport)
    f2195d7c4aa45f5168ec55b14406aeaf970adcb1 Backport invalid address tests (Pieter Wuille)
    1e9671116fc5805baa0442bd8fd1c88f2307fef0 naming nits (Fabian Jahr)
    7dfe406e2023c9db7d9cc2e98484423adfbc8963 Add signet support to gen_key_io_test_vectors.py (Pieter Wuille)
    593e206627f4fb789de70f55017f71b85d10754d Use Bech32m encoding for v1+ segwit addresses (Pieter Wuille)
    8944aaa6d6ce55faa6224e288fe0a14dbbf5ca4f Add Bech32m test vectors (Pieter Wuille)
    1485533092a0732bae55313659a3e3f9669fd77a Implement Bech32m encoding/decoding (Pieter Wuille)
    
    Pull request description:
    
      Backport of #20861. Also includes #21471.
    
    ACKs for top commit:
      jnewbery:
        utACK f2195d7c4aa45f5168ec55b14406aeaf970adcb1
      MarcoFalke:
        cherry-pick re-ACK f2195d7c4aa45f5168ec55b14406aeaf970adcb1 , only change is version number in doc/bips and new test commit 🍝
      fanquake:
        ACK f2195d7c4aa45f5168ec55b14406aeaf970adcb1 - performed the backport, changes look sane. Have not tested extensively.
    
    Tree-SHA512: 7dc043e44d7cda07d73331a7b49666b9db98c99f2635dab0cfeb45422dbfbe75a7b44d0aff85ef6369d412d8a5041ed0826c86ffdfc13c5fbff74adfe4d91c1a
    65fa43bda1
  15. Rename CoinSelectionParams::effective_fee to m_effective_feerate
    It's a feerate, not a fee. Also follow the style guide for member names.
    
    Github-Pull: #21083
    Rebased-From: f9cd2bfbccb7a2b8ff07cec5f6d2adbeca5f07c3
    d61fb07da7
  16. rand: only try and use freeifaddrs if available
    Github-Pull: #21486
    Rebased-From: 87deac66aa747481e6f34fc80599e1e490de3ea0
    e99d6d0c7c
  17. build: check if -lsocket is required with *ifaddrs
    Github-Pull: #21486
    Rebased-From: 879215e665a9f348c8d3fa92701c34065bc86a69
    f6896dfde7
  18. net: add ifaddrs.h include
    Github-Pull: #21486
    Rebased-From: 4783115fd4cccb46a7f8c592b34fa7c094c29410
    1a9a2cb7dc
  19. Merge #21616: [0.21] build: link against -lsocket if required for *ifaddrs
    1a9a2cb7dcc60781a3cbca3a7846ff153143260c net: add ifaddrs.h include (fanquake)
    f6896dfde73bb37f4f0f0f9bfe9855d4fe9e9fe5 build: check if -lsocket is required with *ifaddrs (fanquake)
    e99d6d0c7cbdbb23f966e50c045bbd525ba8daf0 rand: only try and use freeifaddrs if available (fanquake)
    
    Pull request description:
    
      Backports #21486 to the 0.21 branch. Related to #21485.
    
    ACKs for top commit:
      MarcoFalke:
        cherry-pick-only ACK 1a9a2cb7dcc60781a3cbca3a7846ff153143260c did not test or review 🚶
    
    Tree-SHA512: 400dcf0f0bffa9b2c820403936b894969113a2bd82a32ae29d3fb73c4ef9ffafb55f5325fcc4929f6e685f8932be6f566f5dd2163ecf8a64b154b0c401109311
    0b9a046c1a
  20. Introduce DeferringSignatureChecker and inherit with SignatureExtractor
    Introduces a DeferringSignatureChecker which simply takes a
    BaseSignatureChecker and passes through everything.
    SignatureExtractorChecker now subclasses DeferringSignatureChecker. This
    allows for all BaseSignatureChecker functions to be implemented for
    SignatureExtractorChecker, while allowing for future signature checkers
    which opreate similarly to SignatureExtractorChecker.
    
    Github-Pull: #21166
    Rebased-From: 6965456c10c9c4025c71c5e24fa5b27b15e5933a
    7de019bc61
  21. Test that signrawtx works when a signed CSV and CLTV inputs are present
    Github-Pull: #21166
    Rebased-From: a97a9298cea085858e1a65a5e9b20d7a9e0f7303
    f79189ca54
  22. Merge #21640: [0.21] Introduce DeferredSignatureChecker and have SignatureExtractorClass subclass it
    f79189ca54524881d52b91679eb9035d6718ce01 Test that signrawtx works when a signed CSV and CLTV inputs are present (Andrew Chow)
    7de019bc619b0b2433bfb553feba5f6dc58c8db8 Introduce DeferringSignatureChecker and inherit with SignatureExtractor (Andrew Chow)
    
    Pull request description:
    
      Backport of #21166
    
    ACKs for top commit:
      MarcoFalke:
        checked this is a clean cherry-pick did not review ACK f79189ca54524881d52b91679eb9035d6718ce01 🐖
      instagibbs:
        ACK https://github.com/bitcoin/bitcoin/pull/21640/commits/f79189ca54524881d52b91679eb9035d6718ce01
    
    Tree-SHA512: 51e945c9b353713423d3886c557066c66a6517d2300523832e5a5471ab91a8943385096d9bf5b46910477cb4c47470431690cf3da09b9f6956fe030f13ddff51
    e358b43f7d
  23. tests: pull ComputeBlockVersion test into its own function
    The intent here is to allow checking ComputeBlockVersion behaviour with
    each deployment, rather than only testdummy on mainnet. This commit does
    the trivial refactoring component of that change.
    
    Github-Pull: #21377
    Rebased-From: 63879f0a4760c0c0f784029849cb5d21ee088abb
    2e9e7f4329
  24. tests: test ComputeBlockVersion for all deployments
    This generalises the ComputeBlockVersion test so that it can apply to
    any activation parameters we might set, and checks all the parameters
    set for each deployment on each chain, to simultaneously ensure that the
    deployments we have configured work sensibly, and that the test code
    does not suffer bitrot in the event that all interesting deployments
    are buried.
    
    Github-Pull: #21377
    Rebased-From: 593274445004506c921d5d851361aefb3434d744
    1c0164544c
  25. tests: clean up versionbits test
    Simplify the versionbits unit test slightly to make the next set of
    changes a little easier to follow.
    
    Github-Pull: #21377
    Rebased-From: 9e6b65f6fa205eee5c3b99343988adcb8d320460
    f9517e6014
  26. versionbits: Add support for delayed activation
    Github-Pull: #21377
    Rebased-From: 73d4a706393e6dbd6b6d6b6428f8d3233ac0a2d8
    4cab84cfdf
  27. tests: test versionbits delayed activation
    Github-Pull: #21377
    Rebased-From: dd85d5411c1702c8ae259610fe55050ba212e21e
    71917e01eb
  28. fuzz: test versionbits delayed activation
    Github-Pull: #21377
    Rebased-From: dd07e6da48040dc7eae46bc7941db48d98a669fd
    b529222ad1
  29. versionbits: Add explicit NEVER_ACTIVE deployments
    Previously we used deployments that would timeout prior to Bitcoin's
    invention, which allowed the deployment to still be activated in unit
    tests. This switches those deployments to be truly never active.
    
    Github-Pull: #21377
    Rebased-From: 55ac5f568a3b73d6f1ef4654617fb76e8bcbccdf
    3acf0379e0
  30. versionbits: simplify state transitions
    This removes the DEFINED->FAILED transition and changes the
    STARTED->FAILED transition to only occur if signalling didn't pass the
    threshold. This ensures that it is always possible for activation to
    occur, no matter what settings are chosen, or the speed at which blocks
    are found.
    
    Github-Pull: #21377
    Rebased-From: f054f6bcd2c2ce5fea84cf8681013f85a444e7ea
    600357306e
  31. chainparams: drop versionbits threshold to 90% for mainnnet and signet
    Github-Pull: #21377
    Rebased-From: ffe33dfbd4c3b11e3475b022b6c1dd077613de79
    ec7824396b
  32. Add mainnet and testnet taproot activation params
    Github-Pull: #21686
    Rebased-From: f979b3237f1cfc28f9c4ccb07beab558d5357a55
    cbd64c3a28
  33. Merge #21520: [0.21] wallet: Avoid requesting fee rates multiple times during coin selection
    d61fb07da7c12e4a1f68cf645f32d563a657a506 Rename CoinSelectionParams::effective_fee to m_effective_feerate (Andrew Chow)
    5fc381e443d6d967e6f7f8bc88a4fd66e18379eb wallet: Move discard feerate fetching to CreateTransaction (Andrew Chow)
    bcd716670ba8a189a2e9b8b035318abceb9ce631 wallet: Move long term feerate setting to CreateTransaction (Andrew Chow)
    34c89f92f34b5ca12da95d5f0b0240682c5a1c1f wallet: Replace nFeeRateNeeded with effective_fee (Andrew Chow)
    48fc675163a657e615fd4b2680fc3accba12f95d wallet: Use existing feerate instead of getting a new one (Andrew Chow)
    
    Pull request description:
    
      Backport of #21083
    
    ACKs for top commit:
      MarcoFalke:
        cherry-pick-only re-ACK d61fb07da7c12e4a1f68cf645f32d563a657a506 🔙
      instagibbs:
        utACK https://github.com/bitcoin/bitcoin/pull/21520/commits/d61fb07da7c12e4a1f68cf645f32d563a657a506
    
    Tree-SHA512: 23b212301bb467153dd9723903918ae01dd520525c81d541c411e7a4381e46594fe032e2a7c06ddcff7dc56dcb546991d50187c33fcff08ec45bd835cc01bd19
    0fe5b6130c
  34. Merge #21701: [0.21] Speedy trial activation for Taproot
    cbd64c3a28a7466f421477daadc6e6e6b69b898a Add mainnet and testnet taproot activation params (Andrew Chow)
    ec7824396bdd2e93b429ddce9fea6bb29695454a chainparams: drop versionbits threshold to 90% for mainnnet and signet (Anthony Towns)
    600357306e2e182a457174862ea2e41c7ba39c64 versionbits: simplify state transitions (Anthony Towns)
    3acf0379e0979ea4bdd03976f4987aa6711eb92f versionbits: Add explicit NEVER_ACTIVE deployments (Anthony Towns)
    b529222ad18f7facbaff394455875b4aa65d653e fuzz: test versionbits delayed activation (Anthony Towns)
    71917e01ebf48790b9df48421d8e97986f92e2e4 tests: test versionbits delayed activation (Anthony Towns)
    4cab84cfdfc98cd10462681b5eb0fbbc08afd2a7 versionbits: Add support for delayed activation (Anthony Towns)
    f9517e6014ccfe91d5a77e2bacca928bdce7c285 tests: clean up versionbits test (Anthony Towns)
    1c0164544c66b691f93b3b1114eee97cbabd99b2 tests: test ComputeBlockVersion for all deployments (Anthony Towns)
    2e9e7f4329fc313adf9ba2394edbaf2a69b59bc1 tests: pull ComputeBlockVersion test into its own function (Anthony Towns)
    
    Pull request description:
    
      Backport of #21377 and #21686
    
    ACKs for top commit:
      instagibbs:
        cherry-pick ACK https://github.com/bitcoin/bitcoin/pull/21701/commits/cbd64c3a28a7466f421477daadc6e6e6b69b898a
      jnewbery:
        ACK cbd64c3a28a7466f421477daadc6e6e6b69b898a
      Sjors:
        tACK cbd64c3
      MarcoFalke:
        cherry-pick-only ACK cbd64c3a28a7466f421477daadc6e6e6b69b898a 🌾
    
    Tree-SHA512: e9efb0ca9986d685161bcba5ed43efdc5f1dca88322cf65faccf17009b567c2d930c2aba4d1541539fc65347574ed4faa3d4558b907c779d1c128b3d2c681f31
    e3b76b6c13
  35. test: use pointers in denialofservice_tests/peer_discouragement
    This is a non-functional change that replaces the `CNode` on-stack
    variables with `CNode` pointers.
    
    The reason for this is that it would allow us to add those `CNode`s
    to `CConnman::vNodes[]` which in turn would allow us to check that they
    are disconnected properly - a `CNode` object must be in
    `CConnman::vNodes[]` in order for its `fDisconnect` flag to be set.
    
    If we store pointers to the on-stack variables in `CConnman` then it
    would crash at the end, trying to `delete` them.
    
    Github-Pull: #21571
    Rebased-From: 4d6e246fa46f2309e2998b542e4c104d73d29071
    dfeb6c10bb
  36. test: also check disconnect in denialofservice_tests/peer_discouragement
    Use `CConnmanTest` instead of `CConnman` and add the nodes to it
    so that their `fDisconnect` flag is set during disconnection.
    
    Github-Pull: #21571
    Rebased-From: 637bb6da368b87711005b909f451f94909400092
    b765f41164
  37. test: make sure non-IP peers get discouraged and disconnected
    Github-Pull: #21571
    Rebased-From: 81747b21719b3fa6b0fdfc3b084c0104d64903f9
    79cdb4a198
  38. fuzz: cleanups for versionbits fuzzer
    Github-Pull: #21489
    Rebased-From: aa7f418fe32b3ec53285693a7731decd99be4528
    b8af67eeef
  39. Merge #21614: [0.21] test: Backports
    b8af67eeefc9fc9622f839ec8919b7391d91bf6f fuzz: cleanups for versionbits fuzzer (Anthony Towns)
    79cdb4a1984c90a4d9377fbb0dda7bdd61d57031 test: make sure non-IP peers get discouraged and disconnected (Vasil Dimov)
    b765f41164663c93d63e5a401d3b23c586a4e4fe test: also check disconnect in denialofservice_tests/peer_discouragement (Vasil Dimov)
    dfeb6c10bba80dc91245318feb0ad1d879015a99 test: use pointers in denialofservice_tests/peer_discouragement (Vasil Dimov)
    
    Pull request description:
    
      Backport tests
    
    ACKs for top commit:
      vasild:
        ACK b8af67eeefc9fc9622f839ec8919b7391d91bf6f
      jnewbery:
        ACK b8af67eeefc9fc9622f839ec8919b7391d91bf6f
      ajtowns:
        ACK b8af67eeefc9fc9622f839ec8919b7391d91bf6f ; visually compared individual commits to originals, checked original commits are in master
    
    Tree-SHA512: 22f665560f9d452993b12508d93d93ff54e3e91dcf39f731e27aedfb891570168066c185413d455bee4fa082c011b65ea1b0eee51e3633392b07a0db008d51c8
    f8bbee425e
  40. gui: Pre-rc1 translations update
    Tree-SHA512: 6978293bda56b0cb1370f3ddf201477a2f12e0b8c9462d3f4703b837d9be4be65142a5e97c4a473fb9fa90edd83dba8a98ea3b0ecc335062868d1e6c550241b2
    ab20518191
  41. build: Bump version to 0.21.1rc1 e85dfdbf31
  42. doc: Regenerate manual pages for 0.21.1rc1
    Tree-SHA512: cc9cd502dc40d89f34b1b043e96df180f0e16ba7c6e039866b349d19aff582d1c4b4ab8e8960b4f427d72ad5f97c7c1e8fec3f2e008a0107dea33a2c8f13febc
    329eafa7f4
  43. doc: Add PR and author list to release notes for 0.21.1
    Tree-SHA512: c74b12dee645bd8d3dcff8d572a82369ea0895339d0d12e5360182421fa8cef4d3eba309ff7668e97dc24cd6afc800ab9ceb4eca5458085acf12c368f6c2f859
    5577e0a486
  44. doc: Merge release notes fragment, merge taproot description from wiki
    Co-authored-by: David A. Harding <dave@dtrt.org>
    Co-authored-by: Jon Atack <jon@atack.com>
    Co-authored-by: Pieter Wuille <pieter@wuille.net>
    
    Tree-SHA512: dd9ac416ff22276833111198445d76cf8417012a6faad0c3560276f1dcf24586ff41c65ac3430fbf1e840aaa563d3dd101671cff306b0fd92aa2ee03bb7f926b
    d97d0d31a6
  45. build: Bump RC to 0 (-final)
    Tree-SHA512: b63d8c2514fa34d4503da8a37fb42948e03610e06dae6aaef7ba3d2568efd3bb138e7510da569a49d83c2618fa697ba949d55880fc2884a75a87028259d7c544
    194b9b8792
  46. Litecoin: Update README.md f188dbcee1
  47. Litecoin: Add historical release notes 77c41391f7
  48. Litecoin: Adjust chain parameters 981c448c28
  49. Litecoin: Adjust signet params 0f7e6ef703
  50. Litecoin: Add scrypt N=1024 PoW 35809f2ee5
  51. Litecoin: Add crypto libs 550f8ee924
  52. Makefile changes b087429944
  53. Litecoin: Signet param phase 1 71f1963e7e
  54. Litecoin: scrypt changes a6b51ef1ab
  55. Litecoin: Add Litecoin logos and icons 2ef51cf82a
  56. Litecoin: Developer gpg keys bbb02f393f
  57. Litecoin: Fix various tests f3e8486f00
  58. Litecoin: Scrypt 92e21c8cf1
  59. Litecoin: Update gitian descriptors d6e910a089
  60. Litecoin: Fix copyright year value 073d829346
  61. Litecoin: Protocol and default settings
    0) Adjust BIP30 enforcement values
    
    1) Reduce amount that peers can adjust our time to eliminate an attack vector. Thanks to
    coblee for this fix.
    
    2) Zeitgeist2 patch - thanks to Lolcust and ArtForz. This fixes an issue where a
    51% attack can change difficulty at will. Go back the full period unless it's the
    first retarget after genesis.
    
    3) Avoid overflow in CalculateNextWorkRequired(). Thanks to pooler for the overflow fix.
    
    4) Zeitgeist2 bool fshift bnNew.bits(). Thanks to romanornr for this path.
    
    5) SegWit ContextualCheckBlockHeader adjustment and extra coverage.
    
    6) Reject peer proto version below 70002. Thanks to wtogami for this patch.
    
    7) Send final alert message to nodes warning about removal of the alert system. Thanks to coblee for this patch.
    
    8) Adjust default settings for Litecoin.
    
    9) Adjust STALE_CHECK_INTERVAL value
    a66fc11fc4
  62. Litecoin: Protocol 5cff8e1eb2
  63. Litecoin: Adjust splashscreen for testnet/regtest c6f7183be7
  64. Litecoin: Update hardcoded seeds ca05541ac5
  65. Litecoin: Update chainparams minimum chain work, default assume valid values and blockchain size 4821564b3f
  66. Litecoin: Update trusted keys
    GPG keys for coblee, shaolinfry, thrasher and xinxi
    533dde099d
  67. Litecoin: Update windeploy cert and timestamping server cb36d00566
  68. Litecoin: Fix Qt intro year value d624226816
  69. Litecoin: Build system and utilties 258a64eb5d
  70. Litecoin: Update Litecoin icons and images a26e75eb54
  71. Litecoin: Branding 86b0e12da3
  72. Litecoin: Branding c81ace4ad8
  73. Litecoin: Adjust copyright yr d79807a0fd
  74. Litecoin: Update bech32 HRP's 870343e099
  75. Litecoin: Make it easier to specify gbuild resource limits
    Add variables for gbuild thread and memory limits.  Simplifies using custom values.
    6d80df3334
  76. Branding 8fc7d96436
  77. Litecoin: Update hardcoded seeds b1d93ab703
  78. Litecoin: Adjust chainparam values (chainwork, assumevalid, chaintxstats and blockchain size) 7dcf8bb9ef
  79. Litecoin: Qt regression e0063c4dd7
  80. Litecoin: Fix intro copyright year eee922d2d0
  81. Litecoin: 0.18.1 release notes ed96e8af29
  82. Litecoin: Archive v0.18.1 release notes 93a9d54cc1
  83. Litecoin: Archive 0.17.1 release notes 375a885844
  84. Litecoin: Fix various tests dcf565982a
  85. Litecoin: Fix more functional tests 44d25fdf26
  86. Litecoin: Fix some tests 929059e26e
  87. Litecoin: Disable RBF 0de5edb7e2
  88. Litecoin: Fix tests 400e9ec7b3
  89. Litecoin: Descriptors 7f586ea716
  90. Litecoin: Branding 61377cdf84
  91. Litecoin: Branding ec6bbffe51
  92. Litecoin: M prefix added for script addresses c7c4806e7a
  93. Litecoin: Multisig code testing e16dd76732
  94. Litecoin: Multisig CScript -> ScriptHash 09e4e7254f
  95. Litecoin: Fix various tests a1e47d9f0e
  96. Litecoin: Tests d1d5fa80fb
  97. Litecoin: Function tests f522022273
  98. Litecoin: gitian descriptors 67c01f547d
  99. Litecoin: man page 64cefb51d4
  100. Revert "depends: remove OpenSSL package"
    This reverts commit 648b2e3c3288ee0b83d4089d27fa7f84a73d118e.
    7cc0b1da57
  101. Revert "build: skip building OpenSSL lib_ssl"
    This reverts commit 2cba35ab38b492768e85bd77442a566dda169466.
    4da6db1118
  102. Revert "build: remove OpenSSL from Qt build"
    This reverts commit 45a2d3c5526551c279b624e111fe83d1f30b10db.
    a6883e0547
  103. Litecoin: CI system ffbe62f18a
  104. Litecoin: HRPs d87e597b3b
  105. Litecoin: Multisig 98528bf8dc
  106. Litecoin: Branding 6ece9ae091
  107. Ltecoin: Descriptors 17837dbc51
  108. Litecoin: Branding ff5782626c
  109. Litecoin: Tests 847a5188e6
  110. Litecoin: Functional tests 86fe3c68b8
  111. Litecoin: Fix travis unsigned integer overflow error 5836d84f21
  112. Litecoin: Scrypt adbc00ed2a
  113. Litecoin: CI 0f7ad97ce8
  114. Litecoin: Update hardcoded seeds 3a153f6011
  115. Litecoin: Update assumevalid, chainwork and chaintxstat data a8ed7cf54a
  116. Litecoin: Branding 3a55c8851c
  117. Litecoin: configure.ac openssl 6b9d8d6113
  118. Litecoin: ssl 6ad27338b5
  119. Litecoin: Copyright fuzzer aa4f5514d5
  120. Litecoin: Update testnet chainparams chainwork 4c9da25536
  121. Litecoin: Security doc e1b32d0fbe
  122. Litecoin: Branding 36830b02e1
  123. Litecoin: Functional tests 60fb716792
  124. Litecoin: Validation 5d1dbc0413
  125. Litecoin: More functional tests c6b319d9d2
  126. Litecoin: Make linter happy 478dabad29
  127. Litecoin: Validation 5f4e932069
  128. Litecoin: Update windows codesigning cert 16acbde64a
  129. Litecoin: Functional 0a994ef374
  130. Litecoin: Bump copyright year eb0ddf8c54
  131. Litecoin: Bump to rc1 1bb979fc6b
  132. Litecoin: bech32m tests 61e2c39ae8
  133. Test fixes beb0f22f26
  134. Implement BIP8 for taproot 3865f76a97
  135. BIP8 test fixes 133e84880e
  136. Disabling descriptor wallet creation 3ed2e97ba8
  137. * Changing taproot start & timeout heights
    * Minor version bits cleanup
    f1f22275de
  138. Adding gpg key 5a6be4799a
  139. Include Security library in MACHO_ALLOWED_LIBRARIES f4c8eb7019
  140. Updated manpages 1e7bcc9071
  141. Pushing taproot activation to end of November 33fcc487b0
  142. Merge pull request #751 from DavidBurkett/0.21
    Litecoin Core v0.21.1
    3665dadcea
  143. Updating chainparams and starting on release notes 508dfae2a8
  144. Fixing nPowTargetTimespan comment b43136de76
  145. 0.21.1 release notes courtesy of Robbie Coleman cfa338d63f
  146. Merge pull request #767 from DavidBurkett/0.21
    WIP: 0.21.1: Updating chainparams and adding release notes
    916ad839ad
  147. Litecoin: Add -mempoolreplacement flag and disable RBF by default 2fbe202623
  148. Merge branch 'litecoin-project:0.21' into 0.21 1903a2f7e8
  149. Removing descriptor and signet sections from release notes 3de9c8d97f
  150. Merge pull request #772 from DavidBurkett/0.21
    Litecoin: Add -mempoolreplacement flag and disable RBF by default
    02119ec802
  151. Add THR PGP Pub key 2efa3e02dc
  152. MWEB: Allow extended length bech32 c544ce64b3
  153. MWEB: Switching to secp256k1-zkp c87e3f7448
  154. MWEB: Adding dependencies e735822f3d
  155. MWEB: Add libmw db90d67828
  156. MWEB: libmw build fixes -
    * Updating CHDChain and CKeyMetadata walletdb models
    * Adding mweb_db.h
    9417feaab4
  157. MWEB: Primitives (CTransaction, CBlock, serialization) 9d1f530a5f
  158. MWEB: Add StealthAddress to CTxDestination and add pegin and hogex script consts & logic d8e940f301
  159. MWEB: Add DesitnationAddr wrapper f22b501828
  160. MWEB: Initialize libmw logger 22dae0e31a
  161. MWEB: IsStandard policies fb672d32fe
  162. MWEB: Consensus params d32dfcca56
  163. MWEB: Input versioning a153bd3fe3
  164. MWEB: Block and transaction weight 6ff2a73a59
  165. MWEB: Add mw::CoinsView to CCoinsView's 012002a65f
  166. MWEB: Adding mweb_header, hogex_hash, and mweb_amount to CBlockIndex d48c35a176
  167. MWEB: Block undo changes 31404e0332
  168. MWEB: Core validation logic 7eff20dc1e
  169. MWEB: P2P: NODE_MWEB service flag 27245a547a
  170. MWEB: P2P: Compact blocks 99b9df737d
  171. MWEB: P2P: Serialize MWEB blocks for peers that support it 3e70891275
  172. MWEB: Pegout maturity 9a9dfec9ac
  173. MWEB: Included MWEB weight in feerate 147ad5aefd
  174. MWEB: Mempool 7b05e5ca06
  175. MWEB: Miner 6ad7d6f588
  176. MWEB: Wallet & UI changes d581333fa8
  177. MWEB: TxToUniv updates fbb7fa3dc6
  178. MWEB: Functional tests 0e1f4e1671
  179. Update release version to 0.21.2rc1 f7fa5498dd
  180. MWEB: Fixing gitian build 13b2abb604
  181. MWEB: Fixing gitian build 17b65055ba
  182. MWEB: P2P: Allow sync from non-MWEB peers before MWEB activation 493e8288ab
  183. MWEB: UI: Don't allow sending to MWEB addresses until after activation. 2a33f5b322
  184. Updating gitian-descriptors and release-notes-litecoin.md 53df3e9978
  185. build: macOS notarisation process 6f8245a5b7
  186. build: Update crc32c subtree
    (cherry picked from commit fa7c8d136f6590e54d60c37fb34ebec8da84ebbb)
    7b6dabd36a
  187. * Prevent MWEB txs from being accepted to mempool before activation
    * Add 'mweb' rule to getblocktemplate request
    * Add 'mweb' field to getblocktemplate reply
    * Build out MWEB serialization for better functional test coverage
    91a8c4e6ae
  188. * Load and Unload MWEB keychain when unlocking/locking the wallet
    * Check for MWEB support instead of asserting keychain is always loaded
    * Fix backward compatibility tests
    ef12bd7c15
  189. Bumping version to 0.21.2rc2 eb83f4eb6a
  190. Node fixes for 0.21.2rc3 4beb89b249
  191. * Wallet fixes
    * Fixing taproot testnet params
    * Bump version to 0.21.2rc3
    149b4e5da5
  192. Merge fix 6b88691d7c
  193. UI fix for calculating amounts correctly d3de60d46f
  194. * Lowering MWEB feerate
    * Transaction display & amount calculation fixes for pegouts
    * Crash fix during CreateTx
    * Bump version to 0.21.2rc4
    df12de6bf0
  195. Fixing crash with subtract fee from amount f238353454
  196. Mempool fixes 1b5878a81f
  197. rc5 f431c46a29
  198. Fixing build 60b801fd3f
  199. Build fix 0c91f78dde
  200. Check if scan secret is null before using it in LegacyScriptPubKeyMan::IsMine bdb21d32fe
  201. build: set minimum supported macOS to 10.14 8239ab8bc3
  202. build: Run libdmg-hfsplus's DMG tool in make deploy
    Previously, the compression of the .iso file to a .dmg file was done
    outside of `make deploy' in order to use the faketime-wrapped version of
    libdmg-hfsplus's DMG tool.
    
    Specifying the faketime-wrapped version of the DMG tool to ./configure
    fixes this and simplifies build scripts.
    85baf03f17
  203. build: Replace genisoimage with xorriso
    xorriso and its mkisofs/genisoimage emulation alter-ego xorrisofs are
    more maintained, and has the right toggles for us to achieve output
    determinism without using blunt tools like faketime.
    
    In this commit, we use xorrisofs from the build environment rather than
    building it ourselves using depends. This is not necessary and can be
    changed in the future.
    
    From https://wiki.debian.org/genisoimage?action=recall&rev=11 :
    
    > The classical command line interface for production of ISO 9660
    > filesystem images is the option set established by program mkisofs.
    > For reasons of licensing and other problems with its author, Debian
    > ships a fork of mkisofs, called genisoimage, which was split off in
    > 2006 and then developed independently.
    >
    > Meanwhile, genisoimage gets no new features and not even bug fixes. It
    > is first choice only if its options -udf or -hfs are needed.
    >
    > Replacement in most uses cases, especially for bootable ISO 9660
    > filesystems, archiving, and backup, is xorrisofs which starts the -as
    > mkisofs emulation mode of program xorriso.
    12ac5ee4d3
  204. build: remove cdrkit package from depends eb92ebd9b3
  205. gitian: install signapple in gitian-osx-signer.yml 0d6e794d51
  206. gitian: use signapple to apply the MacOS code signature f9ecb1345b
  207. gitian: use signapple to create the MacOS code signature d48cabde70
  208. gitian: Remove codesign_allocate and pagestuff from MacOS build a52a7e1043
  209. update signapple tool for runtime hardening ac398fe074
  210. Small cleanup c59ac6d8a5
  211. Support partial rewind of outputs for locked wallets, and UpgradeCoins() function to finish rewinding once unlocked. 63147da911
  212. Add doc/mweb/mining-changes.md 768e3e8621
  213. * txrecord refactor and introduction of txlist
    * createtransaction rewrite (TxAssembler)
    * added listwallettransactions rpc method
    30aa04815c
  214. More createtx cleanup bdae021b11
  215. Fixing crash found by Anton b05226fe1b
  216. Fixing miner crashes by adding support for spending unconfirmed outputs e07a311aeb
  217. * Adding mweb_wtx_info to WalletTxToJSON
    * Better handling of conflicting wallet tx data during rescan
    * Fix create tx dialog for txs using subtract fee from amount
    * Safer MWEB block undo logic
    cca9cfe7c8
  218. * Remove temporary g_desire_mweb_flag hack and always just require NODE_MWEB. There are enough MWEB-capable public nodes now, so this is no longer necessary.
    * Update chainparamsseeds.h to include some additional MWEB-capable public nodes
    * Only set NODE_MWEB service flag when NODE_WITNESS is set
    8340829bc8
  219. * Add comment documenting serialization format for mw::Coin
    * Always serialize mw:Coins in the latest format
    * Fail when attempting to deserialize coins in an unsupported format
    05584f0352
  220. Quick rc6 fixes aa0e722dfa
  221. GetSpendKey() -> GetSpendSecret() dd4263abc8
  222. Call CheckTransaction as a sanity check on newly created transactions. a753b740e0
  223. Don't create change when pegging out available balance. 450fe234f5
  224. Fix pegin transactions not showing up in transaction list. e1edf6ba30
  225. Don't track spends of coins we sent 8634cc1c25
  226. * Only require 6 block maturity for pegouts in wallet
    * Display correct stealth address in coin list
    b7c384ff11
  227. More accurate filtering of transactions not belonging to wallet 405b1ec5ca
  228. * Throwing recoverable error when transaction amount is too small to pay the MWEB recipient
    * Checking ismine filter for pegouts in GetCredit
    82ab2849c9
  229. Checking pegouts when calculating fAllToMe. 8803ee72fc
  230. Including pegouts in transaction info dialog 3604cb5b9f
  231. pegout_indices ordering fix 8cb54c5454
  232. Improving coin control display 2944bf24af
  233. v0.21.2 eef63f7034
  234. Adding more mainnet seeds and re-tagging 0.21.2 d314b5cd9f
  235. fix v0.21.2 release-notes bb242e3355
  236. Stop using pre_split_keypool for MWEB keys in upgraded wallets, and support recovering coins sent to stealth addresses generated from pre_split_keypool
    (cherry picked from commit 4b45fdf7f3cb8e113c1c04970e7e33751b7d7473)
    6678264538
  237. docs: add libfmt as a required dependancy cad62d8979
  238. Merge pull request #816 from losh11/fix-upgraded-wallets
    docs: add libfmt as a required dependancy
    b91e0b2fab
  239. Add testnet checkpoint 8dc9bc09ae
  240. New seed format and added TOR seeds f7b893485c
  241. Adding functional test for MWEB functionality after upgrading non-HD wallet 4871bae163
  242. Adding release notes and bumping version fce5d459f0
  243. Merge pull request #822 from litecoin-project/fix-upgraded-wallets
    v0.21.2.1
    32a108600d
  244. Fix ODR issues in CHDChain e0d2a3a267
  245. Merge pull request #834 from rustyx/chdchain-odr
    Fix undefined reference to `CHDChain::VERSION_HD_CHAIN_SPLIT'
    4ae03b3f04
  246. Rate limit the processing of rumoured addresses. Ref: https://github.com/bitcoin/bitcoin/pull/22387 8b256769fd
  247. 0.21.2.2: Updating version, release notes, and manpages 7960291598
  248. Updating bitcoin ports to litecoin's equivalent f69578127b
  249. Merge pull request #879 from litecoin-project/rate-limit
    Rate limit addresses
    0eb9809917
  250. Remove 'GUARDED_BY(NetEventsInterface::g_msgproc_mutex)' to avoid gitian build failures
    (cherry picked from commit 953811f77a85cfc79d79e08f2283ddf0b9730928)
    91c56dbccf
  251. Create ok 5e4999e2f1
  252. DrahtBot commented at 5:12 AM on March 2, 2023: member

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  253. fanquake closed this on Mar 2, 2023

  254. fanquake locked this on Mar 2, 2023
  255. fanquake renamed this:
    Patch 1
    .
    on Mar 2, 2023
Contributors

github-metadata-mirror

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-29 03:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me