From d2180942697d02fb8fec0a2de90e56c70f329329 Mon Sep 17 00:00:00 2001 From: Chris Beams Date: Thu, 8 Mar 2018 19:36:12 +0100 Subject: [PATCH] Bump Maven artifact versions to 0.7.0-SNAPSHOT Problem: When resolving Bisq libraries, e.g. `core` or `network` from JitPack for use in other components like bisq-seednode or bisq-pricenode, we have historically, resolved them by tag or by branchname, e.g. with GAV coordinates like `io.bisq:core:v0.6.7` or `io.bisq:core:master`. This works well enough, but now that we are beginning to modularize more aggressively, we want to make sure that it's possible at any time to publish the latest snapshots of these libraries to one's own local ~/.m2 repository such that they can be easily resolved from downstream components without the need to push commits to the bisq-network/exchange remote, and to wait for JitPack to do a just-in-time build. Solution: By updating the version value of all modules here in the exchange repository from 0.6.7 => 0.7.0-SNAPSHOT, one can run `mvn install` to publish the latest "snapshot" of exchange libraries to the local ~/.m2 repository and be sure to resolve them from whatever downstream component that they are working on. The -SNAPSHOT qualifier ensures that no caching occurs, and that the very latest such binary will always be used. This new arrangement creates a situation where one can transparently resolve these dependencies remotely from JitPack and then subsequently resolve them locally from one's ~/.m2 repository without having to change a line of code. It also opens up the ability to manage all Bisq components together in a single IDE window as if they were all in one repository, avoiding the need even to issue a `mvn install` command to publish locally--but that's not the main focus of this change. Note that the change to 0.7.0 here is based on the fact that we already planned to have the next version shipped from `master` be 0.7.0, as there are quite a few new UI changes that probably merit the bump in minor version. The version change also aligns well with the fact that we're modularizing a number of components right now, and all newly-extracted components have been jumping to v0.7.0 to indicate their new independent status. This has been the case with bisq-seednode and pricenode so far. Finally, it is important to note here that the ONLY versions updated by this change are those specific to Maven metadata and therefore artifact management / dependency resolution. The version that the Bisq desktop client reports in its UI and to the network in its user agent has NOT been changed, on account of the fact that users may run Bisq from source, and we need to think through more fully the implications of reporting a verison like 0.7.0-SNAPSHOT in those situations. Here is a list of files containing the old version (0.6.7) that have NOT been updated: - common/src/main/java/io/bisq/common/app/Version.java - package/linux/32bitBuild.sh - package/linux/Dockerfile - package/osx/create_app.sh - package/osx/finalize.sh - package/windows/32bitBuild.bat - package/windows/64bitBuild.bat - package/windows/Bisq.iss - package/linux/64bitBuild.sh One thing we know for sure that wouldn't work here is that Bisq's Version class currently does not support -SNAPSHOT qualifiers. It just breaks the version string validation entirely. So we'd need to patch that in any case if we do decide it's a good idea to let pre-release builds report their version accurately. --- common/pom.xml | 2 +- consensus/pom.xml | 2 +- core/pom.xml | 2 +- gui/pom.xml | 2 +- monitor/pom.xml | 2 +- network/pom.xml | 2 +- pom.xml | 2 +- statistics/pom.xml | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/common/pom.xml b/common/pom.xml index 96fec3e1a7..139ce99187 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -4,8 +4,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0 diff --git a/consensus/pom.xml b/consensus/pom.xml index c1a6c65911..3185c8ee8a 100644 --- a/consensus/pom.xml +++ b/consensus/pom.xml @@ -4,8 +4,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0 diff --git a/core/pom.xml b/core/pom.xml index bf2066e55e..c97239c356 100755 --- a/core/pom.xml +++ b/core/pom.xml @@ -5,8 +5,8 @@ parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT core diff --git a/gui/pom.xml b/gui/pom.xml index 718d7f5d0c..1956964cc4 100644 --- a/gui/pom.xml +++ b/gui/pom.xml @@ -21,8 +21,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0 diff --git a/monitor/pom.xml b/monitor/pom.xml index 03361771c0..74e272fae3 100644 --- a/monitor/pom.xml +++ b/monitor/pom.xml @@ -21,8 +21,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0 diff --git a/network/pom.xml b/network/pom.xml index 7d0f3ae977..c0351ab304 100644 --- a/network/pom.xml +++ b/network/pom.xml @@ -4,8 +4,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0 diff --git a/pom.xml b/pom.xml index c2e902dede..0b405c8f31 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ io.bisq.exchange parent pom - 0.6.7 + 0.7.0-SNAPSHOT Bisq - The decentralized exchange network https://bisq.io diff --git a/statistics/pom.xml b/statistics/pom.xml index 3c9b17db06..f71b07020c 100644 --- a/statistics/pom.xml +++ b/statistics/pom.xml @@ -21,8 +21,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> parent - 0.6.7 io.bisq.exchange + 0.7.0-SNAPSHOT 4.0.0