Commit Graph

40862 Commits

Author SHA1 Message Date
fanquake
fcf1241971
doc: update release notes for v27.1 final 2024-06-10 13:03:30 +01:00
fanquake
8d3448c59b build: ignore deprecated-declaration warnings in objc++ macOS code
These come from GUI code, and haven't/aren't being fixed, see discussion
in https://github.com/bitcoin-core/gui/issues/112. For now, just ignore
them entirely. Note that this only applies to ObjCXX code, so will not
hide any relevant warnings coming from C or CXX code (and they would be
unlikely in any case).

Alternative to #29362, which disables all compiler warnings, for macOS
builds in the CI.

Relevant output:
```bash
qt/macnotificationhandler.mm:27:9: warning: 'NSUserNotification' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        NSUserNotification* userNotification = [[NSUserNotification alloc] init];
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:24:12: note: 'NSUserNotification' has been explicitly marked deprecated here
@interface NSUserNotification : NSObject <NSCopying> {
           ^
qt/macnotificationhandler.mm:27:50: warning: 'NSUserNotification' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        NSUserNotification* userNotification = [[NSUserNotification alloc] init];
                                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:24:12: note: 'NSUserNotification' has been explicitly marked deprecated here
@interface NSUserNotification : NSObject <NSCopying> {
           ^
qt/macnotificationhandler.mm:30:11: warning: 'NSUserNotificationCenter' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        [[NSUserNotificationCenter defaultUserNotificationCenter] deliverNotification: userNotification];
          ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:118:12: note: 'NSUserNotificationCenter' has been explicitly marked deprecated here
@interface NSUserNotificationCenter : NSObject {
           ^
3 warnings generated.
```

Github-Pull: #29577
Rebased-From: 8b7630cb1f
2024-06-08 01:56:52 +00:00
Hennadii Stepanov
cafe533fef build: Add missed definition for AM_OBJCXXFLAGS
Github-Pull: #29577
Rebased-From: bd8f0354ba
2024-06-08 01:56:49 +00:00
Luke Dashjr
b4849c67c1 doc: Update Qt version to 5.15.14 2024-06-04 17:50:03 +00:00
fanquake
a0d864340a depends: qt 5.15.14
Github-Pull: #30198
Rebased-From: b018bd779d
2024-06-04 17:47:09 +00:00
Hennadii Stepanov
f2e05cd2a9
depends: Update Boost download link
See: https://github.com/boostorg/boost-tasks/pull/3

Github-Pull: #30217
Rebased-From: ffbc173ca1
2024-06-04 11:17:16 +01:00
Hennadii Stepanov
ba35920542
build: Fix building fuzz binary on on SunOS / illumos
Github-Pull: #30216
Rebased-From: 3299abce94
2024-06-04 11:17:16 +01:00
merge-script
fccd32efe6
Merge bitcoin/bitcoin#30092: [27.x] Backports and rc1
22701a4346 doc: update manual pages for 27.1rc1 (fanquake)
9e919072bd build: bump version to 27.1rc1 (fanquake)
9b4640c4be doc: update release-notes.md for 27.1 (fanquake)
80032d6917 qt: 27.1rc1 translations update (Hennadii Stepanov)
423bd6dc68 windeploy: Renew certificate (Ava Chow)
77b2321ca0 depends: Fetch miniupnpc sources from an alternative website (Hennadii Stepanov)
31adcfa171 test: add GetAddedNodeInfo() CJDNS regression unit test (Jon Atack)
9cdb9edfb8 p2p, bugfix: detect addnode cjdns peers in GetAddedNodeInfo() (Jon Atack)
3c26058da2 crypto: disable asan for sha256_sse4 with clang and -O0 (Cory Fields)
0ba11cf908 rpc: move UniValue in blockToJSON (willcl-ark)
dedf319b08 gui: don't permit port in proxy IP option (willcl-ark)
d1289a1300 gui: fix create unsigned transaction fee bump (furszy)

Pull request description:

  Backports:
  * https://github.com/bitcoin-core/gui/pull/812
  * https://github.com/bitcoin-core/gui/pull/813
  * https://github.com/bitcoin/bitcoin/pull/30085
  * https://github.com/bitcoin/bitcoin/pull/30094
  * https://github.com/bitcoin/bitcoin/pull/30097
  * https://github.com/bitcoin/bitcoin/pull/30149
  * https://github.com/bitcoin/bitcoin/pull/30151

  Bump to 27.1rc1.

ACKs for top commit:
  stickies-v:
    re-ACK 22701a4346
  willcl-ark:
    reACK 22701a4346
  hebasto:
    re-ACK 22701a4346.

