💬 fjahr commented on pull request "rpc: Avoid getchaintxstats invalid results":
(https://github.com/bitcoin/bitcoin/pull/29720#discussion_r1576521230)
Yeah, changing the return value wouldn't be much of a concern, but a missing key has higher potential to crash something.
> When evaluating whether this is a breaking change, I don't think it can affect any downstream projects, because Assume-Utxo is an incomplete, experimental, regtest-only feature.
(*testnet/regtest-only) I'm pretty much with you here but [others might not be](https://github.com/bitcoin/bitcoin/pull/29612#pullrequestreview-1974818797) though the utxo set dump might also
...
(https://github.com/bitcoin/bitcoin/pull/29720#discussion_r1576521230)
Yeah, changing the return value wouldn't be much of a concern, but a missing key has higher potential to crash something.
> When evaluating whether this is a breaking change, I don't think it can affect any downstream projects, because Assume-Utxo is an incomplete, experimental, regtest-only feature.
(*testnet/regtest-only) I'm pretty much with you here but [others might not be](https://github.com/bitcoin/bitcoin/pull/29612#pullrequestreview-1974818797) though the utxo set dump might also
...
💬 maflcko commented on pull request "refactor: Use our own implementation of urlDecode":
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576523097)
I guess `i+3` fails, because you access the memory past the end of the string(view) as a reference and then take a pointer to that.
A possible fix could be to use iterators instead of memory-access. Something like this, but not sure if it compiles, or is the best solution.
```suggestion
auto [_, ec] = std::from_chars(url_encoded.begin() + (i + 1), url_encoded.begin() + (i + 3), decoded_value, 16);
```
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576523097)
I guess `i+3` fails, because you access the memory past the end of the string(view) as a reference and then take a pointer to that.
A possible fix could be to use iterators instead of memory-access. Something like this, but not sure if it compiles, or is the best solution.
```suggestion
auto [_, ec] = std::from_chars(url_encoded.begin() + (i + 1), url_encoded.begin() + (i + 3), decoded_value, 16);
```
💬 fjahr commented on pull request "refactor: Use our own implementation of urlDecode":
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576524917)
Yeah, I just pushed this.
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576524917)
Yeah, I just pushed this.
💬 maflcko commented on pull request "depends: add new LLVM debug macro":
(https://github.com/bitcoin/bitcoin/pull/29781#issuecomment-2072840743)
Looks like it worked in https://github.com/bitcoin/bitcoin/runs/24156835563
```
/msan/cxx_build/include/c++/v1/string_view:399: assertion __pos < size() failed: string_view[] index out of bounds
```
?
(https://github.com/bitcoin/bitcoin/pull/29781#issuecomment-2072840743)
Looks like it worked in https://github.com/bitcoin/bitcoin/runs/24156835563
```
/msan/cxx_build/include/c++/v1/string_view:399: assertion __pos < size() failed: string_view[] index out of bounds
```
?
💬 maflcko commented on pull request "refactor: Use our own implementation of urlDecode":
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576531967)
```suggestion
auto [_, ec] = std::from_chars(url_encoded.data() + i + 1, url_encoded.data() + i + 3, decoded_value, 16);
```
Probably a wrong push?
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576531967)
```suggestion
auto [_, ec] = std::from_chars(url_encoded.data() + i + 1, url_encoded.data() + i + 3, decoded_value, 16);
```
Probably a wrong push?
💬 fjahr commented on pull request "refactor: Use our own implementation of urlDecode":
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576534925)
fixed, thanks
(https://github.com/bitcoin/bitcoin/pull/29904#discussion_r1576534925)
fixed, thanks
💬 maflcko commented on pull request "rpc: Avoid getchaintxstats invalid results":
(https://github.com/bitcoin/bitcoin/pull/29720#discussion_r1576536504)
> (*testnet/regtest-only)
A good catch. Looks like is in all networks, except for `main`, so I guess it is still fine.
(https://github.com/bitcoin/bitcoin/pull/29720#discussion_r1576536504)
> (*testnet/regtest-only)
A good catch. Looks like is in all networks, except for `main`, so I guess it is still fine.
🤔 instagibbs reviewed a pull request: "p2p: opportunistically accept 1-parent-1-child packages"
(https://github.com/bitcoin/bitcoin/pull/28970#pullrequestreview-2017442665)
reviewed through 55b1280c52af81aa6ea0860799fa16da49f51447
Looks good, have a suggestion for a test catching the `Assume()` issue(which does actually get hit in mainnet pretty fast with debug on)
(https://github.com/bitcoin/bitcoin/pull/28970#pullrequestreview-2017442665)
reviewed through 55b1280c52af81aa6ea0860799fa16da49f51447
Looks good, have a suggestion for a test catching the `Assume()` issue(which does actually get hit in mainnet pretty fast with debug on)
💬 instagibbs commented on pull request "p2p: opportunistically accept 1-parent-1-child packages":
(https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1576365857)
is there a constant we can put here?
(https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1576365857)
is there a constant we can put here?
💬 instagibbs commented on pull request "p2p: opportunistically accept 1-parent-1-child packages":
(https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1576479584)
regression test for the `Assume()` that was hit? And unsetting the mocktime to not have interference in subtests...
```
diff --git a/test/functional/p2p_opportunistic_1p1c.py b/test/functional/p2p_opportunistic_1p1c.py
index 2eaa2a0a79..f3a741498b 100755
--- a/test/functional/p2p_opportunistic_1p1c.py
+++ b/test/functional/p2p_opportunistic_1p1c.py
@@ -291,58 +291,97 @@ class PackageRelayTest(BitcoinTestFramework):
child_bumping = self.wallet_nonsegwit.create_self_transfer_multi(
...
(https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1576479584)
regression test for the `Assume()` that was hit? And unsetting the mocktime to not have interference in subtests...
```
diff --git a/test/functional/p2p_opportunistic_1p1c.py b/test/functional/p2p_opportunistic_1p1c.py
index 2eaa2a0a79..f3a741498b 100755
--- a/test/functional/p2p_opportunistic_1p1c.py
+++ b/test/functional/p2p_opportunistic_1p1c.py
@@ -291,58 +291,97 @@ class PackageRelayTest(BitcoinTestFramework):
child_bumping = self.wallet_nonsegwit.create_self_transfer_multi(
...
👍 instagibbs approved a pull request: "feefrac: avoid explicitly computing diagram; compare based on chunks"
(https://github.com/bitcoin/bitcoin/pull/29757#pullrequestreview-2017766616)
reACK https://github.com/bitcoin/bitcoin/pull/29757/commits/b22901dfa9cc3af94bf13163a28300eb1ab25b22
(https://github.com/bitcoin/bitcoin/pull/29757#pullrequestreview-2017766616)
reACK https://github.com/bitcoin/bitcoin/pull/29757/commits/b22901dfa9cc3af94bf13163a28300eb1ab25b22
🤔 ismaelsadeeq reviewed a pull request: "test: add MiniWallet tagging support to avoid UTXO mixing, use in `fill_mempool`"
(https://github.com/bitcoin/bitcoin/pull/29939#pullrequestreview-2017794758)
Concept ACK, having a separate util for mempool is nice, all mempool helpers will live there.
> I'm still not sure if a generic word like "tag" is the right term for what this tries to achieve, happy to pick up better suggestions. Also, maybe passing a tag name is overkill and a boolean flag like "random_output_script" is sufficient?
I don't feel strongly on this but I like the second idea of just boolean flag.
(https://github.com/bitcoin/bitcoin/pull/29939#pullrequestreview-2017794758)
Concept ACK, having a separate util for mempool is nice, all mempool helpers will live there.
> I'm still not sure if a generic word like "tag" is the right term for what this tries to achieve, happy to pick up better suggestions. Also, maybe passing a tag name is overkill and a boolean flag like "random_output_script" is sufficient?
I don't feel strongly on this but I like the second idea of just boolean flag.
💬 achow101 commented on pull request "util: remove unused cpp-subprocess options":
(https://github.com/bitcoin/bitcoin/pull/29865#issuecomment-2072929586)
ACK 13adbf733f09c73c3cf0025d94c52f9cec5dba3b
(https://github.com/bitcoin/bitcoin/pull/29865#issuecomment-2072929586)
ACK 13adbf733f09c73c3cf0025d94c52f9cec5dba3b
💬 Sjors commented on pull request "[DO NOT MERGE] testnet4 including PoW difficulty adjustment fix":
(https://github.com/bitcoin/bitcoin/pull/29775#issuecomment-2072935478)
> I am not sure how the change here is making a difference?
If it depends on the difficulty being 1 rather 1 million, that would make a difference. The two people who brought it can definitely recompile, but maybe there's a better solution - maybe just a startup flag to override the minimum difficulty?
(https://github.com/bitcoin/bitcoin/pull/29775#issuecomment-2072935478)
> I am not sure how the change here is making a difference?
If it depends on the difficulty being 1 rather 1 million, that would make a difference. The two people who brought it can definitely recompile, but maybe there's a better solution - maybe just a startup flag to override the minimum difficulty?
🚀 achow101 merged a pull request: "util: remove unused cpp-subprocess options"
(https://github.com/bitcoin/bitcoin/pull/29865)
(https://github.com/bitcoin/bitcoin/pull/29865)
💬 maflcko commented on pull request "[DO NOT MERGE] testnet4 including PoW difficulty adjustment fix":
(https://github.com/bitcoin/bitcoin/pull/29775#issuecomment-2072953283)
> maybe just a startup flag to override the minimum difficulty?
I don't think consensus rules of remote nodes can be affected by a local startup flag (or re-compilation).
If someone wanted to create a block locally only, they could use regtest.
(https://github.com/bitcoin/bitcoin/pull/29775#issuecomment-2072953283)
> maybe just a startup flag to override the minimum difficulty?
I don't think consensus rules of remote nodes can be affected by a local startup flag (or re-compilation).
If someone wanted to create a block locally only, they could use regtest.
💬 vasild commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#issuecomment-2072977453)
`9297437af2...cc760207b8`: rebase and address suggestions:
* Give a startup warning if `-privatebroadcast=1`, `-proxyrandomize=0` and the Tor network is reachable (i.e. we will use Tor for private broadcast).
* Enforce `-walletbroadcast=0` if `-privatebroadcast=1` because it would be confusing to have the wallet do the traditional broadcast while the `sendrawtransaction` RPC does a private broadcast. Furthermore if a wallet transaction is sent via `sendrawtransaction` and ends up in the memp
...
(https://github.com/bitcoin/bitcoin/pull/29415#issuecomment-2072977453)
`9297437af2...cc760207b8`: rebase and address suggestions:
* Give a startup warning if `-privatebroadcast=1`, `-proxyrandomize=0` and the Tor network is reachable (i.e. we will use Tor for private broadcast).
* Enforce `-walletbroadcast=0` if `-privatebroadcast=1` because it would be confusing to have the wallet do the traditional broadcast while the `sendrawtransaction` RPC does a private broadcast. Furthermore if a wallet transaction is sent via `sendrawtransaction` and ends up in the memp
...
💬 vasild commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r1576618058)
Right, removed the conflicting address and reduced the logging to log only if adding to the addrman fails.
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r1576618058)
Right, removed the conflicting address and reduced the logging to log only if adding to the addrman fails.
💬 vasild commented on pull request "Broadcast own transactions only via short-lived Tor or I2P connections":
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r1576619537)
I added broadcast to IPv4 and IPv6 peers through the Tor proxy. Thanks!
(https://github.com/bitcoin/bitcoin/pull/29415#discussion_r1576619537)
I added broadcast to IPv4 and IPv6 peers through the Tor proxy. Thanks!
👋 hernanmarino's pull request is ready for review: "test: add missing tests for Assumeutxo"
(https://github.com/bitcoin/bitcoin/pull/29428)
(https://github.com/bitcoin/bitcoin/pull/29428)