Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

backport: Merge bitcoin#23642, 22794, 23316, 24365, gui#517, 24219, 23253, 24449, 22543 #6300

Draft
wants to merge 9 commits into
base: develop
Choose a base branch
from

Commits on Oct 17, 2024

  1. Merge bitcoin#23642: refactor: Call type-solver earlier in decodescript

    3333070 refactor: Call type-solver earlier in decodescript (MarcoFalke)
    fab0d99 style: Remove whitespace (MarcoFalke)
    
    Pull request description:
    
      The current logic is a bit confusing. First creating the `UniValue` return dict, then parsing it again to get the type as `std::string`.
    
      Clean this up by using a strong type `TxoutType`. Also, remove whitespace.
    
    ACKs for top commit:
      shaavan:
        ACK 3333070
      theStack:
        Code-review ACK 3333070
    
    Tree-SHA512: 49db7bc614d2491cd3ec0177d21ad1e9924dbece1eb5635290cd7fd18cb30adf4711b891daf522e7c4f6baab3033b66393bbfcd1d4726f24f90a433124f925d6
    MarcoFalke authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ca35efc View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#22794: test: Verify if wallet is compiled in rpc_invali…

    …d_address_message.py test
    
    c2fbdca Add BECH32_INVALID_VERSION test (lsilva01)
    b142f79 skip test_getaddressinfo() if wallet is disabled (lsilva01)
    
    Pull request description:
    
      Most of  `test/functional/rpc_invalid_address_message.py` does not requires wallet.
      But if the project is compiled in disable-wallet mode, the entire test will be skipped.
    
      This PR changes the test to run the RPC tests first and then checks if the wallet is compiled.
    
    ACKs for top commit:
      stratospher:
        tested ACK c2fbdca
    
    Tree-SHA512: 11fa2fedf4a15aa45e3f12490df8e22290a867d5de594247211499533c32289c68c0b60bd42dbf8305e43dbcc042789e7139317ef5c9f8cf386f2d84c91b9ac2
    MarcoFalke authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    b7a66fc View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#23316: test: make the node param explicit in init_wallet()

    7b3c9e4 Make explicit the node param in init_wallet() (lsilva01)
    
    Pull request description:
    
      This PR changes the definition of `def init_wallet(self, i)` to `def init_wallet(self, *, node)` to make the node parameter explicit, as suggested in bitcoin#22794 (comment) .
    
    ACKs for top commit:
      stratospher:
        tested ACK 7b3c9e4.
    
    Tree-SHA512: 2ef036f4c2110b2f7dc893dc6eea8faa0a18edd7f8f59b25460a6c544df7238175ddd6a0d766e2bb206326b1c9afc84238c75613a0f01eeda89a8ccb7d86a4f1
    MarcoFalke authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    eb0f5a9 View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#24365: wallet: Don't generate keys for wallets with pri…

    …vate keys disabled during upgradewallet
    
    c7376cc tests: Test upgrading wallet with privkeys disabled (Andrew Chow)
    3d985d4 wallet: Don't generate keys when privkeys disabled when upgrading (Andrew Chow)
    
    Pull request description:
    
      When we're upgrading a wallet, we shouldn't be trying to generate new keys for wallets where private keys are disabled.
    
      Fixes bitcoin#23610
    
    ACKs for top commit:
      laanwj:
        Code review ACK c7376cc
      benthecarman:
        tACK c7376cc this fixed the issue for me
    
    Tree-SHA512: fa07cf37df9196ff98671bb1ce5c9aa0bab46495066b4dab796d7e8e5d5c7adb414ff56adae4fd3e15658a610995bd19a9e1edb00c46144b0df635c5b343f3a6
    laanwj authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    270e87b View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin-core/gui#517: refactor, qt: Use std::chrono for paramet…

    …ers of QTimer methods
    
    51250b0 refactor, qt: Use std::chrono for input_filter_delay constant (Hennadii Stepanov)
    f3bdc14 refactor, qt: Add SHUTDOWN_POLLING_DELAY constant (Hennadii Stepanov)
    0e193de refactor, qt: Use std::chrono for non-zero arguments in QTimer methods (Hennadii Stepanov)
    6f0da95 refactor, qt: Use std::chrono in ConfirmMessage parameter (Hennadii Stepanov)
    33d520a refactor, qt: Use std::chrono for MODEL_UPDATE_DELAY constant (Hennadii Stepanov)
    
    Pull request description:
    
      Since Qt 5.8 `QTimer` methods have overloads that accept `std::chrono::milliseconds` arguments:
      - [`QTimer::singleShot`](https://doc.qt.io/archives/qt-5.9/qtimer.html#singleShot-8)
      - [`QTimer::start`](https://doc.qt.io/archives/qt-5.9/qtimer.html#start-2)
    
    ACKs for top commit:
      promag:
        Code review ACK 51250b0.
      shaavan:
        reACK 51250b0
    
    Tree-SHA512: aa843bb2322a84c0c2bb113d3b48d7bf02d7f09a770779dcde312c32887f973ef9445cdef42f39edaa599ff0f3d0457454f6153aa130efadd989e413d39c6062
    hebasto authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    7b4af86 View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#24219: Fix implicit-integer-sign-change in bloom

    fad84a2 refactor: Fixup uint64_t-cast style in touched line (MarcoFalke)
    fa04187 Fix implicit-integer-sign-change in bloom (MarcoFalke)
    
    Pull request description:
    
      Signed values don't really make sense when using `std::vector::operator[]`.
    
      Fix that and remove the suppression.
    
    ACKs for top commit:
      PastaPastaPasta:
        utACK fad84a2
      theStack:
        Code-review ACK fad84a2
    
    Tree-SHA512: 7139dd9aa098c41e4af1b6e63dd80e71a92b0a98062d1676b01fe550ffa8e21a5f84a578afa7a536d70dad1b8a5017625e3a9e2dda6f864b452ec77b130ddf2a
    MarcoFalke authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    7d8d2f6 View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#23253: bitcoin-tx: Reject non-integral and out of range…

    … int strings
    
    fa6f29d bitcoin-tx: Reject non-integral and out of range multisig numbers (MarcoFalke)
    fafab8e bitcoin-tx: Reject non-integral and out of range sequence ids (MarcoFalke)
    fa53d3d test: Check that bitcoin-tx accepts whitespace around sequence id and multisig numbers (MarcoFalke)
    
    Pull request description:
    
      Seems odd to silently accept arbitrary strings that don't even represent integral values.
    
      Fix that.
    
    ACKs for top commit:
      practicalswift:
        cr ACK fa6f29d
      laanwj:
        Code review ACK fa6f29d
      Empact:
        Code review ACK bitcoin@fa6f29d
      promag:
        Code review ACK fa6f29d.
    
    Tree-SHA512: e31f7f21fe55ac069e755557bdbcae8d5d29e20ff82e441ebdfc65153e3a31a4edd46ad3e6dea5190ecbd1b8ea5a8f94daa5d59a3b7558e46e794e30db0e6c79
    laanwj authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    d884ff6 View commit details
    Browse the repository at this point in the history
  8. Merge bitcoin#24449: fuzz: FuzzedFileProvider::write should not retur…

    …n negative value
    
    fc47181 fuzz: FuzzedFileProvider::write should not return negative value (eugene)
    
    Pull request description:
    
      Doing so can lead to a glibc crash (from 2005 but I think it's relevant https://sourceware.org/bugzilla/show_bug.cgi?id=2074). Also the manpage for fopencookie warns against this: https://man7.org/linux/man-pages/man3/fopencookie.3.html. This would invalidate the autofile seeds (and maybe others?) in qa-assets.
    
      On another note, I noticed that FuzzedFileProvider::seek has some confusing behavior with SEEK_END. It seems to me that if these handlers are supposed to mimic the real functions, that SEEK_END would use the offset from the end of the stream, rather than changing the offset with a random value between 0 and 4096. I could also open a PR to fix SEEK_END, but it would invalidate the seeds.
    
    ACKs for top commit:
      MarcoFalke:
        cr ACK fc47181
    
    Tree-SHA512: 9db41637f0df7f2b2407b82531cbc34f4ba9393063b63ec6786372e808fe991f7f24df45936c203fe0f9fc49686180c65ad57c2ce7d49e0c5402240616bcfede
    MarcoFalke authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    fbaccdd View commit details
    Browse the repository at this point in the history
  9. Merge bitcoin#22543: test: Use MiniWallet in mempool_limit.py

    08634e8 fix typos in logging messages (ShubhamPalriwala)
    d447ded replace: self.nodes[0] with node (ShubhamPalriwala)
    dddca38 test: use MiniWallet in mempool_limit.py (ShubhamPalriwala)
    
    Pull request description:
    
      This is a PR proposed in bitcoin#20078
    
      This PR enables running another non-wallet functional test even when the wallet is disabled thanks to the MiniWallet, i.e. it can be run even when bitcoin-core is compiled with --disable-wallet.
    
      It also includes changes in wallet.py in the form of a new method, `create_large_transactions()` for the MiniWallet to create large transactions.
    
      Efforts for this feature started in bitcoin#20874 but were not continued and that PR was closed hence I picked this up.
    
      To test this PR locally, compile and build bitcoin-core without the wallet and run:
      ```
      $ test/functional/mempool_limit.py
      ```
    
    ACKs for top commit:
      amitiuttarwar:
        ACK 08634e8, only git changes since last push (and one new line).
      Zero-1729:
        ACK 08634e8 🧉
    
    Tree-SHA512: 0f744ad26bf7a5a784aac1ed5077b59c95a36d1ff3ad0087ffd10ac8d5979f7362c63c20c2ce2bfa650fda02dfbcd60b1fceee049a2465c8d221cce51c20369f
    merge-script authored and vijaydasmp committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    1cce271 View commit details
    Browse the repository at this point in the history