Skip to content

Commit 4fa4b83

Browse files
authored
Merge pull request scala#5368 from retronym/ticket/SD-208
SD-208 Restore 2.11 names for arrayOps implicits Fix scala/scala-dev#208
2 parents f43cc13 + 3b9000f commit 4fa4b83

File tree

4 files changed

+23
-36
lines changed

4 files changed

+23
-36
lines changed

build.sbt

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -649,17 +649,26 @@ lazy val test = project
649649
def isModule = true
650650
def annotationName = "partest"
651651
}, true, Array()
652-
)
652+
),
653+
executeTests in IntegrationTest := {
654+
val result = (executeTests in IntegrationTest).value
655+
if (result.overall != TestResult.Error && result.events.isEmpty) {
656+
// workaround for https://github.com/sbt/sbt/issues/2722
657+
val result = (executeTests in Test).value
658+
(streams.value.log.error("No test events found"))
659+
result.copy(overall = TestResult.Error)
660+
}
661+
else result
662+
}
653663
)
654664

655665
lazy val manual = configureAsSubproject(project)
656666
.settings(disableDocs: _*)
657667
.settings(disablePublishing: _*)
658668
.settings(
659-
libraryDependencies ++= Seq(scalaXmlDep, antDep),
669+
libraryDependencies ++= Seq(scalaXmlDep, antDep, "org.scala-lang" % "scala-library" % scalaVersion.value),
660670
classDirectory in Compile := (target in Compile).value / "classes"
661671
)
662-
.dependsOn(library)
663672

664673
lazy val libraryAll = Project("library-all", file(".") / "target" / "library-all-src-dummy")
665674
.settings(commonSettings: _*)

src/library/scala/Array.scala

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -496,16 +496,6 @@ object Array extends FallbackArrayBuilding {
496496
* @hideImplicitConversion scala.Predef.refArrayOps
497497
* @hideImplicitConversion scala.Predef.shortArrayOps
498498
* @hideImplicitConversion scala.Predef.unitArrayOps
499-
* @hideImplicitConversion scala.Predef._booleanArrayOps
500-
* @hideImplicitConversion scala.Predef._byteArrayOps
501-
* @hideImplicitConversion scala.Predef._charArrayOps
502-
* @hideImplicitConversion scala.Predef._doubleArrayOps
503-
* @hideImplicitConversion scala.Predef._floatArrayOps
504-
* @hideImplicitConversion scala.Predef._intArrayOps
505-
* @hideImplicitConversion scala.Predef._longArrayOps
506-
* @hideImplicitConversion scala.Predef._refArrayOps
507-
* @hideImplicitConversion scala.Predef._shortArrayOps
508-
* @hideImplicitConversion scala.Predef._unitArrayOps
509499
* @hideImplicitConversion scala.LowPriorityImplicits.wrapRefArray
510500
* @hideImplicitConversion scala.LowPriorityImplicits.wrapIntArray
511501
* @hideImplicitConversion scala.LowPriorityImplicits.wrapDoubleArray

src/library/scala/Predef.scala

Lines changed: 10 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -428,28 +428,16 @@ object Predef extends LowPriorityImplicits with DeprecatedPredef {
428428
case null => null
429429
}).asInstanceOf[ArrayOps[T]]
430430