Tree-SHA512: 6eca44ba7e6664eb4677646597dfdaf56a241c8c3e95e0ab8929ee2fc3671303fc6c2634d359b4523dbd452ac5e54fd1f4c7c2bf7e9c5209395f8cb3b4753fb3
2024-05-29 09:16:55 +01:00
Luke Dashjr
29e07a1692 net: Remove forcedinbound limit antifeature 2024-05-28 22:09:47 +00:00
Matthew Zipkin
991dca6f74 net: add forced_inbound to getpeerinfo
Github-Pull: #27600
Rebased-From: 8c2026848da910fdebff0a9f73e29f1f6ae81e43
2024-05-28 22:09:44 +00:00
Matthew Zipkin
dde345eef2 net: only allow 8 simultaneous forced inbound connections
Github-Pull: #27600
Rebased-From: 75868022a904c1f77871abf962bf9b88a9c5faf6
2024-05-28 22:09:27 +00:00
Matthew Zipkin
544c30a3f3 test: cover ForceInbound permission success even when connections are full
Github-Pull: #27600
Rebased-From: 6b6bcaf0b9ae0a7adaf96bf791aaafc6b5e9f000
2024-05-28 22:09:27 +00:00
Matthew Zipkin
a128693bf2 net: nodes with ForceInbound permission force eviction
Github-Pull: #27600
Rebased-From: 8bc203073a0b8b7e1a6851bcf3f1688e54b10a73
2024-05-28 22:09:27 +00:00
Matthew Zipkin
ef1953b138 net: add new permission ForceInbound
Only inbound nodes with this permission set will call
`SelectNodeToEvict()` with force=true, so when connections are full
there is an increased liklihood of opening a slot for the new inbound.
Extends NoBan permission.

Github-Pull: #27600
Rebased-From: 99399b3cbfef584df0444972834b22ce87aa63af
2024-05-28 22:09:27 +00:00
Matthew Zipkin
76fac839f7 eviction: track one random unprotected node to evict if forced
Accomplished by adding a bool argument `force` to SelectNodeToEvict()

Github-Pull: #27600
Rebased-From: 0c0f2a2c3664d5ea81ee31230ddca40863dd76dd
2024-05-28 22:09:27 +00:00
Luke Dashjr
131b681e1a Merge branch 'easy_uv_moves_pr30115-27' into p2p_forceinbound-27+knots 2024-05-28 22:09:05 +00:00
Luke Dashjr
5cb756ff1c MOVEONLY: Shuffle header order to avoid conflicts 2024-05-28 22:04:07 +00:00
Luke Dashjr
2dcaa7311a Diff-minimise 2024-05-28 22:04:07 +00:00
Luke Dashjr
5f4907b033 rpccookieperms: Set permissions on temporary file, prior to writing the cookie 2024-05-28 22:04:07 +00:00
Luke Dashjr
7020419d38 Bugfix: rpccookieperms: If rpccookieperms is disabled, the end permissions are NOT set by it (log output only) 2024-05-28 22:04:07 +00:00
Luke Dashjr
6cd206d331 RPC: Delete cookie file before replacing it
Unclear if this is the best thing to do, but due to v26.1.knots20240325 creating it read-only, it is somewhat necessary for now
2024-05-28 22:04:07 +00:00
Luke Dashjr
c04e29bc3a Bugfix: RPC: Attempt to delete cookie tmp before creating it
May be needed if we ended up with a read-only tmp file
2024-05-28 22:04:07 +00:00
Luke Dashjr
f2229a459b RPC: Use normal stringification for perms_to_str 2024-05-28 22:04:07 +00:00
Luke Dashjr
4f62f5de02 Ignore if default rpccookieperms change fails on Windows 2024-05-28 22:04:07 +00:00
Luke Dashjr
0730d8555e RPC: Log if -rpccookieperms is being used 2024-05-28 22:04:07 +00:00
Luke Dashjr
a858b295e5 Skip changing permissions entirely if -rpccookieperms=0 specified 2024-05-28 22:04:07 +00:00
Luke Dashjr
9c42d3a240 Allow -rpccookieperms on Windows 2024-05-28 22:04:07 +00:00
Luke Dashjr
9d3399d466 rpccookieperms: Allow setting setxid/sticky bits
Simply for backward compatibility
2024-05-28 22:04:07 +00:00
Luke Dashjr
f17c2aea59 QA: rpc_users: Extend rpccookieperms test to octal values 2024-05-28 22:04:00 +00:00
Aurèle Oulès
a6d297ae7b httprpc: allow specifying rpccookie permissions in octal
Co-authored-by: Will Clark <will@256k1.dev>

Github-Pull: #28167
Rebased-From: 7456c3a5067b03972ab6159030944ee5ae81e21a
2024-05-28 22:03:55 +00:00
willcl-ark
a1b1d3348b util: add fs helpers to convert perms to str and octal
Github-Pull: #28167
Rebased-From: 36816dc6661896f7a0a60e6ebbf789e186d469d5
2024-05-28 22:03:32 +00:00
willcl-ark
ba25becb04 test: add rpccookieperms test
Tests various perms on non-Windows OSes

