Skip to content

Commit 3ed38d5

Browse files
support for scala-native
Include scala-native in the build matrix Maven central only accept TLS > v1.1 (default is TLSv1.0 in jdk8) Server access Error: Received fatal alert: protocol_version url=https://repo1.maven.org/maven2/org/scala-sbt/compiler-interface/0.13.17/compiler-interface-0.13.17.jar We cannot use openjdk6 since maven central wont serve TLS1.0 see https://stackoverflow.com/a/50824799/449071
1 parent 6dd4505 commit 3ed38d5

File tree

4 files changed

+68
-19
lines changed

4 files changed

+68
-19
lines changed

.travis.yml

Lines changed: 36 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ scala:
1212
- 2.12.6
1313
- 2.13.0-M4
1414
jdk:
15-
- openjdk6
15+
- openjdk7
1616
- oraclejdk8
1717
env:
1818
global:
@@ -23,25 +23,54 @@ env:
2323
# SONA_PASS
2424
- secure: "m0Fw/eH7RXJJoBTfqV6CMd7kaIN2pRPnQPNXJGb546UjqYAlYTkfjvVrWpsgpisRBptI1FEHn24yGbgAHjIes/4un/O62K66I0BffL8PbdeHeNcDjSrTesKEqage2mQfGOiqccVsmkgiKeXNYL8tPZRmPQQ3XZ97mS1SXWlqAJSMW6HfNnvqW14Gdb/snR6I8lQ2o5tRnLerWPnI96pp+xjZca2lD4XDvH2wLJXXLmYY61e23ZYzZMepxBxhGa7js3YTYzCWNrOfBLjFJ5nwRxbjR0WMuz5z5Gdy715WtguKS4Fffd/GJHycLROBU9LCAQDMTxMFvqzFqVFpfq0BuTmmkXFXj+a7dO+ABG0RfoDfoMjn7pHwyHNCZyMMuR1HCjMkbGFwC+Zme2UAYNivtcsuWWeMuypwjyqjfFfNns4FHJ0SXFtC/6+OJkAuUdbEJKReYWKWEsP5SnCH/8PLlc+uUl3tjQkFLc1sOAyx9cTWyBErwuJXhgTrjT9AWvO+fvhcm8z/p5+aaF/U9GIrzPqziX4hGjzc/WC+rsFJSiBDlFQl7br+m8WWs7/wuXqPGXmhf0BNQViDi7fZndDHcY3p3T0An05d/IMKjCUrgLDlJi6VYs9XN7S8ay6MH+XTwIsJGSxtGjfEO4rHGIjtR2GRr8TqdNfnpsI3ucbia1Y="
2525
matrix:
26-
- SCALAJS_VERSION=
27-
- SCALAJS_VERSION=0.6.23
28-
- SCALAJS_VERSION=1.0.0-M3
26+
- SCALA_TARGET=jvm
27+
- SCALA_TARGET=native
28+
- SCALA_TARGET=js SCALAJS_VERSION=0.6.23
29+
- SCALA_TARGET=js SCALAJS_VERSION=1.0.0-M3
2930

3031
matrix:
3132
exclude:
32-
- jdk: openjdk6
33+
# > 2.12 requires jdk8
34+
- jdk: openjdk7
3335
scala: 2.12.6
34-
- jdk: openjdk6
36+
37+
- jdk: openjdk7
3538
scala: 2.13.0-M4
39+
40+
# ?
3641
- jdk: oraclejdk8
3742
scala: 2.11.12
43+
44+
# Scala Native only on 2.11
45+
- scala: 2.12.6
46+
env: SCALA_TARGET=native
47+
48+
- scala: 2.13.0-M4
49+
env: SCALA_TARGET=native
50+
51+
# 2.13.0-M4 is not available in Scala.js 1.0.0-M3
3852
- scala: 2.13.0-M4
39-
env: SCALAJS_VERSION=1.0.0-M3
53+
env: SCALA_TARGET=js SCALAJS_VERSION=1.0.0-M3
54+
55+
# run migration test
4056
include:
4157
- scala: 2.12.6
4258
jdk: oraclejdk8
4359
env: TEST_SCALAFIX=true
4460

