Skip to content

Commit

Permalink
add WebAssembly test
Browse files Browse the repository at this point in the history
  • Loading branch information
xuwei-k committed Oct 1, 2024
1 parent f968d50 commit 7a80bc9
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,18 @@ jobs:
nativeParent/test
"project jsParent"
testSequential
wasm:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/setup-java@2dfa2011c5b2a0f1489bf9e433881c92c1631f88 # v4.3.0
with:
java-version: 21
distribution: temurin
- uses: coursier/cache-action@142d2738bd29f0eb9d44610828acb3a19809feab # v6.4.6
- run: ./sbt -v
-jvm-opts .github/workflows/.jvmopts
-Dscala_js_wasm
"project jsParent"
testSequential
21 changes: 21 additions & 0 deletions project/build.scala
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import scalajscrossproject.ScalaJSCrossPlugin.autoImport.*
import scalanative.sbtplugin.ScalaNativePlugin.autoImport.*
import scalanativecrossproject.ScalaNativeCrossPlugin.autoImport.*
import org.portablescala.sbtplatformdeps.PlatformDepsPlugin.autoImport.*
import org.scalajs.sbtplugin.ScalaJSPlugin.autoImport.*

object build {
type Sett = Def.Setting[?]
Expand Down Expand Up @@ -161,6 +162,26 @@ object build {
mimaPreviousArtifacts := previousVersions.value.map { n =>
organization.value %% s"${Keys.name.value}_sjs1" % n
}.toSet,
if (sys.props.isDefinedAt("scala_js_wasm")) {
Def.settings(
scalaJSLinkerConfig ~= (_.withExperimentalUseWebAssembly(true).withModuleKind(ModuleKind.ESModule)),
jsEnv := {
import org.scalajs.jsenv.nodejs.NodeJSEnv
val config = NodeJSEnv
.Config()
.withArgs(
List(
"--experimental-wasm-exnref",
"--experimental-wasm-imported-strings",
"--turboshaft-wasm",
)
)
new NodeJSEnv(config)
},
)
} else {
Def.settings()
},
scalacOptions += {
val a = (LocalRootProject / baseDirectory).value.toURI.toString
val g = "https://raw.githubusercontent.com/argonaut-io/argonaut/" + tagOrHash.value
Expand Down

0 comments on commit 7a80bc9

Please sign in to comment.