Commit Graph

168 Commits

Author SHA1 Message Date
HenrikJannsen
32a8091484
Add inventory module and dependencies 2024-06-02 15:02:05 +07:00
Devin Bileck
0f373cee43
Restore QR code scanner feature for mobile notification pairing
This restores the functionality that was removed in b5beea58. However,
this implementation utilizes the JavaCV library rather than the
webcam-capture library as discussed in #4940. As a result, this should
now provide macOS support.
2024-04-01 21:52:40 -07:00
HenrikJannsen
4e13cd3934
Add sha hash for protoc-3.19.1-osx-aarch_64.exe 2024-03-08 18:29:34 +07:00
Alva Swanson
38515ce7ae
Add JUnit MockitoExtension library 2023-12-28 08:50:13 +01:00
Alva Swanson
0f33c697d1
Update to Gradle 7.6.3 2023-10-17 00:25:21 +02:00
Alva Swanson
49bc7267b3
Target latest netlayer (2b459dc) 2023-10-10 20:04:00 +02:00
Alva Swanson
5ac3a10806
Support external Tor hostname 2023-10-08 23:19:32 +02:00
Alva Swanson
65667cf4e7
Add Gradle Toolchain Resolver 2023-09-10 18:23:56 +02:00
Alva Swanson
44ab029c7e
Gradle: Apply shadow plugin only to desktop module 2023-08-05 15:18:59 +02:00
Alva Swanson
8bd51f2bd5
Gradle: Declare openjfx.javafx.plugin in version catalog 2023-08-04 13:38:14 +02:00
Alva Swanson
6b92629b86
Improve build-time: Lazily apply gRPC plugin
For details see:
https://docs.gradle.org/current/userguide/task_configuration_avoidance.html
2023-07-17 18:49:10 +02:00
Alva Swanson
d50df8f49f
Add JaCoCo Gradle Plugin to all modules
Co-authored-by: napoly <napolytan@protonmail.com>
2023-07-06 17:51:05 +02:00
Alva Swanson
14eb692a61
Fix broken gson version enforcement
We strictly enforce version 2.8.5 for all modules, but the cli module
transitively depends on version 2.8.6.
2023-05-31 16:20:17 +08:00
Alva Swanson
87ef76e323
Add missing junit-bom-5.7.0.pom to verification metadata 2023-05-26 14:17:41 +08:00
Alva Swanson
b5402d840b
Add bisq2 Gradle Tor Plugin 2023-05-09 18:09:35 +10:00
Alva Swanson
e5e09db3f1
GitHub Actions: Publish Gradle build scan 2023-05-08 17:49:41 +10:00
napoly
e19ffe2308
Upgrade JUnit4 to JUnit5 Jupiter 2023-05-04 20:04:49 +02:00
Alejandro García
1bc5d4a8c9
Target netlayer 0.7.6 2023-03-31 18:17:25 +11:00
Alva Swanson
faf9b23bc5
Gradle: Create bisq.java-conventions precompiled script 2023-02-05 21:58:46 +01:00
Alejandro García
9135d3a7ad
Target BitcoinJ version with "Reduce log level of two messages" patch 2023-01-15 17:13:39 +02:00
Alva Swanson
de600ddb30
Introduce Gradle Version Catalog
To simplify the build.gradle file, this change moves all version variables to
Gradle's version catalog.
2022-12-09 15:45:57 +02:00
Alva Swanson
80b10c88f6
Update to Gradle 7.6 2022-12-09 15:45:57 +02:00
Alva Swanson
90070c80c7
Fix broken Gradle Dependency Verification
The following artifacts failed verification:
  - javafx-base-16-linux.jar (org.openjfx:javafx-base:16) from repository MavenRepo
  - javafx-controls-16-linux.jar (org.openjfx:javafx-controls:16) from repository MavenRepo
  - javafx-fxml-16-linux.jar (org.openjfx:javafx-fxml:16) from repository MavenRepo
  - javafx-graphics-16-linux.jar (org.openjfx:javafx-graphics:16) from repository MavenRepo
  - protoc-3.19.1-linux-x86_64.exe (com.google.protobuf:protoc:3.19.1) from repository MavenRepo
  - protoc-gen-grpc-java-1.42.1-linux-x86_64.exe (io.grpc:protoc-gen-grpc-java:1.42.1) from repository MavenRepo
  - jackson-base-2.12.1.pom
  - protoc-3.19.1-windows-x86_64.exe
  - protoc-gen-grpc-java-1.42.1-windows-x86_64.exe
  - junit-bom-5.7.0.pom
  - javafx-base-16-win.jar
  - javafx-controls-16-win.jar
  - javafx-fxml-16-win.jar
  - javafx-graphics-16-win.jar
2022-12-06 20:34:17 +02:00
HenrikJannsen
0e4255c61b
Update verification-metadata.xml
Remove classpath to springframework

Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2022-11-25 12:37:02 -05:00
Christoph Atteneder
24fe4a0495
Update missing hashes for tor 0.7.5 update 2022-10-17 11:14:32 +02:00
Christoph Atteneder
40410daef4
Update tor-browser to v11.5.2 / tor-binary to v0.4.7.10 2022-10-04 12:10:51 +02:00
Christoph Atteneder
0232a00282
Use tag instead of commit hash for netlayer 2022-07-05 10:29:13 +02:00
Christoph Atteneder
2dafd42639
Update tor-browser to v11.0.15 / tor-binary to v0.4.7.8 2022-07-04 12:04:48 +02:00
chimp1984
03efe23449
Add netlayer 0.7.3 2022-06-20 23:05:42 +02:00
chimp1984
bbf79872ac
Update dependency verification metadata 2022-06-14 12:53:11 +02:00
Christoph Atteneder
b1a53531ad
Update dependency verification for changes in pricenode 2022-06-09 09:41:33 +02:00
Daniel Bast
064c7590a8
Update gradle wrapper to 7.3.3
Done via `./gradlew wrapper --gradle-version 7.3.3 --distribution-type all`

From the release description:

This is a patch release for Gradle 7.3.

It fixes the following issues:

* #19360 Upgrade checks to Log4j 2.17.0

We recommend users upgrade to 7.3.3 instead of 7.3.

See also https://github.com/gradle/gradle/releases/tag/v7.3.3
2021-12-25 13:03:14 +01:00
Chris Beams
07a139c927
Upgrade log4j 2.15.0 => 2.17.0
This change upgrades log4j to patch fixes for recently documented
CVE-2021-45046 CVE-2021-45105 vulnerabilities related to the Log4Shell
exploit.

Like the earlier fix, Bisq does not appear to be vulnerable to these
exploits because it does not use log4j directly, only transitively
depends on it. Nevertheless, the upgrade is still the safe bet.
2021-12-20 07:34:04 +01:00
Chris Beams
55becc59c0
Avoid Log4J "Log4Shell" exploit
This commit upgrades our transitive dependency on Log4J 2 from 2.14.1 to
the newly-released 2.15.0 to avoid the CVE described at
https://www.lunasec.io/docs/blog/log4j-zero-day/.

We do not use log4j directly anywhere in our codebase, so our exposure
to this exploit was already mitigated if not eliminated, but Spring Boot
depends on Log4J 2 internally. This commit upgrades Spring Boot's
underlying dependency on Log4J to 2.15.0 in the manner recommended at
https://github.com/spring-projects/spring-boot/issues/28958.
2021-12-10 10:40:36 +01:00
Chris Beams
31c6e16e63
Use Spring dependency-management plugin in pricenode
This is in preparation for addressing log4j 2 zero day exploit described
at https://www.lunasec.io/docs/blog/log4j-zero-day/. See full details
in the next commit.

Bringing in the dependency-management plugin results in many changes to
our Gradle verification metadata file, but all are BOM / POM / Module
manifests. No additional jar or code dependencies have been whitelisted
with this change.
2021-12-10 10:34:09 +01:00
Chris Beams
42b00b3a3e
Fix guava dependency issue
Problem: a

    NoSuchMethodError: 'java.util.stream.Collector
    com.google.common.collect.ImmutableMultiset.toImmutableMultiset()'

exception was being thrown when testing the previously-merged upgrade to
Gradle 7.3, as described at keybase://chat/bisq#testing/2466.

Solution: This problem is similar to the issue reported at
jeremylong/DependencyCheck#3221. The source of the problem was multiple
conflicting guava jars on the runtime classpath. This commit upgrades to
guava 30.1.1-jre which ensures a single jar on the classpath.
2021-11-21 17:06:10 +01:00
Chris Beams
ea629de1a1
Add missing metadata for jackson-base pom 2.12.1
Problem: When merging #5824, the absence of this entry caused a build
failure at dependency verification time against JDK11 and JDK15 on
Ubuntu-latest [1]. It may also cause failures on other JDK/OS
combinations, but the GitHub workflow was aborted before those failures
couldhave occurred. In any case, this omission did not create build
failures on any of the local development machines that tested the
aforementioned PR. Reasons for this discrepancy are unknown.

Solution: manually fetch the pom from [2], run `sha256sum` on it locally
and commit the result to the verification metadata file.

