mirror of https://github.com/sbt/sbt.git
[BSP] Fix importing Optional project dependency
This commit is contained in:
parent
b27c7253b1
commit
f990bd2d8d
|
|
@ -13,7 +13,9 @@ import sbt.Keys._
|
|||
|
||||
private[sbt] object InternalDependencies {
|
||||
def configurations: Def.Initialize[Seq[(ProjectRef, Set[String])]] = Def.setting {
|
||||
val allConfigs = Classpaths.allConfigs(configuration.value).map(_.name).toSet
|
||||
val configMap = internalConfigurationMap.value
|
||||
val config = configMap(configuration.value)
|
||||
val allConfigs = Classpaths.allConfigs(config).map(_.name).toSet
|
||||
val ref = thisProjectRef.value
|
||||
val projectDependencies = buildDependencies.value.classpath.get(ref).toSeq.flatten
|
||||
val applicableConfigs = allConfigs + "*"
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ lazy val runAndTest = project.in(file("run-and-test"))
|
|||
Test / javaOptions := Vector("Xmx512M"),
|
||||
Test / envVars := Map("KEY_TEST" -> "VALUE_TEST"),
|
||||
)
|
||||
.dependsOn(util)
|
||||
.dependsOn(util % Optional)
|
||||
|
||||
lazy val reportError = project.in(file("report-error"))
|
||||
|
||||
|
|
|
|||
|
|
@ -43,8 +43,12 @@ object BuildServerTest extends AbstractServerTest {
|
|||
test("workspace/buildTargets") { _ =>
|
||||
sendRequest("workspace/buildTargets")
|
||||
val result = svr.waitFor[WorkspaceBuildTargetsResult](10.seconds)
|
||||
val utilTarget = result.targets.find(_.displayName.contains("util")).get
|
||||
val utilTargetIdentifier = BuildTargetIdentifier(buildTargetUri("util", "Compile"))
|
||||
val utilTarget = result.targets.find(_.id == utilTargetIdentifier).get
|
||||
assert(utilTarget.id.uri.toString.endsWith("#util/Compile"))
|
||||
val runAndTestTarget = result.targets.find(_.displayName.contains("runAndTest")).get
|
||||
// runAndTest should declare the dependency to util even if optional
|
||||
assert(runAndTestTarget.dependencies.contains(utilTargetIdentifier))
|
||||
val buildServerBuildTarget =
|
||||
result.targets.find(_.displayName.contains("buildserver-build")).get
|
||||
assert(buildServerBuildTarget.id.uri.toString.endsWith("#buildserver-build"))
|
||||
|
|
@ -233,14 +237,19 @@ object BuildServerTest extends AbstractServerTest {
|
|||
}
|
||||
|
||||
test("buildTarget/scalacOptions, buildTarget/javacOptions") { _ =>
|
||||
val buildTarget = buildTargetUri("util", "Compile")
|
||||
val badBuildTarget = buildTargetUri("badBuildTarget", "Compile")
|
||||
val buildTargets = Seq(
|
||||
buildTargetUri("util", "Compile"),
|
||||
buildTargetUri("badBuildTarget", "Compile"),
|
||||
)
|
||||
|
||||
val id1 = scalacOptions(Seq(buildTarget, badBuildTarget))
|
||||
val id1 = scalacOptions(buildTargets)
|
||||
assertMessage(s""""id":"$id1"""", "scala-library-2.13.11.jar")()
|
||||
|
||||
val id2 = javacOptions(Seq(buildTarget, badBuildTarget))
|
||||
val id2 = javacOptions(buildTargets)
|
||||
assertMessage(s""""id":"$id2"""", "scala-library-2.13.11.jar")()
|
||||
|
||||
val id3 = scalacOptions(Seq(buildTargetUri("runAndTest", "Compile")))
|
||||
assertMessage(s""""id":"$id3"""", "util/target/scala-2.13/classes")()
|
||||
}
|
||||
|
||||
test("buildTarget/cleanCache") { _ =>
|
||||
|
|
|
|||
Loading…
Reference in New Issue