Merged in mike-july-dependency-upgrades (pull request #200)

Upgrade dependencies, July edition.
This commit is contained in:
Mike Hearn 2016-07-06 16:25:52 +01:00
commit bbc5c2e981
6 changed files with 33 additions and 31 deletions

View File

@ -6,6 +6,7 @@ apply plugin: 'kotlin'
apply plugin: 'application' apply plugin: 'application'
apply plugin: 'project-report' apply plugin: 'project-report'
apply plugin: QuasarPlugin apply plugin: QuasarPlugin
apply plugin: 'com.github.ben-manes.versions'
allprojects { allprojects {
sourceCompatibility = 1.8 sourceCompatibility = 1.8
@ -17,13 +18,16 @@ allprojects {
} }
buildscript { buildscript {
ext.kotlin_version = '1.0.2' ext.kotlin_version = '1.0.3'
ext.quasar_version = '0.7.5' ext.quasar_version = '0.7.5'
ext.asm_version = '0.5.3' ext.asm_version = '0.5.3'
ext.artemis_version = '1.3.0' ext.artemis_version = '1.3.0'
ext.jetty_version = '9.1.1.v20140108' ext.jackson_version = '2.8.0.rc2'
ext.jersey_version = '2.22.2' ext.jetty_version = '9.3.9.v20160517'
ext.jersey_version = '2.23.1'
ext.jolokia_version = '2.0.0-M1' ext.jolokia_version = '2.0.0-M1'
ext.slf4j_version = '1.7.21'
ext.assertj_version = '3.5.1'
repositories { repositories {
mavenCentral() mavenCentral()
@ -31,6 +35,9 @@ buildscript {
} }
dependencies { dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// Can run 'gradle dependencyUpdates' to find new versions of things.
classpath 'com.github.ben-manes:gradle-versions-plugin:0.12.0'
} }
} }
@ -77,7 +84,7 @@ dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-test:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
compile "org.jetbrains.kotlinx:kotlinx-support-jdk8:0.1" compile "org.jetbrains.kotlinx:kotlinx-support-jdk8:0.2"
// Unit testing helpers. // Unit testing helpers.
testCompile 'junit:junit:4.12' testCompile 'junit:junit:4.12'
@ -86,7 +93,7 @@ dependencies {
// Integration test helpers // Integration test helpers
integrationTestCompile 'junit:junit:4.12' integrationTestCompile 'junit:junit:4.12'
integrationTestCompile 'org.assertj:assertj-core:3.4.1' integrationTestCompile 'org.assertj:assertj-core:${assertj_version}'
} }
// Package up the demo programs. // Package up the demo programs.

View File

@ -12,7 +12,7 @@ import org.junit.Test
import org.junit.runner.RunWith import org.junit.runner.RunWith
import org.junit.runners.Parameterized import org.junit.runners.Parameterized
import java.time.Instant import java.time.Instant
import java.util.Currency import java.util.*
import kotlin.test.assertFailsWith import kotlin.test.assertFailsWith
import kotlin.test.assertTrue import kotlin.test.assertTrue

View File

@ -24,8 +24,7 @@ repositories {
dependencies { dependencies {
testCompile 'junit:junit:4.12' testCompile 'junit:junit:4.12'
testCompile 'org.assertj:assertj-core:3.4.1' testCompile "commons-fileupload:commons-fileupload:1.3.2"
testCompile "commons-fileupload:commons-fileupload:1.3.1"
// Guava: Google test library (collections test suite) // Guava: Google test library (collections test suite)
testCompile "com.google.guava:guava-testlib:19.0" testCompile "com.google.guava:guava-testlib:19.0"
@ -38,27 +37,27 @@ dependencies {
compile "com.google.code.findbugs:jsr305:3.0.1" compile "com.google.code.findbugs:jsr305:3.0.1"
// AssertJ: for fluent assertions for testing // AssertJ: for fluent assertions for testing
testCompile "org.assertj:assertj-core:3.4.1" testCompile "org.assertj:assertj-core:${assertj_version}"
// SLF4J: Logging framework. // SLF4J: Logging framework.
compile "org.slf4j:slf4j-jdk14:1.7.13" compile "org.slf4j:slf4j-jdk14:${slf4j_version}"
// Guava: Google utilities library. // Guava: Google utilities library.
compile "com.google.guava:guava:19.0" compile "com.google.guava:guava:19.0"
// RxJava: observable streams of events. // RxJava: observable streams of events.
compile "io.reactivex:rxjava:1.0.17" compile "io.reactivex:rxjava:1.1.6"
// Kryo: object graph serialization. // Kryo: object graph serialization.
compile "com.esotericsoftware:kryo:3.0.3" compile "com.esotericsoftware:kryo:4.0.0"
compile "de.javakaffee:kryo-serializers:0.37" compile "de.javakaffee:kryo-serializers:0.38"
// Apache JEXL: An embeddable expression evaluation library. // Apache JEXL: An embeddable expression evaluation library.
// This may be temporary until we experiment with other ways to do on-the-fly contract specialisation via an API. // This may be temporary until we experiment with other ways to do on-the-fly contract specialisation via an API.
compile "org.apache.commons:commons-jexl3:3.0" compile "org.apache.commons:commons-jexl3:3.0"
// For JSON // For JSON
compile "com.fasterxml.jackson.core:jackson-databind:2.5.5" compile "com.fasterxml.jackson.core:jackson-databind:${jackson_version}"
// Java ed25519 implementation. See https://github.com/str4d/ed25519-java/ // Java ed25519 implementation. See https://github.com/str4d/ed25519-java/
compile 'net.i2p.crypto:eddsa:0.1.0' compile 'net.i2p.crypto:eddsa:0.1.0'

View File

@ -360,10 +360,6 @@ fun createKryo(k: Kryo = Kryo()): Kryo {
// This is required to make all the unit tests pass // This is required to make all the unit tests pass
register(Party::class.java) register(Party::class.java)
// Work around a bug in Kryo handling nested generics
register(Issued::class.java, ImmutableClassSerializer(Issued::class))
register(TransactionState::class.java, ImmutableClassSerializer(TransactionState::class))
// This ensures a NonEmptySetSerializer is constructed with an initial value. // This ensures a NonEmptySetSerializer is constructed with an initial value.
register(NonEmptySet::class.java, NonEmptySetSerializer) register(NonEmptySet::class.java, NonEmptySetSerializer)

View File

@ -29,24 +29,24 @@ dependencies {
compile project(':contracts') compile project(':contracts')
compile "com.google.code.findbugs:jsr305:3.0.1" compile "com.google.code.findbugs:jsr305:3.0.1"
compile "org.slf4j:slf4j-jdk14:1.7.13" compile "org.slf4j:slf4j-jdk14:${slf4j_version}"
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
compile "org.jetbrains.kotlin:kotlin-test:$kotlin_version" compile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
compile "org.jetbrains.kotlinx:kotlinx-support-jdk8:0.1" compile "org.jetbrains.kotlinx:kotlinx-support-jdk8:0.2"
compile "com.google.guava:guava:19.0" compile "com.google.guava:guava:19.0"
// JOpt: for command line flags. // JOpt: for command line flags.
compile "net.sf.jopt-simple:jopt-simple:4.9" compile "net.sf.jopt-simple:jopt-simple:5.0.2"
// Artemis: for reliable p2p message queues. // Artemis: for reliable p2p message queues.
compile "org.apache.activemq:artemis-server:${artemis_version}" compile "org.apache.activemq:artemis-server:${artemis_version}"
compile "org.apache.activemq:artemis-core-client:${artemis_version}" compile "org.apache.activemq:artemis-core-client:${artemis_version}"
// JAnsi: for drawing things to the terminal in nicely coloured ways. // JAnsi: for drawing things to the terminal in nicely coloured ways.
compile "org.fusesource.jansi:jansi:1.11" compile "org.fusesource.jansi:jansi:1.13"
// GraphStream: For visualisation // GraphStream: For visualisation
compile "org.graphstream:gs-core:1.3" compile "org.graphstream:gs-core:1.3"
@ -63,7 +63,7 @@ dependencies {
compile "org.eclipse.jetty:jetty-webapp:${jetty_version}" compile "org.eclipse.jetty:jetty-webapp:${jetty_version}"
compile "javax.servlet:javax.servlet-api:3.1.0" compile "javax.servlet:javax.servlet-api:3.1.0"
compile "org.jolokia:jolokia-agent-war:2.0.0-M1" compile "org.jolokia:jolokia-agent-war:2.0.0-M1"
compile "commons-fileupload:commons-fileupload:1.3.1" compile "commons-fileupload:commons-fileupload:1.3.2"
// Jersey for JAX-RS implementation for use in Jetty // Jersey for JAX-RS implementation for use in Jetty
compile "org.glassfish.jersey.core:jersey-server:${jersey_version}" compile "org.glassfish.jersey.core:jersey-server:${jersey_version}"
@ -76,10 +76,10 @@ dependencies {
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind' exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core' exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
} }
compile ("com.fasterxml.jackson.module:jackson-module-kotlin:2.5.5-2") { compile ("com.fasterxml.jackson.module:jackson-module-kotlin:${jackson_version}") {
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations' exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations'
} }
compile "com.fasterxml.jackson.core:jackson-annotations:2.5.5" compile "com.fasterxml.jackson.core:jackson-annotations:${jackson_version}"
// Coda Hale's Metrics: for monitoring of key statistics // Coda Hale's Metrics: for monitoring of key statistics
compile "io.dropwizard.metrics:metrics-core:3.1.2" compile "io.dropwizard.metrics:metrics-core:3.1.2"
@ -92,7 +92,7 @@ dependencies {
// Unit testing helpers. // Unit testing helpers.
testCompile 'junit:junit:4.12' testCompile 'junit:junit:4.12'
testCompile 'org.assertj:assertj-core:3.4.1' testCompile "org.assertj:assertj-core:${assertj_version}"
} }
quasarScan.dependsOn('classes', ':core:classes', ':contracts:classes') quasarScan.dependsOn('classes', ':core:classes', ':contracts:classes')

View File

@ -73,7 +73,7 @@ object JsonSupport {
return try { return try {
LocalDate.parse(parser.text) LocalDate.parse(parser.text)
} catch (e: Exception) { } catch (e: Exception) {
throw JsonParseException("Invalid LocalDate ${parser.text}: ${e.message}", parser.currentLocation) throw JsonParseException(parser, "Invalid LocalDate ${parser.text}: ${e.message}")
} }
} }
} }
@ -98,7 +98,7 @@ object JsonSupport {
} }
val mapper = parser.codec as ServiceHubObjectMapper val mapper = parser.codec as ServiceHubObjectMapper
// TODO this needs to use some industry identifier(s) not just these human readable names // TODO this needs to use some industry identifier(s) not just these human readable names
return mapper.identities.partyFromName(parser.text) ?: throw JsonParseException("Could not find a Party with name: ${parser.text}", parser.currentLocation) return mapper.identities.partyFromName(parser.text) ?: throw JsonParseException(parser, "Could not find a Party with name: ${parser.text}")
} }
} }
@ -120,7 +120,7 @@ object JsonSupport {
@Suppress("UNCHECKED_CAST") @Suppress("UNCHECKED_CAST")
return SecureHash.parse(parser.text) as T return SecureHash.parse(parser.text) as T
} catch (e: Exception) { } catch (e: Exception) {
throw JsonParseException("Invalid hash ${parser.text}: ${e.message}", parser.currentLocation) throw JsonParseException(parser, "Invalid hash ${parser.text}: ${e.message}")
} }
} }
} }
@ -131,7 +131,7 @@ object JsonSupport {
val array = StringArrayDeserializer.instance.deserialize(parser, context) val array = StringArrayDeserializer.instance.deserialize(parser, context)
BusinessCalendar.getInstance(*array) BusinessCalendar.getInstance(*array)
} catch (e: Exception) { } catch (e: Exception) {
throw JsonParseException("Invalid calendar(s) ${parser.text}: ${e.message}", parser.currentLocation) throw JsonParseException(parser, "Invalid calendar(s) ${parser.text}: ${e.message}")
} }
} }
} }
@ -151,7 +151,7 @@ object JsonSupport {
val A = Base58.decode(parser.text) val A = Base58.decode(parser.text)
EdDSAPublicKey(EdDSAPublicKeySpec(A, ed25519Curve)) EdDSAPublicKey(EdDSAPublicKeySpec(A, ed25519Curve))
} catch (e: Exception) { } catch (e: Exception) {
throw JsonParseException("Invalid public key ${parser.text}: ${e.message}", parser.currentLocation) throw JsonParseException(parser, "Invalid public key ${parser.text}: ${e.message}")
} }
} }
} }