Sean Gilligan
71c0e627d8
Utils: Remove unused mock sleep support.
2020-08-25 10:02:39 +02:00
Sean Gilligan
316096e83d
Tests: Use @BeforeClass initializer for Utils.resetMocking().
2020-08-25 09:39:18 +02:00
Andreas Schildbach
7c31dcbf99
Transaction, LocalTransactionSigner: Fix P2WPKH signing.
...
In commit bc46e8518d
, those two occurences of scriptCode building have been missed.
2020-07-02 11:43:05 +02:00
Andreas Schildbach
ed845fd22b
HDPath: Fix parsePath() not parsing private paths.
2020-06-30 16:17:37 +02:00
Andreas Schildbach
7a1ad0fac0
HDPath: Use Splitter in parsePath().
2020-06-30 15:54:26 +02:00
Sean Gilligan
8b502dffa2
Coin: Improvements to three static method JavaDoc comments.
2020-06-28 11:54:43 +02:00
Andreas Schildbach
3df2e70653
Replace semi-deprecated Guava Sets.newHashSet() with Sets.newHashSet().
2020-05-31 11:17:01 +02:00
Sean Gilligan
47d59cae89
Networks: Improve JavaDocs.
2020-05-28 12:25:50 +02:00
Sean Gilligan
7d83f23a84
Networks: Remove use of bounded wildcard in Networks.networks
...
The use of a bounded wildcard type in Networks.networks is
unnecessary and not a best practice.
2020-05-28 12:18:47 +02:00
Andreas Schildbach
dbc4cb1d4c
Make all Loggers final.
2020-05-17 14:48:44 +02:00
Andreas Schildbach
f04401461b
AbstractBitcoinNetParams: Move getBlockInflation() utility method from Block to here.
...
This also adds a test.
2020-05-17 14:44:38 +02:00
Andreas Schildbach
a981cdd0e9
NetworkParameters: Make reference to genesis block final.
2020-05-12 12:15:43 +02:00
Andreas Schildbach
3db1b651c9
AbstractBitcoinNetParams: Move assignment of interval and subsidyDecreaseBlockCount to here.
...
This also adds a test of isDifficultyTransitionPoint().
2020-05-12 12:11:37 +02:00
Andreas Schildbach
0fe5f99798
AbstractBitcoinNetParamsTest: Add test for isRewardHalvingPoint().
2020-05-12 11:48:56 +02:00
Andreas Schildbach
142efee42f
AbstractBitcoinNetParams: Rename parameter of isRewardHalvingPoint() and isDifficultyTransitionPoint() to make unexpected API more obvious.
2020-05-12 11:43:39 +02:00
Andreas Schildbach
fa16458c2f
build.gradle: Update OkHttp to 3.12.11.
2020-05-09 22:54:55 +02:00
Bartosz Milczarek
f76e13c495
HDKeyDerivation: Fix incorrect HDPath for private key created by createMasterPrivateKey().
...
This also removes the static contructor variant with a path. Master private keys always have the same path.
2020-05-03 20:28:41 +02:00
Andreas Schildbach
e218cbb3f2
ChildKeyDerivationTest: Remove commented-out test for child numbers marger than max int.
2020-05-03 20:26:55 +02:00
Sean Gilligan
8dbe23c9db
build.gradle: Properly declare API dependencies in bitcoinj-core
...
Properly declare Bouncy Castle, protobuf-java, and OkHttp as Gradle `api`
dependencies.
2020-04-23 00:07:38 +02:00
Mike Mancini
f48a8e1eff
PostgresFullPrunedBlockStore: Enquote 'index' column name to make it compatible with CockroachDB.
2020-04-16 17:33:01 +02:00
Andreas Schildbach
1ce45ef679
Update Guava to 29.0-android.
2020-04-16 17:28:30 +02:00
Andreas Schildbach
f925c6313c
Update BouncyCastle to 1.65.
2020-04-13 10:23:54 +02:00
Andreas Schildbach
80cd521cc3
PeerGroup: Increase precision of download speed calculation by a bit.
2020-04-08 18:24:01 +02:00
Andreas Schildbach
1bfd5a5b60
Wallet: Demote log level of script cannot be parsed in markKeysAsUsed().
2020-03-13 21:17:11 +01:00
Andreas Schildbach
67034e68aa
Transaction: Fix missing newline in toString().
2020-03-13 21:11:20 +01:00
Andreas Schildbach
8018cb2786
Transaction: In toString() print outputs of coinbase.
2020-03-13 21:10:40 +01:00
Andreas Schildbach
0b7bdff6de
Script: Make a ScriptException message more elaborate.
2020-03-13 18:40:05 +01:00
John L. Jegutanis
c6a096678d
Transaction: Make zero inputs/outputs transactions parsable.
...
Switch to the bitcoin core reference segwit parsing algorithm because
some no-segwit transactions with no inputs are incorrectly parsed as
segwit.
This change is to be 100% compatible with the reference implementation
and to be compatible with the PSBT implementation.
2020-03-13 09:44:41 +01:00
Craig Raw
bc46e8518d
Transaction: Use VarInt not opcode for script length in hashForWitnessSignature().
2020-03-08 22:43:56 +01:00
Andreas Schildbach
049c2f177d
PeerGroup: Add a method for gracefully dropping all connected peers.
2020-03-08 00:20:01 +01:00
Andreas Schildbach
b86f3e70ae
PeerGroup: Only drop peers after broadcast if the transaction has no broadcast confirmations.
...
Otherwise, peers might be continuously dropped when transactions are re-sent.
2020-03-08 00:20:01 +01:00
Andreas Schildbach
a4f241ef29
TransactionBroadcast: Don't complete the broadcast future early in the single peer case.
...
If you want to rely on the future it's better to drop peers after broadcast.
2020-03-08 00:20:01 +01:00
Andreas Schildbach
a867a80b76
TransactionBroadcast: Add a short delay before broadcast peers are dropped.
2020-03-08 00:19:07 +01:00
Andreas Schildbach
3bab49d4b1
PeerGroup: Introduce a priority for connecting and being picked as a download peer.
2020-03-05 10:24:33 +01:00
Andreas Schildbach
70559a3140
DnsDiscovery: Implement service bit filtering.
2020-03-05 01:14:06 +01:00
Andreas Schildbach
7d9f109ee1
Peer: Deprecate a redundant constructor.
2020-03-04 17:34:11 +01:00
Andreas Schildbach
57f53f038c
Peer: Prevent connecting to remote peers if required services are not supported.
2020-03-04 17:34:11 +01:00
Andreas Schildbach
c967fda4d6
HttpDiscovery: Improve logging in getPeers().
2020-03-04 15:53:45 +01:00
Andreas Schildbach
e8adb94a95
VersionMessage: In toString(), print services in textual form too.
2020-03-04 15:18:53 +01:00
Andreas Schildbach
b4bd43d428
VersionMessage: Move toStringServices() from Peer to here.
2020-03-04 15:14:03 +01:00
Andreas Schildbach
16fda8ffcb
TestNet3Params: Add testnet.httpseed.bitcoin.schildbach.de HTTP seed.
2020-03-04 14:47:04 +01:00
Andreas Schildbach
06bd0a841e
PeerDiscovery: Change getPeers() return type from array to list.
...
This gets rid of a lot of array/list conversions.
2020-03-04 12:35:02 +01:00
Andreas Schildbach
a165fb1834
MultiplexingDiscovery: Allow serially queried seeds, too.
2020-03-04 11:49:11 +01:00
Andreas Schildbach
4e41a51657
MultiplexingDiscovery: Make shuffling of queried peers optional.
2020-03-04 11:26:07 +01:00
Sean Gilligan
e4c6b98536
Make Guava an api
dependency using java-library
...
Use the Gradle java-library plugin to make Guava an `api`
dependency since Guava types are used in the bitcoinj public API.
This allows us to remove explicit dependencies on
Guava in the other modules.
2020-02-29 15:28:09 -08:00
Sean Gilligan
5ade97b5b3
build.gradle: Make the 'core' submodule use the 'java-library' plugin, rather than 'java'.
2020-02-29 21:01:13 +01:00
Andreas Schildbach
65c1b8ca25
DefaultCoinSelector: Require only one broadcast confirmation when spending our own change.
...
This will improve the user experience when connected to only one peer (e.g. a trusted peer).
2020-02-28 15:59:37 +01:00
Andreas Schildbach
fb2d983b54
PeerGroup, TransactionBroadcast: Drop any peer a transaction has been broadcast to.
...
These peers will not send us back useful broadcast confirmations.
2020-02-28 15:59:37 +01:00
Andreas Schildbach
afb376fc07
MessageWriteTarget: Return a future from writeBytes() that completes when all bytes have been written to the OS network buffer.
2020-02-28 15:59:37 +01:00
Andreas Schildbach
0a085fde6d
Peer: If a bloom filter is set on a peer that doesn't support filtering, disconnect.
2020-02-27 23:32:50 +01:00