👍 tdb3 approved a pull request: "rpc: add gettarget , target getmininginfo field and show next block info"
(https://github.com/bitcoin/bitcoin/pull/31583#pullrequestreview-2530058120)
Code review re ACK b35ed41b03578586e380cb73aece14046ec2da93
Sync from genesis was successful (to 877742, `000000000000000000008bac930b7efd54a7ddef0b9ec5b1c0c00b6a6c8e0cfb`)
fyi, conf used:
```
[main]
connect=<sister node on LAN>
checkpoints=0
prune=53000
dbcache=24000
```
(https://github.com/bitcoin/bitcoin/pull/31583#pullrequestreview-2530058120)
Code review re ACK b35ed41b03578586e380cb73aece14046ec2da93
Sync from genesis was successful (to 877742, `000000000000000000008bac930b7efd54a7ddef0b9ec5b1c0c00b6a6c8e0cfb`)
fyi, conf used:
```
[main]
connect=<sister node on LAN>
checkpoints=0
prune=53000
dbcache=24000
```
⚠️ thebignaught opened an issue: "Fake bitcoin core website at the top of duckduckgo"
(https://github.com/bitcoin/bitcoin/issues/31602)
Hello all,
If you search "bitcoin core" on duckduckgo.com the top search result is a fake bitcoin core website with the URL: btcore . cc
I haven't actually visited the site but I am assuming it is offering malware downloads to the unsuspecting. Is there anything that can be done about this?
I have crossposted this also on the bitcoin-core github on the website repo.
(https://github.com/bitcoin/bitcoin/issues/31602)
Hello all,
If you search "bitcoin core" on duckduckgo.com the top search result is a fake bitcoin core website with the URL: btcore . cc
I haven't actually visited the site but I am assuming it is offering malware downloads to the unsuspecting. Is there anything that can be done about this?
I have crossposted this also on the bitcoin-core github on the website repo.
💬 TheCharlatan commented on pull request "refactor: cache block[undo] serialized size for consecutive calls":
(https://github.com/bitcoin/bitcoin/pull/31490#discussion_r1902837379)
In commit 0dd386994bafd67081c4521673018ddd22e2d63c
Can we call this `ReadBlockUndo` instead?
(https://github.com/bitcoin/bitcoin/pull/31490#discussion_r1902837379)
In commit 0dd386994bafd67081c4521673018ddd22e2d63c
Can we call this `ReadBlockUndo` instead?
💬 TheCharlatan commented on pull request "test: cover base32/base58/base64 with symmetric roundtrip fuzz (and padding) tests":
(https://github.com/bitcoin/bitcoin/pull/30746#discussion_r1902903280)
In commit 3b66b7e20ddba94d251c97818700d46030b14cc5
`s/Spit/Split` in commit message.
(https://github.com/bitcoin/bitcoin/pull/30746#discussion_r1902903280)
In commit 3b66b7e20ddba94d251c97818700d46030b14cc5
`s/Spit/Split` in commit message.
💬 TheCharlatan commented on pull request "multiprocess: Add bitcoin wrapper executable":
(https://github.com/bitcoin/bitcoin/pull/31375#issuecomment-2571248802)
Concept ACK
(https://github.com/bitcoin/bitcoin/pull/31375#issuecomment-2571248802)
Concept ACK
💬 laanwj commented on pull request "test: Remove non-portable IPv6 test":
(https://github.com/bitcoin/bitcoin/pull/31580#issuecomment-2571265003)
i think this makes sense, relying on a "default scope" is brittle at most. Better to add the interface number explicitly.
We don't use that anywhere in our code outside the test, right? If so i think it's okay to remove this test unconditionally.
(https://github.com/bitcoin/bitcoin/pull/31580#issuecomment-2571265003)
i think this makes sense, relying on a "default scope" is brittle at most. Better to add the interface number explicitly.
We don't use that anywhere in our code outside the test, right? If so i think it's okay to remove this test unconditionally.
👍 theStack approved a pull request: "wallet, desc spkm: Return SigningProvider only if we have the privkey"
(https://github.com/bitcoin/bitcoin/pull/31242#pullrequestreview-2530727962)
re-ACK f6a6d912059c66792f48689632d2a7f14f8bdad9
(https://github.com/bitcoin/bitcoin/pull/31242#pullrequestreview-2530727962)
re-ACK f6a6d912059c66792f48689632d2a7f14f8bdad9
💬 l0rinc commented on pull request "refactor: cache block[undo] serialized size for consecutive calls":
(https://github.com/bitcoin/bitcoin/pull/31490#discussion_r1903089183)
That was inconsistent, indeed - [fixed](https://github.com/bitcoin/bitcoin/compare/0dd386994bafd67081c4521673018ddd22e2d63c..2ff0ea366c61b2fcb80ad1f711480915c7a7aa2e)!
(https://github.com/bitcoin/bitcoin/pull/31490#discussion_r1903089183)
That was inconsistent, indeed - [fixed](https://github.com/bitcoin/bitcoin/compare/0dd386994bafd67081c4521673018ddd22e2d63c..2ff0ea366c61b2fcb80ad1f711480915c7a7aa2e)!
💬 sebm123 commented on pull request "optimization: buffer reads(23%)/writes(290%) in [undo]block [de]serialization, 6% faster IBD":
(https://github.com/bitcoin/bitcoin/pull/31539#issuecomment-2571272017)
> An alternative implementation of #31551, where the block is read into memory in chunks, resulting in more modest gains, is slightly more complicated, but uses less memory.
>
> This is a follow-up to #31490 (first few commits duplicated here, hence a draft) and a precursor to #31144.
>
> Currently, obfuscation operations are performed byte-by-byte during serialization. Buffering the reads allows batching these operations (implemented in #31144) and improves file access efficiency by reduc
...
(https://github.com/bitcoin/bitcoin/pull/31539#issuecomment-2571272017)
> An alternative implementation of #31551, where the block is read into memory in chunks, resulting in more modest gains, is slightly more complicated, but uses less memory.
>
> This is a follow-up to #31490 (first few commits duplicated here, hence a draft) and a precursor to #31144.
>
> Currently, obfuscation operations are performed byte-by-byte during serialization. Buffering the reads allows batching these operations (implemented in #31144) and improves file access efficiency by reduc
...
💬 l0rinc commented on pull request "test: cover base32/base58/base64 with symmetric roundtrip fuzz (and padding) tests":
(https://github.com/bitcoin/bitcoin/pull/30746#discussion_r1903091109)
Hah, indeed, proofread all other commit messages:
```bash
git range-diff 836d733a6788c7f7e66da6f8007fb62f15161429..6983d82c84d4ca351a7cd9d1e0e20ab878da6475 ae40cf1a8e16462a8b9dfd076d440bc8ec796c2b..f919d919eb8425ef2bb25aa0ebf61c90ab9b07fa
```
(https://github.com/bitcoin/bitcoin/pull/30746#discussion_r1903091109)
Hah, indeed, proofread all other commit messages:
```bash
git range-diff 836d733a6788c7f7e66da6f8007fb62f15161429..6983d82c84d4ca351a7cd9d1e0e20ab878da6475 ae40cf1a8e16462a8b9dfd076d440bc8ec796c2b..f919d919eb8425ef2bb25aa0ebf61c90ab9b07fa
```
💬 laanwj commented on pull request "refactor: Allow std::byte in (Read/Write)(LE/BE)":
(https://github.com/bitcoin/bitcoin/pull/31524#issuecomment-2571273109)
Post-merge ACK fa83bec78ef3e86445e522afa396c97b58eb1902
(https://github.com/bitcoin/bitcoin/pull/31524#issuecomment-2571273109)
Post-merge ACK fa83bec78ef3e86445e522afa396c97b58eb1902
💬 i-am-yuvi commented on pull request "fuzz: Abort if system time is called without mock time being set":
(https://github.com/bitcoin/bitcoin/pull/31549#issuecomment-2571280097)
> > I am unable to crash the fuzz test when `setmocktime()` is removed from one of the targets.
>
> @i-am-yuvi which target was it?
>
> It could be that running the test from scratch doesn't quickly reach code where `now()` is called. Try running the target on a corpus of inputs:
>
> ```
> FUZZ=load_external_block_file ./mocktimefuzzbuild/src/test/fuzz/fuzz ../qa-assets/fuzz_corpora/load_external_block_file -runs=1
> ```
>
> You can find the corpora here: https://github.com/bitcoin
...
(https://github.com/bitcoin/bitcoin/pull/31549#issuecomment-2571280097)
> > I am unable to crash the fuzz test when `setmocktime()` is removed from one of the targets.
>
> @i-am-yuvi which target was it?
>
> It could be that running the test from scratch doesn't quickly reach code where `now()` is called. Try running the target on a corpus of inputs:
>
> ```
> FUZZ=load_external_block_file ./mocktimefuzzbuild/src/test/fuzz/fuzz ../qa-assets/fuzz_corpora/load_external_block_file -runs=1
> ```
>
> You can find the corpora here: https://github.com/bitcoin
...
💬 i-am-yuvi commented on pull request "fuzz: Abort if system time is called without mock time being set":
(https://github.com/bitcoin/bitcoin/pull/31549#issuecomment-2571280802)
Tested ACK fdc5224d205c69ebcb2d2b7bcd95386ef89181ca on x86_64
- removing `setmocktime ()` from any one of the targets would cause a crash.
(https://github.com/bitcoin/bitcoin/pull/31549#issuecomment-2571280802)
Tested ACK fdc5224d205c69ebcb2d2b7bcd95386ef89181ca on x86_64
- removing `setmocktime ()` from any one of the targets would cause a crash.
💬 Sjors commented on pull request "test: have miner_tests use Mining interface":
(https://github.com/bitcoin/bitcoin/pull/31581#discussion_r1903096882)
That makes sense. Will do if I need to retouch.
(https://github.com/bitcoin/bitcoin/pull/31581#discussion_r1903096882)
That makes sense. Will do if I need to retouch.
💬 Sjors commented on pull request "rpc: add gettarget , target getmininginfo field and show next block info":
(https://github.com/bitcoin/bitcoin/pull/31583#discussion_r1903097152)
Just this embarrassing bash script:
```sh
for i in {0..2015}
do
hash=`build/src/bitcoin-cli -testnet4 getblockhash $i`
block=`build/src/bitcoin-cli -testnet4 getblock $hash 0`
echo $block >> test/functional/data/testnet4.hex
done
```
(https://github.com/bitcoin/bitcoin/pull/31583#discussion_r1903097152)
Just this embarrassing bash script:
```sh
for i in {0..2015}
do
hash=`build/src/bitcoin-cli -testnet4 getblockhash $i`
block=`build/src/bitcoin-cli -testnet4 getblock $hash 0`
echo $block >> test/functional/data/testnet4.hex
done
```
💬 remcoros commented on pull request "rpc: fix mintime field testnet4, expand timewarp attack test":
(https://github.com/bitcoin/bitcoin/pull/31600#issuecomment-2571285614)
ckpool uses curtime: https://bitbucket.org/ckolivas/ckpool/src/bb7b0aebe08ed99d45b8701af2d65bfcdbef0932/src/bitcoin.c#lines-196
public-pool uses mintime: https://github.com/benjamin-wilson/public-pool/blob/master/src/services/stratum-v1-jobs.service.ts#L76
does this mean that currently, public-pool will create an invalid block on testnet4 if in a difficulty-adjustment period and timestamps have moved too far forward?
(https://github.com/bitcoin/bitcoin/pull/31600#issuecomment-2571285614)
ckpool uses curtime: https://bitbucket.org/ckolivas/ckpool/src/bb7b0aebe08ed99d45b8701af2d65bfcdbef0932/src/bitcoin.c#lines-196
public-pool uses mintime: https://github.com/benjamin-wilson/public-pool/blob/master/src/services/stratum-v1-jobs.service.ts#L76
does this mean that currently, public-pool will create an invalid block on testnet4 if in a difficulty-adjustment period and timestamps have moved too far forward?
👍 i-am-yuvi approved a pull request: "Feature: Use different datadirs for different signets"
(https://github.com/bitcoin/bitcoin/pull/29838#pullrequestreview-2530735302)
Tested ACK f1b40b4de460173e927ebe93cdb5f4ad2ac02859
- I tried testing using `./src/bitcoind -signetchallenge=512102ee856c56a5aaadd1656f849bafa4c9dacc86a2878fe546c6189185f842ae2c1851ae`
- All the test(functional) passes!!
(https://github.com/bitcoin/bitcoin/pull/29838#pullrequestreview-2530735302)
Tested ACK f1b40b4de460173e927ebe93cdb5f4ad2ac02859
- I tried testing using `./src/bitcoind -signetchallenge=512102ee856c56a5aaadd1656f849bafa4c9dacc86a2878fe546c6189185f842ae2c1851ae`
- All the test(functional) passes!!
👍 i-am-yuvi approved a pull request: "fuzz: Abort if system time is called without mock time being set"
(https://github.com/bitcoin/bitcoin/pull/31549#pullrequestreview-2530735643)
Tested ACK fdc5224d205c69ebcb2d2b7bcd95386ef89181ca on x86_64
- removing `setmocktime ()` from any one of the targets would cause a crash.
- Not testes on macos
(https://github.com/bitcoin/bitcoin/pull/31549#pullrequestreview-2530735643)
Tested ACK fdc5224d205c69ebcb2d2b7bcd95386ef89181ca on x86_64
- removing `setmocktime ()` from any one of the targets would cause a crash.
- Not testes on macos
💬 Sjors commented on pull request "rpc: add gettarget , target getmininginfo field and show next block info":
(https://github.com/bitcoin/bitcoin/pull/31583#issuecomment-2571308883)
Small changes:
* dropped testnet4 genesis block
* explained in the test how to generate / verify testnet4.hex
* added `bits` and `target` to `getblockchaininfo` and `getchainstates` (didn't realise @tdb3 had already implemented it)
(https://github.com/bitcoin/bitcoin/pull/31583#issuecomment-2571308883)
Small changes:
* dropped testnet4 genesis block
* explained in the test how to generate / verify testnet4.hex
* added `bits` and `target` to `getblockchaininfo` and `getchainstates` (didn't realise @tdb3 had already implemented it)
💬 Sjors commented on pull request "rpc: fix mintime field testnet4, expand timewarp attack test":
(https://github.com/bitcoin/bitcoin/pull/31600#issuecomment-2571310453)
@remcoros a testnet4 pool that uses `min_time` could produce an invalid block each first block of the retarget period, since that's the only time when `mintime` can be wrong.
At first glance, it seems that might happen with `public-pool`. The easiest workaround would be to use `curtime` for now.
(https://github.com/bitcoin/bitcoin/pull/31600#issuecomment-2571310453)
@remcoros a testnet4 pool that uses `min_time` could produce an invalid block each first block of the retarget period, since that's the only time when `mintime` can be wrong.
At first glance, it seems that might happen with `public-pool`. The easiest workaround would be to use `curtime` for now.