Skip to content

Commit 2cb678a

Browse files
authored
Merge pull request #5175 from dotty-staging/upgrade-2.12.7
Upgrade to Scala 2.12.7, fix compilation and running tests on Java 11
2 parents 776bf47 + 890e09a commit 2cb678a

File tree

18 files changed

+56
-90
lines changed

18 files changed

+56
-90
lines changed

.drone.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,23 +23,23 @@ pipeline:
2323
# We run tests in parallel. Tests run in a copy of the working directory to avoid conflict
2424
test:
2525
group: test
26-
image: lampepfl/dotty:2018-09-14-2
26+
image: lampepfl/dotty:2018-10-01
2727
commands:
2828
- cp -R . /tmp/1/ && cd /tmp/1/
2929
- ./project/scripts/sbt ";compile ;test"
3030
- ./project/scripts/cmdTests
3131

3232
test_bootstrapped:
3333
group: test
34-
image: lampepfl/dotty:2018-09-14-2
34+
image: lampepfl/dotty:2018-10-01
3535
commands:
3636
- cp -R . /tmp/2/ && cd /tmp/2/
3737
- ./project/scripts/sbt ";dotty-bootstrapped/compile ;dotty-bootstrapped/test"
3838
- ./project/scripts/bootstrapCmdTests
3939

4040
test_sbt:
4141
group: test
42-
image: lampepfl/dotty:2018-09-14-2
42+
image: lampepfl/dotty:2018-10-01
4343
commands:
4444
- cp -R . /tmp/4/ && cd /tmp/4/
4545
- ./project/scripts/sbt sbt-dotty/scripted
@@ -49,7 +49,7 @@ pipeline:
4949

5050
# DOCUMENTATION:
5151
documentation:
52-
image: lampepfl/dotty:2018-09-14-2
52+
image: lampepfl/dotty:2018-10-01
5353
commands:
5454
- ./project/scripts/genDocs
5555
secrets: [ bot_pass ]
@@ -61,7 +61,7 @@ pipeline:
6161
# PUBLISHING:
6262
# Publishing expect NIGHTLYBUILD or RELEASEBUILD to be set. See dottyVersion in Build.scala
6363
publish_nightly:
64-
image: lampepfl/dotty:2018-09-14-2
64+
image: lampepfl/dotty:2018-10-01
6565
environment:
6666
- NIGHTLYBUILD=yes
6767
commands:
@@ -72,7 +72,7 @@ pipeline:
7272
environment: nightly
7373

7474
publish_release:
75-
image: lampepfl/dotty:2018-09-14-2
75+
image: lampepfl/dotty:2018-10-01
7676
environment:
7777
- RELEASEBUILD=yes
7878
commands:
@@ -96,7 +96,7 @@ pipeline:
9696
event: tag
9797

9898
publish_sbt_release:
99-
image: lampepfl/dotty:2018-09-14-2
99+
image: lampepfl/dotty:2018-10-01
100100
environment:
101101
- RELEASEBUILD=yes
102102
commands:

