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
This document describes the manual release process for xrpl4j.
5
+
6
+
## Stable Releases
7
+
8
+
1. Checkout main and pull in latest changes from remote
9
+
```
10
+
git checkout main
11
+
git pull
12
+
```
13
+
2. Create a new release branch from main (e.g. `releases/v6.0` for major version release, `releases/v6.1` for minor version release)
14
+
```
15
+
git checkout -b releases/v6.1
16
+
```
17
+
18
+
3. Set intended release version
19
+
```
20
+
mvn versions:set -DnewVersion=6.1.0
21
+
```
22
+
4. Commit and push changes in `pom.xml` files created by step #3.
23
+
5. Verify Integration tests that executes on `Devnet` passes in GitHub actions. Integration tests that executes on
24
+
`Testnet` might fail as the amendment would generally not be available on `Testnet` yet.
25
+
6. Create a new tag for the release and push to remote
26
+
```
27
+
git tag v6.1.0
28
+
git push origin v6.1.0
29
+
```
30
+
7. Generate and deploy artifacts to [maven central repository](https://central.sonatype.com/) (This would prompt to sign the artifacts using private key)
31
+
```
32
+
mvn clean deploy -DskipTests -P release
33
+
```
34
+
8. Approve the release on [maven central repository](https://central.sonatype.com/)
35
+
9. Update the version to next patch version, commit and push to remote
36
+
```
37
+
mvn versions:set -DnewVersion=6.1.1
38
+
git commit -m "update version to 6.1.1"
39
+
git push
40
+
```
41
+
10. Generate release notes on GitHub using `v6.1.0` git tag.
42
+
11. Subsequent bug fixes if any are merged into `releases/v6.1` branch and released as patch version upgrades
43
+
44
+
## Release candidates
45
+
46
+
Steps remains same as stable release. We would follow Semantic Versioning and name the version something like `6.1.
47
+
0-rc.1`. In the event when the change we want to release as release candidate is not merged in the `main` branch, we
48
+
would release it from feature branch itself and tag the commit of feature branch.
0 commit comments