Andreas Schildbach
3cbb10334e
BitcoinSerializer: Add equals() and hashCode().
2020-02-16 17:37:44 +01:00
Andreas Schildbach
73583776a6
ChildMessage: Fix a missing @Nullable in constructor argument.
2020-02-16 17:13:09 +01:00
John L. Jegutanis
d734d8854a
Utils: Introduce Utils.resetMocking() and use it from AbstractFullPrunedBlockChainTest.
...
It appears that the tests do not run in the same order or the static variables
are not reset between runs on all systems or Gradle versions.
So it happened that the test UtilsTest.testRollMockClock() was messing up
the time for the H2FullPrunedBlockChainTest (and the LevelDB one), failing tests.
2020-01-30 17:02:30 +01:00
Anton Kumaigorodski
163d39dbff
MainNetParams: Add lightning-wallet.com HTTP seed.
2020-01-12 17:23:56 +01:00
Andreas Schildbach
66403d1946
PeerGroup.ChainDownloadSpeedCalculator: Log chain height with end of sync.
2019-12-14 17:11:11 +01:00
Andreas Schildbach
80228d7954
PeerGroup: Only select a download peer if more than maxConnections/2 peers are connected.
2019-12-08 13:02:31 +01:00
Andreas Schildbach
c2e1383b58
PeerGroup: Be more careful about selecting download peer.
...
We now select a (new) download peer only if there is a clear consensus about a common chain height between
connected peers. If there is a tie between two common heights, we stay safe and don't change anything.
2019-12-08 13:02:31 +01:00
Andreas Schildbach
924e525d52
PeerGroup: Move maxOfMostFreq() from Utils to here, as here is the only usage.
2019-12-08 11:11:01 +01:00
Andreas Schildbach
76071d8378
DatabaseFullPrunedBlockStore implementations: Make sure SegWit addresses fit into the openoutputs.toaddress column.
2019-11-29 11:43:26 +01:00
Andreas Schildbach
141e4024e6
Replace remaining System.currentTimeMillis() by the Utils equivalent.
...
This is important for using the mock clock in tests.
2019-11-26 17:58:45 +01:00
Andreas Schildbach
8b55b8c0a7
Make a couple of tests use the mock clock to improve test reproducibility.
2019-11-26 17:46:31 +01:00
Andreas Schildbach
d8cd74dbb3
Utils: Make mockTime field private.
...
Use the various setters.
2019-11-26 17:01:43 +01:00
Andreas Schildbach
af9400a650
PeerFilterProvider: Remove isRequiringUpdateAllBloomFilter().
...
Bloom filters will now always be created with UPDATE_ALL. With SegWit there is hardly any wallet
that can do without. This will save some locking.
2019-11-26 16:42:00 +01:00
Andreas Schildbach
c14e9240ad
PeerFilterProvider: Rework JavaDoc.
2019-11-26 16:40:17 +01:00
Andreas Schildbach
35cec435cc
CheckpointManager: Use a standard charset.
2019-11-20 18:51:53 +01:00
Andreas Schildbach
5948be6b91
CheckpointManager: Make clear that time is in seconds.
2019-11-20 18:51:53 +01:00
Andreas Schildbach
7d7ef1b494
CheckpointManager: Log time of latest checkpoint read.
2019-11-20 18:41:41 +01:00
Oscar Guindzberg
edb2fa8959
AbstractBlockChain: Print "Wallet/chain height mismatch" warning only if walletHeight > 0.
2019-11-10 21:02:05 +01:00
Oscar Guindzberg
a70fa1f708
SPVBlockStoreTest: Add block store deletion test.
2019-11-10 21:02:05 +01:00
Oscar Guindzberg
9f0c888aa1
Secp256k1Context: Use log.debug() instead of .info() when native secp256k1 cannot be used.
2019-11-10 21:02:05 +01:00
Oscar Guindzberg
c4e418f8ab
MainNetParams: Update hardcoded seed node addresses - Apr 2019.
2019-11-10 21:02:05 +01:00
Oscar Guindzberg
2fa06e276f
MainNetParams, TestNet3Params: Sync DNS seeds with Bitcoin Core.
2019-11-10 19:07:50 +01:00
Andreas Schildbach
d512d4fc37
Derive lock names from the class they protect.
...
Also append the word "lock" to the name.
2019-11-06 09:48:34 +01:00
Andreas Schildbach
ec851df530
ProtobufConnection: Remove unused class.
...
It was forgotten when removing Micropayment Channels.
2019-11-06 09:28:45 +01:00
Andreas Schildbach
f3b48f102f
SPVBlockStore: Double the default capacity.
...
This has proven to be a sensible value for mobile devices.
2019-10-22 23:40:29 +02:00
Peter Dettman
7629677103
Track point compression in LazyECPoint, rather than ECPoint.
...
The reason is BouncyCastle 1.64 removed point compression tracking.
2019-10-22 19:13:27 +02:00
Andreas Schildbach
7eb9c73655
ECKey: Add helper method isPubKeyCompressed(), and use it.
2019-10-22 16:15:35 +02:00
Andreas Schildbach
5bcf947170
BloomFilterTest: Tidy up asserts.
2019-10-21 17:03:26 +02:00
Andreas Schildbach
b690803442
Update protobuf-java to 3.9.2.
2019-10-08 19:14:02 +02:00
Sean Gilligan
cc445b8fd1
BtcFormat: Fix "heading used out of sequence" JavaDoc error on JDK 13.
2019-10-01 22:02:51 +02:00
Andreas Schildbach
2288c2150f
PeerGroup: Make private walletCoinsReceivedEventListener also take care of P2WPKH outputs.
...
P2WPKH outputs are a similar case as P2PK outputs in that inputs that spend them
cannot be matched by a bloom filter: their scriptSig is empty and their witness
(which would contain a matching pubkey) is not tested for a match. This is a
shortcoming of the SegWit spec.
Hopefully this fixes https://github.com/bitcoinj/bitcoinj/issues/1690
2019-10-01 21:44:46 +02:00
Andreas Schildbach
7f97c8afa6
Change wording p2pubkey to P2PK.
2019-10-01 20:33:07 +02:00
Shafiullah Rahman
30ccb23c1c
UtilsTest: Add unit tests for org.bitcoinj.core.Utils.
2019-09-11 11:51:23 +02:00
Sean Gilligan
619e8805d6
Wallet: Improve JavaDoc for Wallet#commitTx and Wallet#maybeCommitTx.
2019-09-11 11:04:17 +02:00
Andreas Schildbach
a8230ad495
Peer: Wrap log.debug() in log.isDebugEnabled().
2019-08-31 22:29:05 +02:00
Andreas Schildbach
1fbd280f14
AbstractBlockChain: Wrap log.debug() in log.isDebugEnabled().
2019-08-31 22:28:26 +02:00
Andreas Schildbach
8db6639cf4
Peer: Raise log level when logging the setting of a filter.
2019-08-31 21:54:46 +02:00
Andreas Schildbach
726c7291ac
Wallet: Remove global coinSelector and allowSpendingUnconfirmedTransactions().
...
Coin selection is a per SendRequest, per createSend() or per getBalance() call affair.
Having it wallet-global can lead to race conditions, as sometimes experienced in the
WalletTest unit tests.
2019-07-26 20:30:27 +02:00
Andreas Schildbach
a49f681d24
KeyCrypterScrypt: Print all Scrypt parameters, not only N.
2019-07-20 17:28:53 +02:00
Sean Gilligan
7d68fb7076
HDUtilsTest: Move parse and format HDPath tests to HDPathTest.
2019-07-20 11:05:43 +02:00
Sean Gilligan
86c461b7e1
AppDataDirectoryTest: Fix throwsIOExceptionIfPathNotFound() on macOS.
...
“:” is not an invalid character, but “\0” is.
2019-07-20 10:55:11 +02:00
Andreas Schildbach
1e55d72dc3
SendRequest: Add allowUnconfirmed() convenience method.
2019-07-15 12:26:14 +02:00
Andreas Schildbach
161bd68dd2
DefaultCoinSelector: Make it a singleton.
2019-07-15 12:07:27 +02:00
Andreas Schildbach
d67f060e27
Remove Micropayment Channels.
...
Now that HTLC-based bi-directional payment channels are state of the art, nobody will ever use the old style.
2019-07-15 11:05:14 +02:00
Sean Gilligan
e5a6808fd3
HDPath: M() and m() factory methods
...
Refactor existing of() factory methods to M() (for public key) and
add m() methods for private keys. Also add varargs methods.
2019-07-10 15:46:21 +02:00
Sean Gilligan
823a03db77
Move HDPath methods from HDUtils to HDPath
...
All HDPath-related methods in HDUtils are now deprecated and delegate
to HDPath. HDPath now contains parsePath code.
2019-07-07 10:13:26 +02:00
Sean Gilligan
b59add47a7
DeterministicKey: toString() output of creation time now corresponds with
...
getCreationTimeSeconds(), but we indicate if the creation time was inherited
from the parent.
2019-07-05 22:55:31 +02:00
Sean Gilligan
855c061c0c
HDPath: Use varargs for extend() and add tests.
2019-07-05 22:40:38 +02:00
Tim Strasser
734fc9fdd0
AppDataDirectoryTest: Implement a test for case of invalid directory name
2019-07-05 12:12:48 +02:00
Sean Gilligan
a9dd62e34e
Replace deprecated Guava Maps.newHashMap()
...
For JDK7+ `new` with the diamond syntax is preferred.
2019-07-05 12:08:14 +02:00