61+
# | jdk | scala | scala target | scala target version | scalafix test |
62+
# | ----------- | --------- | ------------ | -------------------- |---------------|
63+
# | openjdk7 | 2.11.12 | jvm | | |
64+
# | openjdk7 | 2.11.12 | native | 0.3.7 | |
65+
# | openjdk7 | 2.11.12 | js | 0.6.23 | |
66+
# | openjdk7 | 2.11.12 | js | 1.0.0-M3 | |
67+
# | oraclejdk8 | 2.12.6 | jvm | | |
68+
# | oraclejdk8 | 2.12.6 | js | 0.6.23 | |
69+
# | oraclejdk8 | 2.12.6 | js | 1.0.0-M3 | |
70+
# | oraclejdk8 | 2.13.0-M4 | jvm | | |
71+
# | oraclejdk8 | 2.13.0-M4 | js | 0.6.23 | |
72+
# | oraclejdk8 | 2.12.6 | jvm | | true |
73+
4574
before_script: ./checkCLA.sh
4675
script:
4776
# work around https://github.com/travis-ci/travis-ci/issues/9713

admin/build.sh

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,24 @@ if [[ "$TEST_SCALAFIX" == "true" ]]; then
2323
exit 0
2424
fi
2525

26-
if [ "$SCALAJS_VERSION" = "" ]; then
27-
projectPrefix="scala-collection-compat"
28-
else
29-
projectPrefix="scala-collection-compatJS"
30-
fi
26+
case "$SCALA_TARGET" in
27+
jvm)
28+
targetSuffix=""
29+
;;
30+
31+
js)
32+
targetSuffix="JS"
33+
;;
34+
35+
native)
36+
targetSuffix="Native"
37+
;;
38+
*)
39+
echo $"SCALA_TARGET: $SCALA_TARGET {jvm|js|native}"
40+
exit 1
41+
esac
42+
43+
projectPrefix="scala-collection-compat$targetSuffix"
3144

3245
verPat="[0-9]+\.[0-9]+\.[0-9]+(-[A-Za-z0-9-]+)?"
3346
tagPat="^v$verPat(#.*)?$"
@@ -52,4 +65,4 @@ if [[ "$TRAVIS_TAG" =~ $tagPat ]]; then
5265
fi
5366
fi
5467
55-
sbt "++$TRAVIS_SCALA_VERSION" "$publishVersion" "$projectPrefix/clean" "$projectPrefix/test" "$projectPrefix/publishLocal" "$publishTask"
68+
sbt -Dhttps.protocols=TLSv1.2 "++$TRAVIS_SCALA_VERSION" "$publishVersion" "$projectPrefix/clean" "$projectPrefix/test" "$projectPrefix/publishLocal" "$publishTask"

build.sbt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ inThisBuild(Seq(
77

88
disablePlugins(JvmPlugin)
99

10-
lazy val `scala-collection-compat` = crossProject(JSPlatform, JVMPlatform)
10+
lazy val `scala-collection-compat` = crossProject(JSPlatform, JVMPlatform, NativePlatform)
1111
.withoutSuffixFor(JVMPlatform)
1212
.crossType(CrossType.Pure)
1313
.in(file("."))
@@ -36,6 +36,10 @@ lazy val `scala-collection-compat` = crossProject(JSPlatform, JVMPlatform)
3636
fork in Test := false // Scala.js cannot run forked tests
3737
)
3838
.jsConfigure(_.enablePlugins(ScalaJSJUnitPlugin))
39+
.nativeSettings(
40+
scalaVersion := "2.11.12"
41+
)
3942

4043
lazy val `scala-collection-compatJVM` = `scala-collection-compat`.jvm
4144
lazy val `scala-collection-compatJS` = `scala-collection-compat`.js
45+
lazy val `scala-collection-compatNative` = `scala-collection-compat`.native

project/plugins.sbt

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,12 @@ else
55
// see https://github.com/scala/sbt-scala-module/issues/35
66
Seq(addSbtPlugin("com.typesafe.sbt" % "sbt-osgi" % "0.9.3"))
77

8-
val scalaJSVersion =
9-
Option(System.getenv("SCALAJS_VERSION")).filter(_.nonEmpty).getOrElse("0.6.23")
10-
11-
addSbtPlugin("org.scala-js" % "sbt-scalajs" % scalaJSVersion)
12-
addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "0.4.0")
138
addSbtPlugin("org.scala-lang.modules" % "sbt-scala-module" % "1.0.14")
9+
10+
11+
val scalaJSVersion = Option(System.getenv("SCALAJS_VERSION")).filter(_.nonEmpty).getOrElse("0.6.23")
12+
13+
addSbtPlugin("org.scala-js" % "sbt-scalajs" % scalaJSVersion)
14+
addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "0.5.0")
15+
addSbtPlugin("org.portable-scala" % "sbt-scala-native-crossproject" % "0.5.0")
16+
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.3.7")

0 commit comments

Comments
 (0)