Bitcoin Core Github
43 subscribers
123K links
Download Telegram
πŸ’¬ darosior commented on pull request "validation: detect witness stripping without re-running Script checks":
(https://github.com/bitcoin/bitcoin/pull/33105#discussion_r2258302488)
If we can cheaply detect this txid refers to an always-invalid transaction and cache it, that seems like a win. It might be fine to cache even less such errors, but i'd rather this was done separately. There is already enough happening in this PR 14 days from the feature freeze.
πŸ’¬ sipa commented on pull request "p2p: never check tx rejections by txid":
(https://github.com/bitcoin/bitcoin/pull/33066#issuecomment-3161635101)
Concept ACK.

First of all, I'm convinced by the rationale for #33050 and #33105, and if we do (at least) the latter, then this PR isn't necessary anymore to get rid of the triple-validation costs, which would make it low-urgency. I think it's still a nice cleanup, as I don't think the code does much right now (see below).

Aside, I don't think we need to worry about the impact it may have on pre-segwit or pre-wtxidrelay peers; given how widespread wtxidrelay peers are, I think we can reason
...
πŸ’¬ achow101 commented on pull request "wallet, rpc: add v3 transaction creation and wallet support":
(https://github.com/bitcoin/bitcoin/pull/32896#discussion_r2258335380)
The CI failure is caused by `charlie` spending the `confirmed_v2` UTXO when it is creating one of the unconfirmed UTXOs.

In 2d37a5113ff0b0ab682788e4ef13c4cc223c17fe, we should still expect to see this failure, and in fact, more likely to see it (~50% of the time) because the UTXO pool of alice is much smaller at this point in time. The only reason we do not see it is because the test framework sets fallbackfee to 20 sat/vb which is in the high feerate regime which changes the behavior of coin
...
πŸ€” jonatack reviewed a pull request: "Removing Bitcoin core text where unnecessary"
(https://github.com/bitcoin/bitcoin/pull/33126#pullrequestreview-3094421132)
Concept ACK, provided this small patch is robust. It's a minor change to be sure. Nevertheless, it seems cleaner not to hardcode it and would convey a magnanimous FOSS spirit that I encourage.
πŸ’¬ achow101 commented on pull request "refactor,test: follow-ups to multi-byte block obfuscation":
(https://github.com/bitcoin/bitcoin/pull/33039#issuecomment-3161767528)
ACK 86e3a0a8cbd30cfee98f5b4acf4ce6d0a75a3ef0
πŸ’¬ hodlinator commented on pull request "Removing Bitcoin core text where unnecessary":
(https://github.com/bitcoin/bitcoin/pull/33126#discussion_r2258425819)
Haven't explored this in depth, but my guess is that the zip filename comes from this line in `add_macos_deploy_target`:
https://github.com/bitcoin/bitcoin/blob/2c9aa1afa8dab8cf2c86b10010f1d3b342d93425/cmake/module/Maintenance.cmake#L87
An alternative approach might be to change that to something generic like `CFBundleName = \"BundleName\"`, or make it have something closer to the final name in the first place.
πŸ’¬ murchandamus commented on issue "Slow unit tests delay functional tests and leave CPU unused":
(https://github.com/bitcoin/bitcoin/issues/32770#issuecomment-3161801097)
In the context of `coinselector_tests` being slow, I found looking at some flamegraphs that most of the time is spent on Knapsack and BnB. I have a [rewrite of BnB](https://github.com/bitcoin/bitcoin/pull/32150) open, that I would expect to improve BnB’s performance (and thus improve this test’s performance, in case someone is interested to review) and I have been prototyping another coin selection algorithm that I hope will bring the last missing piece to obsolete Knapsack (consolidatory behavi
...
πŸ€” achow101 reviewed a pull request: "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key"
(https://github.com/bitcoin/bitcoin/pull/32471#pullrequestreview-3094495318)
Concept ACK
πŸ’¬ achow101 commented on pull request "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key":
(https://github.com/bitcoin/bitcoin/pull/32471#discussion_r2258450650)
In 49f41141c674f83d0b66262a5b21aad623704264 "descriptor: ToPrivateString() pass if at least 1 priv key exists"

`has_priv_key` should be a reference not a pointer. The pointer-ness is never used in this function.
πŸ’¬ achow101 commented on pull request "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key":
(https://github.com/bitcoin/bitcoin/pull/32471#discussion_r2258440013)
In 64213213b3691c9d93de95f880f820a640cd3c35 "descriptors: add IsWatchOnly()"

I think this function can be vastly simplified by calling `GetPrivKey` on all the `PubkeyProvider`, and `IsWatchOnly` on all subdescriptors.

nit: I don't like this function name since whether the descriptor is watchonly depends on the contents of the provided parameter. It's not a property like a `Is*` name implies. Watchonly also is not a property applied to descriptors as private keys are not actually part of th
...
πŸ’¬ achow101 commented on pull request "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key":
(https://github.com/bitcoin/bitcoin/pull/32471#discussion_r2258454050)
In 49f41141c674f83d0b66262a5b21aad623704264 "descriptor: ToPrivateString() pass if at least 1 priv key exists"

`assert`s should not have side effects. If we are calling a function to actually do something, it should not be in an `assert`.

However, if the return value of `ToStringHelper` is always supposed to be `true`, then it should not be returning anything anyways. Furthermore, I don't see why `ToStringHelper` doesn't return whether the string has a private key, as we are doing in this
...
πŸ’¬ achow101 commented on pull request "wallet/rpc: fix listdescriptors RPC fails to return descriptors with private key information when wallet contains descriptors missing any key":
(https://github.com/bitcoin/bitcoin/pull/32471#discussion_r2258451488)
In 49f41141c674f83d0b66262a5b21aad623704264 "descriptor: ToPrivateString() pass if at least 1 priv key exists"

If `has_priv_key` is never supposed to be null, then it should be a reference. Otherwise, this should be an `if`, we should not rely on caller behavior.
πŸš€ achow101 merged a pull request: "refactor,test: follow-ups to multi-byte block obfuscation"
(https://github.com/bitcoin/bitcoin/pull/33039)
πŸ’¬ w0xlt commented on pull request "Musig2 tests":
(https://github.com/bitcoin/bitcoin/pull/32724#issuecomment-3161888573)
> Just two test vectors?

Yes, they cover BIP 328 test vectors and the mutation detected by @brunoerg .
BIP 327 doesn't have any test vectors (even the musig2 secp256k1 library uses random keys in the test).
BIP 328 test vectors are particularly interesting because they test aggregate keys and xpubs.
πŸ€” l0rinc reviewed a pull request: "[IBD] flush UTXO set in batches proportional to `dbcache` size"
(https://github.com/bitcoin/bitcoin/pull/31645#pullrequestreview-3094683562)
Pushed the remaining nits that I promised a long time ago :)

Re-rebased, you can re-review with `git range-diff af653f3...956a6b4`
πŸ’¬ l0rinc commented on pull request "[IBD] flush UTXO set in batches proportional to `dbcache` size":
(https://github.com/bitcoin/bitcoin/pull/31645#discussion_r2258580736)
Ended up with extracting min/max and adding an assert
πŸ’¬ l0rinc commented on pull request "[IBD] flush UTXO set in batches proportional to `dbcache` size":
(https://github.com/bitcoin/bitcoin/pull/31645#discussion_r2258579061)
Added braces
πŸ’¬ l0rinc commented on pull request "[IBD] flush UTXO set in batches proportional to `dbcache` size":
(https://github.com/bitcoin/bitcoin/pull/31645#discussion_r2258579473)
Extracted min/max and added some comments
πŸ’¬ l0rinc commented on pull request "[IBD] flush UTXO set in batches proportional to `dbcache` size":
(https://github.com/bitcoin/bitcoin/pull/31645#discussion_r2258579567)
Done