💬 maflcko commented on issue "Use C++20 consteval to verify translation strings":
(https://github.com/bitcoin/bitcoin/issues/30379#issuecomment-2205761015)
```diff
diff --git a/src/util/translation.h b/src/util/translation.h
index d33fd2d0a0..7d82264a43 100644
--- a/src/util/translation.h
+++ b/src/util/translation.h
@@ -71,7 +71,7 @@ const extern std::function<std::string(const char*)> G_TRANSLATION_FUN;
* Translation function.
* If no translation function is set, simply return the input.
*/
-inline bilingual_str _(const char* psz)
+inline consteval bilingual_str _(const char* psz)
{
return bilingual_str{psz, G_TRANSLATION_
...
(https://github.com/bitcoin/bitcoin/issues/30379#issuecomment-2205761015)
```diff
diff --git a/src/util/translation.h b/src/util/translation.h
index d33fd2d0a0..7d82264a43 100644
--- a/src/util/translation.h
+++ b/src/util/translation.h
@@ -71,7 +71,7 @@ const extern std::function<std::string(const char*)> G_TRANSLATION_FUN;
* Translation function.
* If no translation function is set, simply return the input.
*/
-inline bilingual_str _(const char* psz)
+inline consteval bilingual_str _(const char* psz)
{
return bilingual_str{psz, G_TRANSLATION_
...
🚀 fanquake merged a pull request: "lint: Ignore files ignored by git in the Markdown Link Checker"
(https://github.com/bitcoin/bitcoin/pull/30380)
(https://github.com/bitcoin/bitcoin/pull/30380)
✅ maflcko closed an issue: "Use C++20 consteval to verify translation strings"
(https://github.com/bitcoin/bitcoin/issues/30379)
(https://github.com/bitcoin/bitcoin/issues/30379)
💬 maflcko commented on issue "Use C++20 consteval to verify translation strings":
(https://github.com/bitcoin/bitcoin/issues/30379#issuecomment-2205773613)
nvm, I'll open a pull request soon.
(https://github.com/bitcoin/bitcoin/issues/30379#issuecomment-2205773613)
nvm, I'll open a pull request soon.
⚠️ dg123lzk opened an issue: "I want to set up a node quickly, do you have a snapshot?"
(https://github.com/bitcoin/bitcoin/issues/30382)
I want to set up a node quickly, do you have a snapshot?
(https://github.com/bitcoin/bitcoin/issues/30382)
I want to set up a node quickly, do you have a snapshot?
✅ willcl-ark closed an issue: "I want to set up a node quickly, do you have a snapshot?"
(https://github.com/bitcoin/bitcoin/issues/30382)
(https://github.com/bitcoin/bitcoin/issues/30382)
💬 willcl-ark commented on issue "I want to set up a node quickly, do you have a snapshot?":
(https://github.com/bitcoin/bitcoin/issues/30382#issuecomment-2205785013)
Hi @dg123lzk
General bitcoin questions and/or support requests are best directed to the [Bitcoin StackExchange](https://bitcoin.stackexchange.com/) or the `#bitcoin` IRC channel on the [Libera Chat](https://libera.chat/) network.
For proposed protocol changes you can post to the [bitcoindev mailing list](https://groups.google.com/g/bitcoindev) or the [Delving Bitcoin](https://delvingbitcoin.org/) Discorse forum.
For general bitcoin discussion you can try [bitcointalk](bitcointalk.org)
...
(https://github.com/bitcoin/bitcoin/issues/30382#issuecomment-2205785013)
Hi @dg123lzk
General bitcoin questions and/or support requests are best directed to the [Bitcoin StackExchange](https://bitcoin.stackexchange.com/) or the `#bitcoin` IRC channel on the [Libera Chat](https://libera.chat/) network.
For proposed protocol changes you can post to the [bitcoindev mailing list](https://groups.google.com/g/bitcoindev) or the [Delving Bitcoin](https://delvingbitcoin.org/) Discorse forum.
For general bitcoin discussion you can try [bitcointalk](bitcointalk.org)
...
👍 fanquake approved a pull request: "26.2 final changes"
(https://github.com/bitcoin/bitcoin/pull/30376#pullrequestreview-2156124267)
ACK eef5dbc21b3fd52069f2f0855fb76a13234ebbf3 If you want, you could also backport the changes to get the ASAN job running again, but that isn't blocking here.
(https://github.com/bitcoin/bitcoin/pull/30376#pullrequestreview-2156124267)
ACK eef5dbc21b3fd52069f2f0855fb76a13234ebbf3 If you want, you could also backport the changes to get the ASAN job running again, but that isn't blocking here.
💬 hebasto commented on pull request "build: Bump clang minimum supported version to 16":
(https://github.com/bitcoin/bitcoin/pull/30263#discussion_r1663999366)
It did not mean any changes to the current branch :)
It was just a note (mostly for myself).
(https://github.com/bitcoin/bitcoin/pull/30263#discussion_r1663999366)
It did not mean any changes to the current branch :)
It was just a note (mostly for myself).
💬 willcl-ark commented on issue "Memory leak loading legacy wallet (BDB 4.8.30)":
(https://github.com/bitcoin/bitcoin/issues/27283#issuecomment-2205804346)
Can we close this and https://github.com/bitcoin/bitcoin/issues/19034 as "unplanned"?
In theory v28.0 will (hopefully) be the final version we will read BDB wallets at all, and we now have our own [BDB parser](https://github.com/bitcoin/bitcoin/pull/26606), and will (soon) be able to [migrate without BDB](https://github.com/bitcoin/bitcoin/pull/26596).
I don't see these issues ever being fixed, and therefore they are not useful to keep open IMO...
(https://github.com/bitcoin/bitcoin/issues/27283#issuecomment-2205804346)
Can we close this and https://github.com/bitcoin/bitcoin/issues/19034 as "unplanned"?
In theory v28.0 will (hopefully) be the final version we will read BDB wallets at all, and we now have our own [BDB parser](https://github.com/bitcoin/bitcoin/pull/26606), and will (soon) be able to [migrate without BDB](https://github.com/bitcoin/bitcoin/pull/26596).
I don't see these issues ever being fixed, and therefore they are not useful to keep open IMO...
💬 ryanofsky commented on pull request "rename TransactionErrors: MISSING_INPUTS and ALREADY_IN_CHAIN":
(https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1664002278)
In commit "refactor: PSBTError::MISSING_INPUTS" (a05f4ca241045e8a4b295760590805f961c2e5e7)
I wonder if "invalid transaction inputs" might be a clearer message for a user than "invalid inputs." (I had suggested "invalid inputs" but in this context it seems vague.)
(https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1664002278)
In commit "refactor: PSBTError::MISSING_INPUTS" (a05f4ca241045e8a4b295760590805f961c2e5e7)
I wonder if "invalid transaction inputs" might be a clearer message for a user than "invalid inputs." (I had suggested "invalid inputs" but in this context it seems vague.)
👍 ryanofsky approved a pull request: "rename TransactionErrors: MISSING_INPUTS and ALREADY_IN_CHAIN"
(https://github.com/bitcoin/bitcoin/pull/30212#pullrequestreview-2156118365)
Agree on not calling the commits which change error messages refactoring. I do like first commit making error constant more consistent with error message, but agree it is not essential.
(https://github.com/bitcoin/bitcoin/pull/30212#pullrequestreview-2156118365)
Agree on not calling the commits which change error messages refactoring. I do like first commit making error constant more consistent with error message, but agree it is not essential.
💬 ryanofsky commented on pull request "rename TransactionErrors: MISSING_INPUTS and ALREADY_IN_CHAIN":
(https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1663994169)
re: https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1663945296
Good catch. It is inconsistent to have added backwards compatible aliases previously when renaming and not add them now when renaming again. But it looks like the backwards compatibility section was added in 2014 when it was might have less clear whether aliases were needed. I'd say now aliases are probably not needed and it would be better to remove this section.
(https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1663994169)
re: https://github.com/bitcoin/bitcoin/pull/30212#discussion_r1663945296
Good catch. It is inconsistent to have added backwards compatible aliases previously when renaming and not add them now when renaming again. But it looks like the backwards compatibility section was added in 2014 when it was might have less clear whether aliases were needed. I'd say now aliases are probably not needed and it would be better to remove this section.
📝 maflcko opened a pull request: "util: Catch translation string errors at compile time"
(https://github.com/bitcoin/bitcoin/pull/30383)
The translation helper function `_()` has many problems. For example, the following compiles:
```cpp
auto ptr{"wrong"};
_(ptr);
_(nullptr);
_(0);
_(NULL);
```
However, it is wrong, because none of the arguments passed to the function can be picked up by the translation tooling for transifex.
Fix all issues by enforcing only real string literals can be passed to the function.
(https://github.com/bitcoin/bitcoin/pull/30383)
The translation helper function `_()` has many problems. For example, the following compiles:
```cpp
auto ptr{"wrong"};
_(ptr);
_(nullptr);
_(0);
_(NULL);
```
However, it is wrong, because none of the arguments passed to the function can be picked up by the translation tooling for transifex.
Fix all issues by enforcing only real string literals can be passed to the function.
💬 maflcko commented on pull request "util: Catch translation string errors at compile time":
(https://github.com/bitcoin/bitcoin/pull/30383#issuecomment-2205818693)
Can be tested by looking at the CI failure, which should pop up soon, or by manually inserting the C++ code from the pull request description.
(https://github.com/bitcoin/bitcoin/pull/30383#issuecomment-2205818693)
Can be tested by looking at the CI failure, which should pop up soon, or by manually inserting the C++ code from the pull request description.
💬 maflcko commented on pull request "assumeutxo: Check snapshot base block is not in invalid chain":
(https://github.com/bitcoin/bitcoin/pull/30267#discussion_r1664014943)
> I guess it could make sense to mark `_(const char*)` as `consteval` to catch those issues at compile time?
Done in https://github.com/bitcoin/bitcoin/pull/30383
(https://github.com/bitcoin/bitcoin/pull/30267#discussion_r1664014943)
> I guess it could make sense to mark `_(const char*)` as `consteval` to catch those issues at compile time?
Done in https://github.com/bitcoin/bitcoin/pull/30383
🤔 glozow reviewed a pull request: "chainparams: Change nChainTx type to uint64_t"
(https://github.com/bitcoin/bitcoin/pull/29656#pullrequestreview-2156159675)
concept ACK
(https://github.com/bitcoin/bitcoin/pull/29656#pullrequestreview-2156159675)
concept ACK
💬 glozow commented on pull request "chainparams: Change nChainTx type to uint64_t":
(https://github.com/bitcoin/bitcoin/pull/29656#discussion_r1664016248)
64d35be20c43f764e5c22657085a790d0adcfe22 should remove this todo comment
(https://github.com/bitcoin/bitcoin/pull/29656#discussion_r1664016248)
64d35be20c43f764e5c22657085a790d0adcfe22 should remove this todo comment
💬 fanquake commented on pull request "util: Catch translation string errors at compile time":
(https://github.com/bitcoin/bitcoin/pull/30383#issuecomment-2205828992)
```bash
CXX test/fuzz/fuzz-string.o
CXX libbitcoin_node_a-validation.o
test/fuzz/string.cpp:104:13: error: call to consteval function 'ConstevalStringLiteral::ConstevalStringLiteral' is not a constant expression
(void)_(random_string_1.c_str());
1 error generated.
validation.cpp:5750:30: error: call to consteval function 'ConstevalStringLiteral::ConstevalStringLiteral' is not a constant expression
return util::Error{_(reason)};
^
...
(https://github.com/bitcoin/bitcoin/pull/30383#issuecomment-2205828992)
```bash
CXX test/fuzz/fuzz-string.o
CXX libbitcoin_node_a-validation.o
test/fuzz/string.cpp:104:13: error: call to consteval function 'ConstevalStringLiteral::ConstevalStringLiteral' is not a constant expression
(void)_(random_string_1.c_str());
1 error generated.
validation.cpp:5750:30: error: call to consteval function 'ConstevalStringLiteral::ConstevalStringLiteral' is not a constant expression
return util::Error{_(reason)};
^
...
💬 laanwj commented on pull request "net: Replace libnatpmp with built-in PCP+NATPMP implementation":
(https://github.com/bitcoin/bitcoin/pull/30043#discussion_r1664020423)
i don't think that's the case in practice? but even so, doing this differently would really complicate things too much, changes in network configuration would be noticed the next update interval anyway?
(https://github.com/bitcoin/bitcoin/pull/30043#discussion_r1664020423)
i don't think that's the case in practice? but even so, doing this differently would really complicate things too much, changes in network configuration would be noticed the next update interval anyway?