Commit Graph

4983 Commits

Author SHA1 Message Date
Sean Gilligan
b2b8c0a4a3 Transaction: use _ to separate thousands in constants 2023-08-09 10:42:24 +02:00
Sean Gilligan
fa323f745e TransactionOutput: simplify method isDust()
Replace `if` with boolean logic and revise related comment.
2023-08-09 10:32:27 +02:00
Andreas Schildbach
f907a6b86f Block: convert an if into expression with ternary operator 2023-08-09 00:51:36 +02:00
Andreas Schildbach
4e91a274d9 Block: annotate and document the null transactions case for main constructor 2023-08-09 00:47:52 +02:00
Sean Gilligan
098e268808 MainNetParams, TestNet3Params, SigNetParams, RegTestParams: migrate GENESIS_TIME constants to Instant 2023-08-09 00:40:25 +02:00
Sean Gilligan
371b90b934 Block: use ArrayList consistently for transactions field 2023-08-08 22:30:07 +02:00
Sean Gilligan
ce3af91c85 Block: make field version final 2023-08-08 22:09:47 +02:00
Sean Gilligan
1230c984d2 Peer: convert an if-else into expression with ternary operator 2023-08-08 21:51:42 +02:00
Sean Gilligan
e7bc376a8d Peer: extract buildBlockLocator() to private method 2023-08-08 21:46:49 +02:00
Sean Gilligan
690f5149c0 BlockLocator: functional-style hashCode() calculation
Use mapToInt/reduce.
2023-08-08 21:40:48 +02:00
Sean Gilligan
e34dd300ec ForwardingService: fix possible NPE in coin selector 2023-08-08 21:38:16 +02:00
Sean Gilligan
7aeffc4de0 Wallet: extract private method estimateVirtualBytesForSigning(Script) for estimating one script 2023-08-08 21:34:25 +02:00
Sean Gilligan
ff6ee607bc Wallet: pass outputs to estimateVirtualBytesForSigning() rather than the CoinSelector 2023-08-08 21:30:42 +02:00
Sean Gilligan
12a9ea1612 Wallet: functional-style estimateVirtualBytesForSigning() 2023-08-08 21:28:03 +02:00
Sean Gilligan
781bd56b55 Wallet: extract common code into private estimateFees() method 2023-08-08 21:25:00 +02:00
Sean Gilligan
97cd7d44fb Wallet: deprecate getParms() and getNetworkParameters() 2023-08-08 21:16:56 +02:00
Sean Gilligan
352614280c BlockLocator: deprecate add & no-args constructor
Deprecate `.add()` and no-args constructor in favor of providing complete
list of hashes at creation time.

Update all usages to use the alternative methods.
2023-08-08 21:01:37 +02:00
Sean Gilligan
9bbb6b39e3 Peer: fix and clarify comment about putting genesis hash into BlockLocator 2023-08-08 20:58:44 +02:00
Sean Gilligan
148a40b2ed TransactionInput: don't use setParent() in constructor 2023-08-08 19:55:50 +02:00
Sean Gilligan
7a558fb557 TransactionInput: use private constructor via this() in constructor for unsigned input 2023-08-08 19:52:48 +02:00
Sean Gilligan
1ce554c901 TransactionInput: don't call super() in constructor
`Object` is the superclass now.
2023-08-08 19:47:57 +02:00
Sean Gilligan
50d678d3e2 TransactionInput: make parent field private 2023-08-08 19:38:54 +02:00
Sean Gilligan
be650b4464 WalletAppKitLaunchTest: add disabled functional/integration test 2023-08-08 12:12:25 +02:00
Andreas Schildbach
0a58d0a5c3 TransactionInput: convert an if-else into expression with ternary operator 2023-08-08 11:54:34 +02:00
Sean Gilligan
2b68d8da8e ServicesTest: add missing package declaration 2023-08-08 11:45:21 +02:00
Sean Gilligan
d9a432b4d7 ForwardingService: extract method forward()
Move the code that creates the forwarded transaction, signs, sends,
and waits for peer confirmation into a standalone method.

