Skip to content
This repository was archived by the owner on Jan 25, 2021. It is now read-only.

Commit 6b1454b

Browse files
committed
Merge branch 'gradle' into develop
# Conflicts: # build.gradle Fix build with gradle 4.6 and latest android sdk
2 parents f695264 + 4b62387 commit 6b1454b

File tree

16 files changed

+384
-91
lines changed

16 files changed

+384
-91
lines changed

build.gradle

Lines changed: 171 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ repositories {
1616
}
1717

1818
ext {
19-
gradleVersions = '4.1,4.2,4.2.1,4.3,4.3.1,4.4,4.4.1,4.5,4.5.1'
20-
androidGradleBuildVersion = '3.0.0-beta3'
21-
androidCompileSdkVersion = 'android-26'
22-
androidBuildToolsVersion = '26.0.1'
19+
gradleVersions = '4.6'
20+
androidGradleBuildVersion = '3.0.1'
21+
androidCompileSdkVersion = 'android-27'
22+
androidBuildToolsVersion = '27.0.3'
2323
}
2424

2525
configurations {
@@ -48,46 +48,179 @@ task createClasspathManifest {
4848
}
4949

5050
ext {
51-
versions = [:]
51+
libraries = [:]
52+
testLibraries = [:]
5253
}
5354

54-
versions.commons_io = '2.2'
55-
versions.groovy = "2.4.12"
56-
versions.maven = "3.0.4"
57-
versions.findbugs = "2.0.1"
55+
// from gradle/gradle/dependencies.gradle
56+
libraries.aether_connector = [coordinates: 'org.sonatype.aether:aether-connector-wagon', version: '1.13.1']
57+
libraries.ant = [coordinates: 'org.apache.ant:ant', version: '1.9.9']
58+
libraries.asm = [coordinates: 'org.ow2.asm:asm', version: '6.0']
59+
libraries.asm_commons = [coordinates: 'org.ow2.asm:asm-commons', version: libraries.asm.version]
60+
libraries.asm_tree = [coordinates: 'org.ow2.asm:asm-tree', version: libraries.asm.version]
61+
libraries.asm_util = [coordinates: 'org.ow2.asm:asm-util', version: libraries.asm.version]
62+
libraries.asm_analysis = [coordinates: 'org.ow2.asm:asm-analysis', version: libraries.asm.version]
63+
libraries.awsS3_core = [coordinates: 'com.amazonaws:aws-java-sdk-core', version: '1.11.267']
64+
libraries.awsS3_s3 = [coordinates: 'com.amazonaws:aws-java-sdk-s3', version: libraries.awsS3_core.version]
65+
libraries.awsS3_kms = [coordinates: 'com.amazonaws:aws-java-sdk-kms', version: libraries.awsS3_core.version]
66+
libraries.bouncycastle_provider = [coordinates: 'org.bouncycastle:bcprov-jdk15on', version: '1.58']
67+
libraries.bouncycastle_pgp = [coordinates: 'org.bouncycastle:bcpg-jdk15on', version: libraries.bouncycastle_provider.version]
68+
libraries.bndlib = [coordinates: 'biz.aQute.bnd:biz.aQute.bndlib', version: '3.4.0']
69+
libraries.bsh = [coordinates: 'org.apache-extras.beanshell:bsh', version: '2.0b6']
70+
libraries.commons_cli = [coordinates: 'commons-cli:commons-cli', version: '1.2']
71+
libraries.commons_codec = [coordinates: 'commons-codec:commons-codec', version: '1.10']
72+
libraries.commons_collections = [coordinates: 'commons-collections:commons-collections', version: '3.2.2']
73+
libraries.commons_compress = [coordinates: 'org.apache.commons:commons-compress', version: '1.14']
74+
libraries.commons_httpclient = [coordinates: 'org.apache.httpcomponents:httpclient', version: '4.5.5']
75+
libraries.commons_io = [coordinates: 'commons-io:commons-io', version: '2.4']
76+
libraries.commons_lang = [coordinates: 'commons-lang:commons-lang', version: '2.6']
77+
libraries.fastutil = [coordinates: 'it.unimi.dsi:fastutil', version: '7.2.1']
78+
libraries.gcs = [coordinates: 'com.google.apis:google-api-services-storage', version: 'v1-rev116-1.23.0']
79+
libraries.groovy = [coordinates: 'org.codehaus.groovy:groovy-all', version: '2.4.12']
80+
libraries.gson = [coordinates: 'com.google.code.gson:gson', version: '2.7']
81+
libraries.guava = [coordinates: 'com.google.guava:guava-jdk5', version: '17.0']
82+
libraries.inject = [coordinates: 'javax.inject:javax.inject', version: '1']
83+
libraries.ivy = [coordinates: 'org.apache.ivy:ivy', version: '2.2.0']
84+
libraries.jackson_core = [coordinates: 'com.fasterxml.jackson.core:jackson-core', version: '2.8.11']
85+
libraries.jackson_annotations = [coordinates: 'com.fasterxml.jackson.core:jackson-annotations', version: libraries.jackson_core.version]
86+
libraries.jackson_databind = [coordinates: 'com.fasterxml.jackson.core:jackson-databind', version: libraries.jackson_core.version]
87+
libraries.jansi = [coordinates: 'org.fusesource.jansi:jansi', version: '1.14']
88+
libraries.jatl = [coordinates: 'com.googlecode.jatl:jatl', version: '0.2.2']
89+
libraries.jcifs = [coordinates: 'org.samba.jcifs:jcifs', version: '1.3.17']
90+
libraries.jcip = [coordinates: 'net.jcip:jcip-annotations', version: '1.0']
91+
libraries.jgit = [coordinates: 'org.eclipse.jgit:org.eclipse.jgit', version: '4.5.3.201708160445-r', because: '4.6+ requires Java 8']
92+
libraries.joda = [coordinates: 'joda-time:joda-time', version: '2.8.2']
93+
libraries.jsch = [coordinates: 'com.jcraft:jsch', version: '0.1.54']
94+
libraries.jsr305 = [coordinates: 'com.google.code.findbugs:jsr305', version: '2.0.1']
95+
libraries.junit = [coordinates: 'junit:junit', version: '4.12']
96+
libraries.junitPlatform = [coordinates: 'org.junit.platform:junit-platform-launcher', version: '1.0.3']
97+
libraries.kryo = [coordinates: 'com.esotericsoftware.kryo:kryo', version: '2.20']
98+
libraries.maven3 = [coordinates: 'org.apache.maven:maven-core', version: '3.0.4']
99+
libraries.maven3_wagon_file = [coordinates: 'org.apache.maven.wagon:wagon-file', version: '2.4']
100+
libraries.maven3_wagon_http = [coordinates: 'org.apache.maven.wagon:wagon-http', version: libraries.maven3_wagon_file.version]
101+
libraries.nativePlatform = [coordinates: 'net.rubygrapefruit:native-platform', version: '0.14']
102+
libraries.nekohtml = [coordinates: 'net.sourceforge.nekohtml:nekohtml', version: '1.9.20']
103+
libraries.objenesis = [coordinates: 'org.objenesis:objenesis', version: '1.2']
104+
libraries.plexus_container = [coordinates: 'org.codehaus.plexus:plexus-container-default', version: '1.5.5']
105+
libraries.plist = [coordinates: 'com.googlecode.plist:dd-plist', version: '1.20', because: 'for XCode IDE integration support']
106+
libraries.pmaven_common = [coordinates: 'org.sonatype.pmaven:pmaven-common', version: '0.8-20100325']
107+
libraries.pmaven_groovy = [coordinates: 'org.sonatype.pmaven:pmaven-groovy', version: libraries.pmaven_common.version]
108+
libraries.rhino = [coordinates: 'org.mozilla:rhino', version: '1.7R3']
109+
libraries.simple = [coordinates: 'org.simpleframework:simple', version: '4.1.21']
110+
libraries.testng = [coordinates: 'org.testng:testng', version: '6.3.1']
111+
libraries.xerces = [coordinates: 'xerces:xercesImpl', version: '2.11.0']
112+
libraries.xmlApis = [coordinates: 'xml-apis:xml-apis', version: '1.4.01', because: '2.0.x has a POM with relocation Gradle does not handle well']
113+
libraries.slf4j_api = [coordinates: 'org.slf4j:slf4j-api', version: '1.7.16']
114+
libraries.jcl_to_slf4j = [coordinates: 'org.slf4j:jcl-over-slf4j', version: libraries.slf4j_api.version]
115+
libraries.jul_to_slf4j = [coordinates: 'org.slf4j:jul-to-slf4j', version: libraries.slf4j_api.version]
116+
libraries.log4j_to_slf4j = [coordinates: 'org.slf4j:log4j-over-slf4j', version: libraries.slf4j_api.version]
117+
118+
// these are transitive dependencies that are part of the Gradle distribution
119+
libraries.jetbrains_annotations = [coordinates: 'org.jetbrains:annotations', version: '13.0']
120+
libraries.ant_launcher = [coordinates: 'org.apache.ant:ant-launcher', version: libraries.ant.version]
121+
libraries.asm_util = [coordinates: 'org.ow2.asm:asm-util', version: libraries.asm.version]
122+
libraries.minlog = [coordinates: 'com.esotericsoftware.minlog:minlog', version: '1.2']
123+
libraries.aether_api = [coordinates: 'org.sonatype.aether:aether-api', version: libraries.aether_connector.version]
124+
libraries.aether_impl = [coordinates: 'org.sonatype.aether:aether-impl', version: libraries.aether_connector.version]
125+
libraries.aether_spi = [coordinates: 'org.sonatype.aether:aether-spi', version: libraries.aether_connector.version]
126+
libraries.aether_util = [coordinates: 'org.sonatype.aether:aether-util', version: libraries.aether_connector.version]
127+
libraries.google_api_client = [coordinates: 'com.google.api-client:google-api-client', version: '1.23.0']
128+
libraries.google_http_client = [coordinates: 'com.google.http-client:google-http-client', version: '1.23.0']
129+
libraries.google_http_client_jackson2 = [coordinates: 'com.google.http-client:google-http-client-jackson2', version: '1.23.0']
130+
libraries.google_oauth_client = [coordinates: 'com.google.oauth-client:google-oauth-client', version: '1.23.0']
131+
libraries.hamcrest = [coordinates: 'org.hamcrest:hamcrest-core', version: '1.3']
132+
libraries.httpcore = [coordinates: 'org.apache.httpcomponents:httpcore', version: '4.4.9']
133+
libraries.jcommander = [coordinates: 'com.beust:jcommander', version: '1.47']
134+
libraries.maven3_aether_provider = [coordinates: 'org.apache.maven:maven-aether-provider', version: libraries.maven3.version]
135+
libraries.maven3_artifact = [coordinates: 'org.apache.maven:maven-artifact', version: libraries.maven3.version]
136+
libraries.maven3_compat = [coordinates: 'org.apache.maven:maven-compat', version: libraries.maven3.version]
137+
libraries.maven3_model = [coordinates: 'org.apache.maven:maven-model', version: libraries.maven3.version]
138+
libraries.maven3_model_builder = [coordinates: 'org.apache.maven:maven-model-builder', version: libraries.maven3.version]
139+
libraries.maven3_plugin_api = [coordinates: 'org.apache.maven:maven-plugin-api', version: libraries.maven3.version]
140+
libraries.maven3_repository_metadata = [coordinates: 'org.apache.maven:maven-repository-metadata', version: libraries.maven3.version]
141+
libraries.maven3_settings = [coordinates: 'org.apache.maven:maven-settings', version: libraries.maven3.version]
142+
libraries.maven3_settings_builder = [coordinates: 'org.apache.maven:maven-settings-builder', version: libraries.maven3.version]
143+
libraries.plexus_cipher = [coordinates: 'org.sonatype.plexus:plexus-cipher', version: '1.7']
144+
libraries.plexus_classworlds = [coordinates: 'org.codehaus.plexus:plexus-classworlds', version: '2.4']
145+
libraries.plexus_component_annotations = [coordinates: 'org.codehaus.plexus:plexus-component-annotations', version: '1.5.5']
146+
libraries.plexus_interpolation = [coordinates: 'org.codehaus.plexus:plexus-interpolation', version: '1.14']
147+
libraries.plexus_sec_dispatcher = [coordinates: 'org.codehaus.plexus:plexus-sec-dispatcher', version: '1.3']
148+
libraries.plexus_utils = [coordinates: 'org.codehaus.plexus:plexus-utils', version: '3.0.8']
149+
libraries.snakeyaml = [coordinates: 'org.yaml:snakeyaml:1.6', version: '1.6'] //added by testng, could be avoided with newer TestNG version
150+
libraries.maven3_wagon_http_shared4 = [coordinates: 'org.apache.maven.wagon:wagon-http-shared4', version: libraries.maven3_wagon_file.version]
151+
libraries.maven3_wagon_provider_api = [coordinates: 'org.apache.maven.wagon:wagon-provider-api', version: libraries.maven3_wagon_file.version]
152+
libraries.xbean_reflect = [coordinates: 'org.apache.xbean:xbean-reflect', version: '3.4']
153+
154+
// from gradle/gradle/testDependencies.gradle
155+
testLibraries.spock = 'org.spockframework:spock-core:1.0-groovy-2.4'
156+
testLibraries.jsoup = 'org.jsoup:jsoup:1.6.3'
157+
testLibraries.xmlunit = 'xmlunit:xmlunit:1.3'
158+
testLibraries.jetty = 'org.mortbay.jetty:jetty:6.1.26'
159+
testLibraries.sshd = 'org.apache.sshd:sshd-core:1.2.0'
160+
testLibraries.jmock = [
161+
'org.hamcrest:hamcrest-core',
162+
'org.hamcrest:hamcrest-library:1.3',
163+
'org.jmock:jmock:2.5.1',
164+
'org.jmock:jmock-junit4:2.5.1',
165+
'org.jmock:jmock-legacy:2.5.1'
166+
]
58167

59168
dependencies {
60169
jacocoRuntime "org.jacoco:org.jacoco.agent:${jacoco.toolVersion}:runtime"
61-
62-
compile gradleApi()
63-
64-
// from gradle/gradle/dependencies.gradle
65-
compileOnly "org.apache.maven:maven-core:${versions.maven}"
66-
67-
testRuntime files(createClasspathManifest)
68170

69-
testCompile('org.spockframework:spock-core:1.0-groovy-2.4') {
70-
exclude module: 'groovy-all'
171+
// from gradle/subprojects/distributions-dependencies/distributions-dependencies.gradle
172+
constraints {
173+
libraries.values().each { lib ->
174+
compile(lib.coordinates) {
175+
version {
176+
strictly lib.version
177+
if (lib.because) { because lib.because }
178+
}
179+
}
180+
}
71181
}
72182

73-
testCompile 'junit:junit:4.12',
74-
'org.hamcrest:hamcrest-all:1.3',
75-
"org.codehaus.groovy:groovy-all:${versions.groovy}"
76-
77-
// from gradle/subprojects/core/core.gradle, gradle/subprojects/internal-testing/internal-testing.gradle and gradle/gradle/dependencies.gradle
78-
testCompile "commons-io:commons-io:${versions.commons_io}",
79-
'commons-lang:commons-lang:2.6',
80-
'org.objenesis:objenesis:1.2',
81-
'cglib:cglib:3.2.5',
82-
'org.jmock:jmock:2.5.1',
83-
dependencies.create('org.jmock:jmock-junit4:2.5.1') { exclude group: 'junit', module: 'junit-dep' }, //junit-dep pulls old definitions of core junit types.
84-
'org.jmock:jmock-legacy:2.5.1',
85-
'com.google.guava:guava-jdk5:17.0',
86-
'org.jsoup:jsoup:1.6.3',
87-
"com.google.code.findbugs:findbugs:${versions.findbugs}",
88-
'org.ow2.asm:asm:6.0'
89-
testCompile 'org.apache.ivy:ivy:2.2.0'
90-
testCompile 'org.apache.ant:ant:1.9.9'
183+
// from gradle/subprojects/maven/maven.gradle
184+
compileOnly libraries.groovy.coordinates
185+
compileOnly libraries.slf4j_api.coordinates
186+
187+
compileOnly libraries.maven3.coordinates
188+
compileOnly libraries.pmaven_common.coordinates
189+
compileOnly libraries.pmaven_groovy.coordinates
190+
191+
//implementation libraries.maven3_wagon_file.coordinates
192+
//implementation libraries.maven3_wagon_http.coordinates
193+
//implementation libraries.plexus_container.coordinates
194+
//implementation libraries.aether_connector.coordinates
195+
196+
testRuntime files(createClasspathManifest)
197+
198+
testCompile testLibraries.spock
199+
200+
// from gradle/subprojects/core/core.gradle
201+
//testCompile libraries.asm.coordinates
202+
//testCompile libraries.asm_commons.coordinates
203+
//testCompile libraries.slf4j_api.coordinates
204+
//testCompile libraries.commons_collections.coordinates
205+
//testCompile libraries.commons_io.coordinates
206+
testCompile libraries.commons_lang.coordinates
207+
//testCompile libraries.jcip.coordinates
208+
//testCompile libraries.nativePlatform.coordinates
209+
//testCompile libraries.commons_compress.coordinates
210+
//testCompile libraries.xmlApis.coordinates
211+
212+
// from gradle/subprojects/internal-testing/internal-testing.gradle
213+
//testCompile libraries.slf4j_api.coordinates
214+
testCompile libraries.guava.coordinates
215+
//testCompile libraries.commons_lang.coordinates
216+
testCompile libraries.commons_io.coordinates
217+
testCompile libraries.ant.coordinates
218+
testCompile libraries.asm.coordinates
219+
//testCompile libraries.asm_tree.coordinates
220+
//testCompile libraries.junit.coordinates
221+
testCompile testLibraries.jmock
222+
//testCompile testLibraries.spock
223+
testCompile testLibraries.jsoup
91224
}
92225

93226
sourceCompatibility = 1.6
@@ -174,7 +307,7 @@ pluginBundle {
174307
}
175308

176309
jacoco {
177-
toolVersion = "0.7.7.201606060606"
310+
toolVersion = "0.8.0"
178311
}
179312

180313
jacocoTestReport {
@@ -190,7 +323,7 @@ jacocoTestReport.dependsOn test
190323
check.dependsOn jacocoTestReport
191324

192325
task wrapper(type: Wrapper) {
193-
gradleVersion = '4.5'
326+
gradleVersion = '4.6'
194327
distributionUrl = "https://services.gradle.org/distributions/gradle-${gradleVersion}-all.zip"
195328
}
196329

gradle/wrapper/gradle-wrapper.jar

0 Bytes
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
34
zipStoreBase=GRADLE_USER_HOME
45
zipStorePath=wrapper/dists
5-
distributionUrl=https\://services.gradle.org/distributions/gradle-4.5-all.zip

src/main/java/org/gradle/api/plugins/AndroidMavenPlugin.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import org.gradle.api.publication.maven.internal.MavenFactory;
4444
import org.gradle.api.tasks.Upload;
4545
import org.gradle.configuration.project.ProjectConfigurationActionContainer;
46+
import org.gradle.internal.Describables;
4647
import org.gradle.internal.Factory;
4748
import org.gradle.internal.logging.LoggingManagerInternal;
4849

@@ -181,7 +182,7 @@ public void execute(Project project) {
181182
pom.getArtifactId().equals(MavenProject.EMPTY_PROJECT_ARTIFACT_ID) ? module.getName() : pom.getArtifactId(),
182183
pom.getVersion().equals(MavenProject.EMPTY_PROJECT_VERSION) ? module.getVersion() : pom.getVersion()
183184
);
184-
publicationRegistry.registerPublication(project.getPath(), new DefaultProjectPublication(publicationId));
185+
publicationRegistry.registerPublication(project.getPath(), new DefaultProjectPublication(Describables.withTypeAndName("Maven repository", resolver.getName()), publicationId, true));
185186
}
186187
}
187188
});

