@@ -33,15 +33,13 @@ jobs:
3333 - name : " Linux, beta"
3434 rust : beta
3535
36- - name : " WASM via emscripten, stdweb, wasm-bindgen and WASI"
37- rust : nightly
36+ - name : " WASM via stdweb, wasm-bindgen and WASI"
37+ rust : stable
3838 addons :
3939 firefox : latest
4040 chrome : stable
4141 install :
4242 - rustup target add wasm32-unknown-unknown
43- - rustup target add wasm32-unknown-emscripten
44- - rustup target add asmjs-unknown-emscripten
4543 - rustup target add wasm32-wasi
4644 # Get latest geckodriver
4745 - export VERSION=$(curl -s https://api.github.com/repos/mozilla/geckodriver/releases/latest | jq -r ".tag_name")
6664 - tar -xzf wasm-bindgen.tar.gz --strip-components=1
6765 # Place the runner binaries in our PATH
6866 - mv cargo-web wasmtime wasm-bindgen-test-runner $HOME/.cargo/bin
69- # Download and setup emscripten
70- - cargo web prepare-emscripten
71- env : EMCC_CFLAGS="-s ERROR_ON_UNDEFINED_SYMBOLS=0"
7267 script :
73- # We cannot run emscripten test binaries (see rust-lang/rust#63649).
74- # However, we can still build and link all tests to make sure that works.
75- # This is actually useful as it finds stuff such as rust-random/rand#669
76- - cargo web test --target wasm32-unknown-emscripten --no-run
77- - cargo web test --target asmjs-unknown-emscripten --no-run
7868 - cargo test --target wasm32-wasi
7969 # stdweb (wasm32-unknown-unknown) tests (Node, Chrome)
8070 - cargo web test --package stdweb-getrandom
8979 cargo test --package wasm-bindgen-getrandom
9080 --target wasm32-unknown-unknown --test web
9181
82+ - name : " WASM via Emscripten"
83+ rust : stable
84+ env :
85+ - CARGO_TARGET_WASM32_UNKNOWN_EMSCRIPTEN_RUNNER=node
86+ - CARGO_TARGET_ASMJS_UNKNOWN_EMSCRIPTEN_RUNNER=node
87+ install :
88+ - rustup target add wasm32-unknown-emscripten
89+ - rustup target add asmjs-unknown-emscripten
90+ - export VERSION=1.39.13 # Pin version for stability
91+ - git clone https://github.com/emscripten-core/emsdk.git
92+ - ./emsdk/emsdk install $VERSION
93+ - ./emsdk/emsdk activate $VERSION
94+ - source ./emsdk/emsdk_env.sh
95+ script :
96+ - cargo test --target wasm32-unknown-emscripten
97+ # Prevent 'wasm2js does not support source maps yet' error.
98+ - RUSTFLAGS='-C debuginfo=0' cargo test --target asmjs-unknown-emscripten
99+
100+
92101 - &nightly_and_docs
93102 name : " Linux, nightly, docs"
94103 rust : nightly
0 commit comments