Commit graph

238 commits

Author SHA1 Message Date
Sean Gilligan
218474ef98 Switch to Bouncy Castle bcprov-jdk18on 1.80
This is a signed, modular JAR and we need to tell jlink in walletemplate
to use the `--ignore-signing-information` option.
2025-02-26 16:51:15 -08:00
Sean Gilligan
31be6f5d33 wallettemplate: modular build using jlink plugin
* add module-info.java
* wallettemplate/build.gradle: add jlink plugin and mainModule
* gradle.yml: add bitcoinj-wallettemplate:jlink Gradle target
* add instructions to the README
2025-01-30 14:15:04 +01:00
Sean Gilligan
d1b1a5cf26 build.gradle: more precise SLF4J dependency declaration
There is a compile-time dependency on slf4j-api and a runtimeOnly
dependency on slf4j-jdk14. This commit updates Gradle to declare this
explicitly.
2025-01-30 10:29:09 +01:00
itorod
a07b23d0e5 bitcoin_address.fxml: remove icon text for copy and qrcode icons 2025-01-29 23:33:05 +01:00
itorod
85c7c78854 bitcoin_address.fxml: replace fontawesomefx icons by PNGs
The PNGs are sourced from https://pictogrammers.com

This also gets rid of the dependency to fontawesomefx.
2025-01-29 22:18:23 +01:00
Andreas Schildbach
7ed3d327cd build.gradle: update JUnit 5 to 5.11.4 2025-01-19 21:03:28 +01:00
Andreas Schildbach
c36a6ff51c build.gradle: update SLF4J to 2.0.16 2024-11-19 13:31:24 +01:00
Andreas Schildbach
e9e444a425 WalletApplication: remove deprecated method that returns NetworkParameters 2024-09-02 22:54:33 +02:00
Andreas Schildbach
c967c6045c build.gradle: remove sourceCompatibility, targetCompatibility
We have defined `release` one way or another, and on JDK 17 that should
suffice.
2024-08-29 23:07:30 +02:00
Andreas Schildbach
34c1e4b708 build.gradle: use tasks.withType() to apply options to tests as well 2024-08-29 22:56:59 +02:00
Andreas Schildbach
94bb527447 build.gradle: migrate --release compiler option to compileJava.options.release for wallettemplate, examples-kotlin, integration-test
For the remaining modules, we're still using Gradle 4.4 so we can't do the same.
2024-08-29 22:01:24 +02:00
Andreas Schildbach
ba60554425 optimize imports 2024-08-21 13:32:13 +02:00
Andreas Schildbach
863751de85 build.gradle: update JavaFX to 21.0.4 2024-08-03 10:16:43 +02:00
Andreas Schildbach
73e2663efa build.gradle: update FontAwesomeFX to 8.0.13 2024-08-03 10:16:36 +02:00
Andreas Schildbach
78631379f2 build.gradle: update Jakarta Annotations to 3.0.0 2024-08-03 10:16:36 +02:00
Andreas Schildbach
e6c08f5df1 build.gradle: update ZXing to 3.5.3 2024-08-03 10:16:36 +02:00
Andreas Schildbach
a91321af91 build.gradle: update JUnit 5 to 5.10.3 2024-08-03 10:16:36 +02:00
Andreas Schildbach
eb8b415d99 build.gradle: update SLF4J to 2.0.13 2024-08-03 10:16:36 +02:00
Andreas Schildbach
781d64550b Script: rename getCreationTime() method from creationTime()
This effectively reverts commit b309308076.
2024-05-14 17:51:00 +02:00
Andreas Schildbach
5046ad3a49 build.gradle: update SLF4J to 2.0.12 2024-02-09 19:16:44 +01:00
Sean Gilligan
539d25b35a KeyDerivationTasks: replace wildcard import
Replace import of `jakarta.annotation.*` with `jakarta.annotation.Nullable`.
2023-11-21 21:48:12 +01:00
Andreas Schildbach
89e190614a build.gradle: drop the Eclipse plugin
We assume that these days the plugin isn't needed to set up bitcoinj within
Eclipse.
2023-11-19 23:12:10 +01:00
Sean Gilligan
69366caa9d wallettemplate: migrate to Jakarta Annotations
Migrate `@Nullable` from JSR 250 (Common Annotations) to Jakarta
Annotations.

Jakarta Annotations supports Java modules, so this is necessary
to migrate to running `wallettemplate` on the module path.
2023-11-19 23:08:50 +01:00
Sean Gilligan
712d8aac10 build.gradle: update JavaFX to 21.0.1 2023-10-24 12:07:04 +02:00
Sean Gilligan
b8b64a339a build.gradle: update SLF4J to 2.0.9 2023-10-24 11:48:23 +02:00
Sean Gilligan
b959b7bdfb KeyDerivationTasks: use Thread.sleep() instead of Guava Uninterrruptables
We don't really need to sleep uninterrruptibly here. The code is only displaying
a progress indicator and the `call()` method is already throwing `Exception`.
2023-10-02 21:47:43 +02:00
Sean Gilligan
7f341d9aab KeyDerivationTasks: Use Duration for PROGRESS_UPDATE_INTERVAL 2023-10-02 21:44:52 +02:00
Sean Gilligan
a5ab229f9f WTUtils: remove redundant public on interfaces 2023-10-01 16:47:33 +02:00
Sean Gilligan
a89e309d66 ClickableBitcoinAddress: make address property final 2023-10-01 16:45:29 +02:00
Sean Gilligan
b0ef27a019 WalletSetPasswordControllerTest: test key derivation time
Ensure key derivation time with `WalletSetPasswordController#SCRYPT_PARAMETERS`
isn't inordinately slow. This is in preparation for some forthcoming changes to
the progress meter in `WalletSetPasswordController`.
2023-10-01 16:06:58 +02:00
Sean Gilligan
d9e33a553a build.gradle: enable JUnit 5 for wallettemplate 2023-10-01 15:51:32 +02:00
Sean Gilligan
eefadef5f6 build.gradle: update JavaFX to 21 2023-09-30 18:15:36 +02:00
Sean Gilligan
af7c903df7 GuiUtils: use UI_ANIMATION_TIME consistently, deprecate UI_ANIMATION_TIME_MSEC 2023-09-12 18:01:40 +02:00
Sean Gilligan
b83c0b96e6 WalletApplication: remove unreachable default case in suffixFromNetwork() 2023-09-12 17:59:43 +02:00
Sean Gilligan
b5d3c07612 WalletApplication: use switch expression in suffixFromNetwork() 2023-09-12 17:56:45 +02:00
Sean Gilligan
6fc1087aba wallettemplate: mark fields as final
This commit fixes every IntelliJ warning about fields being final for
the wallettemplate module.
2023-09-12 17:54:46 +02:00
Sean Gilligan
7a1135246c EasingInterpolator: remove redundant default clause from switch expression 2023-09-12 17:52:04 +02:00
Sean Gilligan
7a30041578 EasingInterpolator: use switch expression 2023-09-12 17:43:31 +02:00
Sean Gilligan
9e9d3afd6a WTUtils: fix warning about raw generic 2023-09-12 17:40:33 +02:00
Sean Gilligan
8aa808f7d4 build.gradle: update JavaFX to 20.0.2 2023-09-07 11:06:14 +02:00
Sean Gilligan
96d0022d09 build.gradle: update javafxplugin to 0.1.0 2023-09-07 11:04:03 +02:00
Sean Gilligan
0fe0daba59 wallettemplate: require JDK 17+ and Gradle 7.3+
Also update the README for latest build JDK/Gradle information.
2023-09-06 23:47:07 +02:00
Sean Gilligan
36dce3d9d5 wallet.proto, paymentrequest.proto: move generated files to dedicated packages
* Modify the `java_package` setting in our two `.proto` source files
 * Move 2 existing generated-but-checked-in Protos.java files to
   dedicated packages (i.e. packages without hand-coded "artisanal" files)

This is a step towards more compatibility with ProtoBuf tooling which
sometimes likes to delete the generated files and:

 > can't distinguish between "old generated code" and "your artisan source files."

and more importantly it is a step towards fixing Gradle 8 caching issues.
2023-07-28 21:55:26 +02:00
Sean Gilligan
dead2c74ab AddressParser: simpler address parsing by making it a @FunctionalInterface
We`re making `AddressParser` the `@FunctionalInterface` and a nested class
is used to define an `AddressParserProvider`
2023-07-18 23:54:59 +02:00
Sean Gilligan
41ed5a984b Wallet: deprecate public fields in SendResult, replace with accessors
* Deprecate public fields in `SendResult`
* Make available equivalent accessors
* Update all usages

This prepares the way for replacing `SendResult` with `TransactionBroadcast`
in the future.
2023-03-27 20:22:35 +02:00
Andreas Schildbach
b528fb5180 build.gradle: update SLF4J to 2.0.7
Starting with SLF4J 2.0.0, we can use the fluent logger API.
2023-03-27 15:25:02 +02:00
Sean Gilligan
b7cf58ba6d GuiUtils: replace Guava Throwables.getRootCause() with private helper method
Private helper walks up the chain and avoids loops.
2023-03-26 01:50:02 +01:00
Sean Gilligan
66d96ab29d WalletPasswordController: remove use of Guava Longs
Use ByteBuffer in private methods for long to byte[] conversion.
2023-03-26 01:47:03 +01:00
Sean Gilligan
8566819ff2 SendMoneyController: use CompletableFuture not Guava
This is the last remaining use of Guava futures in
WalletTemplate.
2023-03-26 01:35:34 +01:00
Andreas Schildbach
e37b2ad78c Preconditions: replace Guava checkArgument() and checkState() for the entire codebase
This also fixes many precondition messages, and rewrites two cases
of `checkPositionIndex()` and `checkElementIndex()`.
2023-03-19 17:48:27 +01:00