src/test/core/src/testFixtures/groovy/org/gradle/api/tasks/TaskPropertyTestUtils.groovy

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,13 @@
1616

1717
package org.gradle.api.tasks
1818

19+
import org.gradle.api.file.FileCollection
1920
import org.gradle.api.internal.AbstractTask
2021
import org.gradle.api.internal.TaskInternal
22+
import org.gradle.api.internal.file.CompositeFileCollection
23+
import org.gradle.api.internal.file.collections.FileCollectionResolveContext
2124
import org.gradle.api.internal.tasks.TaskPropertyUtils
25+
import org.gradle.api.internal.tasks.properties.GetInputFilesVisitor
2226
import org.gradle.api.internal.tasks.properties.GetInputPropertiesVisitor
2327
import org.gradle.api.internal.tasks.properties.PropertyWalker
2428

@@ -33,4 +37,23 @@ class TaskPropertyTestUtils {
3337
//noinspection ConstantConditions
3438
return visitor.getPropertyValuesFactory().create();
3539
}
40+
41+
static FileCollection getInputFiles(AbstractTask task) {
42+
GetInputFilesVisitor visitor = new GetInputFilesVisitor()
43+
def walker = task.getServices().get(PropertyWalker)
44+
TaskPropertyUtils.visitProperties(walker, task, visitor)
45+
return new CompositeFileCollection() {
46+
@Override
47+
String getDisplayName() {
48+
return task + " input files"
49+
}
50+
51+
@Override
52+
void visitContents(FileCollectionResolveContext context) {
53+
for (def filePropertySpec : visitor.fileProperties) {
54+
context.add(filePropertySpec.getPropertyFiles())
55+
}
56+
}
57+
}
58+
}
3659
}

