Commit Graph

4968 Commits

Author SHA1 Message Date
Sean Gilligan
f268eb0cbf ForwardingService: remove listener properly
The listener wasn't being removed properly, because using a method
reference in both add and remove generated two different objects and
therefore the remove method wasn't finding and removing the listener
that was previously added.

By saving the listener created by the method reference, we can remove
it later.
2024-06-01 23:50:12 +02:00
itorod
960b254b9d ForwardingService: various improvements
* move parsing of args to main
* create config default values
* simplify coin listener with send function
2024-06-01 23:43:29 +02:00
itorod
5bc597541f ForwardingService: add Kotlin example
This is adding an `examples-kotlin` sub-project.
2024-05-14 20:19:29 +02:00
Andreas Schildbach
6feeb5a1c0 TransactionConfidence: rename getLastBroadcastTime() method from lastBroadcastTime()
This effectively reverts commit c2cabead9a.
2024-05-14 17:51:00 +02:00
Andreas Schildbach
ff42c49648 PeerGroup: rename getFastCatchupTime() method from fastCatchupTime()
This effectively reverts commit 45f87d8339.
2024-05-14 17:51:00 +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
2199c7a577 build.gradle: updade picocli to 4.7.6 2024-05-08 12:52:19 +02:00
Oliver Aemmer
70fb77d2d1 wallet.proto: rename to Key.Type.ENCRYPTED from ENCRYPTED_SCRYPT_AES 2024-05-05 14:24:59 +02:00
Andreas Schildbach
92c2c29508 Prepare 0.17-SNAPSHOT 2024-04-29 20:13:45 +02:00
Andreas Schildbach
e42c59b818 Tag 0.17-alpha4 2024-04-29 20:12:26 +02:00
Andreas Schildbach
b292679aa4 build.gradle: update Bouncy Castle to 1.78.1 2024-04-29 12:19:49 +02:00
Sean Gilligan
bd0a36b1e5 build.gradle: update equalsverifier to 3.16.1
This is needed for building with JDK 22.
2024-04-29 09:27:00 +02:00
Sean Gilligan
a68fdf1a3c examples: remove forwarding.py
This example is 8 years old, unsupported, and almost certainly doesn't work.
2024-04-29 09:25:22 +02:00
Sean Gilligan
a967a0f560 examples: remove JavaScript examples
These are old, unsupported, and almost certainly do not work as is.

We separately plan on replacing the JavaScript example on the documentation
site with a Kotlin example.
2024-04-29 09:23:46 +02:00
Sean Gilligan
a7c11c7019 ForwardingService: use Network.checkAddress(Address)
This makes things a little bit simpler and more readable.
2024-04-29 09:21:48 +02:00
Sean Gilligan
53a6b3e150 BitcoinNetwork: add address validation methods
There are use cases where an already parsed address needs to be validated
for a specific network. In one use case the address came from an external
source and needs validation with an error message displayed: that's what
`isValidAddress(Address)` is for. In the other case we can treat the invalid
address as a fatal error. That's `checkAddress(Address)`.
2024-04-29 09:19:18 +02:00
Sean Gilligan
f1a5ebe71e gradle.yml, graalvm.yml: fix Gradle Action deprecation warning
Remove `arguments` parameter from `setup-gradle` and add add a basic
`run` step with the actual `gradle` command.

This fixes a deprecation warning.
2024-04-28 00:34:05 +02:00
Sean Gilligan
3c7088b832 gradle.yml: explicitly use ubuntu-22.04 for Gradle 4.10.3 special case
I missed this entry in commit 074543ecd1.
2024-04-27 23:50:07 +02:00
Andreas Schildbach
19cce08825 build.gradle: update protobuf-javalite to 4.26.1 2024-04-27 23:39:21 +02:00
Andreas Schildbach
dcd49e5645 ByteUtils: remove unused helpers 2024-04-27 23:24:45 +02:00
Sean Gilligan
074543ecd1 gradle.yml, graalvm.yml: explicitly use ubuntu-22.04, windows-2022
This makes explicit which versions of which OSs are used in CI. After
this is merged, we will need to manually update to newer OS versions.
2024-04-27 22:57:57 +02:00
Sean Gilligan
7a00b82746 build.gradle: enforce Android flavor of Guava 2024-04-27 21:16:43 +02:00
Sean Gilligan
c1bb78137c gradle.yml, graalvm.yml: explicitly use macos-12
GitHub has bumped macos-latest to be macos-14 (and ARM) so our tests
are currently broken. This PR is a short-term fix to restore the status quo
and makes the minimum change to fix the broken build.
2024-04-27 20:37:57 +02:00
Sean Gilligan
7df957e4c6 gradle.yml, graalvm.yml: update Gradle to 8.7 2024-04-23 19:22:43 +02:00
Sean Gilligan
b257c6f4d8 ForwardingService: use BitcoinNetwork.strings() to build USAGE string
Use `BitcoinNetwork.strings()` for the list of valid `BitcoinNetwork` values
included in the USAGE string.
2024-04-23 19:20:14 +02:00
Sean Gilligan
8dd7b3e0b8 BitcoinNetwork: add strings() method to list names of all values
This simplifies code that needs a list of all the values.
2024-04-23 17:06:56 +02:00
Sean Gilligan
298a75808e BitcoinNetwork: private static stream() method
Create a private method to stream the `values()` array, as it is used in
multiple places.
2024-04-23 16:58:39 +02:00
Sean Gilligan
ffcd879208 ForwardingService: inline CoinSelector creation into forward()
This also moves and adds comments.
2024-04-23 16:54:28 +02:00
Sean Gilligan
490b3fe956 ForwardingService: remove null-check in forwardingCoinSelector()
This is not strictly necessary, especially in a getting started example.
2024-04-23 16:46:58 +02:00
Sean Gilligan
c3e8b741ea ForwardingService: print network, not network.id()
Both the code and the output is simpler this way.
2024-04-23 16:43:07 +02:00
hanmz
ead69daae6 ByteUtils: fix typos in JavaDoc comments 2024-04-23 10:58:17 +02:00
hanmz
1f591df71c Buffers: fix typo in JavaDoc comment 2024-04-23 10:55:57 +02:00
Sean Gilligan
cff6459b4e ForwardingService: let main() throw InterruptedException
This simplifies main() and increases readability.
2024-04-23 10:53:46 +02:00
Sean Gilligan
a224bbed81 README: fix the label "bitcoinj-users" in the Matrix badge
We were incorrectly (and mostly unnoticed) displaying a space where we should
be displaying a single-dash.

