Skip to content

Commit 216bc95

Browse files
authored
Migrate from old coursier APIs (#3910)
1 parent 4c96135 commit 216bc95

File tree

17 files changed

+282
-146
lines changed

17 files changed

+282
-146
lines changed

modules/build/src/main/scala/scala/build/Project.scala

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,9 +142,15 @@ object Project {
142142
def resolution(
143143
detailedArtifacts: Seq[(CsDependency, csCore.Publication, csUtil.Artifact, os.Path)]
144144
): BloopConfig.Resolution = {
145-
val indices = detailedArtifacts.map(_._1.moduleVersion).zipWithIndex.toMap
145+
val indices = detailedArtifacts
146+
.map { case (dep, _, _, _) => dep.moduleVersionConstraint }
147+
.map { case (m, vc) => m -> vc.asString }
148+
.zipWithIndex.toMap
146149
val modules = detailedArtifacts
147-
.groupBy(_._1.moduleVersion)
150+
.groupBy(_._1.moduleVersionConstraint)
151+
.map {
152+
case ((m, vc), artifacts) => m -> vc.asString -> artifacts
153+
}
148154
.toVector
149155
.sortBy { case (modVer, _) => indices.getOrElse(modVer, Int.MaxValue) }
150156
.iterator

modules/cli/src/main/scala/scala/cli/commands/pgp/PgpExternalCommand.scala

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -195,13 +195,13 @@ object PgpExternalCommand {
195195

196196
val (_, signingRes) = value {
197197
scala.build.Artifacts.fetchCsDependencies(
198-
Seq(Positioned.none(jvmSigningDep.toCs)),
199-
extraRepos,
200-
None,
201-
Nil,
202-
logger,
203-
cache,
204-
None
198+
dependencies = Seq(Positioned.none(jvmSigningDep.toCs)),
199+
extraRepositories = extraRepos,
200+
forceScalaVersionOpt = None,
201+
forcedVersions = Nil,
202+
logger = logger,
203+
cache = cache,
204+
classifiersOpt = None
205205
)
206206
}
207207
val signingClassPath = signingRes.files

modules/cli/src/main/scala/scala/cli/internal/ScalaJsLinker.scala

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package scala.cli.internal
22

3-
import coursier.Repositories
43
import coursier.cache.{ArchiveCache, FileCache}
54
import coursier.util.Task
5+
import coursier.{Repositories, VersionConstraint}
66
import dependency.*
77
import org.scalajs.testing.adapter.TestAdapterInitializer as TAI
88

@@ -71,13 +71,15 @@ object ScalaJsLinker {
7171
case Right(()) =>
7272
val (_, linkerRes) = value {
7373
scala.build.Artifacts.fetchCsDependencies(
74-
Seq(Positioned.none(scalaJsCliDep.toCs)),
75-
extraRepos,
76-
None,
77-
forcedVersions.map { case (m, v) => (m.toCs, v) },
78-
logger,
79-
cache,
80-
None
74+
dependencies = Seq(Positioned.none(scalaJsCliDep.toCs)),
75+
extraRepositories = extraRepos,
76+
forceScalaVersionOpt = None,
77+
forcedVersions = forcedVersions.map { case (m, v) =>
78+
(m.toCs, VersionConstraint(v))
79+
},
80+
logger = logger,
81+
cache = cache,
82+
classifiersOpt = None
8183
)
8284
}
8385
val linkerClassPath = linkerRes.files
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
package scala.build
22

3-
import coursier.core.Version
3+
import coursier.version.Version
44

55
extension (s: String) def coursierVersion: Version = Version(s)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package scala.build.errors
2+
3+
import coursier.error.DependencyError
4+
5+
import scala.build.Position
6+
7+
class CoursierDependencyError(val underlying: DependencyError, positions: Seq[Position] = Seq.empty)
8+
extends BuildException(
9+
s"Could not fetch dependency: ${underlying.message}",
10+
positions = positions,
11+
cause = underlying.getCause
12+
)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package scala.build.errors
2+
3+
import scala.build.Position
4+
5+
abstract class UnsupportedFeatureError(
6+
val featureDescription: String,
7+
override val positions: Seq[Position] = Nil
8+
) extends BuildException(s"Unsupported feature: $featureDescription")
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package scala.build.errors
2+
3+
import coursier.core.VariantPublication
4+
5+
import scala.build.Position
6+
7+
class UnsupportedGradleModuleVariantError(
8+
val variantPublication: VariantPublication,
9+
override val positions: Seq[Position] = Nil
10+
) extends UnsupportedFeatureError(featureDescription =
11+
s"Gradle Module variant: ${variantPublication.name} (${variantPublication.url})"
12+
)

modules/directives/src/main/scala/scala/build/preprocessing/directives/Toolkit.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package scala.build.preprocessing.directives
22

3-
import coursier.core.Version
3+
import coursier.version.Version
44
import dependency.*
55

66
import scala.build.Positioned

0 commit comments

Comments
 (0)