From 851864f9f6e84364dd4c50098bd0cf6bd79aaf9f Mon Sep 17 00:00:00 2001 From: Eugene Vigdorchik Date: Tue, 7 Feb 2012 20:14:45 +0400 Subject: [PATCH] Mirror ivy \'force\' attribute in sbt. --- ivy/Ivy.scala | 2 +- ivy/IvyInterface.scala | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ivy/Ivy.scala b/ivy/Ivy.scala index 400490086..a9a5cf8f8 100644 --- a/ivy/Ivy.scala +++ b/ivy/Ivy.scala @@ -404,7 +404,7 @@ private object IvySbt { for(dependency <- dependencies) { - val dependencyDescriptor = new DefaultDependencyDescriptor(moduleID, toID(dependency), false, dependency.isChanging, dependency.isTransitive) + val dependencyDescriptor = new DefaultDependencyDescriptor(moduleID, toID(dependency), dependency.isForce, dependency.isChanging, dependency.isTransitive) dependency.configurations match { case None => // The configuration for this dependency was not explicitly specified, so use the default diff --git a/ivy/IvyInterface.scala b/ivy/IvyInterface.scala index d5ffc4d6a..e7d5115d3 100644 --- a/ivy/IvyInterface.scala +++ b/ivy/IvyInterface.scala @@ -9,7 +9,7 @@ import scala.xml.NodeSeq import org.apache.ivy.plugins.resolver.{DependencyResolver, IBiblioResolver} import org.apache.ivy.util.url.CredentialsStore -final case class ModuleID(organization: String, name: String, revision: String, configurations: Option[String] = None, isChanging: Boolean = false, isTransitive: Boolean = true, explicitArtifacts: Seq[Artifact] = Nil, exclusions: Seq[ExclusionRule] = Nil, extraAttributes: Map[String,String] = Map.empty, crossVersion: CrossVersion = CrossVersion.Disabled) +final case class ModuleID(organization: String, name: String, revision: String, configurations: Option[String] = None, isChanging: Boolean = false, isTransitive: Boolean = true, isForce: Boolean = false, explicitArtifacts: Seq[Artifact] = Nil, exclusions: Seq[ExclusionRule] = Nil, extraAttributes: Map[String,String] = Map.empty, crossVersion: CrossVersion = CrossVersion.Disabled) { override def toString = organization + ":" + name + ":" + revision + @@ -28,6 +28,7 @@ final case class ModuleID(organization: String, name: String, revision: String, def notTransitive() = intransitive() def intransitive() = copy(isTransitive = false) def changing() = copy(isChanging = true) + def force() = copy(isForce = true) def from(url: String) = artifacts(Artifact(name, new URL(url))) def classifier(c: String) = artifacts(Artifact(name, c)) def artifacts(newArtifacts: Artifact*) = copy(explicitArtifacts = newArtifacts ++ this.explicitArtifacts)