Skip to content

Commit 34d135c

Browse files
committed
fix: builds
1 parent ecc086b commit 34d135c

File tree

8 files changed

+40
-20
lines changed

8 files changed

+40
-20
lines changed

.github/workflows/tests.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
- uses: Swatinem/rust-cache@v2
4040
- name: check
4141
run: |
42-
cargo check \
42+
RUSTFLAGS='--cfg getrandom_backend="wasm_js"' cargo check \
4343
--target wasm32-unknown-unknown \
4444
--no-default-features \
4545
--features browser

build.sh

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,28 @@
22

33
set -e
44

5-
cargo build
6-
cargo test --lib
7-
cargo test --doc
5+
# simple function to print on fail
6+
fail() {
7+
echo ""
8+
echo "Build failed: $1"
9+
exit 1
10+
}
11+
12+
cargo c -q || fail "Cargo build"
13+
cargo test -q --workspace || fail "Cargo workspace tests"
14+
cargo test -q --doc || fail "Cargo documentation tests"
815

916
### BIP32 ###
10-
cd crates/bip32
11-
cargo build
12-
cargo build --no-default-features
13-
cargo build --target wasm32-unknown-unknown
17+
cargo c -q -p coins-bip32 || fail "BIP32 build failed"
18+
cargo c -q -p coins-bip32 --no-default-features || fail "BIP32 build without default features"
19+
RUSTFLAGS='--cfg getrandom_backend="wasm_js"' cargo c -q -p coins-bip32 --target wasm32-unknown-unknown || fail "BIP32 wasm build "
1420

1521
### BIP39 ###
16-
cd ../bip39
17-
cargo build
18-
cargo build --no-default-features
19-
cargo build --target wasm32-unknown-unknown
22+
cargo c -q -p coins-bip39 || fail "BIP39 build"
23+
cargo c -q -p coins-bip39 --no-default-features || fail "BIP39 build without default features"
24+
RUSTFLAGS='--cfg getrandom_backend="wasm_js"' cargo c -q -p coins-bip39 --target wasm32-unknown-unknown || fail "BIP39 wasm build"
2025

2126
### Ledger ###
22-
cd ../ledger
2327
# # broken on travis
24-
# cargo build
25-
cargo build --target wasm32-unknown-unknown --no-default-features --features="browser"
28+
# cargo c -q
29+
cargo c -q -p coins-ledger --target wasm32-unknown-unknown --no-default-features --features="browser" || fail "Ledger wasm build "

crates/bip32/Cargo.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ serde.workspace = true
2323
sha2.workspace = true
2424
thiserror.workspace = true
2525

26+
[target.'cfg(target_arch = "wasm32")'.dependencies]
27+
gr03 = { package = "getrandom", version = "0.3", features = ["wasm_js"] }
28+
gr02 = { package = "getrandom", version = "0.2", features = ["js"] }
29+
2630
[dev-dependencies]
2731
hex.workspace = true
2832

crates/bip32/src/lib.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,3 +173,9 @@ impl From<std::convert::Infallible> for Bip32Error {
173173
unimplemented!("unreachable, but required by type system")
174174
}
175175
}
176+
177+
#[cfg(target_arch = "wasm32")]
178+
mod _silence_warnings {
179+
use gr02 as _;
180+
use gr03 as _;
181+
}

crates/bip39/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ sha2.workspace = true
2727
thiserror.workspace = true
2828

2929
[target.'cfg(target_arch = "wasm32")'.dependencies]
30-
getrandom = { version = "0.3", features = ["wasm_js"] }
30+
gr03 = { package = "getrandom", version = "0.3", features = ["wasm_js"] }
31+
gr02 = { package = "getrandom", version = "0.2", features = ["js"] }
3132

3233
[dev-dependencies]
3334
hex.workspace = true

crates/bip39/src/lib.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,9 @@ pub use self::mnemonic::*;
2121
/// Wordlists
2222
pub mod wordlist;
2323
pub use self::wordlist::*;
24+
25+
#[cfg(target_arch = "wasm32")]
26+
mod _silence_warnings {
27+
use gr02 as _;
28+
use gr03 as _;
29+
}

crates/ledger/Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,8 @@ wasm-bindgen = "0.2.88"
4343
wasm-bindgen-futures = "0.4.38"
4444
js-sys = "0.3.65"
4545
log = "0.4"
46-
# getrandom = { version = "0.3", features = ["wasm_js"] }
4746

48-
[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
47+
[dev-dependencies]
4948
tokio = { version = "1.34", features = ["rt", "macros"] }
5049
serial_test = "2"
5150

crates/ledger/tests/integration.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ fn ledger_device_path() {
1616
println!("{manufacturer:?}");
1717
}
1818

19-
#[tokio::test]
20-
#[serial]
2119
#[ignore]
20+
#[serial]
21+
#[tokio::test]
2222
async fn exchange() {
2323
let transport = transports::Ledger::init()
2424
.await

0 commit comments

Comments
 (0)