[1]: https://github.com/bisq-network/bisq/runs/4249640611?check_suite_focus=true#step:6:33
[2]: https://repo1.maven.org/maven2/com/fasterxml/jackson/jackson-base/2.11.1/jackson-base-2.11.1.pom
2021-11-18 12:38:01 +01:00
Christoph Atteneder
0ea056c6d2
Add Windows artifact hashes 2021-11-15 13:26:05 +01:00
Chris Beams
d964ded2af
Add missing verification metadata
These entries showed up as missing when @jmacxx ran this PR branch on
his local Linux machine under JDK 11. It is not clear why these
dependencies were required there and not elsewhere, e.g. under CI or on
my own Mac.
2021-11-13 15:28:43 +01:00
Chris Beams
5e93cfea47
Add missing dependency verification entries
This fixes the CI build failure at
https://github.com/bisq-network/bisq/runs/4198811212?check_suite_focus=true#step:6:306
by adding missing entries for findbugs, jsr305 and various netty
artifacts. It is not clear why these artifacts were required under linux
and not under MacOS.
2021-11-13 14:56:49 +01:00
Chris Beams
d7129a2d19
Disable verification for javadoc and source jars
Prior to this commit, IDEA would fail to build the project because it
downloads javadoc and source jars that do not have entries in the
verification file. These artifacts are now trusted by default as
documented at https://docs.gradle.org/current/userguide/dependency_verification.html#sec:skipping-javadocs
2021-11-13 14:43:03 +01:00
Chris Beams
e09d56b696
Upgrade Mockito to 4.0.0
This fixes the 'Unsupported class file major version 60' problem
documented at mockito/mockito#2065 to allow building Bisq on JDK 16+.
2021-11-13 13:53:38 +01:00
Chris Beams
990365d5b9
Upgrade Lombok to support JDK16+
This fixes the IllegalAccessError problem documented at
https://stackoverflow.com/a/66981165/622403
2021-11-13 13:43:00 +01:00
Chris Beams
3557fe9844
Add verification metadata for MacOS x86 artifacts
This commit updates the verification-metadata.xml file to include
osx-x86_64 variants of protoc dependencies.
2021-11-13 13:33:26 +01:00
Chris Beams
695fe39cf7
Add verification metadata for linux-specific artifacts
CI build failed after the previous commit because the new dependency
verification file was generated on a Mac and therefore did not include
linux-specification artifact variants. This same process will need to
be done under Windows as well.
2021-11-13 13:26:03 +01:00
Chris Beams
6f8197b419
Migrate to Gradle's built-in dependency verification
This commit removes the use of our fork of the gradle-witness plugin in
favor of Gradle's relatively new built-in dependency verification
feature [1].

The gradle/verification-metadata.xml file was produced using the
following command:

    ./gradlew --write-verification-metadata sha256 build

Where `build` is the usual `gradle build` command. All dependency
configurations are resolved this way, and written out to the file.

The resulting file contains 273 unique dependency declarations, as
compared to just 64 in our now-removed gradle-witness.gradle file. This
means that the coverage of dependencies verified is much more complete.

The new file contains the same sha256 checksums for each dependency as
the old file. This was manually spot-checked for a significant number of
the dependencies.

Like with gradle-witness, builds will break when dependencies are
upgraded (and now also when they are added). To fix these breakages, the
`--write-verification-metadata sha256` option must be provided to the
build. Note that new entries will be added for upgraded depedencies, but
old entries are not removed automatically from the file. These must be
removed manually.

[1]: https://docs.gradle.org/current/userguide/dependency_verification.html
2021-11-13 12:59:52 +01:00
Chris Beams
6a3d2642da
Upgrade to Gradle 7.3
This commit does what is necessary to upgrade from Gradle 6.6.1 to
7.3, including:

- generating the new Gradle wrapper
- replacing uses of 'compile' with 'implementation'
- replacing uses of 'testCompile' with 'testImplementation'

Moving from *compile to *implementation results in many more duplicated
dependency declarations throughout the file. These will be tidied up in
a subsequent commit.

Several dependencies needed to be upgraded in order to support this
change. One of them was Spring Boot, from 1.5.1 to 2.5.6. This is a
major upgrade that contained some breaking changes to the Spring Boot
Actuator. These changes required the removal of the pricenode's
/getVersion endpoint.

The Gradle Witness plugin has been disabled in this commit, because it
uses the now-removed 'compile' configuration. Use of the Witness plugin
will be removed entirely in a subsequent commit in favor of using
Gradle's new built-in dependency verification feature.
2021-11-13 12:09:22 +01:00
chimp1984
2f40eddae8
Use bitcoinj 42bbae9 (with fix required for bsq swaps) 2021-10-21 15:41:07 +02:00
cd2357
455a74a4a8
chore: Bump tor to v0.4.5.10
Update netlayer and tor-binary dependencies.
2021-10-18 09:12:21 +02:00
Christoph Atteneder
9c411b9ba4
Update Bisq bitcoinj fork with latest commit (3186b200fff690fa51f3ebbf578f427d78242bc2)
Conflicts:
	build.gradle
	gradle/witness/gradle-witness.gradle
2021-09-13 11:33:12 +02:00