431-
// TODO: when we remove, these should we drop the underscores from the new generation below? (For source compatibility in case someone was shadowing these.)
432-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def booleanArrayOps(xs: Array[Boolean]): ArrayOps[Boolean] = new ArrayOps.ofBoolean(xs)
433-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def byteArrayOps(xs: Array[Byte]): ArrayOps[Byte] = new ArrayOps.ofByte(xs)
434-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def charArrayOps(xs: Array[Char]): ArrayOps[Char] = new ArrayOps.ofChar(xs)
435-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def doubleArrayOps(xs: Array[Double]): ArrayOps[Double] = new ArrayOps.ofDouble(xs)
436-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def floatArrayOps(xs: Array[Float]): ArrayOps[Float] = new ArrayOps.ofFloat(xs)
437-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def intArrayOps(xs: Array[Int]): ArrayOps[Int] = new ArrayOps.ofInt(xs)
438-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def longArrayOps(xs: Array[Long]): ArrayOps[Long] = new ArrayOps.ofLong(xs)
439-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def refArrayOps[T <: AnyRef](xs: Array[T]): ArrayOps[T] = new ArrayOps.ofRef[T](xs)
440-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def shortArrayOps(xs: Array[Short]): ArrayOps[Short] = new ArrayOps.ofShort(xs)
441-
@deprecated("For binary compatibility only. Release new partest and remove in M3.", "2.12.0-M2") def unitArrayOps(xs: Array[Unit]): ArrayOps[Unit] = new ArrayOps.ofUnit(xs)
442-
443-
implicit def _booleanArrayOps(xs: Array[Boolean]): ArrayOps.ofBoolean = new ArrayOps.ofBoolean(xs)
444-
implicit def _byteArrayOps(xs: Array[Byte]): ArrayOps.ofByte = new ArrayOps.ofByte(xs)
445-
implicit def _charArrayOps(xs: Array[Char]): ArrayOps.ofChar = new ArrayOps.ofChar(xs)
446-
implicit def _doubleArrayOps(xs: Array[Double]): ArrayOps.ofDouble = new ArrayOps.ofDouble(xs)
447-
implicit def _floatArrayOps(xs: Array[Float]): ArrayOps.ofFloat = new ArrayOps.ofFloat(xs)
448-
implicit def _intArrayOps(xs: Array[Int]): ArrayOps.ofInt = new ArrayOps.ofInt(xs)
449-
implicit def _longArrayOps(xs: Array[Long]): ArrayOps.ofLong = new ArrayOps.ofLong(xs)
450-
implicit def _refArrayOps[T <: AnyRef](xs: Array[T]): ArrayOps.ofRef[T] = new ArrayOps.ofRef[T](xs)
451-
implicit def _shortArrayOps(xs: Array[Short]): ArrayOps.ofShort = new ArrayOps.ofShort(xs)
452-
implicit def _unitArrayOps(xs: Array[Unit]): ArrayOps.ofUnit = new ArrayOps.ofUnit(xs)
431+
implicit def booleanArrayOps(xs: Array[Boolean]): ArrayOps.ofBoolean = new ArrayOps.ofBoolean(xs)
432+
implicit def byteArrayOps(xs: Array[Byte]): ArrayOps.ofByte = new ArrayOps.ofByte(xs)
433+
implicit def charArrayOps(xs: Array[Char]): ArrayOps.ofChar = new ArrayOps.ofChar(xs)
434+
implicit def doubleArrayOps(xs: Array[Double]): ArrayOps.ofDouble = new ArrayOps.ofDouble(xs)
435+
implicit def floatArrayOps(xs: Array[Float]): ArrayOps.ofFloat = new ArrayOps.ofFloat(xs)
436+
implicit def intArrayOps(xs: Array[Int]): ArrayOps.ofInt = new ArrayOps.ofInt(xs)
437+
implicit def longArrayOps(xs: Array[Long]): ArrayOps.ofLong = new ArrayOps.ofLong(xs)
438+
implicit def refArrayOps[T <: AnyRef](xs: Array[T]): ArrayOps.ofRef[T] = new ArrayOps.ofRef[T](xs)
439+
implicit def shortArrayOps(xs: Array[Short]): ArrayOps.ofShort = new ArrayOps.ofShort(xs)
440+
implicit def unitArrayOps(xs: Array[Unit]): ArrayOps.ofUnit = new ArrayOps.ofUnit(xs)
453441

454442
// "Autoboxing" and "Autounboxing" ---------------------------------------------------
455443

test/files/neg/logImplicits.check

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
logImplicits.scala:2: applied implicit conversion from xs.type to ?{def size: ?} = implicit def _byteArrayOps(xs: Array[Byte]): scala.collection.mutable.ArrayOps.ofByte
1+
logImplicits.scala:2: applied implicit conversion from xs.type to ?{def size: ?} = implicit def byteArrayOps(xs: Array[Byte]): scala.collection.mutable.ArrayOps.ofByte
22
def f(xs: Array[Byte]) = xs.size
33
^
44
logImplicits.scala:7: applied implicit conversion from String("abc") to ?{def map: ?} = implicit def augmentString(x: String): scala.collection.immutable.StringOps

0 commit comments

Comments
 (0)