You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/release-process.md
+74-49Lines changed: 74 additions & 49 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,12 +11,12 @@ Before every minor and major release:
11
11
*[ ] Update DIPs with any changes introduced by this release (see [this pull request](https://github.com/dashpay/dips/pull/142) for an example)
12
12
*[ ] Update version in `configure.ac` (don't forget to set `CLIENT_VERSION_IS_RELEASE` to `true`) (don't forget to set `CLIENT_VERSION_RC` to `0`)
13
13
*[ ] Write release notes (see below)
14
-
*[ ] Update `src/chainparams.cpp` nMinimumChainWork with information from the getblockchaininfo rpc.
15
-
*[ ] Update `src/chainparams.cpp` defaultAssumeValid with information from the getblockhash rpc.
14
+
*[ ] Update `src/chainparams.cpp``nMinimumChainWork` with information from the `getblockchaininfo` rpc.
15
+
*[ ] Update `src/chainparams.cpp``defaultAssumeValid` with information from the `getblockhash` rpc.
16
16
- The selected value must not be orphaned so it may be useful to set the value two blocks back from the tip.
17
17
- Testnet should be set some tens of thousands back from the tip due to reorgs there.
18
-
- This update should be reviewed with a reindex-chainstate with assumevalid=0 to catch any defect
19
-
that causes rejection of blocks in the past history.
18
+
- This update should be reviewed with a `reindex-chainstate` with `assumevalid=0` to catch any defect
19
+
that causes rejection of blocks in the past history.
20
20
*[ ] Ensure all TODOs are evaluated and resolved if needed
21
21
*[ ] Verify Insight works
22
22
*[ ] Verify p2pool works (unmaintained; no responsible party)
@@ -26,8 +26,8 @@ Before every minor and major release:
26
26
Before every major release:
27
27
28
28
*[ ] Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/dashpay/dash/pull/5692) for an example.
29
-
*[ ] Update [`src/chainparams.cpp`](/src/chainparams.cpp) m_assumed_blockchain_size and m_assumed_chain_state_size with the current size plus some overhead (see [this](#how-to-calculate-m_assumed_blockchain_size-and-m_assumed_chain_state_size) for information on how to calculate them).
30
-
*[ ] Update `src/chainparams.cpp` chainTxData with statistics about the transaction count and rate. Use the output of the RPC `getchaintxstats`, see
29
+
*[ ] Update [`src/chainparams.cpp`](/src/chainparams.cpp)`m_assumed_blockchain_size` and `m_assumed_chain_state_size` with the current size plus some overhead (see [this](#how-to-calculate-m_assumed_blockchain_size-and-m_assumed_chain_state_size) for information on how to calculate them).
30
+
*[ ] Update `src/chainparams.cpp``chainTxData` with statistics about the transaction count and rate. Use the output of the RPC `getchaintxstats`, see
31
31
[this pull request](https://github.com/dashpay/dash/pull/5692) for an example. Reviewers can verify the results by running `getchaintxstats <window_block_count> <window_last_block_hash>` with the `window_block_count` and `window_last_block_hash` from your output.
32
32
33
33
### First time / New builders
@@ -37,24 +37,32 @@ Install Guix using one of the installation methods detailed in
37
37
38
38
Check out the source code in the following directory hierarchy.
3. The `SHA256SUMS.asc` combined signature file you just created
193
-
* [ ] Validate SHA256SUMS.asc and all binaries attached to GitHub draft release are correct
213
+
* [ ] Validate `SHA256SUMS.asc` and all binaries attached to GitHub draft release are correct
194
214
* [ ] Notarize macOS binaries
195
-
* [ ] Release on GitHub
215
+
* [ ] Publish release on GitHub
216
+
* [ ] Fast-forward `master` branch on GitHub
196
217
* [ ] Update the dash.org download links
197
218
* [ ] Ensure that docker hub images are up to date
198
219
199
220
### Announce the release:
200
221
201
-
- [ ] Release on Dash forum: https://www.dash.org/forum/topic/official-announcements.54/ (necessary so we have a permalink to use on twitter, reddit, etc.)
202
-
- [ ] Prepare product brief (major versions only)
203
-
- [ ] Prepare a release announcement tweet
204
-
- [ ] Follow-up tweets with any important block heights for consensus changes
205
-
- [ ] Post on Reddit
206
-
- [ ] Celebrate
222
+
* [ ] Release on Dash forum: https://www.dash.org/forum/topic/official-announcements.54/ (necessary so we have a permalink to use on twitter, reddit, etc.)
223
+
* [ ] Prepare product brief (major versions only)
224
+
* [ ] Prepare a release announcement tweet
225
+
* [ ] Follow-up tweets with any important block heights for consensus changes
226
+
* [ ] Post on Reddit
227
+
* [ ] Celebrate
207
228
208
229
### After the release:
209
-
- [ ] Submit patches to BTCPay to ensure they use latest / compatible version see https://github.com/dashpay/dash/issues/4211#issuecomment-966608207
210
-
- [ ] Update Core and User docs (docs.dash.org)
211
-
- [ ] Test Docker build runs without error in Dashmate
212
-
- [ ] Add new Release Process items to repo [Release Process](release-process.md) document
230
+
* [ ] Submit patches to BTCPay to ensure they use latest / compatible version see https://github.com/dashpay/dash/issues/4211#issuecomment-966608207
231
+
* [ ] Update Core and User docs (docs.dash.org)
232
+
* [ ] Test Docker build runs without error in Dashmate
233
+
* [ ] Add new Release Process items to repo [Release Process](release-process.md) document
234
+
* [ ] Merge `master` branch back into `develop` so that `master` could be fast-forwarded on next release again
213
235
214
236
### MacOS Notarization
215
237
216
238
#### Prerequisites
217
239
Make sure you have the latest Xcode installed on your macOS device. You can download it from the Apple Developer website.
218
240
You should have a valid Apple Developer ID under the team you are using which is necessary for the notarization process.
219
-
To avoid including your password as cleartext in a notarization script, you can provide a reference to a keychain item. You can add a new keychain item named AC_PASSWORD from the command line using the notarytool utility:
220
-
```
241
+
To avoid including your password as cleartext in a notarization script, you can provide a reference to a keychain item. You can add a new keychain item named `AC_PASSWORD` from the command line using the `notarytool` utility:
Replace "{version}" with the version you are notarizing. This command uploads the .dmg file to Apple's notary service.
233
255
234
-
The --wait option makes the command wait to return until the notarization process is complete.
256
+
Replace `{version}` with the version you are notarizing. This command uploads the .dmg file to Apple's notary service.
257
+
258
+
The `--wait` option makes the command wait to return until the notarization process is complete.
235
259
236
260
If the notarization process is successful, the notary service generates a log file URL. Please save this URL, as it contains valuable information regarding the notarization process.
237
261
238
262
#### Notarization Validation
239
263
240
-
After successfully notarizing the .dmg file, extract "Dash-Qt.app" from the .dmg.
264
+
After successfully notarizing the .dmg file, extract `Dash-Qt.app` from the .dmg.
241
265
To verify that the notarization process was successful, run the following command:
242
266
243
-
```
267
+
```sh
244
268
spctl -a -vv -t install Dash-Qt.app
245
269
```
246
-
Replace "Dash-Qt.app" with the path to your .app file. This command checks whether your .app file passes Gatekeeper’s
247
-
checks. If the app is successfully notarized, the command line will include a line stating source=Notarized Developer ID.
270
+
271
+
Replace `Dash-Qt.app` with the path to your .app file. This command checks whether your .app file passes Gatekeeper’s
272
+
checks. If the app is successfully notarized, the command line will include a line stating `source=<Notarized Developer ID>`.
0 commit comments