Commit graph

111 commits

Author SHA1 Message Date
Andreas Schildbach
d0f6e0afca build.gradle: Update Guava to 31.0.1-android. 2021-09-29 19:13:39 +02:00
Andreas Schildbach
e9b42eae6d build.gradle: produce Java 8 bytecode for the core module
It will still only use the Java 7 API.
2021-09-28 16:38:31 +02:00
Andreas Schildbach
d6851edb2f build.gradle: Update OkHttp to 3.12.13. 2021-09-25 23:36:34 +02:00
Andreas Schildbach
2882d63616 build.gradle: Update BouncyCastle to 1.69. 2021-09-25 23:23:12 +02:00
Andreas Schildbach
47660f6418 build.gradle: migrate from protobuf-java to protobuf-javalite
This commit contains rather hard to review diffs to the protobuf test datasets in .txt format.
To aid the review, this Python script can be used to convert the data from the old to the new
format:

```
import sys

file = open(sys.argv[1])
outfile = open(sys.argv[1] + ".lite", "w")
line = file.readline()
lines = []

def sortAndPrint(group, removeLastLB=False, removeFirstLB=False):
    group.sort()
    if removeFirstLB and group[0] == "\n":
        group.remove("\n")
    for i in range(len(group)):
        if i == len(group) - 1 and removeLastLB:
            group[i] = group[i].rstrip()
        print(group[i], end="", file=outfile)

def sign32neg(value):
    if 0x80000000 <= value <= 0xFFFFFFFF:
        value &= 0x7FFFFFFF
        value = int(value)
        value = ~value
        value ^= 0x7FFFFFFF
    return value

def processPath(path):
    parts = path.rstrip().split(":")
    number = int(parts[1].lstrip())
    if number >= 0x80000000:
        number = sign32neg(number)
    return parts[0] + ": " + str(number) + "\n"

groupcount = 0
while len(line) > 0:
    if line.startswith("type:"):
        if len(lines):
            sortAndPrint(lines, removeFirstLB=groupcount==0)
            groupcount += 1
        lines.clear()
        lines.append(line)
    elif line.find("deterministic_key {") != -1:
        structure = line
        innerlines = []
        line = file.readline()
        while not line.startswith('}'):
            if line.find("path") != -1:  # preserve order of paths
                pathlines = processPath(line)
                line = file.readline()
                if line.startswith('}'):
                    innerlines.append(pathlines)
                    continue
                while line.find("path") != -1:
                    pathlines += processPath(line)
                    line = file.readline()
                innerlines.append(pathlines)
                if line.startswith('}'):
                    continue
            if line.startswith("  sigsRequiredToSpend"):
                line = line.replace("sigsRequiredToSpend", "sigs_required_to_spend")
            innerlines.append(line)
            line = file.readline()
        innerlines.sort()
        for l in innerlines:
            structure += l
        structure += line.rstrip() + "\n"
        lines.append(structure)
    elif line.find("path") != -1:  # preserve order of paths
        accountpathlines = processPath(line)
        line = file.readline()
        while line.find("path") != -1:
            accountpathlines += processPath(line)
            line = file.readline()
        lines.append(accountpathlines)
        lines.append(line)
    else:
        lines.append(line)
    line = file.readline()
print(file=outfile)
sortAndPrint(lines, removeLastLB=True)
file.close()
outfile.close()
```
2021-09-25 11:00:42 +02:00
Sean Gilligan
6da10f8641 build.gradle: Update SLF4J to 1.7.32. 2021-09-17 11:51:11 +02:00
Andreas Schildbach
8a775a37d8 build.gradle: Migrate from maven to maven-publish plugin
To publish to the local Maven repository, use `gradle publishToMavenLocal` rather than `gradle install`.
2021-09-01 01:37:28 +02:00
Andreas Schildbach
9174ae7495 build.gradle: Update JUnit to 4.13.1. 2021-02-11 13:01:30 +01:00
Andreas Schildbach
1bcea2a59c build.gradle: Update BouncyCastle to 1.68. 2021-01-09 23:41:26 +01:00
Andreas Schildbach
14673e6907 build.gradle: Update OkHttp to 3.12.12. 2020-10-17 00:29:01 +02:00
Andreas Schildbach
41ebd0aabe build.gradle: Update protobuf-java to 3.13.0. 2020-10-17 00:21:14 +02:00
Andreas Schildbach
e6c68d9758 build.gradle: Update Guava to 30.0-android. 2020-10-17 00:12:51 +02:00
Andreas Schildbach
dbdd60052e build.gradle: Update BouncyCastle to 1.66. 2020-10-17 00:09:40 +02:00
Sean Gilligan
f6c8b0dbe3 Coin: satoshi/long <-> btc/BigDecimal
* Add static utility methods: btcToSatoshi(), satoshiToBtc()
* Add static factory method: ofBtc()
* Add instance method: toBtc()
* Add hamcrest-library to testImplementation for BigDecimal comparison
2020-09-01 15:21:01 +02:00
Andreas Schildbach
fa16458c2f build.gradle: Update OkHttp to 3.12.11. 2020-05-09 22:54: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
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
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
f258cbc122 Update JUnit to 4.13. 2020-01-23 01:20:44 +01:00
Andreas Schildbach
0112e3ccbe Update slf4j to 1.7.30. 2020-01-23 01:16:58 +01:00
Andreas Schildbach
0473c748b9 Update OkHttp to 3.12.8. 2020-01-23 01:14:21 +01:00
Andreas Schildbach
68538e57af Update Guava to 28.2-android. 2020-01-23 01:09:35 +01:00
Andreas Schildbach
ded215e69e Update slf4j to 1.7.29. 2019-11-21 12:35:13 +01:00
Andreas Schildbach
833a67e1d6 Update BouncyCastle to 1.64. 2019-10-22 19:13:27 +02:00
Andreas Schildbach
f396327246 Update Guava to 28.1-android. 2019-10-21 12:15:53 +02:00
Andreas Schildbach
7982fc2456 Update OkHttp to 3.12.6. 2019-10-21 12:10:37 +02:00
Andreas Schildbach
b690803442 Update protobuf-java to 3.9.2. 2019-10-08 19:14:02 +02:00
Andreas Schildbach
86a73137ad Update OkHttp to 3.12.5. 2019-09-19 00:13:25 +02:00
Andreas Schildbach
36e64477b5 Update BouncyCastle to 1.63. 2019-09-11 11:04:17 +02:00
Sean Gilligan
03d7d7369f Update slf4j to 1.7.28.
1.7.28 fixes an error in 1.7.27 that could affect some users of JPMS modules.
2019-08-27 12:16:59 +02:00
Sean Gilligan
1394f91d61 Update slf4j to 1.7.27. 2019-08-08 09:43:56 +02:00
Andreas Schildbach
cee5264ab9 build.gradle: Specify javadoc encodings. 2019-07-26 17:14:37 +02:00
Sean Gilligan
951d18b9a7 Update slf4j to 1.7.26. 2019-07-26 10:43:57 +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
Andreas Schildbach
d78ce55ee1 Update OkHttp to 3.12.3. 2019-05-19 10:18:06 +02:00
Andreas Schildbach
1fb770be69 Update protobuf-java to 3.7.1. 2019-05-19 10:03:43 +02:00
Matthew Leon
6aa56dbbe7 Address hierarchy: Add equals() and hashCode() tests. 2019-05-14 08:50:23 +02:00
Andreas Schildbach
106e2c8baa Use Bouncy Castle's Scrypt implementation rather than the standalone library.
Amazingly, on a Pixel 2 this implementation is a bit quicker than Will Glozer/Colin Percival's native code.
2019-05-04 15:28:41 +02:00
Sean Gilligan
7bfeff65f6 build.gradle: Use plugins block rather than 'apply plugin' statements. 2019-04-18 16:41:12 +02:00
Sean Gilligan
98c5e42517 build.gradle: Declare Automatic-Module-Name entry in MANIFEST.MF to make bitcoinj-core compatible to Java9 modules. 2019-04-05 11:45:52 +02:00
Sean Gilligan
170cc80e45 Update Guava to 27.1-android. 2019-04-05 10:31:35 +02:00
Andreas Schildbach
83b1e44d7d settings.gradle: Prefix project names by 'bitcoinj-'. 2019-03-24 10:34:23 +01:00
Tim Strasser
3c405931f8 Add test for DnsDiscovery. 2019-03-24 10:19:40 +01:00
Andreas Schildbach
b49d3e53ca Prepare 0.16-SNAPSHOT 2019-03-01 11:46:48 +01:00
Andreas Schildbach
0be1008339 build.gradle: Exclude the same set of integration tests as we did for Maven.
This fixes the 'address already in use' error.
2019-02-25 21:11:51 +01:00
Andreas Schildbach
81ddd50ffb build.gradle: Make protobuf-gradle-plugin use protoc from the repository.
This updates the protoc version to 3.6.1, fixing many warnings in the generated sources.
2019-02-23 23:27:48 +01:00
Oscar Guindzberg
66d54c11b1 build.gradle: Print failed tests a bit more detailed. 2019-02-15 18:58:25 +01:00
Andreas Schildbach
225941d88a Update protobuf-java to 3.6.1. 2019-02-15 03:53:00 +01:00