[gradle/experimental] Update to 1.7
gil
gil at fedoraproject.org
Wed Sep 4 12:55:03 UTC 2013
commit a2e4f3761b048030fc5dea0ba215a4db789ccb86
Author: gil <puntogil at libero.it>
Date: Wed Sep 4 14:47:03 2013 +0200
Update to 1.7
gradle-1.7-ivy.patch | 167 ++++++++++++++++++++++++++++++++++++++++++++++
gradle-1.7-no-zinc.patch | 157 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 324 insertions(+), 0 deletions(-)
---
diff --git a/gradle-1.7-ivy.patch b/gradle-1.7-ivy.patch
new file mode 100644
index 0000000..f6ed33a
--- /dev/null
+++ b/gradle-1.7-ivy.patch
@@ -0,0 +1,167 @@
+diff -Nru gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoOpRepositoryCacheManager.java gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoOpRepositoryCacheManager.java
+--- gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoOpRepositoryCacheManager.java 2013-08-06 12:47:08.000000000 +0200
++++ gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoOpRepositoryCacheManager.java 2013-08-30 21:20:07.218091618 +0200
+@@ -24,6 +24,8 @@
+ import org.apache.ivy.core.report.DownloadStatus;
+ import org.apache.ivy.core.resolve.ResolvedModuleRevision;
+ import org.apache.ivy.plugins.repository.ArtifactResourceResolver;
++import org.apache.ivy.plugins.repository.Repository;
++import org.apache.ivy.plugins.repository.Resource;
+ import org.apache.ivy.plugins.repository.ResourceDownloader;
+ import org.apache.ivy.plugins.resolver.DependencyResolver;
+ import org.apache.ivy.plugins.resolver.util.ResolvedResource;
+@@ -73,4 +75,13 @@
+
+ public void saveResolvedRevision(ModuleRevisionId dynamicMrid, String revision) {
+ }
++
++ public ArtifactDownloadReport downloadRepositoryResource(Resource resource,
++ String name,
++ String type,
++ String extension,
++ CacheResourceOptions options,
++ Repository repository) {
++ throw new UnsupportedOperationException("This operation is not supported.");
++ }
+ }
+diff -Nru gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/IvyXmlModuleDescriptorParser.java gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/IvyXmlModuleDescriptorParser.java
+--- gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/IvyXmlModuleDescriptorParser.java 2013-08-06 12:47:10.000000000 +0200
++++ gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/IvyXmlModuleDescriptorParser.java 2013-08-30 21:35:25.651596785 +0200
+@@ -279,20 +279,24 @@
+ List<String> extendTypes = Arrays.asList(extendType.split(","));
+
+ ModuleDescriptor parent = null;
++ ModuleId expected = new ModuleId(parentOrganisation, parentModule);
++ ModuleRevisionId pid = new ModuleRevisionId(expected, parentRevision);
++ //check on filesystem based on location attribute
++ boolean local = false;
+ try {
+ LOGGER.debug("Trying to parse included ivy file :" + location);
+ parent = parseOtherIvyFileOnFileSystem(location);
+
+- //verify that the parsed descriptor is the correct parent module.
+- ModuleId expected = new ModuleId(parentOrganisation, parentModule);
+- ModuleId pid = parent.getModuleRevisionId().getModuleId();
+- if (!expected.equals(pid)) {
+- LOGGER.warn("Ignoring parent Ivy file " + location + "; expected " + expected + " but found " + pid);
+- parent = null;
++ if (parent != null) {
++ ModuleId foundpid = parent.getResolvedModuleRevisionId().getModuleId();
++ if (!foundpid.equals(expected)) {
++ // the filesystem contains a parent module with different organisation
++ // or module name; ignore that parent module
++ LOGGER.warn("Ignoring parent Ivy file " + location + "; expected " + expected + " but found " + foundpid);
++ parent = null;
++ }
+ }
+-
+- } catch (ParseException e) {
+- LOGGER.debug("Unable to parse included ivy file " + location + ": " + e.getMessage());
++ local = parent != null;
+ } catch (IOException e) {
+ LOGGER.debug("Unable to parse included ivy file " + location + ": " + e.getMessage());
+ }
+@@ -307,7 +311,7 @@
+ + parentModule
+ + ";"
+ + parentRevision);
+- parent = parseOtherIvyFile(parentOrganisation, parentModule, parentRevision);
++ parent = parseOtherIvyFile(pid);
+ } catch (ParseException e) {
+ LOGGER.warn("Unable to parse included ivy file for " + parentOrganisation + "#" + parentModule + ";" + parentRevision);
+ }
+@@ -318,10 +322,10 @@
+ }
+
+ DefaultExtendsDescriptor ed = new DefaultExtendsDescriptor(
+- parent.getModuleRevisionId(),
+- parent.getResolvedModuleRevisionId(),
++ parent,
+ attributes.getValue("location"),
+- extendTypes.toArray(new String[extendTypes.size()]));
++ (String[]) extendTypes.toArray(new String[extendTypes.size()]),
++ local);
+ getMd().addInheritedDescriptor(ed);
+
+ mergeWithOtherModuleDescriptor(extendTypes, parent);
+@@ -427,10 +431,9 @@
+ return parser.getModuleDescriptor();
+ }
+
+- private ModuleDescriptor parseOtherIvyFile(String parentOrganisation,
+- String parentModule, String parentRevision) throws ParseException {
+- ModuleId parentModuleId = new ModuleId(parentOrganisation, parentModule);
+- ModuleRevisionId parentMrid = new ModuleRevisionId(parentModuleId, parentRevision);
++ private ModuleDescriptor parseOtherIvyFile(ModuleRevisionId parentMrid) throws ParseException {
++ LOGGER.warn("Trying to parse included ivy file by asking repository for module :"
++ + parentMrid.toString());
+
+ DependencyDescriptor dd = new DefaultDependencyDescriptor(parentMrid, true);
+ ResolveData data = IvyContext.getContext().getResolveData();
+diff -Nru gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/DownloadingRepositoryCacheManager.java gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/DownloadingRepositoryCacheManager.java
+--- gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/DownloadingRepositoryCacheManager.java 2013-08-06 12:47:10.000000000 +0200
++++ gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/DownloadingRepositoryCacheManager.java 2013-08-30 21:29:39.862174858 +0200
+@@ -18,6 +18,7 @@
+ import org.apache.ivy.core.cache.ArtifactOrigin;
+ import org.apache.ivy.core.cache.CacheDownloadOptions;
+ import org.apache.ivy.core.cache.CacheMetadataOptions;
++import org.apache.ivy.core.cache.CacheResourceOptions;
+ import org.apache.ivy.core.cache.DownloadListener;
+ import org.apache.ivy.core.module.descriptor.Artifact;
+ import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
+@@ -28,6 +29,7 @@
+ import org.apache.ivy.core.report.MetadataArtifactDownloadReport;
+ import org.apache.ivy.core.resolve.ResolvedModuleRevision;
+ import org.apache.ivy.plugins.repository.ArtifactResourceResolver;
++import org.apache.ivy.plugins.repository.Repository;
+ import org.apache.ivy.plugins.repository.Resource;
+ import org.apache.ivy.plugins.repository.ResourceDownloader;
+ import org.apache.ivy.plugins.resolver.DependencyResolver;
+@@ -168,4 +170,13 @@
+ return new ResolvedModuleRevision(resolver, resolver, md, madr);
+ }
+
++ public ArtifactDownloadReport downloadRepositoryResource(Resource resource,
++ String name,
++ String type,
++ String extension,
++ CacheResourceOptions options,
++ Repository repository) {
++ throw new UnsupportedOperationException("This operation is not supported.");
++ }
++
+ }
+diff -Nru gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/LocalFileRepositoryCacheManager.java gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/LocalFileRepositoryCacheManager.java
+--- gradle-1.7/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/LocalFileRepositoryCacheManager.java 2013-08-06 12:47:10.000000000 +0200
++++ gradle-1.7-gil/subprojects/core-impl/src/main/groovy/org/gradle/api/internal/artifacts/repositories/cachemanager/LocalFileRepositoryCacheManager.java 2013-08-30 21:32:04.159300885 +0200
+@@ -18,6 +18,7 @@
+ import org.apache.ivy.core.cache.ArtifactOrigin;
+ import org.apache.ivy.core.cache.CacheDownloadOptions;
+ import org.apache.ivy.core.cache.CacheMetadataOptions;
++import org.apache.ivy.core.cache.CacheResourceOptions;
+ import org.apache.ivy.core.module.descriptor.Artifact;
+ import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
+ import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
+@@ -26,6 +27,7 @@
+ import org.apache.ivy.core.report.MetadataArtifactDownloadReport;
+ import org.apache.ivy.core.resolve.ResolvedModuleRevision;
+ import org.apache.ivy.plugins.repository.ArtifactResourceResolver;
++import org.apache.ivy.plugins.repository.Repository;
+ import org.apache.ivy.plugins.repository.Resource;
+ import org.apache.ivy.plugins.repository.ResourceDownloader;
+ import org.apache.ivy.plugins.resolver.DependencyResolver;
+@@ -99,4 +101,14 @@
+ assert file.isFile();
+ return file;
+ }
++
++ public ArtifactDownloadReport downloadRepositoryResource(Resource resource,
++ String name,
++ String type,
++ String extension,
++ CacheResourceOptions options,
++ Repository repository) {
++ throw new UnsupportedOperationException("This operation is not supported.");
++ }
++
+ }
diff --git a/gradle-1.7-no-zinc.patch b/gradle-1.7-no-zinc.patch
new file mode 100644
index 0000000..4532f26
--- /dev/null
+++ b/gradle-1.7-no-zinc.patch
@@ -0,0 +1,157 @@
+diff -Nru gradle-1.7/subprojects/scala/scala.gradle gradle-1.7-gil/subprojects/scala/scala.gradle
+--- gradle-1.7/subprojects/scala/scala.gradle 2013-08-06 12:47:08.000000000 +0200
++++ gradle-1.7-gil/subprojects/scala/scala.gradle 2013-08-30 21:07:04.001842765 +0200
+@@ -24,13 +24,16 @@
+ compile project(":plugins")
+
+ // keep in sync with ScalaBasePlugin code
+- provided("com.typesafe.zinc:zinc:0.2.1")
++ //provided("com.typesafe.zinc:zinc:0.2.1")
+
+ testCompile libraries.slf4j_api
+
+ integTestRuntime project(":ide")
+ }
+
++// No Zinc compiler
++sourceSets.main.groovy.excludes = ['**/org/gradle/api/internal/tasks/scala/jdk6/**']
++
+ useTestFixtures(project: ":plugins") // includes core test fixtures
+
+ if (!javaVersion.java6Compatible) {
+diff -Nru gradle-1.7/subprojects/scala/src/main/groovy/org/gradle/api/internal/tasks/scala/jdk6/ZincScalaCompiler.java gradle-1.7-gil/subprojects/scala/src/main/groovy/org/gradle/api/internal/tasks/scala/jdk6/ZincScalaCompiler.java
+--- gradle-1.7/subprojects/scala/src/main/groovy/org/gradle/api/internal/tasks/scala/jdk6/ZincScalaCompiler.java 2013-08-06 12:47:10.000000000 +0200
++++ gradle-1.7-gil/subprojects/scala/src/main/groovy/org/gradle/api/internal/tasks/scala/jdk6/ZincScalaCompiler.java 1970-01-01 01:00:00.000000000 +0100
+@@ -1,112 +0,0 @@
+-/*
+- * Copyright 2012 the original author or authors.
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- * http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-
+-package org.gradle.api.internal.tasks.scala.jdk6;
+-
+-import com.google.common.collect.ImmutableList;
+-import com.google.common.collect.Lists;
+-import com.typesafe.zinc.Inputs;
+-import com.typesafe.zinc.SbtJars;
+-import com.typesafe.zinc.ScalaLocation;
+-import com.typesafe.zinc.Setup;
+-
+-import org.gradle.api.GradleException;
+-import org.gradle.api.JavaVersion;
+-import org.gradle.api.internal.tasks.compile.CompilationFailedException;
+-import org.gradle.api.internal.tasks.compile.Compiler;
+-import org.gradle.api.internal.tasks.compile.JavaCompilerArgumentsBuilder;
+-import org.gradle.api.internal.tasks.compile.SimpleWorkResult;
+-import org.gradle.api.internal.tasks.scala.ScalaCompilerArgumentsGenerator;
+-import org.gradle.api.internal.tasks.scala.ScalaJavaJointCompileSpec;
+-import org.gradle.api.logging.Logger;
+-import org.gradle.api.logging.Logging;
+-import org.gradle.api.tasks.WorkResult;
+-import org.gradle.internal.jvm.Jvm;
+-import xsbti.F0;
+-
+-import java.io.File;
+-import java.io.Serializable;
+-import java.util.List;
+-
+-public class ZincScalaCompiler implements Compiler<ScalaJavaJointCompileSpec>, Serializable {
+- private static final Logger LOGGER = Logging.getLogger(ZincScalaCompiler.class);
+-
+- public WorkResult execute(ScalaJavaJointCompileSpec spec) {
+- if (!JavaVersion.current().isJava6Compatible()) {
+- throw new GradleException("To use the Zinc Scala compiler, Java 6 or higher is required.");
+- }
+- return Compiler.execute(spec);
+- }
+-
+- // need to defer loading of Zinc/sbt/Scala classes until we are
+- // running in the compiler daemon and have them on the class path
+- private static class Compiler {
+- static WorkResult execute(ScalaJavaJointCompileSpec spec) {
+- LOGGER.info("Compiling with Zinc Scala compiler.");
+-
+- xsbti.Logger logger = new SbtLoggerAdapter();
+-
+- com.typesafe.zinc.Compiler compiler = createCompiler(spec.getScalaClasspath(), spec.getZincClasspath(), logger);
+- List<String> scalacOptions = new ScalaCompilerArgumentsGenerator().generate(spec);
+- List<String> javacOptions = new JavaCompilerArgumentsBuilder(spec).includeClasspath(false).build();
+- Inputs inputs = Inputs.create(ImmutableList.copyOf(spec.getClasspath()), ImmutableList.copyOf(spec.getSource()), spec.getDestinationDir(),
+- scalacOptions, javacOptions, spec.getScalaCompileOptions().getIncrementalOptions().getAnalysisFile(), spec.getAnalysisMap(), "mixed", true);
+- if (LOGGER.isDebugEnabled()) {
+- Inputs.debug(inputs, logger);
+- }
+-
+- try {
+- compiler.compile(inputs, logger);
+- } catch (xsbti.CompileFailed e) {
+- throw new CompilationFailedException(e);
+- }
+-
+- return new SimpleWorkResult(true);
+- }
+-
+- static com.typesafe.zinc.Compiler createCompiler(Iterable<File> scalaClasspath, Iterable<File> zincClasspath, xsbti.Logger logger) {
+- ScalaLocation scalaLocation = ScalaLocation.fromPath(Lists.newArrayList(scalaClasspath));
+- SbtJars sbtJars = SbtJars.fromPath(Lists.newArrayList(zincClasspath));
+- Setup setup = Setup.create(scalaLocation, sbtJars, Jvm.current().getJavaHome());
+- if (LOGGER.isDebugEnabled()) {
+- Setup.debug(setup, logger);
+- }
+- return com.typesafe.zinc.Compiler.getOrCreate(setup, logger);
+- }
+- }
+-
+- private static class SbtLoggerAdapter implements xsbti.Logger {
+- public void error(F0<String> msg) {
+- LOGGER.error(msg.apply());
+- }
+-
+- public void warn(F0<String> msg) {
+- LOGGER.warn(msg.apply());
+- }
+-
+- public void info(F0<String> msg) {
+- LOGGER.info(msg.apply());
+- }
+-
+- public void debug(F0<String> msg) {
+- LOGGER.debug(msg.apply());
+- }
+-
+- public void trace(F0<Throwable> exception) {
+- LOGGER.trace(exception.apply().toString());
+- }
+- }
+-}
+diff -Nru gradle-1.7/subprojects/scala/src/main/groovy/org/gradle/api/plugins/scala/ScalaBasePlugin.groovy gradle-1.7-gil/subprojects/scala/src/main/groovy/org/gradle/api/plugins/scala/ScalaBasePlugin.groovy
+--- gradle-1.7/subprojects/scala/src/main/groovy/org/gradle/api/plugins/scala/ScalaBasePlugin.groovy 2013-08-06 12:47:08.000000000 +0200
++++ gradle-1.7-gil/subprojects/scala/src/main/groovy/org/gradle/api/plugins/scala/ScalaBasePlugin.groovy 2013-08-30 21:10:13.639364924 +0200
+@@ -151,11 +151,11 @@
+ compile.conventionMapping.scalaClasspath = { scalaRuntime.inferScalaClasspath(compile.classpath) }
+ compile.conventionMapping.zincClasspath = {
+ def config = project.configurations[ZINC_CONFIGURATION_NAME]
+- if (!compile.scalaCompileOptions.useAnt && config.dependencies.empty) {
+- project.dependencies {
+- zinc("com.typesafe.zinc:zinc:$DEFAULT_ZINC_VERSION")
+- }
+- }
++// if (!compile.scalaCompileOptions.useAnt && config.dependencies.empty) {
++// project.dependencies {
++// zinc("com.typesafe.zinc:zinc:$DEFAULT_ZINC_VERSION")
++// }
++// }
+ config
+ }
+ }
More information about the scm-commits
mailing list