compiler/src/dotty/tools/dotc/reporting/MessageRendering.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,15 +91,15 @@ trait MessageRendering {
9191
* @return aligned error message
9292
*/
9393
def errorMsg(pos: SourcePosition, msg: String, offset: Int)(implicit ctx: Context): String = {
94-
val padding = msg.lines.foldLeft(pos.startColumnPadding) { (pad, line) =>
94+
val padding = msg.linesIterator.foldLeft(pos.startColumnPadding) { (pad, line) =>
9595
val lineLength = stripColor(line).length
9696
val maxPad = math.max(0, ctx.settings.pageWidth.value - offset - lineLength) - offset
9797

9898
if (maxPad < pad.length) " " * maxPad
9999
else pad
100100
}
101101

102-
msg.lines
102+
msg.linesIterator
103103
.map { line => " " * (offset - 1) + "|" + padding + line}
104104
.mkString(sys.props("line.separator"))
105105
}

compiler/test-resources/type-printer/prefixless

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ val res2: Seq[Char] = List(a, b)
77
scala> Set(4, 5)
88
val res3: Set[Int] = Set(4, 5)
99
scala> Iterator(1)
10-
val res4: Iterator[Int] = non-empty iterator
10+
val res4: Iterator[Int] = <iterator>

compiler/test/dotty/tools/vulpix/ParallelTesting.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -613,7 +613,7 @@ trait ParallelTesting extends RunnerOrchestration { self =>
613613
else runMain(testSource.runClassPath) match {
614614
case Success(_) if !checkFile.isDefined || !checkFile.get.exists => // success!
615615
case Success(output) => {
616-
val outputLines = output.lines.toArray :+ DiffUtil.EOF
616+
val outputLines = output.linesIterator.toArray :+ DiffUtil.EOF
617617
val checkLines: Array[String] = Source.fromFile(checkFile.get).getLines().toArray :+ DiffUtil.EOF
618618
val sourceTitle = testSource.title
619619

@@ -1027,7 +1027,7 @@ trait ParallelTesting extends RunnerOrchestration { self =>
10271027
case test.TimeoutFailure(title) =>
10281028
s" - test '$title' timed out"
10291029
case test.JavaCompilationFailure(msg) =>
1030-
s" - java compilation failed with:\n${ msg.lines.map(" " + _).mkString("\n") }"
1030+
s" - java compilation failed with:\n${ msg.linesIterator.map(" " + _).mkString("\n") }"
10311031
}.mkString("\n")
10321032
}
10331033

dist/bin/common

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,6 @@ if [ ! -x "$JAVACMD" ] ; then
6161
exit 1
6262
fi
6363

64-
# parses 1.7, 1.8, 9, etc out of java version "1.8.0_91"
65-
JAVA_VERSION=$("$JAVACMD" -version 2>&1 | grep ' version "' | tr '\r' '\n' | sed 's/.*version "\([0-9]*\)\(\.[0-9]*\)\{0,1\}\(.*\)*"/\1\2/; 1q')
66-
67-
if [ "$JAVA_VERSION" != "1.8" ] ; then
68-
echo "Error: Java 8 is required, actual $JAVA_VERSION"
69-
exit 1
70-
fi
71-
7264
if [ -z "$JAVA_HOME" ] ; then
7365
echo "Warning: JAVA_HOME environment variable is not set."
7466
fi

doc-tool/src/dotty/tools/dottydoc/model/comment/CommentCleaner.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,6 @@ trait CommentCleaner {
2121
SafeTags.replaceAllIn(javadoclessComment, { mtch =>
2222
Matcher.quoteReplacement(safeTagMarker + mtch.matched + safeTagMarker)
2323
})
24-
markedTagComment.lines.toList map (cleanLine)
24+
markedTagComment.linesIterator.toList map (cleanLine)
2525
}
2626
}

doc-tool/src/dotty/tools/dottydoc/staticsite/Page.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ trait Page {
115115
val withoutYaml = virtualFile(
116116
if (content.startsWith("---\n")) {
117117
val str =
118-
content.lines
118+
content.linesIterator
119119
.drop(1)
120120
.dropWhile(line => line != "---" && line != "...")
121121
.drop(1).mkString("\n")

project/Build.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ object ExposedValues extends AutoPlugin {
3636
object Build {
3737

3838
val baseVersion = "0.10.0"
39-
val scalacVersion = "2.12.6"
39+
val scalacVersion = "2.12.7"
4040

4141
val dottyOrganization = "ch.epfl.lamp"
4242
val dottyGithubUrl = "https://github.com/lampepfl/dotty"

sbt-dotty/sbt-test/source-dependencies/ext/A.scala

Lines changed: 0 additions & 5 deletions
This file was deleted.

sbt-dotty/sbt-test/source-dependencies/ext/build.sbt

Lines changed: 0 additions & 11 deletions
This file was deleted.

sbt-dotty/sbt-test/source-dependencies/ext/project/DottyInjectedPlugin.scala

Lines changed: 0 additions & 12 deletions
This file was deleted.

sbt-dotty/sbt-test/source-dependencies/ext/project/plugins.sbt

Lines changed: 0 additions & 1 deletion
This file was deleted.

sbt-dotty/sbt-test/source-dependencies/ext/test

Lines changed: 0 additions & 7 deletions
This file was deleted.

tests/run/richs.scala

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -75,11 +75,11 @@ object RichStringTest1 extends RichTest {
7575
object RichStringTest2 extends RichTest {
7676
def run: Unit = {
7777
println("\n" + getObjectName + ":")
78-
Console.print("s1: "); s1.lines foreach println
79-
Console.print("s2: "); s2.lines foreach println
80-
Console.print("s3: "); s3.lines foreach println
81-
Console.print("s4: "); s4.lines foreach println
82-
Console.print("s5: "); s5.lines foreach println
78+
Console.print("s1: "); s1.linesIterator foreach println
79+
Console.print("s2: "); s2.linesIterator foreach println
80+
Console.print("s3: "); s3.linesIterator foreach println
81+
Console.print("s4: "); s4.linesIterator foreach println
82+
Console.print("s5: "); s5.linesIterator foreach println
8383
}
8484
}
8585
object RichStringTest3 extends RichTest {

tests/run/t6827.scala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,16 @@ object Test extends App {
88
it.copyToArray(arr, start, len)
99
"ok"
1010
} catch {
11+
case e: ArrayIndexOutOfBoundsException =>
12+
// Special-case printing this exception because the toString changed in Java 11
13+
val java11toString = """java.lang.ArrayIndexOutOfBoundsException: Index (-?\d+).*""".r
14+
15+
e.toString match {
16+
case java11toString(index) =>
17+
s"java.lang.ArrayIndexOutOfBoundsException: $index"
18+
case str =>
19+
str
20+
}
1121
case e: Exception => e.toString
1222
}
1323
println("%s: %s" format (label, status))

tests/run/t8015-ffc.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
object Test extends dotty.runtime.LegacyApp {
33
val ms = """This is a long multiline string
44
with \u000d\u000a CRLF embedded."""
5-
assert(ms.lines.size == 3, s"lines.size ${ms.lines.size}")
5+
assert(ms.linesIterator.size == 3, s"lines.size ${ms.linesIterator.size}")
66
assert(ms contains "\r\n CRLF", "no CRLF")
77
}

tests/run/t8690.check

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
non-empty iterator
1+
<iterator>
22
abcdef

tests/run/view-iterator-stream.check

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,109 +4,109 @@
44
-------------------
55
toIndexedSeq -> toIterator -> toStream Stream(22, ?) 22 23 24 25
66
toIndexedSeq -> toIterator -> view StreamView(...) 22 23 24 25
7-
toIndexedSeq -> toStream -> toIterator non-empty iterator 22 23 24 25
7+
toIndexedSeq -> toStream -> toIterator <iterator> 22 23 24 25
88
toIndexedSeq -> toStream -> view StreamView(...) 22 23 24 25
9-
toIndexedSeq -> view -> toIterator non-empty iterator 22 23 24 25
9+
toIndexedSeq -> view -> toIterator <iterator> 22 23 24 25
1010
toIndexedSeq -> view -> toStream Stream(22, ?) 22 23 24 25
1111
toIterator -> toIndexedSeq -> toStream Stream(22, ?) 22 23 24 25
1212
toIterator -> toIndexedSeq -> view SeqView(...) 22 23 24 25
1313
toIterator -> toStream -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
1414
toIterator -> toStream -> view StreamView(...) 22 23 24 25
1515
toIterator -> view -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
1616
toIterator -> view -> toStream Stream(22, ?) 22 23 24 25
17-
toStream -> toIndexedSeq -> toIterator non-empty iterator 22 23 24 25
17+
toStream -> toIndexedSeq -> toIterator <iterator> 22 23 24 25
1818
toStream -> toIndexedSeq -> view SeqView(...) 22 23 24 25
1919
toStream -> toIterator -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
2020
toStream -> toIterator -> view StreamView(...) 22 23 24 25
2121
toStream -> view -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
22-
toStream -> view -> toIterator non-empty iterator 22 23 24 25
23-
view -> toIndexedSeq -> toIterator non-empty iterator 22 23 24 25
22+
toStream -> view -> toIterator <iterator> 22 23 24 25
23+
view -> toIndexedSeq -> toIterator <iterator> 22 23 24 25
2424
view -> toIndexedSeq -> toStream Stream(22, ?) 22 23 24 25
2525
view -> toIterator -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
2626
view -> toIterator -> toStream Stream(22, ?) 22 23 24 25
2727
view -> toStream -> toIndexedSeq Vector(22, 23, 24, 25) 22 23 24 25
28-
view -> toStream -> toIterator non-empty iterator 22 23 24 25
28+
view -> toStream -> toIterator <iterator> 22 23 24 25
2929

3030
** take 20 -> drop 10 -> slice(1, 5) **
3131

3232
-------------------
3333
toIndexedSeq -> toIterator -> toStream Stream(12, ?) 12 13 14 15
3434
toIndexedSeq -> toIterator -> view StreamView(...) 12 13 14 15
35-
toIndexedSeq -> toStream -> toIterator non-empty iterator 12 13 14 15
35+
toIndexedSeq -> toStream -> toIterator <iterator> 12 13 14 15
3636
toIndexedSeq -> toStream -> view StreamView(...) 12 13 14 15
37-
toIndexedSeq -> view -> toIterator non-empty iterator 12 13 14 15
37+
toIndexedSeq -> view -> toIterator <iterator> 12 13 14 15
3838
toIndexedSeq -> view -> toStream Stream(12, ?) 12 13 14 15
3939
toIterator -> toIndexedSeq -> toStream Stream(12, ?) 12 13 14 15
4040
toIterator -> toIndexedSeq -> view SeqView(...) 12 13 14 15
4141
toIterator -> toStream -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
4242
toIterator -> toStream -> view StreamView(...) 12 13 14 15
4343
toIterator -> view -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
4444
toIterator -> view -> toStream Stream(12, ?) 12 13 14 15
45-
toStream -> toIndexedSeq -> toIterator non-empty iterator 12 13 14 15
45+
toStream -> toIndexedSeq -> toIterator <iterator> 12 13 14 15
4646
toStream -> toIndexedSeq -> view SeqView(...) 12 13 14 15
4747
toStream -> toIterator -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
4848
toStream -> toIterator -> view StreamView(...) 12 13 14 15
4949
toStream -> view -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
50-
toStream -> view -> toIterator non-empty iterator 12 13 14 15
51-
view -> toIndexedSeq -> toIterator non-empty iterator 12 13 14 15
50+
toStream -> view -> toIterator <iterator> 12 13 14 15
51+
view -> toIndexedSeq -> toIterator <iterator> 12 13 14 15
5252
view -> toIndexedSeq -> toStream Stream(12, ?) 12 13 14 15
5353
view -> toIterator -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
5454
view -> toIterator -> toStream Stream(12, ?) 12 13 14 15
5555
view -> toStream -> toIndexedSeq Vector(12, 13, 14, 15) 12 13 14 15
56-
view -> toStream -> toIterator non-empty iterator 12 13 14 15
56+
view -> toStream -> toIterator <iterator> 12 13 14 15
5757

5858
** slice(20, 40) -> drop 10 -> take 5 **
5959

6060
-------------------
6161
toIndexedSeq -> toIterator -> toStream Stream(31, ?) 31 32 33 34 35
6262
toIndexedSeq -> toIterator -> view StreamView(...) 31 32 33 34 35
63-
toIndexedSeq -> toStream -> toIterator non-empty iterator 31 32 33 34 35
63+
toIndexedSeq -> toStream -> toIterator <iterator> 31 32 33 34 35
6464
toIndexedSeq -> toStream -> view StreamView(...) 31 32 33 34 35
65-
toIndexedSeq -> view -> toIterator non-empty iterator 31 32 33 34 35
65+
toIndexedSeq -> view -> toIterator <iterator> 31 32 33 34 35
6666
toIndexedSeq -> view -> toStream Stream(31, ?) 31 32 33 34 35
6767
toIterator -> toIndexedSeq -> toStream Stream(31, ?) 31 32 33 34 35
6868
toIterator -> toIndexedSeq -> view SeqView(...) 31 32 33 34 35
6969
toIterator -> toStream -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
7070
toIterator -> toStream -> view StreamView(...) 31 32 33 34 35
7171
toIterator -> view -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
7272
toIterator -> view -> toStream Stream(31, ?) 31 32 33 34 35
73-
toStream -> toIndexedSeq -> toIterator non-empty iterator 31 32 33 34 35
73+
toStream -> toIndexedSeq -> toIterator <iterator> 31 32 33 34 35
7474
toStream -> toIndexedSeq -> view SeqView(...) 31 32 33 34 35
7575
toStream -> toIterator -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
7676
toStream -> toIterator -> view StreamView(...) 31 32 33 34 35
7777
toStream -> view -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
78-
toStream -> view -> toIterator non-empty iterator 31 32 33 34 35
79-
view -> toIndexedSeq -> toIterator non-empty iterator 31 32 33 34 35
78+
toStream -> view -> toIterator <iterator> 31 32 33 34 35
79+
view -> toIndexedSeq -> toIterator <iterator> 31 32 33 34 35
8080
view -> toIndexedSeq -> toStream Stream(31, ?) 31 32 33 34 35
8181
view -> toIterator -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
8282
view -> toIterator -> toStream Stream(31, ?) 31 32 33 34 35
8383
view -> toStream -> toIndexedSeq Vector(31, 32, 33, 34, 35) 31 32 33 34 35
84-
view -> toStream -> toIterator non-empty iterator 31 32 33 34 35
84+
view -> toStream -> toIterator <iterator> 31 32 33 34 35
8585

8686
** slice(20, 40) -> take 10 -> drop 5 **
8787

8888
-------------------
8989
toIndexedSeq -> toIterator -> toStream Stream(26, ?) 26 27 28 29 30
9090
toIndexedSeq -> toIterator -> view StreamView(...) 26 27 28 29 30
91-
toIndexedSeq -> toStream -> toIterator non-empty iterator 26 27 28 29 30
91+
toIndexedSeq -> toStream -> toIterator <iterator> 26 27 28 29 30
9292
toIndexedSeq -> toStream -> view StreamView(...) 26 27 28 29 30
93-
toIndexedSeq -> view -> toIterator non-empty iterator 26 27 28 29 30
93+
toIndexedSeq -> view -> toIterator <iterator> 26 27 28 29 30
9494
toIndexedSeq -> view -> toStream Stream(26, ?) 26 27 28 29 30
9595
toIterator -> toIndexedSeq -> toStream Stream(26, ?) 26 27 28 29 30
9696
toIterator -> toIndexedSeq -> view SeqView(...) 26 27 28 29 30
9797
toIterator -> toStream -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
9898
toIterator -> toStream -> view StreamView(...) 26 27 28 29 30
9999
toIterator -> view -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
100100
toIterator -> view -> toStream Stream(26, ?) 26 27 28 29 30
101-
toStream -> toIndexedSeq -> toIterator non-empty iterator 26 27 28 29 30
101+
toStream -> toIndexedSeq -> toIterator <iterator> 26 27 28 29 30
102102
toStream -> toIndexedSeq -> view SeqView(...) 26 27 28 29 30
103103
toStream -> toIterator -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
104104
toStream -> toIterator -> view StreamView(...) 26 27 28 29 30
105105
toStream -> view -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
106-
toStream -> view -> toIterator non-empty iterator 26 27 28 29 30
107-
view -> toIndexedSeq -> toIterator non-empty iterator 26 27 28 29 30
106+
toStream -> view -> toIterator <iterator> 26 27 28 29 30
107+
view -> toIndexedSeq -> toIterator <iterator> 26 27 28 29 30
108108
view -> toIndexedSeq -> toStream Stream(26, ?) 26 27 28 29 30
109109
view -> toIterator -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
110110
view -> toIterator -> toStream Stream(26, ?) 26 27 28 29 30
111111
view -> toStream -> toIndexedSeq Vector(26, 27, 28, 29, 30) 26 27 28 29 30
112-
view -> toStream -> toIterator non-empty iterator 26 27 28 29 30
112+
view -> toStream -> toIterator <iterator> 26 27 28 29 30

0 commit comments

Comments
 (0)