Skip to content

Commit

Permalink
Merge pull request bisq-network#4792 from ripcurlx/update-data-stores…
Browse files Browse the repository at this point in the history
…-for-v1.5.0

Update data stores for v1.5.0
  • Loading branch information
sqrrm authored Nov 14, 2020
2 parents fcf7de6 + 19432e4 commit 627e067
Show file tree
Hide file tree
Showing 9 changed files with 48 additions and 41 deletions.
2 changes: 1 addition & 1 deletion common/src/main/java/bisq/common/app/Version.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public class Version {
* This must not contain each version but only those where we add new version-tagged resource files for
* historical data stores.
*/
public static final List<String> HISTORICAL_RESOURCE_FILE_VERSION_TAGS = Arrays.asList("1.4.0");
public static final List<String> HISTORICAL_RESOURCE_FILE_VERSION_TAGS = Arrays.asList("1.4.0", "1.5.0");

public static int getMajorVersion(String version) {
return getSubVersion(version, 0);
Expand Down
3 changes: 2 additions & 1 deletion core/src/main/resources/wallet/checkpoints.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
TXT CHECKPOINTS 1
0
323
324
AAAAAAAAB+EH4QfhAAAH4AEAAABjl7tqvU/FIcDT9gcbVlA4nwtFUbxAtOawZzBpAAAAAKzkcK7NqciBjI/ldojNKncrWleVSgDfBCCn3VRrbSxXaw5/Sf//AB0z8Bkv
AAAAAAAAD8EPwQ/BAAAPwAEAAADfP83Sx8MZ9RsrnZCvqzAwqB2Ma+ZesNAJrTfwAAAAACwESaNKhvRgz6WuE7UFdFk1xwzfRY/OIdIOPzX5yaAdjnWUSf//AB0GrNq5
AAAAAAAAF6EXoRehAAAXoAEAAADonWzAaUAKd30XT3NnHKobZMnLOuHdzm/xtehsAAAAAD8cUJA6NBIHHcqPHLc4IrfHw+6mjCGu3e+wRO81EvpnMVqrSf//AB1ffy8G
Expand Down Expand Up @@ -324,3 +324,4 @@ ErrgKoeevYMpfx+WAAnYAADg/y/Zjrsqarpkd5PIhR21HJ55cSMyymaaBAAAAAAAAAAAAKPhdir1YiPG
EzihxS/9MDJCHTIfAAnf4AAAQCAGq48tARXjK5m5ygIMjtFJqlySqsdXBgAAAAAAAAAAAPJaEbuOk1ZnpJ4y6SR6yn+dY6fB5QaJHhb6QWgMXit2KCxWXxI6EBdJ5KeT
E7TgpleovIarz4zNAAnnwADg/zelTTDUGas2KxqgEH2WV5EilGEY8VASBgAAAAAAAAAAAJVJFZNI4Kxh1AUjFLdY7k6MLVY47YSfxE1acJIuEMlMpcRmX6qSDhc6QrMB
FD83ZUplM/sW8MloAAnvoAAAQCBUTUlenrKovQvyeNaLUYJBmxfT5hcuDQAAAAAAAAAAAIaxf5jfjr8MifLPauOJeh6OWDYxSUUPluG5E8hVh+rrWD95X96VDhf7Be0Q
FMlwaWsoL8M1y3sGAAn3gAAAICD2It4VF1dZC7XR51SjkuBPy2c1ot7iBQAAAAAAAAAAAOto2NUucHczD9ZpnC5X1L05HcifvGpMh8gwIt7mZ2DW3BWLX04TDhdKX1k6
6 changes: 5 additions & 1 deletion desktop/package/macosx/copy_dbs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,16 @@

cd $(dirname $0)/../../../

version="1.5.0"

# Set BISQ_DIR as environment var to the path of your locally synced Bisq data directory e.g. BISQ_DIR=~/Library/Application\ Support/Bisq

dbDir=$BISQ_DIR/btc_mainnet/db
resDir=p2p/src/main/resources

cp "$dbDir/TradeStatistics2Store" "$resDir/TradeStatistics2Store_BTC_MAINNET"
# Only commit new TradeStatistics3Store if you plan to add it to
# https://github.com/bisq-network/bisq/blob/0345c795e2c227d827a1f239a323dda1250f4e69/common/src/main/java/bisq/common/app/Version.java#L40 as well.
cp "$dbDir/TradeStatistics3Store" "$resDir/TradeStatistics3Store_${version}_BTC_MAINNET"
cp "$dbDir/AccountAgeWitnessStore" "$resDir/AccountAgeWitnessStore_BTC_MAINNET"
cp "$dbDir/DaoStateStore" "$resDir/DaoStateStore_BTC_MAINNET"
cp "$dbDir/SignedWitnessStore" "$resDir/SignedWitnessStore_BTC_MAINNET"
3 changes: 2 additions & 1 deletion docs/data-stores.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@
With every release we include the latest snapshot of Mainnet and Testnet data from the P2P network within the client.

* Start your Bisq client on Mainnet and Testnet and let it run until it is fully synced.
* Run [copy_dbs.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/copy_dbs.sh) to copy the
* Run [copy_dbs.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/copy_dbs.sh) to copy the
required files into the [p2p resources directory](https://github.com/bisq-network/bisq/blob/master/p2p/src/main/resources).
* To add a new trade statistic snapshot just add it to the list of trade statistic snapshots in https://github.com/bisq-network/bisq/blob/0345c795e2c227d827a1f239a323dda1250f4e69/common/src/main/java/bisq/common/app/Version.java#L40
60 changes: 29 additions & 31 deletions docs/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@
* Webpage (Prepare PR)
* Update version number in:
* [_config.yml](https://github.com/bisq-network/bisq-website/blob/master/_config.yml)

* Update currency list in [market_currency_selector.html](https://github.com/bisq-network/bisq-website/blob/master/_includes/market_currency_selector.html) (use [MarketsPrintTool](https://github.com/bisq-network/bisq/blob/master/desktop/src/test/java/bisq/desktop/MarketsPrintTool.java)
to create HTML content).
* Update [roadmap](https://github.com/bisq-network/bisq-website/blob/master/roadmap.md) with new release notes.


### Bisq maintainers, suggestion for writing release notes
To be able to create release notes before you make the final release tag, you can temporarily create a local tag and
Expand All @@ -27,7 +25,7 @@ Write release notes. git shortlog helps a lot, for example:
Generate list of authors:

git log --format='- %aN' v(current version, e.g. 0.9.3)..v(new version, e.g. 0.9.4) | sort -fiu

1. Prepare the release notes with major changes from user perspective.
2. Prepare a short version of the release notes for the in-app update popup

Expand All @@ -38,7 +36,7 @@ You can use a virtualization solution like [VirtualBox](https://www.virtualbox.o
#### VirtualBox recommended configuration
Although performance of VMs might vary based on your hardware configuration following setup works pretty well on macOS.

Use VirtualBox < 5.2.22: Using a more recent version makes VMs hardly usable on a MacBook Pro (15-inch, 2016)
Use VirtualBox > 6.1
with following configuration:
* System > Motherboard > Base Memory: 2048 MB
* System > Processor > Processor(s): 2 CPUs
Expand All @@ -54,7 +52,7 @@ with following configuration:

##### Linux VM
* Ubuntu 16.04.4 64bit
* Recommended virtual disk size: 15 GB
* Recommended virtual disk size: 25 GB

##### macOS VM
* macOS X 10.11 (El Capitan) 64bit
Expand All @@ -74,17 +72,17 @@ with following configuration:

#### macOS

1. Make sure all version numbers are updated (update version variables and run [replace_version_number.sh](https://github.com/bisq-network/bisq/blob/master/bisq/desktop/package/macosx/replace_version_number.sh)).
1. Make sure all version numbers are updated (update version variables and run [replace_version_number.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/replace_version_number.sh)).
2. Set environment variable e.g. export BISQ_GPG_USER=[email protected] to ~/.profile file or the like... (one time effort)
3. Update [vmPath variable](https://github.com/bisq-network/bisq/blob/b4b5d0bb12c36afbe1aa6611dd8451378df6db8c/desktop/package/macosx/create_app.sh#L42) if necessary
4. Run [create_app.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/create_app.sh)

Build output expected in deploy directory (opened after successful build process):
1. `Bisq-${NEW-VERSION}.dmg` macOS signed installer
2. `Bisq-${NEW-VERSION}.jar` Deterministic fat jar
3. `Bisq-${NEW-VERSION}.jar.txt` sha256 sum of deterministic fat jar

1. `Bisq-${NEW-VERSION}.dmg` macOS signed installer
2. `Bisq-${NEW-VERSION}.jar` Deterministic fat jar
3. `Bisq-${NEW-VERSION}.jar.txt` sha256 sum of deterministic fat jar

The build script also copies over the deterministic fat jar into the shared folders for the other VMs (Windows & Linux).
Before building the other binaries install the generated Bisq app on macOS and verify that everything works as expected.

Expand All @@ -93,8 +91,8 @@ Before building the other binaries install the generated Bisq app on macOS and v
* Run `desktop/package/linux/package.sh` from the shared VM folder

Build output expected:
1. `Bisq-${NEW-VERSION}.deb` package for distributions that derive from Debian

1. `Bisq-${NEW-VERSION}.deb` package for distributions that derive from Debian
2. `Bisq-${NEW-VERSION}.rpm` package for distributions that derive from Redhat based distros

* Install and run generated package
Expand All @@ -104,20 +102,20 @@ Build output expected:
* Run `desktop/package/windows/package.bat` from the shared VM folder

Build output expected:
1. `Bisq-${NEW-VERSION}.exe` Windows unsigned installer

1. `Bisq-${NEW-VERSION}.exe` Windows unsigned installer
2. `Bisq-${NEW-VERSION}.exe.txt` sha256 sum of installer

### Sign release on macOS

* Run [finalize.sh](https://github.com/bisq-network/bisq/blob/master/bisq/desktop/package/macosx/finalize.sh)
* Run [finalize.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/finalize.sh)

Build output expected:

1. `F379A1C6.asc` Sig key of Manfred Karrer
2. `5BC5ED73.asc` Sig key of Chris Beams
3. `29CDFD3B.asc`Sig key of Christoph Atteneder
4. `signingkey.asc` Fingerprint of key that was used for these builds
1. `F379A1C6.asc` Sig key of Manfred Karrer
2. `5BC5ED73.asc` Sig key of Chris Beams
3. `29CDFD3B.asc`Sig key of Christoph Atteneder
4. `signingkey.asc` Fingerprint of key that was used for these builds
5. `Bisq-${NEW-VERSION}.jar.txt` Sha256 sum of deterministic fat jar
6. `Bisq-${NEW-VERSION}.dmg` macOS installer
7. `Bisq-${NEW-VERSION}.dmg.asc` Signature for macOS installer
Expand All @@ -127,23 +125,23 @@ Build output expected:
11. `Bisq-${NEW-VERSION}.rpm.asc` Signature for Redhat based distro package
12. `Bisq-${NEW-VERSION}.exe` Windows installer
13. `Bisq-${NEW-VERSION}.exe.asc` Signature for Windows installer

* Run a AV scan over all files on the Windows VM where the files got copied over.

### Final test

* Make at least one mainnet test trade with some exotic currency to not interfere with real traders.

### Tag and push release to master

If all was successful:
If all was successful:

* commit changes of new version number (update version number for release of e.g. v0.9.4)
* commit changes of new version number (update version number for release of e.g. v1.5.0)
* create tag for the release
```
git tag -s v(new version, e.g. 0.9.4) -m"Release v(new version, e.g. 0.9.4)"
git tag -s v(new version, e.g. 1.5.0) -m"Release v(new version, e.g. 1.5.0)"
```
* Revert back to SNAPSHOT where necessary (change version variable (e.g. 0.9.4) in shell script [insert_snapshot_version.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/insert_snapshot_version.sh) and run it) and commit these changes.
* Revert back to SNAPSHOT where necessary (change version variable (e.g. 1.5.0) in shell script [insert_snapshot_version.sh](https://github.com/bisq-network/bisq/blob/master/desktop/package/macosx/insert_snapshot_version.sh) and run it) and commit these changes.
* Push all commits to master including the new tag
```
git push --tags origin master
Expand All @@ -162,15 +160,15 @@ If all was successful:
#### Post GitHub release
* Apply “A newer version is already available! Please don’t use this version anymore.” to old GitHub releases.
* Merge the webpage PR and check if they got deployed properly.
* Start the Alert sender app (CMD + M) remove the old version and send the update message.
* Start the Alert sender app (CMD + M) remove the old version and send the update message.
Check the checkbox for update, set the version number (e.g. 0.9.4) and add the short version of the release notes.
* After sending the Update message leave it running for about 1 minute to give time for good propagation.
* Make a backup of that alert sender app data directory

### Announce the release

* Forum
* Slack (#general channel)
* Keybase (#general channel)
* Twitter
* Optionally reddit /r/Bisq
* Notify @freimair so that he can start updating [the Arch User Repository](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=bisq-git)
Expand Down
4 changes: 2 additions & 2 deletions p2p/src/main/resources/AccountAgeWitnessStore_BTC_MAINNET
Git LFS file not shown
4 changes: 2 additions & 2 deletions p2p/src/main/resources/DaoStateStore_BTC_MAINNET
Git LFS file not shown
4 changes: 2 additions & 2 deletions p2p/src/main/resources/SignedWitnessStore_BTC_MAINNET
Git LFS file not shown
Git LFS file not shown

0 comments on commit 627e067

Please sign in to comment.