You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: eliminate system strategy from all toolchains for hermetic builds
- Remove system strategy support from 7 toolchains (wasm, jco, wkg, wasmtime, etc)
- Update all toolchain defaults from system to hermetic alternatives (hybrid, download, npm)
- Remove system tool detection and PATH-based discovery logic
- Update toolchain validation to exclude system from supported strategies
- Modernize tools-builder workspace with cargo genrule approach
- Update documentation to reflect hermetic-only build requirements
This ensures complete build hermeticity by eliminating non-reproducible
system tool dependencies across the entire toolchain ecosystem.
version="1.0.60", # Optional, defaults to latest stable
90
-
)
91
-
92
-
# Configure wit-bindgen version
93
-
wasm_toolchain.register(
94
-
name="wit_bindgen",
95
-
version="0.30.0", # Optional, defaults to latest stable
89
+
strategy="download", # Default: hermetic builds
90
+
version="1.235.0", # Pin specific version
96
91
)
97
92
```
98
93
94
+
> **💡 Need advanced configuration?** See the [Toolchain Configuration Guide](/guides/toolchain-configuration/) for strategies, version management, CI/CD setup, and corporate environments.
95
+
99
96
## Language-Specific Setup
100
97
101
98
### Rust Configuration
@@ -167,7 +164,7 @@ For JavaScript/TypeScript components:
Copy file name to clipboardExpand all lines: docs/toolchain_configuration.md
+25-32Lines changed: 25 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,13 +1,13 @@
1
1
# Toolchain Configuration
2
2
3
-
The rules_wasm_component supports flexible toolchain configuration with three acquisition strategies: system tools, downloaded binaries, and building from source.
3
+
The rules_wasm_component supports flexible toolchain configuration with multiple acquisition strategies: downloaded binaries, building from source, and hybrid approaches.
4
4
5
5
## Quick Reference
6
6
7
-
### Use System Tools (Default)
7
+
### Use Downloaded Tools (Default)
8
8
9
9
```starlark
10
-
# MODULE.bazel - Uses tools from PATH (CI-friendly)
10
+
# MODULE.bazel - Downloads prebuilt binaries for hermetic builds
@@ -245,14 +243,9 @@ wasm_toolchain.register(strategy = "download", version = "1.235.0")
245
243
246
244
## Troubleshooting
247
245
248
-
### "Tool not found" with system strategy
249
-
250
-
```bash
251
-
# Install missing tools
252
-
cargo install wasm-tools wac-cli wit-bindgen-cli
246
+
### "Tool not found" errors
253
247
254
-
# Or switch to download strategy
255
-
```
248
+
All tools are now downloaded automatically for hermetic builds. If you encounter issues, verify network connectivity and consider using custom URLs for corporate environments.
0 commit comments