aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-11Merge bitcoin/bitcoin#24241: doc: cleanup doc on need of Developer Account ↵fanquake
to obtain macOS SDK ddcac22f092de6f3a2a67acb3288a990fd13cb01 doc: cleanup doc on need of Developer Account to obtain macOS SDK (jarolrod) Pull request description: The explicit statement that an Apple Developer Account is required in order to obtain the SDK is buried within the `Deterministic macOS DMG Notes` section. It should be the first thing mentioned under the `SDK Extraction` section. The reason to do this is to set expectations of what is required before starting any steps or clicking on links. This fixes the issue by doing just that; moving this information to the `SDK Extraction` section. Now that the information is moved, this also deletes unnecessary SDK related notes from the `Deterministic macOS DMG Notes` section. It is not necessary to explain under what sub-directory 'most' of the important files are inside of the `Xcode.app`. Note that this also fixes a missed Xcode version link bump by deleting it :) ACKs for top commit: fanquake: ACK ddcac22f092de6f3a2a67acb3288a990fd13cb01 Tree-SHA512: 9fe7fddd66b68a0475be8b0c78cb58932bf5b68d962ece36a86f3b743a88d8561c0ec3e8d88bcaf338da7ab9d3dfcfb9399f6e1a884d83c8f3117c186d049469
2022-02-10doc: cleanup doc on need of Developer Account to obtain macOS SDKjarolrod
The explicit statement that an Apple Developer Account is required in order to obtain the SDK is buried within the "Deterministic macOS DMG Notes" section. It should be the first thing mentioned under the "SDK Extraction" section. The reason to do this is to set expectations of what is required before starting any steps or clicking on links. This fixes the issue by doing just that; moving this information to the "SDK Extraction" section. Now that the information is moved, this also deletes unnecessary SDK related notes from the "Deterministic macOS DMG Notes" section. It is not necessary to explain under what sub-directory 'most' of the important files are inside of the 'Xcode.app'.
2022-02-10Merge bitcoin/bitcoin#24238: random: use arc4random on OpenBSDlaanwj
0c49e52b22be1baa8d51670e4f3c437fd3c0baa7 build: remove unneeded getentropy detection (HAVE_GETENTROPY) (Sebastian Falbesoner) 5cd15ffdceace3a077d4719ef7c1704336d602e1 random: use arc4random on OpenBSD (Sebastian Falbesoner) Pull request description: Inspired by a discussion on obtaining randomness on various OSes in a secp256k1 PR (https://github.com/bitcoin-core/secp256k1/pull/748#discussion_r524605472, see also https://bitcoincore.reviews/libsecp256k1-748), I think it makes sense to follow best practices and use `arc4random_buf` rather than `getentropy` on OpenBSD in our random module. The [getentropy(2) man page](https://man.openbsd.org/getentropy.2) states: ``` getentropy() is not intended for regular code; please use the arc4random(3) family of functions instead. ``` The [arc4random(3) man page](https://man.openbsd.org/arc4random.3) states: ``` Use of these functions is encouraged for almost all random number consumption because the other interfaces are deficient in either quality, portability, standardization, or availability. ``` On the linked PR discussion worries about using RC4 internally has been expressed (see https://security.stackexchange.com/questions/85601/is-arc4random-secure-enough/172905#172905), but this would only affect users of OpenBSD <5.5, using a version that was released more than 8 years ago. ACKs for top commit: laanwj: Tested ACK 0c49e52b22be1baa8d51670e4f3c437fd3c0baa7 Tree-SHA512: b5ed3d0718962c5a3839db9a28f93d08a0ac93094cc664f83bc4cf1cfad25049e6240b7b81fe06b71e6a3a0ca24a2c337eab088abec5470ad014e10c04fdb216
2022-02-10Merge bitcoin/bitcoin#24297: Fix unintended unsigned integer overflow in ↵fanquake
strencodings fac9fe5d051264fcd16e8e36d30f28c05c999837 Fix unintended unsigned integer overflow in strencodings (MarcoFalke) Pull request description: This fixes two issues for strings that start with a colon and only have one colon: * `fMultiColon` is incorrectly set to `true` * There is an unsigned integer overflow `colon - 1` (`0 - 1`) Neither issue matters, as the result is discarded. Though, it makes sense to still fix the issue for clarity and to avoid sanitizer issues in the function. ACKs for top commit: laanwj: Code review ACK fac9fe5d051264fcd16e8e36d30f28c05c999837 shaavan: Code Review ACK fac9fe5d051264fcd16e8e36d30f28c05c999837 Tree-SHA512: e71c21a0b617abf241e561ce6b90b963e2d5e2f77bd9547ce47209a1a94b454384391f86ef5d35fedd4f4df19add3896bb3d61fed396ebba8e864e3eeb75ed59
2022-02-10Merge bitcoin/bitcoin#24302: test: Remove unused integer sanitizer suppressionsfanquake
fa2807ef19307e42676928ebbec6e43d7235e2d8 test: Remove unused integer sanitizer suppressions (MarcoFalke) Pull request description: Looks like they are not needed anymore. Maybe due to commit 7de2cf9b258590ffefd724abe0d4458f282b95c3 ? ACKs for top commit: fanquake: ACK fa2807ef19307e42676928ebbec6e43d7235e2d8 Tree-SHA512: 300aa47bd2cf6d44ad0d1d78889afeeb9ed0d7080f330e912db4c295dd13c43aaccdfbd4d7251006d2c0b848af6fb0d52104142ff528564edac8af49318f9f50
2022-02-10Merge bitcoin/bitcoin#24298: fuzz: Avoid unsigned integer overflow in ↵fanquake
FormatParagraph fa2f7d005932bff9b7d27744ae517b9e7910df8d fuzz: Avoid unsigned integer overflow in FormatParagraph (MarcoFalke) Pull request description: `FormatParagraph` is only ever called with compile time constant arguments, so I don't see the need for fuzzing it. Though, keep it for now, but avoid the unsigned integer overflow with this patch. ACKs for top commit: laanwj: Code review ACK fa2f7d005932bff9b7d27744ae517b9e7910df8d Tree-SHA512: 01fc64a9ef73c183921ca1b0cd8db9514c0a242e3acf215a3393f383ae129e01625ebb16eaf9cb86370eda62d0145c3dcf8f62e40edf5958abc1f777c5687280
2022-02-09Merge bitcoin/bitcoin#24265: Drop StripRedundantLastElementsOfPath() functionfanquake
ebda2b8c819d989327c6b3e29237dfb43628e647 util: Drop no longer needed StripRedundantLastElementsOfPath() function (Hennadii Stepanov) ecd094e2b1e1eb7dba24dafef3640a9b6cc55f82 Use ArgsManager::GetPathArg() for "-walletdir" option (Hennadii Stepanov) 06fed4c21ec64cd224231d15cbbeb985b8fba5f2 Use ArgsManager::GetPathArg() for "-blocksdir" option (Hennadii Stepanov) 15b632bf169f6272ca90faba8d8036e3e822542f Use ArgsManager::GetPathArg() for "-datadir" option (Hennadii Stepanov) 540ca5111f7dc91a9808e41ccb4446d8dc0a1bec util: Add ArgsManager::GetPathArg() function (Hennadii Stepanov) Pull request description: [Switching](https://github.com/bitcoin/bitcoin/pull/20744) to `std::filesystems` makes possible to leverage [`std::filesystem::path::lexically_normal`](https://en.cppreference.com/w/cpp/filesystem/path/lexically_normal) and get rid of ugly `StripRedundantLastElementsOfPath()` crutch. To make its usage simple and error-proof, a new `ArgsManager::GetPathArg()` member function introduced which guarantees to return a normalized with no trailing slashes paths provided via `-datadir`, `-blocksdir` or `-walletdir` command-line arguments or configure options. ACKs for top commit: ryanofsky: Code review ACK ebda2b8c819d989327c6b3e29237dfb43628e647. Only change since last review is rebase which simplified the last commit Tree-SHA512: ed86959b6038b7152b5a1d473478667b72caab1716cc9149e1a75833d50511f22157e4e5e55a9465d1fa76b90bce5e5286f4e4f0d1ae65ebd9c012fae19d835f
2022-02-09test: Remove unused integer sanitizer suppressionsMarcoFalke
2022-02-09util: Drop no longer needed StripRedundantLastElementsOfPath() functionHennadii Stepanov
2022-02-09Use ArgsManager::GetPathArg() for "-walletdir" optionHennadii Stepanov
2022-02-09Use ArgsManager::GetPathArg() for "-blocksdir" optionHennadii Stepanov
2022-02-09Use ArgsManager::GetPathArg() for "-datadir" optionHennadii Stepanov
2022-02-09util: Add ArgsManager::GetPathArg() functionHennadii Stepanov
Co-authored-by: Ryan Ofsky <ryan@ofsky.org>
2022-02-09Merge bitcoin/bitcoin#24253: Remove broken and unused CDataStream methodslaanwj
fa1b227a727a5056c6fbc7e4f33c19aeb5207718 Remove broken and unused CDataStream methods (MarcoFalke) faee5f8dc23cd2fcfb6ad62a1d46ad3020ef0c5c test: Create fresh CDataStream each time (MarcoFalke) fa71114926490e84c9222d315a95684d250e8e34 test: Inline expected_xor (MarcoFalke) Pull request description: The `insert` and `erase` methods have many issues: * They are unused * They are confusing and hard to read, as they implement "special cases" for optimization, that isn't needed * They are broken (See https://github.com/bitcoin/bitcoin/pull/24231) * Fixing them leads to mingw compile errors (See https://github.com/bitcoin/bitcoin/pull/24231#issuecomment-1029286985) Fix all issues by removing them ACKs for top commit: laanwj: Code review ACK fa1b227a727a5056c6fbc7e4f33c19aeb5207718 Tree-SHA512: 9d9e5d42e6ffc5ae82bdb67cfb5b50b45977ae674acee6ff99092560aebf2fc7e4584ded614e190db0663226fa198e34350517cd7ee57d518de22e9568bc349a
2022-02-09fuzz: Avoid unsigned integer overflow in FormatParagraphMarcoFalke
2022-02-09Fix unintended unsigned integer overflow in strencodingsMarcoFalke
2022-02-09Merge bitcoin/bitcoin#24288: build, refactor: Drop redundant ↵fanquake
`$(package)_download_file` assignments d644c45e39c45118df86692f9365d25dbba49461 build, refactor: Drop redundant `$(package)_download_file` assignments (Hennadii Stepanov) Pull request description: No need to specify `$(package)_download_file` when it is equal to `$(package)_file_name`. Historically, before bitcoin/bitcoin#19817, distinct `$(package)_download_file` and `$(package)_file_name` were used for better portability (I guess) by removing `+` characters from a file name. The only package which still use file renaming is `native_capnp`: https://github.com/bitcoin/bitcoin/blob/eca694a4e78d54ce4e29b388b3e81b06e55c2293/depends/packages/native_capnp.mk#L3-L5 ACKs for top commit: shaavan: ACK d644c45e39c45118df86692f9365d25dbba49461 fanquake: ACK d644c45e39c45118df86692f9365d25dbba49461 Tree-SHA512: 488dd0f55cea077174e78a75d8385bacb1a5463883cadeb5fd7c9426865ea5f3a8bad0bd6e8e9d530bce6f0c1715349b3fbabb4e22634348cdd68f5fc8a3c53b
2022-02-09Merge bitcoin/bitcoin#24196: Fix integer sanitizer suppressions in ↵MarcoFalke
validation.cpp fac62056b56e0a28baf0b6f285752d83fbf96074 Fix integer sanitizer suppressions in validation.cpp (MarcoFalke) Pull request description: It doesn't seem ideal to have an integer sanitizer enabled, but then disable it for the whole validation.cpp file. Fix it with a refactor and remove the suppression. ACKs for top commit: hebasto: ACK fac62056b56e0a28baf0b6f285752d83fbf96074, I have reviewed the code and it looks OK, I agree it can be merged. prayank23: Code Review ACK https://github.com/bitcoin/bitcoin/pull/24196/commits/fac62056b56e0a28baf0b6f285752d83fbf96074 Tree-SHA512: efc5b9887cb2e207033b264ebf425bae5ff013e909701c049aea5d79a21f10495826e962d171b3d412717cbf0a4723e5124133b5401b35a73915212e85e91020
2022-02-09Merge bitcoin-core/gui#404: Fix various edge case bugs in QValidatedLineEditHennadii Stepanov
aeb18b665c616c3326671b4c7e9d6421306564f0 Bugfix: GUI: Check validity when QValidatedLineEdit::setText is called (Luke Dashjr) b1a544be109d336c0b53722e3f8b51687972c94e Bugfix: GUI: Re-check validity after QValidatedLineEdit::setCheckValidator (Luke Dashjr) 2385b508d5f2db118513c3e0b343d2309cdfdcd8 Bugfix: GUI: Only apply invalid style to QValidatedLineEdit, not its tooltip (Luke Dashjr) Pull request description: 1. Use a CSS selector to avoid changing the background colour of the tooltip. 2. Re-check validity of input when we first set the validator (probably a no-op in practice). 3. Check validity of input when it is set programmatically via `setText` (eg, via the address book). Probably no-op in practice UNTIL merging https://github.com/bitcoin/bitcoin/pull/15987 or any other PR that adds a warning for valid addresses. Moved from https://github.com/bitcoin/bitcoin/pull/18133 (just concept ACKs) ACKs for top commit: Sjors: tACK aeb18b665c616c3326671b4c7e9d6421306564f0 hebasto: ACK aeb18b665c616c3326671b4c7e9d6421306564f0, tested on Linux Mint 20.3 (Qt 5.12.8). Tree-SHA512: b6fa8ee4dec76e1c759095721240e6fa5071a02993cb28406e96a0fa2e819f5dddc03d2e7c9073354d7865c2b09eb263afaf853ecba42e9fc4f50ef4ae20bf0f
2022-02-08Merge bitcoin/bitcoin#24235: validation: use stronger EXCLUSIVE_LOCKS_REQUIRED()MarcoFalke
99de8068cd08ecc2ad5dfe603bf3c2cc5b8b33aa validation: use stronger EXCLUSIVE_LOCKS_REQUIRED() (Vasil Dimov) Pull request description: https://github.com/bitcoin/bitcoin/pull/24103 added annotations to denote that the callers of `CChainState::ActivateBestChain()` and `CChainState::InvalidateBlock()` must not own `m_chainstate_mutex` at the time of the call. Replace the added `LOCKS_EXCLUDED()` with a stronger `EXCLUSIVE_LOCKS_REQUIRED()`, see https://clang.llvm.org/docs/ThreadSafetyAnalysis.html#negative for the difference between both. ACKs for top commit: hebasto: ACK 99de8068cd08ecc2ad5dfe603bf3c2cc5b8b33aa. jonatack: ACK 99de8068cd08ecc2ad5dfe603bf3c2cc5b8b33aa. Tested with Debian clang version 13.0.1. Reproduced hebasto's results. Verified that `LoadExternalBlockFile()` needs the annotation added here. Tree-SHA512: 59640d9ad472cdb5066ecde89cc0aff8632a351fc030f39bb43800d2c856fb1aed3576e4134212d32be161b18780f06dc5066ac71df7f7cd69e3f21f886e1542
2022-02-08Merge bitcoin/bitcoin#24266: util: Avoid buggy ↵MarcoFalke
std::filesystem:::create_directories() call b9c113af754540341d9529532fbadb7525168102 util: Avoid buggy std::filesystem:::create_directories() call (Hennadii Stepanov) Pull request description: Compiled with some libstdc++ versions (e.g., on Ubuntu 20.04) [`std::filesystem:::create_directories()`](https://en.cppreference.com/w/cpp/filesystem/create_directory) call [fails](https://github.com/bitcoin/bitcoin/issues/24257#issue-1123753243) to handle symbol links properly. No behavior change in comparison to the [pre-20744](https://github.com/bitcoin/bitcoin/commit/c194293883fbb656779102309b2cb3e60889feff) master branch. Fixes bitcoin/bitcoin#24257. ACKs for top commit: ryanofsky: Code review ACK b9c113af754540341d9529532fbadb7525168102. Nice simplification and fix MarcoFalke: review ACK b9c113af754540341d9529532fbadb7525168102 🐬 Tree-SHA512: 79d940cfc1f68d9b0548fb2ab005e90850b54ac0fb3bb2940afd632d56288d92687579a3176bac3fd0ea3d2dae71e26444f8f7bdb87862414c12866ae5e857c4
2022-02-08Merge bitcoin/bitcoin#24282: docs: Move explanation of hardened key syntax ↵fanquake
closer to KEY section bac30e85f384ced16ab81eca755d81cc0a72d00b docs: Move explanation of hardened key syntax closer to KEY section (Bitcoin Hodler) Pull request description: The line about "(Anywhere a `'` suffix is permitted to denote hardened derivation, the suffix `h` can be used instead.)" belongs with the section on KEY expressions, not following the unrelated TREE section. ACKs for top commit: prusnak: ACK bac30e8 meshcollider: ACK bac30e85f384ced16ab81eca755d81cc0a72d00b Tree-SHA512: 56fe97b89c02e67e94cab33b01e56f17f9b501b97036c5b35939dc4000a9d5e9afe4333869ba97bbe81372c538b7b2021a7d2520aba731400d8d0e62714d52b4
2022-02-08Merge bitcoin/bitcoin#24259: test: Remove unused valgrind suppressionsfanquake
fa4b61911d54840e9a24bfcabafec159f013ee9a test: Remove unused valgrind suppressions (MarcoFalke) faccb2d7fe3c03f8d9c8a9078d1608948b4f62b0 test: Exclude broken feature_init for now (MarcoFalke) fa086d891b912d30fd4b8748ef4fd816ffad51d7 test: Properly skip feature_syscall_sandbox in valgrind (MarcoFalke) Pull request description: ACKs for top commit: fanquake: ACK fa4b61911d54840e9a24bfcabafec159f013ee9a Tree-SHA512: 5be1a8f288182d386531a033ae7258f753dd655dfa1746a52b65622a0359c2b7143a25b49c0747538308eed606a691847d2f59a5a0382b7751b8de7172adf0d3
2022-02-08build, refactor: Drop redundant `$(package)_download_file` assignmentsHennadii Stepanov
No need to specify `$(package)_download_file` when it is equal to `$(package)_file_name`.
2022-02-07Merge bitcoin/bitcoin#24239: test: fix ceildiv division by using integersMarcoFalke
d1fab9d5d27a2db2546db0f610e0f6929ec4864e test: Call ceildiv helper with integer (Martin Zumsande) Pull request description: On master, `assert_fee_amount(Decimal("0.00000993"), 217, Decimal("0.00004531"))` passes `assert_fee_amount(Decimal("0.00000993"), Decimal("217"), Decimal("0.00004531"))` fails. the reason is that the // operator in `ceildiv(a,b) = -(-a//b)` has a different behavior for Decimals, see [doc](https://docs.python.org/3/library/decimal.html#decimal-objects). `wallet_send.py` calls this function with Decimals, and I think this is the reason for the failure reported in the OP of #24151 (`wallet_send.py --legacy-wallet` line 332, the numbers used in the example above are from there). However, the other failures reported there cannot be explained by this, so this is just a partial fix. ACKs for top commit: ryanofsky: Code review ACK d1fab9d5d27a2db2546db0f610e0f6929ec4864e. Tracking down this problem was a good find, and code seems safer and easier to understand now Tree-SHA512: 5bf0568cd1a0824f6b1a15a03580b6e9391b4f51112a97c1d00469d255bf6dda45c49a36fa567a5ba9b9973efe1d9cdd480db91965c9f4c2aa963629a8a32cba
2022-02-07Merge bitcoin/bitcoin#24195: test: Fix failfast option for functional test ↵MarcoFalke
runner a036358994546e2041d0bf0cc911bab4e4baba3c test: Repair failfast option for test runner (Martin Zumsande) Pull request description: Fixes #23990 After #23799, the `--failfast` option in the test runner for the functional tests stopped working, because a second outer loop was introduced, which would have needed a `break` too for the test runner to fail immediately. This also led to the errors reported in #23990. This provides a straightforward fix for that. There is also #23995 which is a larger refactor, but that hasn't been updated in a while to fix the failfast issue. ACKs for top commit: pg156: Tested ACK a036358994546e2041d0bf0cc911bab4e4baba3c. I agree adding the `all_passed` flag to break out of the outer loop when needed makes sense. The "failfast" option works after this change. Tree-SHA512: 3e2f775e36c13d180d32a05cd1cfe0883274e8615cdbbd4e069a9899e9b9ea1091066cf085e93f1c5326bd8ecc6ff524e0dad7c638f60dfdb169fefcdb26ee52
2022-02-07test: Call ceildiv helper with integerMartin Zumsande
It returns an incorrect result when called with a Decimal, for which the "//" operator works differently. Also drop unnecessary call to satoshi_round.
2022-02-07Fix integer sanitizer suppressions in validation.cppMarcoFalke
2022-02-07Merge bitcoin/bitcoin#24227: Fix unsigned integer overflow in LoadMempoolMarcoFalke
fadcd031390dd4588bbb1c07e5020a7131312050 Fix unsigned integer overflow in LoadMempool (MarcoFalke) Pull request description: It doesn't seem ideal to have an integer sanitizer enabled, but then disable it for the whole validation.cpp file. This removes one of the two violations. This should be a refactor. ACKs for top commit: prayank23: Code Review ACK https://github.com/bitcoin/bitcoin/pull/24227/commits/fadcd031390dd4588bbb1c07e5020a7131312050 Tree-SHA512: 9fb2f3d49008a59cd45b7c17be0c88c04e61183197c11c8176865af5532c8d0c940db49a351dd0fc75e1d7fd8678c3b816d34cfca170dc6b9cf8f37fdf1c8cae
2022-02-07Merge bitcoin/bitcoin#24237: test: Avoid testing negative block heightsMarcoFalke
fad81548fa03861c244397201d6b6e6cbf883c38 test: Avoid testing negative block heights (MarcoFalke) Pull request description: A negative chain height is only used to denote an empty chain, not the height of any block. So stop testing that and remove a suppression. ACKs for top commit: brunoerg: crACK fad81548fa03861c244397201d6b6e6cbf883c38 Tree-SHA512: 0f9e91617dfb6ceda99831e6cf4b4bf0d951054957c159b1a05a178ab6090798fae7368edefe12800da24585bcdf7299ec3534f4d3bbf5ce6a6eca74dd3bb766
2022-02-07Merge bitcoin/bitcoin#24217: Fix unsigned integer overflow in tapscript ↵MarcoFalke
validation weight calculation fadc54b79b14ba0bbdcf5eff1277295851fe7a9e Fix unsigned integer overflow in tapscript validation weight calculation (MarcoFalke) Pull request description: Change the tapscript validation weight constants from uint64_t to int64_t, since the type of m_validation_weight_left is also int64_t. Otherwise this will cause sanitizer warnings. This should be safe because signed integer overflow isn't expected to happen. ACKs for top commit: PastaPastaPasta: utACK fadc54b79b14ba0bbdcf5eff1277295851fe7a9e theStack: Code-review ACK fadc54b79b14ba0bbdcf5eff1277295851fe7a9e Tree-SHA512: 7a62d3a84733ab7827e3fa50d83f5493f2481b725c587e986eb2c128a769f023756f3ad964401526e386a847aa630a9f6c43a57d25ce5fd4af0b6bb5e0615528
2022-02-07docs: Move explanation of hardened key syntax closer to KEY sectionBitcoin Hodler
Before 7cedafc5412857404e9a6c3450b100cb8ee4081a added the TREE section, this line appeared right after the KEY section. It doesn't really fit in its former location since it's the KEY section that discusses derivation path syntax, not the TREE section.
2022-02-05util: Avoid buggy std::filesystem:::create_directories() callHennadii Stepanov
Compiled with some libstdc++ versions (e.g., on Ubuntu 20.04) std::filesystem:::create_directories() call fails to handle symbol links properly.
2022-02-05Merge bitcoin/bitcoin#24251: Re-enable windows path tests disabled by #20744fanquake
d216bc8d76d7f4e9dce58b0bb732a2d4deaf23b6 Re-enable walletinit_verify_walletdir_no_trailing2 test disabled in #20744 (Ryan Ofsky) 80cd64e84296f1166e133c237fa0afc046b01ce2 Re-enable util_datadir check disabled in #20744 (Ryan Ofsky) Pull request description: Reenable some broken tests as discussed https://github.com/bitcoin/bitcoin/pull/20744#discussion_r798651736 and https://github.com/bitcoin/bitcoin/pull/20744#discussion_r798678137 Fix windows test cases broken in #20744, by passing normalized path arguments to fs::equivalent, fs::exists, and fs::is_directory, instead of non-normalized arguments. Also re-enable the tests. It is possible these changes also fix real init behavior on windows when -datadir or -walletdir paths with trailing dots or dashes are used, but it's not clear because I only tested on wine. ACKs for top commit: hebasto: ACK d216bc8d76d7f4e9dce58b0bb732a2d4deaf23b6, I have reviewed the code and it looks OK, I agree it can be merged. Tree-SHA512: 2099ddfa1a3ad70f7ac2ff413929414a1851d257b280da25c0f5cefb46fd1372b580a1f1ee5280681a1c16e6031f119185cadd4f7a6121298562cf001f711068
2022-02-05Merge bitcoin/bitcoin#24268: Add bitcoin_config.h to build_msvc/.gitignorefanquake
d570f26e173391fb63ced03773edbffae22b77af Add bitcoin_config.h to build_msvc/.gitignore (Hennadii Stepanov) Pull request description: `bitcoin_config.h` is auto-generated by the `msvc-autogen.py` script. ACKs for top commit: sipsorcery: ACK d570f26e173391fb63ced03773edbffae22b77af vincenzopalazzo: ACK https://github.com/bitcoin/bitcoin/pull/24268/commits/d570f26e173391fb63ced03773edbffae22b77af Tree-SHA512: 913a04733454e3f9309db19e53a9f499fb304a9d1bff5aa51f2b2938adbd67d35ddacb31c5a2cec8790a060b1ee48c546bc3e755ee4945023b23fc9236deb3e4
2022-02-05Add bitcoin_config.h to build_msvc/.gitignoreHennadii Stepanov
bitcoin_config.h is auto-generated by the msvc-autogen.py script.
2022-02-05Merge bitcoin/bitcoin#24252: bench: Represent paths with fs::path instead of ↵fanquake
std::string 824e1ffa9fd957d05e34f36abe381c2465d89702 bench: Represents paths with fs::path instead of std::string (Ryan Ofsky) Pull request description: Suggested https://github.com/bitcoin/bitcoin/pull/20744#issuecomment-1022486215 ACKs for top commit: fanquake: untested ACK 824e1ffa9fd957d05e34f36abe381c2465d89702 hebasto: ACK 824e1ffa9fd957d05e34f36abe381c2465d89702, tested on Linux Mint 20.2 (x86_64). Tree-SHA512: 348fc189f30b5ad9a8e49e95e535d2c044462a9d534c3f34d887fbde0c05c41e88e02b4fc340709e6395a1188496a8333eb9e734310aa4c41755ec080e53c06e
2022-02-04test: Remove unused valgrind suppressionsMarcoFalke
2022-02-04test: Exclude broken feature_init for nowMarcoFalke
2022-02-04test: Properly skip feature_syscall_sandbox in valgrindMarcoFalke
Follow up to commit fa9c26ab3a09c843cb598d188162403bbf8c9b36
2022-02-04Merge bitcoin/bitcoin#24262: upstream: Update minisketch subtreeMarcoFalke
8fcb19fb47ae4629f40cd7ef04b5993855ddb462 Squashed 'src/minisketch/' changes from 89629eb2c7..7eeb778fef (fanquake) Pull request description: Marco mentioned issues running the native valgrind job (it sets `-Werror`) on arm64 hardware due to compile errors: ```bash minisketch/src/minisketch.cpp:66:20: error: unused function 'EnableClmul' [-Werror,-Wunused-function] ``` Pull the subtree to fix this. The only change here is https://github.com/sipa/minisketch/pull/58. ACKs for top commit: MarcoFalke: cr ACK 4382d098964c4eee09505d74eac9e2d05b2945ce Tree-SHA512: 8dbb2d8a4269e187987a9e6084c6265ed8256859b0776474c2d332df64427cd55608932e1e2053dcc3d8d1699a82c667afae20c3db7a35407bea662ada65a5f7
2022-02-04Update minisketch subtree to latest upstreamfanquake
2022-02-04Squashed 'src/minisketch/' changes from 89629eb2c7..7eeb778feffanquake
7eeb778fef Merge sipa/minisketch#58: Move `#ifdef HAVE_CLMUL` guard outside of the EnableClmul definition 4d9db2b897 Move `#ifdef HAVE_CLMUL` guard outside of the EnableClmul definition git-subtree-dir: src/minisketch git-subtree-split: 7eeb778fef45e21abca01ede85cf0a82e8a510df
2022-02-04bench: Represents paths with fs::path instead of std::stringRyan Ofsky
Also uses fs::path quoting in bench printed strings and fixes a misleading error message. Originally suggested https://github.com/bitcoin/bitcoin/pull/20744#issuecomment-1022486215 Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
2022-02-04Re-enable walletinit_verify_walletdir_no_trailing2 test disabled in #20744Ryan Ofsky
This should also fix an init error if a -walletdir with a trailing slash is used on windows. This appears to be a real error and regression introduced with #20744. On windows (or at least wine), fs calls that actuallly access the filesystem like fs::equivalent or fs::exists seem to treat directory paths with trailing slashes as not existing, so it's necessary to normalize these paths before using them. This change passes canonical paths to fs calls validating the -walletdir path to fix this.
2022-02-04Re-enable util_datadir check disabled in #20744Ryan Ofsky
This should also fix an assert error if a -datadir with a trailing slash is used on windows. This appears to be a real error and regression introduced with #20744. On windows (or at least wine), fs calls that actuallly access the filesystem like fs::equivalent or fs::exists seem to treat directory paths with trailing slashes as not existing, so it's necessary to normalize these paths before using them. This fix adds a path::lexically_normal() call to the failing assert so it passes.
2022-02-04Merge bitcoin/bitcoin#22151: build: Follow Transifex docs to prepare XLIFF ↵laanwj
source 985d85e9a8d3dd6e52fef27f76b49c5aa4b34f30 Follow Transifex docs to prepare XLIFF source (Hennadii Stepanov) Pull request description: This PR is a #21694 follow up. From the Transifex [docs](https://docs.transifex.com/formats/xliff#how-to-distinguish-between-a-source-file-and-a-translation-file): > A source file is different than a translation file. The translation file contains \<Target> references, whereas a source file does not. This PR makes the `qt/locale/bitcoin_en.xlf` source file according to the docs. ACKs for top commit: laanwj: ACK 985d85e9a8d3dd6e52fef27f76b49c5aa4b34f30 Tree-SHA512: 537ef78f39a12f094b17fc902c5b59c7ae4d27e5fa35fbf6b33386843e4521236dac3275ba26ff2d1c435e53e8942284644d5de67b0b3543cec96cbcd4351607
2022-02-04Merge bitcoin-core/gui#524: Replace int with std::chrono in for the ↵Hennadii Stepanov
timer->setInterval() argument f7a19ef774ef92ce348215593e3590a750c345e1 qt,refactor: Use std::chrono in TrafficGraphWidget class (Shashwat) Pull request description: The PR is a follow-up to #517 - It addresses the change suggested in [this](https://github.com/bitcoin-core/gui/pull/517#pullrequestreview-850260826) comment. - This PR changes the type of `msecsPerSample` from **int** to **std::chrono::minutes** and makes other relevant subsequent changes that were limited to the **trafficgraphwidget** file. ACKs for top commit: RandyMcMillan: tACK f7a19ef774ef92ce348215593e3590a750c345e1 hebasto: ACK f7a19ef774ef92ce348215593e3590a750c345e1 promag: Code review ACK f7a19ef774ef92ce348215593e3590a750c345e1. Tree-SHA512: 5094ba894f3051fc99148cb8f408fc6f9d6571188673dcb7bf24366cdfb3eaf6d4e41083685d578ad2a9fbe31cc491a5f3fa9b7c9ab6eb90e4dc1356f89ae18a
2022-02-04Merge bitcoin/bitcoin#24250: Update translations for 0.23 string freezelaanwj
04255073bbd2b8ea71ae8a9ff7433be499312758 qt: Update source translations (laanwj) cf79c56e65595612d899f0551348656b00d1108f init: Remove confusing '(possible integer overflow?)' from error message (laanwj) d570a63894d5285d350b628b47014abba280743f qt: Update transifex resource blob to 23.0 (laanwj) Pull request description: - Update translations for 0.23 string freeze - Update transifex resource blob to 23.0 This is necessary before a 23.0 resource can be created on Transifex. ACKs for top commit: hebasto: ACK 04255073bbd2b8ea71ae8a9ff7433be499312758 Tree-SHA512: ff886e92721f070e3c135cfec229c41848a67c02355b88f2a5a507241b545f4209167d83b561420c2a82f49a5994170b01dcfb95bfc3fe6b9c832abcc6547b14
2022-02-04Merge bitcoin/bitcoin#23604: Use Sock in CNodelaanwj
ef5014d256638735b292672c774446db4003f03b style: wrap long lines in CNode creation and add some comments (Vasil Dimov) b68349164827f14c472201cad54c4e19a3321261 scripted-diff: rename CNode::cs_hSocket to CNode::m_sock_mutex (Vasil Dimov) c41a1162ac4da437c5d755e8fe2bf636bed22b0f net: use Sock in CNode (Vasil Dimov) c5dd72e146dd8fa77d29c8689a42322a4d1ec780 fuzz: move FuzzedSock earlier in src/test/fuzz/util.h (Vasil Dimov) Pull request description: _This is a piece of #21878, chopped off to ease review._ Change `CNode` to use a pointer to `Sock` instead of a bare `SOCKET`. This will help mocking / testing / fuzzing more code. ACKs for top commit: jonatack: re-ACK ef5014d256638735b292672c774446db4003f03b changes since last review are the removal of an unneeded dtor and the addition of a style commit w0xlt: reACK ef5014d PastaPastaPasta: utACK ef5014d256638735b292672c774446db4003f03b, I have reviewed the code, and believe it makes sense to merge theStack: Cod-review ACK ef5014d256638735b292672c774446db4003f03b Tree-SHA512: 7f5414dd339cd2f16f7cbdc5fcec238d68b6d50072934aea10b901f409da28ff1ece6db6e899196616aa8127b8b25ab5b86d000bdcee58b4cadd7a3c1cf560c5