Github-Pull: #28167
Rebased-From: ab3245f335085eb31efc53e3de22061d0c9da99f
2024-05-28 22:02:35 +00:00
willcl-ark
3c65404ecb init: add option for rpccookie permissions
Add a bitcoind launch option `-rpccookieperms` to configure the file
permissions of the cookie on Unix systems.

Github-Pull: #28167
Rebased-From: ae7ec049e5c8d2361c7f47cad3e8c13f912f1c2a
2024-05-28 22:02:05 +00:00
willcl-ark
8ad18ef583 util: add PermsToString and StringToPerms
Helpers to convert from pemissions to strings and visa-versa.

Github-Pull: #28167
Rebased-From: e7c7bdce8c5607e8bd8713073ba565f37253fb60
2024-05-28 22:01:38 +00:00
willcl-ark
0b30e67701 rpc: add default 600 permissions for cookie file
Set owner read/write permissions on cookie files by default.
On Windows this will cause the write bit to be set.

Github-Pull: #28167
Rebased-From: 35df85346438258e1bb5f736e9c4d48cf59e6547
2024-05-28 22:01:37 +00:00
Jadi
bc4359e121 Showing local addresses on the Node Window
Adds a new row to the Node Window (debugwindow.ui)
under the Network section which shows the LocalAddresses.

fixes #564

Github-Pull: gui#626
Rebased-From: ea576b65592c23895f80c9116f881ff063253ff8
2024-05-28 20:59:20 +00:00
Jadi
5dc68c282f net: Providing an interface for mapLocalHost
Contributes to #564 by providing an interface for mapLocalHost
through net -> node interface -> clientModel. Later this value can be
read by GUI to show the local addresses.

Github-Pull: gui#626
Rebased-From: ca35d47318464b28f82da2bbde4bf2491d0b75b2
2024-05-28 20:59:17 +00:00
Luke Dashjr
fe21e5bc03 GUI: setWalletActionsEnabled: Keep historyAction disabled if privacy mode is already on 2024-05-28 20:52:06 +00:00
fanquake
22701a4346
doc: update manual pages for 27.1rc1 2024-05-28 12:28:11 +01:00
fanquake
9e919072bd
build: bump version to 27.1rc1 2024-05-28 12:28:11 +01:00
fanquake
9b4640c4be
doc: update release-notes.md for 27.1 2024-05-28 12:28:06 +01:00
Hennadii Stepanov
80032d6917
qt: 27.1rc1 translations update 2024-05-28 10:18:55 +01:00
Cory Fields
2ae23d32c7 rpc: avoid copying into UniValue
These are simple (and hopefully obviously correct) copies that can be moves
instead.

Github-Pull: #30115
Rebased-From: d7707d9843
2024-05-23 19:40:02 +00:00
Ava Chow
423bd6dc68
windeploy: Renew certificate
Github-Pull: #30149
Rebased-From: 9f4ff1e965
2024-05-23 13:28:44 +01:00
Hennadii Stepanov
77b2321ca0
depends: Fetch miniupnpc sources from an alternative website
The https://miniupnp.tuxfamily.org website is unavailable now.

Github-Pull: #30151
Rebased-From: 21b8a14d37
2024-05-23 09:44:19 +01:00
Jon Atack
31adcfa171
test: add GetAddedNodeInfo() CJDNS regression unit test
Github-Pull: #30085
Rebased-From: d0b047494c
2024-05-23 09:44:19 +01:00
Jon Atack
9cdb9edfb8
p2p, bugfix: detect addnode cjdns peers in GetAddedNodeInfo()
Addnode (manual) peers connected to us via the cjdns network are currently not
detected by CConnman::GetAddedNodeInfo(), i.e. fConnected is always false.

This causes the following issues:

- RPC `getaddednodeinfo` incorrectly shows them as not connected

- CConnman::ThreadOpenAddedConnections() continually retries to connect them

Github-Pull: #30085
Rebased-From: 684da97070
2024-05-22 09:49:00 +01:00
Luke Dashjr
f85f266289 Merge branch 'whitelist_outgoing-mini-26+knots' into p2p_forceinbound-27+knots 2024-05-17 18:33:14 +00:00
Andrew Poelstra
34b60740ab codex32: add functional test for seed import
Github-Pull: #27351
Rebased-From: 91771366a3df22b9e8b4b7152d368d739bfeda94
2024-05-17 17:54:01 +00:00
Andrew Poelstra
eeb320e731 wallet: add ability for importdescriptors to import a seed
Github-Pull: #27351
Rebased-From: e29e656cbdd7e230cd5d04910e93c1cc562d593b
2024-05-17 17:54:01 +00:00