💬 kevkevinpal commented on pull request "test: add validation for gettxout RPC response":
(https://github.com/bitcoin/bitcoin/pull/30226#discussion_r1639093666)
This logs seems a bit vague, a more descriptive log would be useful
(https://github.com/bitcoin/bitcoin/pull/30226#discussion_r1639093666)
This logs seems a bit vague, a more descriptive log would be useful
👍 tdb3 approved a pull request: "test: Added test coverage to listsinceblock rpc"
(https://github.com/bitcoin/bitcoin/pull/30195#pullrequestreview-2117257663)
re ACK 9bf646c4190e55a13bf3a89d1705763c7a833a06
(https://github.com/bitcoin/bitcoin/pull/30195#pullrequestreview-2117257663)
re ACK 9bf646c4190e55a13bf3a89d1705763c7a833a06
💬 tdb3 commented on pull request "test: Added test coverage to listsinceblock rpc":
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639100512)
nit: could also add an assert (or combine into the one above) to check that `blk_dat_move.exists()`.
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639100512)
nit: could also add an assert (or combine into the one above) to check that `blk_dat_move.exists()`.
💬 BenWestgate commented on issue "Comply with the XDG Base Directory Specification":
(https://github.com/bitcoin/bitcoin/issues/16733#issuecomment-2167051486)
> I don't think anything in the datadir qualifies as "cache", so at most we could split it up between `XDG_CONFIG_HOME` and `XDG_DATA_HOME`.
This is a great place to start because Bitcoin-Qt already uses `$XDG_CONFIG_HOME/{Bitcoin/Bitcoin-Qt.conf,autostart/bitcoin.desktop}`.
> I see `db.log`, `debug.log`, ...
These go in `$XDG_STATE_HOME`.
>The $XDG_STATE_HOME contains state data that should persist between (application) restarts, but that is not important or portable enough to the u
...
(https://github.com/bitcoin/bitcoin/issues/16733#issuecomment-2167051486)
> I don't think anything in the datadir qualifies as "cache", so at most we could split it up between `XDG_CONFIG_HOME` and `XDG_DATA_HOME`.
This is a great place to start because Bitcoin-Qt already uses `$XDG_CONFIG_HOME/{Bitcoin/Bitcoin-Qt.conf,autostart/bitcoin.desktop}`.
> I see `db.log`, `debug.log`, ...
These go in `$XDG_STATE_HOME`.
>The $XDG_STATE_HOME contains state data that should persist between (application) restarts, but that is not important or portable enough to the u
...
📝 sipa opened a pull request: "Low-level cluster linearization code: merging & postprocessing"
(https://github.com/bitcoin/bitcoin/pull/30285)
Depends on #30126. #28676 will build on this PR.
This adds the algorithms for merging & postprocessing linearizations.
The `PostLinearize(depgraph, linearization)` function performs an in-place improvement of `linearization`, using two iterations of the [Linearization post-processing](https://delvingbitcoin.org/t/linearization-post-processing-o-n-2-fancy-chunking/201/8) algorithm. The first running from back to front, the second from front to back.
The `MergeLinearizations(depgraph, lin
...
(https://github.com/bitcoin/bitcoin/pull/30285)
Depends on #30126. #28676 will build on this PR.
This adds the algorithms for merging & postprocessing linearizations.
The `PostLinearize(depgraph, linearization)` function performs an in-place improvement of `linearization`, using two iterations of the [Linearization post-processing](https://delvingbitcoin.org/t/linearization-post-processing-o-n-2-fancy-chunking/201/8) algorithm. The first running from back to front, the second from front to back.
The `MergeLinearizations(depgraph, lin
...
📝 sipa opened a pull request: "Low-level cluster linearization code: optimizations"
(https://github.com/bitcoin/bitcoin/pull/30286)
Depends on #30126.
This improves the candidate search algorithm introduced in the previous PR with a variety of optimizations.
The resulting search algorithm largely follows Section 2 of [How to linearize your cluster](https://delvingbitcoin.org/t/how-to-linearize-your-cluster/303#h-2-finding-high-feerate-subsets-5), though with a few changes:
* Connected component analysis is performed inside the search algorithm (creating initial work items per component for each candidate), rather than
...
(https://github.com/bitcoin/bitcoin/pull/30286)
Depends on #30126.
This improves the candidate search algorithm introduced in the previous PR with a variety of optimizations.
The resulting search algorithm largely follows Section 2 of [How to linearize your cluster](https://delvingbitcoin.org/t/how-to-linearize-your-cluster/303#h-2-finding-high-feerate-subsets-5), though with a few changes:
* Connected component analysis is performed inside the search algorithm (creating initial work items per component for each candidate), rather than
...
💬 maflcko commented on pull request "test: Added test coverage to listsinceblock rpc":
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639367894)
> (Could even `blk_dat_moved.rename(blk_dat.name)` to avoid repeating the literal `"blk00000.dat"` but meh)
No, this is wrong. https://docs.python.org/3/library/pathlib.html#pathlib.Path.rename says "The target path may be absolute or relative. Relative paths are interpreted relative to the current working directory, not the directory of the Path object."
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639367894)
> (Could even `blk_dat_moved.rename(blk_dat.name)` to avoid repeating the literal `"blk00000.dat"` but meh)
No, this is wrong. https://docs.python.org/3/library/pathlib.html#pathlib.Path.rename says "The target path may be absolute or relative. Relative paths are interpreted relative to the current working directory, not the directory of the Path object."
💬 maflcko commented on pull request "test: Added test coverage to listsinceblock rpc":
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639372179)
I am not sure about adding the assertions that the src file exists. `os.rename` already does the assertion internally (and pathlib.Path.rename calls os.rename internally as well).
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639372179)
I am not sure about adding the assertions that the src file exists. `os.rename` already does the assertion internally (and pathlib.Path.rename calls os.rename internally as well).
🚀 fanquake merged a pull request: "test: cover more errors for `signrawtransactionwithkey` RPC"
(https://github.com/bitcoin/bitcoin/pull/30278)
(https://github.com/bitcoin/bitcoin/pull/30278)
📝 fanquake opened a pull request: "macOS: rewrite some docs & swap `mmacosx-version-min` for `mmacos-version-min`"
(https://github.com/bitcoin/bitcoin/pull/30287)
Whilst `-mmacosx-version-min` and `-mmacos-version-min` remain aliases for each other, the later is preferred,
and I assume the former will be removed at some point in the future; see: https://github.com/llvm/llvm-project/pull/95374.
Somewhat of a followup to #21778. Rewrite some of the mac deploy docs.
(https://github.com/bitcoin/bitcoin/pull/30287)
Whilst `-mmacosx-version-min` and `-mmacos-version-min` remain aliases for each other, the later is preferred,
and I assume the former will be removed at some point in the future; see: https://github.com/llvm/llvm-project/pull/95374.
Somewhat of a followup to #21778. Rewrite some of the mac deploy docs.
👍 theuni approved a pull request: "macOS: rewrite some docs & swap `mmacosx-version-min` for `mmacos-version-min`"
(https://github.com/bitcoin/bitcoin/pull/30287#pullrequestreview-2117992968)
utACK 7c298fe0df38696f60e981469422315c03a722da
(https://github.com/bitcoin/bitcoin/pull/30287#pullrequestreview-2117992968)
utACK 7c298fe0df38696f60e981469422315c03a722da
🚀 fanquake merged a pull request: "doc: archive release notes for v27.1"
(https://github.com/bitcoin/bitcoin/pull/30276)
(https://github.com/bitcoin/bitcoin/pull/30276)
👍 TheCharlatan approved a pull request: "macOS: rewrite some docs & swap `mmacosx-version-min` for `mmacos-version-min`"
(https://github.com/bitcoin/bitcoin/pull/30287#pullrequestreview-2118047846)
ACK 7c298fe0df38696f60e981469422315c03a722da
(https://github.com/bitcoin/bitcoin/pull/30287#pullrequestreview-2118047846)
ACK 7c298fe0df38696f60e981469422315c03a722da
🚀 fanquake merged a pull request: "Update leveldb subtree to latest upstream"
(https://github.com/bitcoin/bitcoin/pull/30281)
(https://github.com/bitcoin/bitcoin/pull/30281)
🤔 vasild reviewed a pull request: "net: Allow -proxy=[::1] on nodes with IPV6 lo only"
(https://github.com/bitcoin/bitcoin/pull/30245#pullrequestreview-2117955181)
Concept ACK on allowing usage of `[::1]` on nodes with IPv6 lo only.
A workaround is to use `-dns` (which will avoid `AI_ADDRCONFIG` but will make it impossible to use hostnames).
I can reproduce the problem on Linux. FreeBSD treats the loopback address as valid, so this problem is non-existent on FreeBSD.
I think there is a merit in this for our use cases of `getaddrinfo()` / `Lookup*()`:
> IPv4 addresses are returned in the list pointed to by res only if the local system has at
...
(https://github.com/bitcoin/bitcoin/pull/30245#pullrequestreview-2117955181)
Concept ACK on allowing usage of `[::1]` on nodes with IPv6 lo only.
A workaround is to use `-dns` (which will avoid `AI_ADDRCONFIG` but will make it impossible to use hostnames).
I can reproduce the problem on Linux. FreeBSD treats the loopback address as valid, so this problem is non-existent on FreeBSD.
I think there is a merit in this for our use cases of `getaddrinfo()` / `Lookup*()`:
> IPv4 addresses are returned in the list pointed to by res only if the local system has at
...
💬 vasild commented on pull request "net: Allow -proxy=[::1] on nodes with IPV6 lo only":
(https://github.com/bitcoin/bitcoin/pull/30245#discussion_r1639560684)
There is a comment above which has to be removed if this patch makes it as it is:
```
// If we allow lookups of hostnames, use the AI_ADDRCONFIG flag to only
// return addresses whose family we have an address configured for.
```
(https://github.com/bitcoin/bitcoin/pull/30245#discussion_r1639560684)
There is a comment above which has to be removed if this patch makes it as it is:
```
// If we allow lookups of hostnames, use the AI_ADDRCONFIG flag to only
// return addresses whose family we have an address configured for.
```
💬 tdb3 commented on pull request "test: Added test coverage to listsinceblock rpc":
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639697112)
Then it sounds like it would be overkill. If something went wrong then rename would throw and the test would fail.
(https://github.com/bitcoin/bitcoin/pull/30195#discussion_r1639697112)
Then it sounds like it would be overkill. If something went wrong then rename would throw and the test would fail.
💬 marcofleon commented on pull request "fuzz: FuzzedSock::Recv() don't lose bytes from MSG_PEEK read":
(https://github.com/bitcoin/bitcoin/pull/30273#discussion_r1639721875)
Why would `m_peek_data` be guaranteed to be empty here? I've tested this with the I2P harness and this assert fails. The `m_peek_data` doesn't get erased, so there's still some random bytes from the previous `Recv` call. The length of the copied data is just whatever was left, which isn't to equal to `len`.
(https://github.com/bitcoin/bitcoin/pull/30273#discussion_r1639721875)
Why would `m_peek_data` be guaranteed to be empty here? I've tested this with the I2P harness and this assert fails. The `m_peek_data` doesn't get erased, so there's still some random bytes from the previous `Recv` call. The length of the copied data is just whatever was left, which isn't to equal to `len`.
💬 vasild commented on pull request "netbase: extend CreateSock() to support creating arbitrary sockets":
(https://github.com/bitcoin/bitcoin/pull/30202#issuecomment-2167914300)
`5f549c35d9...1245d1388b`: rebase due to (silent) merge conflict
(https://github.com/bitcoin/bitcoin/pull/30202#issuecomment-2167914300)
`5f549c35d9...1245d1388b`: rebase due to (silent) merge conflict
💬 fanquake commented on pull request "macOS: rewrite some docs & swap `mmacosx-version-min` for `mmacos-version-min`":
(https://github.com/bitcoin/bitcoin/pull/30287#issuecomment-2167932945)
Guix Build (aarch64):
```bash
df01ba57dd26dc4ef6c88a9d3538b92d7edfe96edca021b8fc16bb2f146ce438 guix-build-7c298fe0df38/output/aarch64-linux-gnu/SHA256SUMS.part
c19ce42ffe95497f7e4383dd2009413f45bc02e602adf33361eab40ffe1c98ce guix-build-7c298fe0df38/output/aarch64-linux-gnu/bitcoin-7c298fe0df38-aarch64-linux-gnu-debug.tar.gz
73eb0d6887cc9b67a207c486f76a001b38d22d2ffee93f398dd6b01dbf18208f guix-build-7c298fe0df38/output/aarch64-linux-gnu/bitcoin-7c298fe0df38-aarch64-linux-gnu.tar.gz
f1ed10
...
(https://github.com/bitcoin/bitcoin/pull/30287#issuecomment-2167932945)
Guix Build (aarch64):
```bash
df01ba57dd26dc4ef6c88a9d3538b92d7edfe96edca021b8fc16bb2f146ce438 guix-build-7c298fe0df38/output/aarch64-linux-gnu/SHA256SUMS.part
c19ce42ffe95497f7e4383dd2009413f45bc02e602adf33361eab40ffe1c98ce guix-build-7c298fe0df38/output/aarch64-linux-gnu/bitcoin-7c298fe0df38-aarch64-linux-gnu-debug.tar.gz
73eb0d6887cc9b67a207c486f76a001b38d22d2ffee93f398dd6b01dbf18208f guix-build-7c298fe0df38/output/aarch64-linux-gnu/bitcoin-7c298fe0df38-aarch64-linux-gnu.tar.gz
f1ed10
...