src/test/core/src/testFixtures/groovy/org/gradle/cache/internal/TestFileContentCacheFactory.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@
1616

1717
package org.gradle.cache.internal;
1818

19+
import com.google.common.base.Throwables;
20+
import com.google.common.cache.CacheBuilder;
21+
import com.google.common.cache.CacheLoader;
22+
import com.google.common.cache.LoadingCache;
23+
import com.google.common.util.concurrent.UncheckedExecutionException;
1924
import org.gradle.api.internal.file.TestFiles;
2025
import org.gradle.internal.serialize.Serializer;
2126

@@ -25,9 +30,20 @@ public class TestFileContentCacheFactory implements FileContentCacheFactory {
2530
@Override
2631
public <V> FileContentCache<V> newCache(String name, int normalizedCacheSize, final Calculator<? extends V> calculator, Serializer<V> serializer) {
2732
return new FileContentCache<V>() {
33+
LoadingCache<File, V> cache = CacheBuilder.newBuilder().build(new CacheLoader<File, V>() {
34+
@Override
35+
public V load(File file) throws Exception {
36+
return calculator.calculate(file, TestFiles.fileSystem().stat(file).getType());
37+
}
38+
});
39+
2840
@Override
2941
public V get(File file) {
30-
return calculator.calculate(file, TestFiles.fileSystem().stat(file).getType());
42+
try {
43+
return cache.getUnchecked(file);
44+
} catch (UncheckedExecutionException e) {
45+
throw Throwables.propagate(e.getCause());
46+
}
3147
}
3248
};
3349
}

0 commit comments

Comments
 (0)