The `forward()` function is a relatively straightforward asynchronous function
that returns a `CompletableFuture` that either completes normally or exceptionally.
2023-08-08 11:40:58 +02:00
Sean Gilligan
8cff8e0ac2 ForwardingService: print exception in coinForwardingListener
The listener was swallowing some exceptions. This change will
print those exceptions to the console.
2023-08-08 11:36:05 +02:00
Andreas Schildbach
50c0f2eae9 VersionMessage: re-add service bit constants as deprecated 2023-08-01 15:13:05 +02:00
Sean Gilligan
b0b0b02683 Block: simplify initialization of genesisTxScriptPubKeyBytes
Use `ScriptBuilder` rather than static initializer and `ByteArrayOutputStream`.
2023-08-01 15:09:37 +02:00
Sean Gilligan
0b57bbc701 Wallet: fix two deprecated @link in JavaDoc 2023-08-01 15:02:02 +02:00
Andreas Schildbach
3dbaaa23b0 build.gradle: update Guava to 32.1.2-android 2023-08-01 11:15:44 +02:00
Andreas Schildbach
c1307c1190 build.gradle: update Bouncy Castle to 1.76 2023-07-31 11:34:36 +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
Andreas Schildbach
a7446b65ae Prepare 0.17-SNAPSHOT 2023-07-28 10:46:14 +02:00
Andreas Schildbach
ab91a94695 Tag 0.17-alpha2 2023-07-27 21:36:45 +02:00
Sean Gilligan
6775635ce5 uild.gradle: update JUnit 5 to 5.10.0 2023-07-27 11:01:53 +02:00
Sean Gilligan
43021f4394 build.gradle: update picocli-codegen to 4.7.4 2023-07-27 10:59:23 +02:00
Sean Gilligan
7efab37c6c DnsDiscovery, MultiplexingDiscovery: use Network in constructors 2023-07-27 10:56:06 +02:00
Sean Gilligan
27cb2fc3cc TestWithWallet, WalletTest, DefaultCoinSelectorTest: rename and import some network constants
This also removes some usage of deprecated methods.
2023-07-20 19:51:50 +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
39c34186cc BlockChain: use Network in constructors
Constructors that take NetworkParameters are marked as @VisibleForTesting.
This is because of the special UNITTEST NetworkParameters that is required for
certain tests.
2023-07-18 23:10:36 +02:00
Andreas Schildbach
3284b6e309 build.gradle: update JUnit 5 to 5.9.3 2023-07-16 13:05:14 +02:00
Andreas Schildbach
ada7fae5aa build.gradle: update picocli to 4.7.4 2023-07-16 13:01:25 +02:00
Andreas Schildbach
02fd2f036a build.gradle: update equalsverifier to 3.15 2023-07-16 12:45:39 +02:00
Andreas Schildbach
98fcb0c840 build.gradle: update Jackson to 2.15.2 2023-07-16 12:37:30 +02:00
Sean Gilligan
ffc724738f README.adoc: fix link to GitLab pipelines 2023-07-16 12:26:05 +02:00
Sean Gilligan
f324a8e34f gradle.yml, graalvm.yml: update Gradle to 7.6.2 2023-07-16 12:17:25 +02:00
Sean Gilligan
6142348e61 graalvm.yml: adapt to new GraalVM versioning
As of June 13, 2023, GraalVM versioning has changed and now matches
the versioning system of the JDK.

The latest release of GraalVM for JDK 17 is now 17.0.7.
2023-07-16 12:13:43 +02:00
Sean Gilligan
1e1bf41f9d build.gradle: update Bouncy Castle to 1.75 2023-07-14 11:41:01 +02:00
Andreas Schildbach
f6cebd33bd build.gradle: update Guava to 32.1.1-android 2023-07-10 11:16:51 +02:00