forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
[v23.0.x] chore: release v23.0.0 #6948
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
PastaPastaPasta
merged 11 commits into
dashpay:v23.0.x
from
PastaPastaPasta:release/v23.0.0-final
Nov 8, 2025
Merged
[v23.0.x] chore: release v23.0.0 #6948
PastaPastaPasta
merged 11 commits into
dashpay:v23.0.x
from
PastaPastaPasta:release/v23.0.0-final
Nov 8, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
af85608 fix: improve governance/proposal dialog strings (UdjinM6) Pull request description: ## Issue being fixed or feature implemented - make strings easier to translate - stop translating non-translatable strings - use `%n` where possible ## What was done? ## How Has This Been Tested? ## Breaking Changes n/a ## Checklist: - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ Top commit has no ACKs. Tree-SHA512: bba2247fc64f152656972d7e30c12eea6d892a622751c8e798a0ccb522c297356b1ae3964d9db25aa1c920eb71d862e026b0a490ddce784563aea9caa5445425
9ae459f ro (UdjinM6) c3cc47a bg (UdjinM6) c0c1162 vi (UdjinM6) 0970d9b ar (UdjinM6) 04d9f06 th (UdjinM6) 32651c7 ko (UdjinM6) 2c0bd3a ja (UdjinM6) 7b5e6ee zh_TW (UdjinM6) 6e243b2 zh_CN (UdjinM6) 3b5f27a tr (UdjinM6) b609d38 sk (UdjinM6) 5179544 fi (UdjinM6) 6c3c628 pt (UdjinM6) 236f2ce pl (UdjinM6) ddc40a9 nl (UdjinM6) 00c7afe it (UdjinM6) bc58127 fr (UdjinM6) 6bbb222 es (UdjinM6) fbbf013 de (UdjinM6) fdf5645 ru (UdjinM6) 10d5bd5 en + dashstrings.cpp (UdjinM6) Pull request description: ## Issue being fixed or feature implemented NOTE: translated via Claude ## What was done? ## How Has This Been Tested? ## Breaking Changes ## Checklist: - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ Top commit has no ACKs. Tree-SHA512: 0f07c9b2eaec01c4678e87d3b490ebaa1c090304c619dbf5d6db1e323b4f856b436be3ca8ac474dfbd54faae3d90b24508f2548bba2a75fca6a64fc244cdd4e3
…points, seeds and SECURITY.md for v23 0a1407b docs: update supported versions in SECURITY.md (Kittywhiskers Van Gogh) 8727d3c chore: update testnet seeds for v23 (Kittywhiskers Van Gogh) e1116f6 chore: update mainnet seeds for v23 (Kittywhiskers Van Gogh) d9fe32f chore: drop unreachable onion seeds (Kittywhiskers Van Gogh) 4e52655 chore: update `m_assumed_blockchain_size` for v23 (Kittywhiskers Van Gogh) adb2992 chore: update minimum chain work, tx stats and checkpoints for v23 (Kittywhiskers Van Gogh) Pull request description: ## Additional Information * The blocks used as checkpoints are * For mainnet, block 2361500 (`0x0x0000000000000009ba1e8f47851d036bb618a4f6565eb3c32d1f647d450ff195`, [Insight](https://explorer.dash.org/insight/block/0000000000000009ba1e8f47851d036bb618a4f6565eb3c32d1f647d450ff195)) * For testnet, block 1239600 (`0x00000107d42829a38e31c1a38c660d621e1ca376a880df1520e85e38af175d3a`, [Insight](https://insight.testnet.networks.dash.org/insight/block/00000107d42829a38e31c1a38c660d621e1ca376a880df1520e85e38af175d3a)) * `m_assumed_{blockchain,chain_state}_size` calculations * Mainnet synced till block 2361620, Dash Core v22.1.3 (release) ```bash $ du --exclude ~/.dashcore/testnet3 --max-depth=0 -h ~/.dashcore 49G /home/debian/.dashcore $ python3 -c "print(round(49*1.1))" # 10% leeway 54 $ du --max-depth=0 -h ~/.dashcore/chainstate 240M /home/debian/.dashcore/chainstate ``` As `m_assumed_chain_state_size` is still <1GB, we don't update it * Testnet synced till block 1352330, Dash Core f650f65 (pre-release) ```bash $ du --max-depth=0 -h ~/.dashcore/testnet3 8.7G /home/debian/.dashcore/testnet3 $ python3 -c "print(round(8.7*1.1))" # 10% leeway 10 $ du --max-depth=0 -h ~/.dashcore/testnet3/chainstate 68M /home/debian/.dashcore/chainstate ``` * Mainnet seeds generated using `protx list valid 1 2361500`, testnet seeds generated using `protx list valid 1 1353660`, commenting out deduplication ([source](https://github.com/dashpay/dash/blob/e4fa575ac463d04a745830f43bb28daf31b41d26/contrib/seeds/makeseeds.py#L203-L205)) and raising the `MAX_SEEDS_PER_ASN` to 10 ([source](https://github.com/dashpay/dash/blob/e4fa575ac463d04a745830f43bb28daf31b41d26/contrib/seeds/makeseeds.py#L23)) ## Breaking Changes None expected. ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)** - [x] I have added or updated relevant unit/integration/functional/e2e tests **(note: N/A)** - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK 0a1407b Tree-SHA512: c4c463b91da0a4c35b0ddadcd9a261424551f49f6889c848ae02d912671e3b6fec07b4725cecce04a755fab7443939eeb0fb51e2b53a8dbe83db7287712df095
25ecd50 fix: follow-up for 6920 to update checkpoints for testnet in man pages (Konstantin Akimov) 28a0689 fix: fixup checkpoints in man (Konstantin Akimov) faa58da docs: update man pages for 23.0 (Konstantin Akimov) Pull request description: ## Issue being fixed or feature implemented dashpay#6884 ## What was done? updated man pages for v23 release ## How Has This Been Tested? N/A ## Breaking Changes N/A ## Checklist: - [x] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone ACKs for top commit: UdjinM6: utACK 25ecd50 Tree-SHA512: 7c72cbf0acf36ec4fb3b1b1e4fb7b480f7677e118df7ac3a0455989bb6a309190c3c1d7a38ae4f8e0f648d99bfbcef6da9c1a5efb1c616f4d0e8d8603746bd69
…ftforks]` help text, drop extra `generate`s from test, resolve macOS GID issue 39e847c fix: do not create group if GID is already taken (Kittywhiskers Van Gogh) 36db83a fix: annotate `getblockchaininfo[softforks]` as `OBJ_DYN` (Kittywhiskers Van Gogh) e4ace44 fix: repair IP extraction in `makeseeds.py`, read from `core_p2p` arr (Kittywhiskers Van Gogh) 9ef8c53 test: drop extra `generate`s from `wallet_signrawtransactionwithwallet` (Kittywhiskers Van Gogh) Pull request description: ## Additional Information * The help text for `getblockchaininfo['softforks']` was introduced in [bitcoin#16060](bitcoin#16060) (backported in [dash#5255](dashpay#5255)) _but_ the `RPCResult` help text was introduced in [bitcoin#17809](bitcoin#17809), backported _before_ [bitcoin#16060](bitcoin#16060). This resulted in the help text for `softforks` deviating from upstream without the output to match (which is aligned with upstream). This has since been resolved as the output structure hasn't changed, only the help text. * [bitcoin#22818](bitcoin#22818) (backported in [dash#6214](dashpay#6214)) activated many softforks at height 1, which rendered the block generation calls in `wallet_signrawtransactionwithwallet.py` ([source](https://github.com/dashpay/dash/blob/3e6e8f57c45fb24107816a10854ed8f349c4aa20/test/functional/wallet_signrawtransactionwithwallet.py#L132-L133)) no longer necessary, additionally [bitcoin#22550](bitcoin#22550) (backported in [dash#6189](dashpay#6189)) added assertions to validate CSV/CLTV activation that were not included in the backport. This has since been resolved, replacing the `generate` calls with assertions. * The locktime height was dropped from `1000` to `100` (matching with upstream, [source](https://github.com/bitcoin/bitcoin/blob/24.x/test/functional/wallet_signrawtransactionwithwallet.py#L219)) as we are no longer generating enough blocks to reach that height anymore. * `makeseeds.py` is currently mangled because [dash#6666](dashpay#6666) updated the script to look for the `core_p2p` purpose even though purpose code support was spun-off into [dash#6674](dashpay#6674). This meant, in between [dash#6666](dashpay#6666) and [dash#6674](dashpay#6674 merger, `makeseeds.py` was broken. This necessitated a fix that was introduced as e714c06 ([dash#6858](dashpay#6858)) but meant that after [dash#6674](dashpay#6674), `makeseeds.py` is broken again. This has been resolved as part of this PR. * macOS users who want to utilise the `develop` container ([source](https://github.com/dashpay/dash/blob/b82450aa7dce2307b13e6fe282f7c4f84b48cbbf/contrib/containers/develop/Dockerfile)) need to set the `USER_ID` and `GROUP_ID` `args` to avoid permissions issues. This creates a slight problem as the GID for `staff` is 20 on macOS but Linux uses GID 20 for `dialout`, so creating a group with GID 20 will _fail_. As we only care about the GID, it is safe to skip the group creation step and assign the user to the group anyways as we do it by GID and _not_ name (the user will be presented as a member of the `dialout` group). This should resolve issues for macOS users trying to build the `develop` container. ## Breaking Changes None expected. ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)** - [x] I have added or updated relevant unit/integration/functional/e2e tests - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: PastaPastaPasta: utACK 39e847c knst: utACK 39e847c UdjinM6: utACK 39e847c Tree-SHA512: 0ecb8bb930d54d4b9024a6e94a2fe3b49c7334666e5f67d38920ac58f54332fb8b4f62bd883bd949969d60b6b5183c7a20a3593f24c2e6bbbb0de143b3de8fe1
d89646d fix: logic error in `CheckDecryptionKey` (UdjinM6) Pull request description: ## Issue being fixed or feature implemented The issue was introduced via dashpay@392b51b ## What was done? ## How Has This Been Tested? ## Breaking Changes ## Checklist: - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: PastaPastaPasta: utACK d89646d knst: utACK d89646d Tree-SHA512: 31419798b3c05bb3c4c30cf02b819c899e0d0e0048775d907099c6507afaf189d12eeb8ec33232801e1874fe9c156558e7936a43f34cce1409ca273c3bc1919c
…dition c0faae0 fix: reuse best clsig to avoid potential race condition (Kittywhiskers Van Gogh) 98dc874 trivial: use `GetBestChainLockHeight()` (Kittywhiskers Van Gogh) Pull request description: ## Additional Information Fix for potential race condition identified by CodeRabbit in [dash#6933](dashpay#6933) ([comment](dashpay#6933 (comment))) ## Breaking Changes None expected. ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)** - [x] I have added or updated relevant unit/integration/functional/e2e tests **(note: N/A)** - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK c0faae0 Tree-SHA512: 74762c5d715405a32af4a58553c05dc2fd98cdb7f038a519cf244a7c84a6a536ff341d8e8f534dbb6a0df952730314f85c52738c4d5b2e72fa74a4f02a6b2237
…s for composite methods 5978985 fix: don't treat arrays/objects as string literals for composite methods (Kittywhiskers Van Gogh) Pull request description: ## Additional Information thephez identified a bug where attempting to specify arrays as expected by `coreP2PAddrs`, `platformHTTPSAddrs` or `platformP2PAddrs` using `dash-cli` or the Qt wallet resulted in errors (see below) ``` $ ./src/dash-cli --testnet protx register_prepare "6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000" 1 '["1.1.1.1:19999"]' "yhq7ifNCtTKEpY4Yu5XPCcztQco6Fh6JsZ" "93746e8731c57f87f79b3620a7982924e2931717d49540a85864bd543de11c43fb868fd63e501a1db37e19ed59ae6db4" "yTretFTpoi3oQ3maZk5QadGaDWPiKnmDBc" 0 "yNbNZyCiTYSFtDwEXt7jChV7tZVYX862ua" error code: -8 error message: Error setting coreP2PAddrs[0] to '["1.1.1.1:19999"]' (invalid input) ``` This was not caught by functional tests as they send fully formed JSON messages and do not require JSON client interpretation, which both `dash-cli` and Dash Qt require, this pull request adds additional handling to ensure that arrays and objects are interpreted if they are likely to be so (starting and ending with curly or square brackets) or otherwise passed as-is as a string. What this pull request _isn't_ is full fledged conversion support for composite RPC arguments to other non-string types like integers, the scope here is specifically to allow for the backwards compatibility logic for `coreP2PAddrs`, `platformHTTPSAddrs` or `platformP2PAddrs` to work as intended. With this pull request, the following result is expected (see below) ``` $ ./src/dash-cli --testnet protx register_prepare "6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000" 1 '["1.1.1.1:19999"]' "yhq7ifNCtTKEpY4Yu5XPCcztQco6Fh6JsZ" "93746e8731c57f87f79b3620a7982924e2931717d49540a85864bd543de11c43fb868fd63e501a1db37e19ed59ae6db4" "yTretFTpoi3oQ3maZk5QadGaDWPiKnmDBc" 0 "yNbNZyCiTYSFtDwEXt7jChV7tZVYX862ua" error code: -32603 error message: No funds at specified address yNbNZyCiTYSFtDwEXt7jChV7tZVYX862ua ``` ## Breaking Changes None expected. ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [x] I have added or updated relevant unit/integration/functional/e2e tests - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK 5978985 Tree-SHA512: 9271d7a4c5f463611a10c7edcb0cea929d6d7e0c07d6b962f4aca40483f84ff17b29e3d6b84c465c267734ff6e93e2148e11af0ad19ce58585ed3200fc3e3b01
9531028 security: Store mnemonic words in secure memory (pasta) 5024589 doc: Add release notes for PR dashpay#6946 (pasta) a0b15cf refactor: Simplify wallet lock state handling in CreateWalletActivity (UdjinM6) 34914f1 feat: Add menu option to show recovery phrase for existing wallets (UdjinM6) 3b16a88 fix: Restore dialog size when going back from verification to word list (UdjinM6) f79a750 refactor: Move wallet creation dialog styles from C++ to CSS (UdjinM6) fd3c1eb Simplify mnemonic retrieval (pasta) 9894f47 Fix trailing whitespace in wallet creation files (pasta) e08e29f qt: Fix potential infinite loop and missing include in mnemonic verification (pasta) 77c3aeb qt: Improve wallet creation UI flow (pasta) f3219ee qt: avoid modifying QString during regex iteration in GUIUtil::loadStyleSheet (pasta) Pull request description: ## Issue being fixed or feature implemented Improve QT wallet creation process to display the seed to users. Release notes tbd ## What was done? <img width="438" height="236" alt="Screenshot 2025-11-05 at 21 07 38" src="https://github.com/user-attachments/assets/c7fda5bf-cb5f-4ccb-a3a3-7c74c1f01ce8" /> <img width="425" height="332" alt="Screenshot 2025-11-05 at 21 07 50" src="https://github.com/user-attachments/assets/3861b0bc-6f53-41e9-b800-12e7e81b1524" /> <img width="573" height="403" alt="Screenshot 2025-11-05 at 21 08 09" src="https://github.com/user-attachments/assets/bffd2400-5cf0-4d34-9ec4-f8f2a875cbfa" /> <img width="560" height="396" alt="Screenshot 2025-11-05 at 21 08 18" src="https://github.com/user-attachments/assets/36a54cc2-9422-4f79-82c4-cbadd1127910" /> <img width="480" height="383" alt="Screenshot 2025-11-05 at 21 08 42" src="https://github.com/user-attachments/assets/02e31e2c-f7bf-49ca-a13e-2a04a824c7ad" /> <img width="474" height="379" alt="Screenshot 2025-11-05 at 21 09 10" src="https://github.com/user-attachments/assets/35cc1169-b616-4678-ab64-f05a871032b7" /> <img width="479" height="378" alt="Screenshot 2025-11-05 at 21 09 26" src="https://github.com/user-attachments/assets/b124b15f-f0f3-4dc7-a327-3861dd6ac5ab" /> ## Breaking Changes None ## Checklist: _Go over all the following points, and put an `x` in all the boxes that apply._ - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: ACK 9531028 Tree-SHA512: eb618eb68bc055a0fd0e434f7039efe75c420ffd01422211acde21e622d5ce0243a7a9d96e9bd654c7015f18b1beff044526cbe804f01dee9c961a7a0ebe1204
✅ No Merge Conflicts DetectedThis PR currently has no conflicts with other open PRs. |
UdjinM6
approved these changes
Nov 7, 2025
UdjinM6
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK 6fd7059
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue being fixed or feature implemented
See commits
Checklist:
Go over all the following points, and put an
xin all the boxes that apply.