See: https://shields.io/badges
2024-04-21 16:27:29 +02:00
Johannes Zweng
fb6aa09081 ECKey: add comments better explaining the meaning of recId 2024-04-10 15:55:58 +02:00
avoidaway
ece3943bab LegacyAddress, BitcoinSerializer, MessageSerializer, TransactionReceivedInBlockListener, ECKey, ChildKeyDerivationTest: fix repetitive words in comments 2024-04-07 13:55:38 +02:00
snoppy
6cf2cb4211 Wallet, KeyChainGroup: fix typos in JavaDoc 2024-04-07 13:53:47 +02:00
itorod
c006e5edfe README: update jitpack dependency to 0.16 2024-04-07 13:51:16 +02:00
Sean Gilligan
72f5e03902 modular-architecture.md: Update for secp256k1-jdk
This just updates the proposed 0.19 release to use `secp256k1-jdk` instead
of a more generically defined crypto provider API.

We may want to consider doing this in the 0.18 release or moving
some ECKey definitions into `o.b.base` but this change does not
address either of those proposals.
2024-03-15 19:27:22 +01:00
Andreas Schildbach
1b4eafb7d6 build.gradle: update Guava to 33.1.0-android 2024-03-14 11:40:59 +01:00
Sean Gilligan
9dee165fec ECKey: Make HALF_CURVE_ORDER package private 2024-03-11 10:08:00 +01:00
Sean Gilligan
e3f0f23ff9 ECKey: make CURVE package private, provide accessor
* Make the static field ECKey.CURVE (which is a Bouncy Castle
  type) package private and provide the ecDomainParameters() accessor
  for those who really need it.

* Use the accessor in DefaultRiskAnalysisTest

* We will not update code within the `o.b.crytpo` package
  to use the accessor, since we intend to migrate all/most
  of those usages to the `java.security` types.
2024-03-11 10:06:02 +01:00
Sean Gilligan
3a28fb0274 LazyECPoint: make private curve member static
We do not need to specify the curve for each instance as
bitcoinj uses SECP256K1 curve exclusively.

This change reduces per instance memory usage, simplifies the API,
and reduces public API dependence on Bouncy Castle.

One two-arg constructor is deprecated and replaced with a single-arg
constructor that no longer requires the curve parameter.

Just to be extra safe, in the deprecated method we validate the curve
argument and make sure it is the P256K1 curve.

Also correctly mark private `bits` field as @Nullable, and improve
JavaDoc and other comments.
2024-03-10 21:13:27 +01:00
Andreas Schildbach
155b404063 always use dots in "e.g." 2024-02-24 23:48:49 +01:00
Andreas Schildbach
5046ad3a49 build.gradle: update SLF4J to 2.0.12 2024-02-09 19:16:44 +01:00
Sean Gilligan
c52db25737 gradle.yml, graalvm.yml: update Gradle to 8.6 2024-02-07 22:35:31 +01:00
Sean Gilligan
1abecf97d2 gradle.yml, graalvm.yml: update upload-artifact to v4
Also adjust artifact name as v4 rejects uploads with duplicate names.
2024-01-31 18:10:55 +01:00
Sean Gilligan
97a4754dc7 gradle.yml: update setup-java to v4 2024-01-31 17:58:47 +01:00
Sean Gilligan
7ed5234af7 gradle.yml, graalvm.yml: update checkout to v4 2024-01-31 17:46:02 +01:00
Sean Gilligan
2c8b80d8f3 gradle.yml, graalvm.yml: update gradle-build-action to setup-gradle@v3 2024-01-31 17:39:22 +01:00