Andreas Schildbach
1835370e04
VersionMessage: migrate time
field to java.time
API
2023-03-14 02:13:45 +01:00
Andreas Schildbach
7788f6cfaf
TestNet3Params: migrate testnetDiffDate
constant to java.time
API
2023-03-14 02:07:10 +01:00
Andreas Schildbach
79477ff04a
FakeTxBuilder: migrate createFakeBlock()' methods to
java.time` API
2023-03-14 01:56:26 +01:00
Andreas Schildbach
168ff75bd1
TimeUtils: migrate dateTimeFormat()
method to java.time
API
2023-03-14 01:32:59 +01:00
Andreas Schildbach
9eef9094b5
BriefLogFormatter: migrate timestamp formatting to java.time
API
...
This also changes the time zone of timestamps to UTC and adds a test.
2023-03-13 22:05:27 +01:00
Andreas Schildbach
65afcf076d
Transaction: migrate estimateLockTime()
method to java.time
API
2023-03-13 22:00:47 +01:00
Andreas Schildbach
f7fffc6af2
BlockingClient, ConnectionHandler, NioClientManager, NioServer: properly import Logger
2023-03-13 17:56:16 +01:00
Andreas Schildbach
01821f2ba5
Transaction: add and extend comments for the predefined comparators
2023-03-11 12:14:13 +01:00
Andreas Schildbach
d25c77cf24
Peer, NioClient, BlockingClientManager: fix some JavaDoc errors
2023-03-10 22:52:43 +01:00
Andreas Schildbach
7e70541658
PeerGroup: migrate vConnectTimeout
field to java.time
API
2023-03-10 22:32:47 +01:00
Andreas Schildbach
034277fae0
Transaction: reimplement SORT_TX_BY_UPDATE_TIME
and SORT_TX_BY_HEIGHT
comparators in a functional way
2023-03-10 22:12:29 +01:00
Andreas Schildbach
95549b4754
Wallet: migrate updateTime
field to java.time
API
2023-03-10 17:21:53 +01:00
Andreas Schildbach
85cc162642
PeerGroup: migrate connection retry logic to java.time
API
2023-03-10 17:19:25 +01:00
Andreas Schildbach
da8b9ce434
Wallet: migrate lastBlockSeenTime
field to java.time
API
2023-03-10 16:47:38 +01:00
Andreas Schildbach
be0b2b46b8
PaymentSession: migrate getters to java.time
API
2023-03-10 16:43:09 +01:00
Andreas Schildbach
9081d0fd2d
WalletTest: reduce false positive rate in marriedKeychainBloomFilter()
...
This will hopefully reduce spurious test failures.
2023-03-10 15:21:40 +01:00
Andreas Schildbach
63ed4275ac
SPVBlockStoreTest: increase threshold for performanceTest() to 5 seconds
...
This will hopefully reduce spurious test failures.
2023-03-10 14:50:03 +01:00
Andreas Schildbach
c205c67127
KeyChainGroupTest: fix spurious test failure of bloomFilterForMarriedChains()
...
This was caused by expected bloom filter false positives.
2023-03-10 14:06:19 +01:00
Andreas Schildbach
fb2dad432b
WalletTest: fix spurious test failure of witnessTransactionGetFeeTest()
...
This was caused by a shorter than expected signature encoding, which
can happen in rare cases.
2023-03-10 13:55:30 +01:00
Andreas Schildbach
1484ff595a
DefaultRiskAnalysis: don't try to risk-analyze if wallet has not seen any blocks
2023-03-10 10:27:19 +01:00
Andreas Schildbach
54754e14e9
EncryptableItem, ECKey, DeterministicKey, DeterministicSeed: migrate creationTime
field to java.time
API
2023-03-10 09:28:27 +01:00
Sean Gilligan
3023947df8
ByteUtils: move to o.b.base.internal
...
We don't consider ByteUtils to be part of our external API.
2023-03-10 01:28:23 +01:00
Andreas Schildbach
92ee36848c
DeterministicSeed: introduce static constructors meant for external consumers
...
* native constructors that were meant to be called by consumers now have static equivalents
* all native constructors are discouraged from being used by a JavaDoc comment
* one constructor that wasn't meant to be used by consumers is switched to private access
* tests and tools that resemble consumers are updated to use the new API
Note: although most native constructors are now deprecated, we're not using
annotations because we're still calling them.
2023-03-10 00:53:35 +01:00
Andreas Schildbach
2c28cadda5
MnemonicCode: in toMnemonic()
throw unchecked rather than checked exception
...
When converting from entropy to mnemonic with `toMnemonic()`, a `MnemonicLengthException`
was thrown for entropies with invalid length. This is bad for two reasons:
- it is a checked exception, and the method will not be called with user input
- misleading exception name, the error is about the entropy length not the mnemonic
We now throw a `RuntimeException` instead. The resulting simplification of
calling code can be witnessed in `DeterministicSeed`.
2023-03-09 21:44:31 +01:00
Andreas Schildbach
566cd102b2
ScriptPatternTest: move p2shScriptHashFromKeys() from LegacyAddressTest
2023-03-09 20:51:26 +01:00
Andreas Schildbach
04d4443d08
LegacyAddressTest: separate test into p2shScriptHashFromKeys()
and p2shAddressFromScriptHash()
2023-03-09 20:51:26 +01:00
Andreas Schildbach
a61da4fff6
Script: migrate creationTime
field to java.time
API
2023-03-09 15:09:07 +01:00
Andreas Schildbach
9ba34fc2ed
DeterministicKeyChain: convert if-else in getEarliestKeyCreationTimeInstant() to terniary operator
2023-03-08 20:41:51 +01:00
Andreas Schildbach
2cd239eee0
KeyChainGroup: convert if-else in getEarliestChainsCreationTime() to terniary operator
2023-03-08 20:41:51 +01:00
Andreas Schildbach
18898f4fc5
Wallet, KeyChain, KeyChainGroup, PeerFilterProvider: migrate getEarliestKeyCreationTime()
methods to java.time
API
2023-03-08 20:41:46 +01:00
Sean Gilligan
c41128b4df
AesKey: replace o.bouncycastle.c.p.KeyParameter
...
We were using KeyParameter as a wrapper for a byte[] containing an
AES Key and passing it around our API. This introduced an unnecessary
API dependency on Bouncy Castle. This PR adds an AesKey class
for the same purpose to replace it.
This is a breaking change, but one that should be easy to accommodate.
2023-03-08 18:13:21 +01:00
Andreas Schildbach
16c90d2891
TimeUtils: migrate mock clock to java.time
API
...
* Migrate `setMockClock()` parameters to Instant
* Migrate `rollMockClock()` parameters to Duration
* Rename to `clearMockClock()` from `resetMocking()`
* Use `Clock` internally to provide the time
2023-03-08 16:20:48 +01:00
Sean Gilligan
7a1c71c319
CryptoUtils: add digestRipeMd160() method, use it to wrap BouncyCastle
2023-03-08 09:46:44 +01:00
Sean Gilligan
fff3b7e837
TransactionWitnessTest: remove unused BouncyCastle import
2023-03-08 09:40:03 +01:00
Sean Gilligan
579a7e986a
CryptoUtils: move onionChecksum() from PeerAddress
2023-03-08 02:04:13 +01:00
Andreas Schildbach
d1e2e71bb5
TransactionConfidence: migrate lastBroadcastedAt
field to java.time
API
2023-03-07 00:41:55 +01:00
Andreas Schildbach
c8904a41bd
AbstractBlockChain: migrate estimateBlockTime()
method to java.time
API
2023-03-07 00:06:35 +01:00
Andreas Schildbach
5a69df0a81
Wallet, KeyChainGroup: migrate keyRotationTime
field to java.time
API
2023-03-06 23:56:49 +01:00
Andreas Schildbach
558f6df127
DownloadProgressTracker: migrate progress()
method to java.time
API
2023-03-06 09:58:48 +01:00
Andreas Schildbach
310b93be4e
Peer, PeerGroup: migrate fastCatchupTime
field to java.time
API
2023-03-06 09:50:07 +01:00
Andreas Schildbach
838b12c046
CheckpointManager: migrate checkpoints
map to java.time
API
2023-03-06 09:39:02 +01:00
Sean Gilligan
b1ede764a7
Wallet: fix JavaDoc error that was breaking JDK 11 build
2023-03-06 09:35:42 +01:00
Sean Gilligan
1853a63f69
DeterministicHierarchy, MnemonicCode: migrate BIPXX_STANDARDISATION_TIME
to java.time
API
...
Deprecate BIPXX_STANDARDISATION_TIME_SECS int constants. Replace with
BIPXX_STANDARDISATION_TIME Instant constants.
2023-03-06 01:24:22 +01:00
Sean Gilligan
8bdc35a32e
Wallet: migrate fromWatchingKeyB58()
and fromSpendingKeyB58()
methods to java.time
API
2023-03-06 00:44:34 +01:00
Andreas Schildbach
99bc95a93d
WalletFiles: migrate delay
field to java.time
API
2023-03-05 22:05:39 +01:00
Andreas Schildbach
d3162a4403
SendRequest: migrate two invocations of deprecated NetworkParameters.fromAddress()
method
2023-03-05 17:50:11 +01:00
Sean Gilligan
f2a7229676
MessageVerifyUtils: move to o.b.crypto.utils
from o.b.utils
...
This class belongs in the crypto module.
2023-03-05 01:06:12 +01:00
Sean Gilligan
848d2d88bb
StreamUtils: move to o.b.base.internal
from o.b.base.utils
2023-03-05 01:02:20 +01:00
Sean Gilligan
8e35390b8a
SegwitAddress: minor simplification in toBech32()
...
Calculate encoding using ternary operator and replace if statement.
2023-03-05 00:49:45 +01:00
Sean Gilligan
b83710a242
SegwitAddress: store witnessProgram
as 8-bits/byte
...
Change the internal storage format from 5-bits/byte (Bech32 intermediate format)
to standard 8-bits/byte.
Remove now unneeded conversions and add conversion in toBech32().
2023-03-05 00:44:06 +01:00