From 29cbec1d4f53385e9ecb5df678ebe66d162215ea Mon Sep 17 00:00:00 2001 From: Devin Bileck <603793+devinbileck@users.noreply.github.com> Date: Sat, 22 Dec 2018 14:37:25 -0800 Subject: [PATCH 1/5] Update windows install experience - Increase the minimum supported OS version to Windows 7 with SP1. Previously it was Windows XP which has been EOL for some time now. Hopefully no one is still using Windows XP. - Show a final dialog once the install has completed. This will inform the user that the install has completed with an option to launch the application. Previously it would skip this final dialog and immediately launch the application, but the user may not want to launch it immediately. - Create an application shortcut on the user's desktop. - Check if the application is running prior to install or uninstall and abort with a prompt to the user that the application must first be closed. - German, French, and Spanish translations. The installer should auto-detect the OS language and display all text in the appropriate language. For now I have just added a couple languages, but it is very easy to add any of the other languages supported by Inno Setup. - Additionally, I removed a few unnecessary items that weren't being utilized such as installing a service. --- desktop/package/windows/Bisq-setup-image.bmp | Bin 0 -> 154542 bytes desktop/package/windows/Bisq.iss | 116 ++++++++++++------- 2 files changed, 76 insertions(+), 40 deletions(-) create mode 100644 desktop/package/windows/Bisq-setup-image.bmp diff --git a/desktop/package/windows/Bisq-setup-image.bmp b/desktop/package/windows/Bisq-setup-image.bmp new file mode 100644 index 0000000000000000000000000000000000000000..bfa68915528a1605aa1ea4f2b790c791547a7787 GIT binary patch literal 154542 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 0); + FWbemObjectSet := Unassigned; + FWMIService := Unassigned; + FSWbemLocator := Unassigned; + except + end; +end; + function InitializeSetup(): Boolean; begin -// Possible future improvements: -// if version less or same => just launch app -// if upgrade => check if same app is running and wait for it to exit -// Add pack200/unpack200 support? Result := True; + if IsAppRunning() then + begin + MsgBox(ExpandConstant('{cm:AppIsRunning}'), mbCriticalError, MB_OK); + Result := False; + end; +end; + +function InitializeUninstall(): Boolean; +begin + Result := True; + if IsAppRunning() then + begin + MsgBox(ExpandConstant('{cm:AppIsRunning}'), mbCriticalError, MB_OK); + Result := False; + end; end; From 01e0c05c2e5b775aeb1f55d97ea2f5c25f61b565 Mon Sep 17 00:00:00 2001 From: Devin Bileck <603793+devinbileck@users.noreply.github.com> Date: Sat, 22 Dec 2018 14:59:37 -0800 Subject: [PATCH 2/5] Update install_java.bat Do not download 7zip if it had previously been downloaded, for example if this script had previously been run. And don't delete it at the end of this script in case this script is run again. This is an attempt to save time and bandwidth. --- scripts/install_java.bat | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/scripts/install_java.bat b/scripts/install_java.bat index 3a2f0ae1279..367157998b2 100644 --- a/scripts/install_java.bat +++ b/scripts/install_java.bat @@ -30,9 +30,11 @@ if exist "%PROGRAMFILES%\Java\openjdk\jdk-%jdk_version%" ( echo Downloading required files to %TEMP% powershell -Command "Invoke-WebRequest %jdk_url% -OutFile $env:temp\%jdk_filename%.tar.gz" -:: Download 7zip (command line version) in order to extract the tar.gz file since there is no native support in Windows -powershell -Command "Invoke-WebRequest https://www.7-zip.org/a/7za920.zip -OutFile $env:temp\7za920.zip" -powershell -Command "Expand-Archive $env:temp\7za920.zip -DestinationPath $env:temp\7za920 -Force" +if not exist "%TEMP%\7za920\7za.exe" ( + :: Download 7zip ^(command line version^) in order to extract the tar.gz file since there is no native support in Windows + powershell -Command "Invoke-WebRequest https://www.7-zip.org/a/7za920.zip -OutFile $env:temp\7za920.zip" + powershell -Command "Expand-Archive $env:temp\7za920.zip -DestinationPath $env:temp\7za920 -Force" +) echo Extracting and installing JDK to %PROGRAMFILES%\Java\openjdk\jdk-%jdk_version% "%TEMP%\7za920\7za.exe" x "%TEMP%\%jdk_filename%.tar.gz" -o"%TEMP%" -r -y @@ -41,8 +43,9 @@ md "%PROGRAMFILES%\Java\openjdk" move "%TEMP%\openjdk-%jdk_version%\jdk-%jdk_version%" "%PROGRAMFILES%\Java\openjdk" echo Removing downloaded files -rmdir /S /Q %TEMP%\7za920 -del /Q %TEMP%\7za920.zip +if exist "%TEMP%\7za920.zip" ( + del /Q %TEMP%\7za920.zip +) rmdir /S /Q %TEMP%\openjdk-%jdk_version% del /Q %TEMP%\%jdk_filename%.tar del /Q %TEMP%\%jdk_filename%.tar.gz From 257a8627e6873ee19bb7b7ec22eda1e7309104fa Mon Sep 17 00:00:00 2001 From: Oscar Guindzberg Date: Thu, 3 Jan 2019 14:49:45 -0300 Subject: [PATCH 3/5] Remove "pricenode" direct dependency on "assets" It depends on "assets" already because it is a depencendy of "core" --- build.gradle | 1 - 1 file changed, 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14607a995dc..b693debfb7a 100644 --- a/build.gradle +++ b/build.gradle @@ -354,7 +354,6 @@ configure(project(':pricenode')) { dependencies { compile project(":core") - compile project(":assets") compile("org.knowm.xchange:xchange-bitcoinaverage:4.3.3") compile("org.knowm.xchange:xchange-coinmarketcap:4.3.3") compile("org.knowm.xchange:xchange-poloniex:4.3.3") From f4a40ca6f62069f1b3bfa49dd6111ecc2086c950 Mon Sep 17 00:00:00 2001 From: Oscar Guindzberg Date: Thu, 3 Jan 2019 15:57:26 -0300 Subject: [PATCH 4/5] Be able to upgrade bitcoinj without upgrading libdohj --- build.gradle | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/build.gradle b/build.gradle index b693debfb7a..17b60df52f8 100644 --- a/build.gradle +++ b/build.gradle @@ -34,6 +34,7 @@ configure(subprojects) { joptVersion = '5.0.3' langVersion = '3.4' libdohjVersion = '7be803fa' + bitcoinjVersion = 'cd30ad5b' logbackVersion = '1.1.10' lombokVersion = '1.18.2' mockitoVersion = '2.21.0' @@ -133,6 +134,10 @@ configure(project(':assets')) { dependencies { compile("network.bisq.libdohj:libdohj-core:$libdohjVersion") { exclude(module: 'protobuf-java') + exclude(module: 'bitcoinj-core') + } + compile("com.github.bisq-network.bitcoinj:bitcoinj-core:$bitcoinjVersion") { + exclude(module: 'protobuf-java') } compile "commons-codec:commons-codec:$codecVersion" compile "org.apache.commons:commons-lang3:$langVersion" @@ -170,6 +175,11 @@ configure(project(':common')) { exclude(module: 'guava') } compile("network.bisq.libdohj:libdohj-core:$libdohjVersion") { + exclude(module: 'slf4j-api') + exclude(module: 'protobuf-java') + exclude(module: 'bitcoinj-core') + } + compile("com.github.bisq-network.bitcoinj:bitcoinj-core:$bitcoinjVersion") { exclude(module: 'jsr305') exclude(module: 'slf4j-api') exclude(module: 'guava') From f12ff5ce9234e33475b0d386096b1b66cb2e319d Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Fri, 4 Jan 2019 13:50:38 +0100 Subject: [PATCH 5/5] Adjust % value for offer price tolerance window - There have been some reports that the 0,5% value is too narrow so we increase it to 1%. --- core/src/main/java/bisq/core/offer/Offer.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/bisq/core/offer/Offer.java b/core/src/main/java/bisq/core/offer/Offer.java index 92b3bf76d6d..8d4c272e5a7 100644 --- a/core/src/main/java/bisq/core/offer/Offer.java +++ b/core/src/main/java/bisq/core/offer/Offer.java @@ -70,11 +70,11 @@ @Slf4j public class Offer implements NetworkPayload, PersistablePayload { - // We allow max. 0.5 % difference between own offerPayload price calculation and takers calculation. + // We allow max. 1 % difference between own offerPayload price calculation and takers calculation. // Market price might be different at maker's and takers side so we need a bit of tolerance. // The tolerance will get smaller once we have multiple price feeds avoiding fast price fluctuations // from one provider. - final static double PRICE_TOLERANCE = 0.005; + final static double PRICE_TOLERANCE = 0.01; /////////////////////////////////////////////////////////////////////////////////////////// // Enums