mirror of https://github.com/sbt/sbt.git
Merge pull request #316 from eed3si9n/wip/disabled
Make CrossVersion.Disabled stable
This commit is contained in:
commit
705f64c8a4
|
|
@ -100,6 +100,10 @@ lazy val lmCore = (project in file("core"))
|
|||
scalaCheck % Test,
|
||||
scalaVerify % Test,
|
||||
),
|
||||
libraryDependencies ++= (scalaVersion.value match {
|
||||
case v if v.startsWith("2.12.") => List(compilerPlugin(silencerPlugin))
|
||||
case _ => List()
|
||||
}),
|
||||
libraryDependencies += scalaXml,
|
||||
resourceGenerators in Compile += Def
|
||||
.task(
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ sealed class Disabled private () extends sbt.librarymanagement.CrossVersion() wi
|
|||
|
||||
}
|
||||
object Disabled extends sbt.librarymanagement.Disabled {
|
||||
def apply(): Disabled = new Disabled()
|
||||
def apply(): Disabled = Disabled
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -8,7 +8,11 @@ final case class ScalaVersion(full: String, binary: String)
|
|||
private[librarymanagement] abstract class CrossVersionFunctions {
|
||||
|
||||
/** Compatibility with 0.13 */
|
||||
final def Disabled = sbt.librarymanagement.Disabled
|
||||
@deprecated(
|
||||
"use CrossVersion.disabled instead. prior to sbt 1.3.0, Diabled did not work without apply(). sbt/sbt#4977",
|
||||
"1.3.0"
|
||||
)
|
||||
final val Disabled = sbt.librarymanagement.Disabled
|
||||
final val Binary = sbt.librarymanagement.Binary
|
||||
final val Constant = sbt.librarymanagement.Constant
|
||||
final val Full = sbt.librarymanagement.Full
|
||||
|
|
@ -37,7 +41,7 @@ private[librarymanagement] abstract class CrossVersionFunctions {
|
|||
def binary: CrossVersion = Binary()
|
||||
|
||||
/** Disables cross versioning for a module. */
|
||||
def disabled: CrossVersion = Disabled
|
||||
def disabled: CrossVersion = sbt.librarymanagement.Disabled
|
||||
|
||||
/** Cross-versions a module with a constant string (typically the binary Scala version). */
|
||||
def constant(value: String): CrossVersion = Constant(value)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,72 @@
|
|||
package example.tests
|
||||
|
||||
import sbt.librarymanagement.{ CrossVersion, Disabled }
|
||||
import verify.BasicTestSuite
|
||||
import com.github.ghik.silencer.silent
|
||||
|
||||
@silent
|
||||
object CrossVersionCompatTest extends BasicTestSuite {
|
||||
test("CrossVersion.Disabled is typed to be Disabled") {
|
||||
assert(CrossVersion.Disabled match {
|
||||
case _: Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled functions as disabled") {
|
||||
assert(CrossVersion(CrossVersion.disabled, "1.0.0", "1.0") == None)
|
||||
assert(CrossVersion(CrossVersion.Disabled, "1.0.0", "1.0") == None)
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled() is typed to be Disabled") {
|
||||
assert(CrossVersion.Disabled() match {
|
||||
case _: Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled() functions as disabled") {
|
||||
assert(CrossVersion(CrossVersion.disabled, "1.0.0", "1.0") == None)
|
||||
assert(CrossVersion(CrossVersion.Disabled(), "1.0.0", "1.0") == None)
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled is stable") {
|
||||
assert(CrossVersion.Disabled match {
|
||||
case CrossVersion.Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("sbt.librarymanagement.Disabled is typed to be Disabled") {
|
||||
assert(Disabled match {
|
||||
case _: Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("sbt.librarymanagement.Disabled is stable") {
|
||||
assert(Disabled match {
|
||||
case Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("sbt.librarymanagement.Disabled() is typed to be Disabled") {
|
||||
assert(Disabled() match {
|
||||
case _: Disabled => true
|
||||
case _ => false
|
||||
})
|
||||
}
|
||||
|
||||
test("CrossVersion.disabled is sbt.librarymanagement.Disabled") {
|
||||
assert(CrossVersion.disabled == Disabled)
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled is sbt.librarymanagement.Disabled") {
|
||||
assert(CrossVersion.Disabled == Disabled)
|
||||
}
|
||||
|
||||
test("CrossVersion.Disabled() is sbt.librarymanagement.Disabled") {
|
||||
assert(CrossVersion.Disabled() == Disabled)
|
||||
}
|
||||
}
|
||||
|
|
@ -61,4 +61,5 @@ object Dependencies {
|
|||
}
|
||||
val gigahorseOkhttp = "com.eed3si9n" %% "gigahorse-okhttp" % "0.5.0"
|
||||
val okhttpUrlconnection = "com.squareup.okhttp3" % "okhttp-urlconnection" % "3.7.0"
|
||||
val silencerPlugin = "com.github.ghik" %% "silencer-plugin" % "1.4.1"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue