[2.x] fix: Fixes non-typelevel scalaOrganization (#8945)

**Problem**
Coursier used to support only org.typelevel as scalaOrganization override.

**Solution**
This uses the newly added parameter in M24.
This commit is contained in:
eugene yokota 2026-03-20 12:31:14 -04:00 committed by GitHub
parent 90f46971c6
commit 9a1c41ab1e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 16 additions and 6 deletions

View File

@ -7,7 +7,6 @@ import coursier.{ Organization, Resolution }
import coursier.core.{ Classifier, Configuration, Dependency, VariantPublication, Publication }
import coursier.cache.CacheDefaults
import coursier.util.Artifact
import coursier.internal.Typelevel
import lmcoursier.definitions.ToCoursier
import lmcoursier.internal.{
ArtifactsParams,
@ -147,10 +146,11 @@ class CoursierDependencyResolution(
}
}
val so = conf.scalaOrganization
val soOpt = conf.scalaOrganization
.map(Organization(_))
.orElse(module0.scalaModuleInfo.map(m => Organization(m.scalaOrganization)))
.getOrElse(Organization("org.scala-lang"))
val so = soOpt.getOrElse(Organization("org.scala-lang"))
val sv = conf.scalaVersion
.orElse(module0.scalaModuleInfo.map(_.scalaFullVersion))
// FIXME Manage to do stuff below without a scala version?
@ -259,8 +259,6 @@ class CoursierDependencyResolution(
(ToCoursier.configuration(config), extends0.map(ToCoursier.configuration))
}
val typelevel = so == Typelevel.typelevelOrg
val cache0 = coursier.cache
.FileCache()
.withLocation(cache)
@ -299,7 +297,7 @@ class CoursierDependencyResolution(
(ToCoursier.module(k), ToCoursier.versionConstraint(v))
.toMap
)
.withTypelevel(typelevel)
.withScalaOrganizationOverride(soOpt)
.withReconciliation0(conf.reconciliation.map: (k, v) =>
ToCoursier.moduleMatchers(k) -> ToCoursier.constraintReconciliation(v))
.withExclusions(excludeDependencies)

View File

@ -0,0 +1,11 @@
@transient
lazy val check = taskKey[Unit]("check")
scalaVersion := "3.8.3-RC1-bin-20260218-bb6fc60-NIGHTLY"
scalaOrganization := "ch.epfl.lara"
libraryDependencies += "com.lihaoyi" %% "fansi" % "0.5.0"
check := {
val cp = (Compile / fullClasspath).value.map(_.data)
cp.foreach: x =>
assert(!x.toString.contains("org/scala-lang"), s"$x contains org/scala-lang")
}

View File

@ -0,0 +1 @@
> check