From c82ab8850dd0aada4d813110f9817c2c54f014bc Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Tue, 19 May 2020 14:30:05 +0200 Subject: [PATCH 1/2] Remove former shading plugin related code Which is now unused. --- .../CoursierDependencyResolution.scala | 3 +- .../src/main/scala/lmcoursier/Inputs.scala | 20 ++++--------- .../src/main/scala/lmcoursier/IvyXml.scala | 30 +++++-------------- .../lmcoursier/internal/UpdateParams.scala | 1 - .../scala/lmcoursier/internal/UpdateRun.scala | 14 ++------- .../test/scala/lmcoursier/IvyXmlTests.scala | 2 +- .../sbtcoursiershared/IvyXmlGeneration.scala | 16 ++++------ .../sbtcoursiershared/SbtCoursierShared.scala | 2 +- .../coursier/sbtcoursier/CoursierPlugin.scala | 24 ++++----------- .../coursier/sbtcoursier/InputsTasks.scala | 9 ++---- .../coursier/sbtcoursier/UpdateTasks.scala | 14 +-------- .../scala/coursier/CoursierSbtPgpPlugin.scala | 8 +---- 12 files changed, 34 insertions(+), 109 deletions(-) diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/CoursierDependencyResolution.scala b/modules/lm-coursier/src/main/scala/lmcoursier/CoursierDependencyResolution.scala index 82b00d189..8f21eb507 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/CoursierDependencyResolution.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/CoursierDependencyResolution.scala @@ -189,7 +189,7 @@ class CoursierDependencyResolution(conf: CoursierConfiguration) extends Dependen conf.sbtScalaJars ) - val configs = Inputs.coursierConfigurations(module0.configurations).map { + val configs = Inputs.coursierConfigurationsMap(module0.configurations).map { case (k, l) => ToCoursier.configuration(k) -> l.map(ToCoursier.configuration) } @@ -200,7 +200,6 @@ class CoursierDependencyResolution(conf: CoursierConfiguration) extends Dependen ) = UpdateParams( thisModule = (ToCoursier.module(mod), ver), - shadedConfigOpt = None, artifacts = artifacts.collect { case (d, p, a, Some(f)) => a -> f }.toMap, fullArtifacts = Some(artifacts.map { case (d, p, a, f) => (d, p, a) -> f }.toMap), classifiers = classifiers, diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/Inputs.scala b/modules/lm-coursier/src/main/scala/lmcoursier/Inputs.scala index da55d13b8..6e3f8a0c6 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/Inputs.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/Inputs.scala @@ -25,10 +25,11 @@ object Inputs { .map(cfg => Configuration(cfg.name) -> cfg.extendsConfigs.map(c => Configuration(c.name))) .toMap - def coursierConfigurations( - configurations: Seq[sbt.librarymanagement.Configuration], - shadedConfig: Option[(String, Configuration)] = None - ): Map[Configuration, Set[Configuration]] = { + @deprecated("Use coursierConfigurationsMap instead", "2.0.0-RC6-5") + def coursierConfigurations(configurations: Seq[sbt.librarymanagement.Configuration], shadedConfigOpt: Option[String] = None): Map[Configuration, Set[Configuration]] = + coursierConfigurationsMap(configurations) + + def coursierConfigurationsMap(configurations: Seq[sbt.librarymanagement.Configuration]): Map[Configuration, Set[Configuration]] = { val configs0 = configExtendsSeq(configurations).toMap @@ -45,19 +46,10 @@ object Inputs { helper(Set(c)) } - val map = configs0.map { + configs0.map { case (config, _) => config -> allExtends(config) } - - map ++ shadedConfig.toSeq.flatMap { - case (baseConfig, shadedConfig0) => - val baseConfig0 = Configuration(baseConfig) - Seq( - baseConfig0 -> (map.getOrElse(baseConfig0, Set(baseConfig0)) + shadedConfig0), - shadedConfig0 -> map.getOrElse(shadedConfig0, Set(shadedConfig0)) - ) - } } def orderedConfigurations( diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala b/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala index b55dc1d16..77eed9a19 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala @@ -9,8 +9,7 @@ object IvyXml { def apply( currentProject: Project, - exclusions: Seq[(String, String)], - shadedConfigOpt: Option[Configuration] + exclusions: Seq[(String, String)] ): String = { // Important: width = Int.MaxValue, so that no tag gets truncated. @@ -22,29 +21,15 @@ object IvyXml { val printer = new scala.xml.PrettyPrinter(Int.MaxValue, 2) """""" + '\n' + - printer.format(content(currentProject, exclusions, shadedConfigOpt)) + printer.format(content(currentProject, exclusions)) } // These are required for publish to be fine, later on. private def content( - project0: Project, - exclusions: Seq[(String, String)], - shadedConfigOpt: Option[Configuration] + project: Project, + exclusions: Seq[(String, String)] ): Node = { - val filterOutDependencies = - shadedConfigOpt.toSet[Configuration].flatMap { shadedConfig => - project0 - .dependencies - .collect { case (conf, dep) if conf.value == shadedConfig.value => dep } - } - - val project = project0.withDependencies( - project0.dependencies.collect { - case p @ (_, dep) if !filterOutDependencies(dep) => p - } - ) - val props = project.module.attributes.toSeq ++ project.properties val infoAttrs = props.foldLeft[xml.MetaData](xml.Null) { case (acc, (k, v)) => @@ -72,11 +57,10 @@ object IvyXml { } % infoAttrs val confElems = project.configurations.toVector.collect { - case (name, extends0) if !shadedConfigOpt.exists(_.value == name.value) => - val extends1 = shadedConfigOpt.fold(extends0)(c => extends0.filter(_.value != c.value)) + case (name, extends0) => val n = - if (extends1.nonEmpty) - n % .attributes + if (extends0.nonEmpty) + n % .attributes else n } diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateParams.scala b/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateParams.scala index 6c3cfe93d..8f23a70c0 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateParams.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateParams.scala @@ -8,7 +8,6 @@ import coursier.util.Artifact // private[coursier] final case class UpdateParams( thisModule: (Module, String), - shadedConfigOpt: Option[(String, Configuration)], artifacts: Map[Artifact, File], fullArtifacts: Option[Map[(Dependency, Publication, Artifact), Option[File]]], classifiers: Option[Seq[Classifier]], diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateRun.scala b/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateRun.scala index 7744dc3e8..8cf470894 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateRun.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/internal/UpdateRun.scala @@ -57,15 +57,7 @@ object UpdateRun { log: Logger ): UpdateReport = Lock.lock.synchronized { - val depsByConfig = grouped(params.dependencies)( - config => - params.shadedConfigOpt match { - case Some((baseConfig, `config`)) => - Configuration(baseConfig) - case _ => - config - } - ) + val depsByConfig = grouped(params.dependencies) if (verbosityLevel >= 2) { val finalDeps = dependenciesWithConfig( @@ -94,9 +86,9 @@ object UpdateRun { ) } - private def grouped[K, V](map: Seq[(K, V)])(mapKey: K => K): Map[K, Seq[V]] = + private def grouped[K, V](map: Seq[(K, V)]): Map[K, Seq[V]] = map - .groupBy(t => mapKey(t._1)) + .groupBy(_._1) .mapValues(_.map(_._2)) .iterator .toMap diff --git a/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala b/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala index ad0ae6818..068c9d05d 100644 --- a/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala +++ b/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala @@ -19,7 +19,7 @@ object IvyXmlTests extends PropSpec with Matchers { Info("", "", Nil, Nil, None) ) - val content = IvyXml(project, Nil, None) + val content = IvyXml(project, Nil) assert(!content.contains("")) } diff --git a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/IvyXmlGeneration.scala b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/IvyXmlGeneration.scala index 35c681662..bd8a295ba 100644 --- a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/IvyXmlGeneration.scala +++ b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/IvyXmlGeneration.scala @@ -18,7 +18,6 @@ object IvyXmlGeneration { private def writeFiles( currentProject: Project, exclusions: Seq[(String, String)], - shadedConfigOpt: Option[Configuration], ivySbt: IvySbt, log: sbt.util.Logger ): Unit = { @@ -37,7 +36,7 @@ object IvyXmlGeneration { val cacheIvyFile = ivyCacheManager.getResolvedIvyFileInCache(ivyModule) val cacheIvyPropertiesFile = ivyCacheManager.getResolvedIvyPropertiesInCache(ivyModule) - val content0 = IvyXml(currentProject, exclusions, shadedConfigOpt) + val content0 = IvyXml(currentProject, exclusions) cacheIvyFile.getParentFile.mkdirs() log.info(s"Writing Ivy file $cacheIvyFile") Files.write(cacheIvyFile.toPath, content0.getBytes(UTF_8)) @@ -47,10 +46,7 @@ object IvyXmlGeneration { Files.write(cacheIvyPropertiesFile.toPath, Array.emptyByteArray) } - private def makeIvyXmlBefore[T]( - task: TaskKey[T], - shadedConfigOpt: Option[Configuration] - ): Setting[Task[T]] = + private def makeIvyXmlBefore[T](task: TaskKey[T]): Setting[Task[T]] = task := task.dependsOn { Def.taskDyn { import SbtCoursierShared.autoImport._ @@ -70,7 +66,7 @@ object IvyXmlGeneration { case (org, name) => (org.value, name.value) } - writeFiles(currentProject, excludeDeps, shadedConfigOpt, sbt.Keys.ivySbt.value, log) + writeFiles(currentProject, excludeDeps, sbt.Keys.ivySbt.value, log) } else Def.task(()) @@ -91,9 +87,7 @@ object IvyXmlGeneration { Nil } - def generateIvyXmlSettings( - shadedConfigOpt: Option[Configuration] = None - ): Seq[Setting[_]] = - (needsIvyXml ++ needsIvyXmlLocal).map(makeIvyXmlBefore(_, shadedConfigOpt)) + def generateIvyXmlSettings: Seq[Setting[_]] = + (needsIvyXml ++ needsIvyXmlLocal).map(makeIvyXmlBefore) } diff --git a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala index 174042d62..47ff51b59 100644 --- a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala +++ b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala @@ -174,7 +174,7 @@ object SbtCoursierShared extends AutoPlugin { versionReconciliation := Seq.empty ) ++ { if (pubSettings) - IvyXmlGeneration.generateIvyXmlSettings() + IvyXmlGeneration.generateIvyXmlSettings else Nil } diff --git a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/CoursierPlugin.scala b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/CoursierPlugin.scala index 8cfdfbb14..f683bf2d5 100644 --- a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/CoursierPlugin.scala +++ b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/CoursierPlugin.scala @@ -137,9 +137,7 @@ object CoursierPlugin extends AutoPlugin { } ) - def coursierSettings( - shadedConfigOpt: Option[(String, Configuration)] = None - ): Seq[Setting[_]] = hackHack ++ Seq( + def coursierSettings: Seq[Setting[_]] = hackHack ++ Seq( coursierArtifacts := ArtifactsTasks.artifactsTask(withClassifiers = false).value, coursierSignedArtifacts := ArtifactsTasks.artifactsTask(withClassifiers = false, includeSignatures = true).value, coursierClassifiersArtifacts := ArtifactsTasks.artifactsTask( @@ -149,22 +147,12 @@ object CoursierPlugin extends AutoPlugin { withClassifiers = true, sbtClassifiers = true ).value, - update := UpdateTasks.updateTask( - shadedConfigOpt, - withClassifiers = false - ).value, - updateClassifiers := UpdateTasks.updateTask( - shadedConfigOpt, - withClassifiers = true - ).value, - updateSbtClassifiers.in(Defaults.TaskGlobal) := UpdateTasks.updateTask( - shadedConfigOpt, - withClassifiers = true, - sbtClassifiers = true - ).value, + update := UpdateTasks.updateTask(withClassifiers = false).value, + updateClassifiers := UpdateTasks.updateTask(withClassifiers = true).value, + updateSbtClassifiers.in(Defaults.TaskGlobal) := UpdateTasks.updateTask(withClassifiers = true, sbtClassifiers = true).value, coursierConfigGraphs := InputsTasks.ivyGraphsTask.value, coursierSbtClassifiersModule := classifiersModule.in(updateSbtClassifiers).value, - coursierConfigurations := InputsTasks.coursierConfigurationsTask(None).value, + coursierConfigurations := InputsTasks.coursierConfigurationsTask.value, coursierParentProjectCache := InputsTasks.parentProjectCacheTask.value, coursierResolutions := (Def.taskDyn { val missingOk = updateConfiguration.value.missingOk @@ -200,7 +188,7 @@ object CoursierPlugin extends AutoPlugin { coursierVerbosity := Settings.defaultVerbosityLevel(sLog.value) ) - override lazy val projectSettings = coursierSettings() ++ + override lazy val projectSettings = coursierSettings ++ inConfig(Compile)(treeSettings) ++ inConfig(Test)(treeSettings) diff --git a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/InputsTasks.scala b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/InputsTasks.scala index af1900ab3..7eeb6c1af 100644 --- a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/InputsTasks.scala +++ b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/InputsTasks.scala @@ -13,14 +13,9 @@ import sbt.Keys._ object InputsTasks { - def coursierConfigurationsTask( - shadedConfig: Option[(String, Configuration)] - ): Def.Initialize[sbt.Task[Map[Configuration, Set[Configuration]]]] = + def coursierConfigurationsTask: Def.Initialize[sbt.Task[Map[Configuration, Set[Configuration]]]] = Def.task { - Inputs.coursierConfigurations(ivyConfigurations.value, shadedConfig.map { - case (from, to) => - (from, lmcoursier.definitions.Configuration(to.value)) - }).map { + Inputs.coursierConfigurationsMap(ivyConfigurations.value).map { case (k, v) => ToCoursier.configuration(k) -> v.map(ToCoursier.configuration) } diff --git a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/UpdateTasks.scala b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/UpdateTasks.scala index 0cc24a47a..53b57b000 100644 --- a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/UpdateTasks.scala +++ b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/UpdateTasks.scala @@ -12,7 +12,6 @@ import sbt.librarymanagement.UpdateReport object UpdateTasks { def updateTask( - shadedConfigOpt: Option[(String, Configuration)], withClassifiers: Boolean, sbtClassifiers: Boolean = false, includeSignatures: Boolean = false @@ -57,17 +56,7 @@ object UpdateTasks { cm.configurations.map(c => Configuration(c.name) -> Set(Configuration(c.name))).toMap } else - Def.task { - val configs0 = coursierConfigurations.value - - shadedConfigOpt.fold(configs0) { - case (baseConfig, shadedConfig) => - val baseConfig0 = Configuration(baseConfig) - (configs0 - shadedConfig) + ( - baseConfig0 -> (configs0.getOrElse(baseConfig0, Set()) - shadedConfig) - ) - } - } + coursierConfigurations val classifiersTask: sbt.Def.Initialize[sbt.Task[Option[Seq[Classifier]]]] = if (withClassifiers) { @@ -124,7 +113,6 @@ object UpdateTasks { val params = UpdateParams( (p.module, p.version), - shadedConfigOpt, artifactFilesOrErrors0, None, classifiers, diff --git a/modules/sbt-pgp-coursier/src/main/scala/coursier/CoursierSbtPgpPlugin.scala b/modules/sbt-pgp-coursier/src/main/scala/coursier/CoursierSbtPgpPlugin.scala index 6dd1e80ce..8fe6bbd76 100644 --- a/modules/sbt-pgp-coursier/src/main/scala/coursier/CoursierSbtPgpPlugin.scala +++ b/modules/sbt-pgp-coursier/src/main/scala/coursier/CoursierSbtPgpPlugin.scala @@ -11,13 +11,7 @@ object CoursierSbtPgpPlugin extends AutoPlugin { override def requires = com.typesafe.sbt.SbtPgp && coursier.sbtcoursier.CoursierPlugin override val projectSettings = Seq( - updatePgpSignatures := { - UpdateTasks.updateTask( - None, - withClassifiers = false, - includeSignatures = true - ).value - } + updatePgpSignatures := UpdateTasks.updateTask(withClassifiers = false, includeSignatures = true).value ) } From 33cfaf3df6d7ec4e413c54385d41070be3baf85d Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Tue, 19 May 2020 14:50:06 +0200 Subject: [PATCH 2/2] Address compilation warnings --- modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala | 1 - .../lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala | 5 +++-- .../src/test/scala/lmcoursier/ResolutionSpec.scala | 5 +++-- .../src/main/scala/coursier/Credentials.scala | 2 +- .../coursier/sbtcoursiershared/SbtCoursierShared.scala | 6 ++++-- .../main/scala/coursier/sbtcoursier/ResolutionTasks.scala | 2 +- .../scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala | 2 +- modules/sbt-lm-coursier/src/main/scala/sbt/hack/Foo.scala | 2 ++ 8 files changed, 15 insertions(+), 10 deletions(-) diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala b/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala index 77eed9a19..e9ac86ffe 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/IvyXml.scala @@ -1,6 +1,5 @@ package lmcoursier -import lmcoursier.Inputs import lmcoursier.definitions.{Configuration, Project} import scala.xml.{Node, PrefixedAttribute} diff --git a/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala b/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala index 068c9d05d..3ba8c49e2 100644 --- a/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala +++ b/modules/lm-coursier/src/test/scala/lmcoursier/IvyXmlTests.scala @@ -1,9 +1,10 @@ package lmcoursier import lmcoursier.definitions.{Configuration, Info, Module, ModuleName, Organization, Project} -import org.scalatest.{Matchers, PropSpec} +import org.scalatest.matchers.should.Matchers +import org.scalatest.propspec.AnyPropSpec -object IvyXmlTests extends PropSpec with Matchers { +object IvyXmlTests extends AnyPropSpec with Matchers { property("no truncation") { val project = Project( diff --git a/modules/lm-coursier/src/test/scala/lmcoursier/ResolutionSpec.scala b/modules/lm-coursier/src/test/scala/lmcoursier/ResolutionSpec.scala index e858a46b1..daa8b7d59 100644 --- a/modules/lm-coursier/src/test/scala/lmcoursier/ResolutionSpec.scala +++ b/modules/lm-coursier/src/test/scala/lmcoursier/ResolutionSpec.scala @@ -1,6 +1,7 @@ package lmcoursier -import org.scalatest.{Matchers, PropSpec} +import org.scalatest.matchers.should.Matchers +import org.scalatest.propspec.AnyPropSpec import sbt.internal.librarymanagement.cross.CrossVersionUtil import sbt.internal.util.ConsoleLogger import sbt.librarymanagement._ @@ -9,7 +10,7 @@ import sbt.librarymanagement.Resolver.{DefaultMavenRepository, JCenterRepository import sbt.librarymanagement.{Resolver, UnresolvedWarningConfiguration, UpdateConfiguration} import sbt.librarymanagement.syntax._ -final class ResolutionSpec extends PropSpec with Matchers { +final class ResolutionSpec extends AnyPropSpec with Matchers { lazy val log = ConsoleLogger() diff --git a/modules/sbt-coursier-shared/src/main/scala/coursier/Credentials.scala b/modules/sbt-coursier-shared/src/main/scala/coursier/Credentials.scala index 877efec55..d883a9958 100644 --- a/modules/sbt-coursier-shared/src/main/scala/coursier/Credentials.scala +++ b/modules/sbt-coursier-shared/src/main/scala/coursier/Credentials.scala @@ -5,7 +5,7 @@ import java.util.Properties import lmcoursier.definitions.Authentication -@deprecated("Use coursierExtraCredentials rather than coursierCredentials", "1.1.0-M14") +// actually deprecated (all public ways of creating that are) sealed abstract class Credentials extends Product with Serializable { def user: String def password: String diff --git a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala index 47ff51b59..6ed65f7f3 100644 --- a/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala +++ b/modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/SbtCoursierShared.scala @@ -40,9 +40,11 @@ object SbtCoursierShared extends AutoPlugin { val mavenProfiles = settingKey[Set[String]]("") val versionReconciliation = taskKey[Seq[ModuleID]]("") + private[coursier] val actualCoursierCredentials = TaskKey[Map[String, LegacyCredentials]]("coursierCredentials", "") + val coursierUseSbtCredentials = settingKey[Boolean]("") @deprecated("Use coursierExtraCredentials rather than coursierCredentials", "1.1.0-M14") - val coursierCredentials = taskKey[Map[String, LegacyCredentials]]("") + val coursierCredentials = actualCoursierCredentials val coursierExtraCredentials = taskKey[Seq[Credentials]]("") val coursierLogger = taskKey[Option[CacheLogger]]("") @@ -60,7 +62,7 @@ object SbtCoursierShared extends AutoPlugin { override def globalSettings: Seq[Setting[_]] = Seq( coursierUseSbtCredentials := true, - coursierCredentials := Map.empty, + actualCoursierCredentials := Map.empty, coursierExtraCredentials := Nil ) diff --git a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/ResolutionTasks.scala b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/ResolutionTasks.scala index ee3166fe0..c376a1139 100644 --- a/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/ResolutionTasks.scala +++ b/modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/ResolutionTasks.scala @@ -95,7 +95,7 @@ object ResolutionTasks { val ivyProperties = ResolutionParams.defaultIvyProperties(ivyPaths.value.ivyHome) - val authenticationByRepositoryId = coursierCredentials.value.mapValues(_.authentication) + val authenticationByRepositoryId = actualCoursierCredentials.value.mapValues(_.authentication) val (currentProject, fallbackDependencies, orderedConfigs) = currentProjectTask.value diff --git a/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala b/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala index cc8ce175e..00c4be4e1 100644 --- a/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala +++ b/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala @@ -134,7 +134,7 @@ object LmCoursierPlugin extends AutoPlugin { val userForceVersions = Inputs.forceVersions(dependencyOverrides.value, scalaVer, sbv) - val authenticationByRepositoryId = coursierCredentials.value.mapValues { c => + val authenticationByRepositoryId = actualCoursierCredentials.value.mapValues { c => val a = c.authentication Authentication(a.user, a.password, a.optional, a.realmOpt) } diff --git a/modules/sbt-lm-coursier/src/main/scala/sbt/hack/Foo.scala b/modules/sbt-lm-coursier/src/main/scala/sbt/hack/Foo.scala index c26e0da7d..98ab1edb8 100644 --- a/modules/sbt-lm-coursier/src/main/scala/sbt/hack/Foo.scala +++ b/modules/sbt-lm-coursier/src/main/scala/sbt/hack/Foo.scala @@ -5,6 +5,8 @@ import sbt.Keys._ import sbt.internal.LibraryManagement import sbt.librarymanagement.DependencyResolution +import scala.language.reflectiveCalls + object Foo { // same implementation as update in sbt, except DependencyResolution is passed as argument