- Sponsor
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: rustwasm/wasm-bindgen
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.2.49
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: rustwasm/wasm-bindgen
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0.2.50
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 6 commits
- 46 files changed
- 1 contributor
Commits on Aug 15, 2019
-
Improve instantiateStreaming fallback
This commit improves our `instantiateStreaming` fallback to only actually trigger the fallback if the headers look wrong. If the headers look right then we let through the original error which should help avoid accidentally papering over bugs with different bugs in misconfigured situations. Closes #1696
Configuration menu - View commit details
-
Copy full SHA for 20be0a3 - Browse repository at this point
Copy the full SHA 20be0a3View commit details -
Merge pull request #1723 from alexcrichton/instntiate-streaming
Improve instantiateStreaming fallback
Configuration menu - View commit details
-
Copy full SHA for bd7c907 - Browse repository at this point
Copy the full SHA bd7c907View commit details
Commits on Aug 16, 2019
-
Add support for emitting a Wasm Interface Types section
This commit adds support to `wasm-bindgen` to emit a WebAssembly module that contains a WebAssembly Interface Types section. As of today there are no native consumers of these WebAssembly modules, and the actual binary format here is basically arbitrary (chosen by the `wasm-webidl-bindings` crate). The intention is that we'll be following the [WebAssembly Interface Types proposal][proposal] very closely and update here as necessary. The main feature added in this PR is that a new experimental environment variable, `WASM_INTERFACE_TYPES=1`, is recognized by the `wasm-bindgen` CLI tool. When present the CLI tool will act differently than it does today: * The `anyref` feature will be implicitly enabled * A WebAssembly interface types section will be emitted in the WebAssembly module * For now, the WebAssembly module is strictly validated to require zero JS glue. This means that `wasm-bindgen` is producing a fully standalone WebAssembly module. The last point here is one that will change before this functionality is stabilized in `wasm-bindgen`. For now it reflects the major use case of this feature which is to produce a standalone WebAssembly module with no support JS glue, and to do that we need to verify properties like it's not using JS global names, nonstandard binding expressions, etc. The error messages here aren't the best but they at least fail compilation at some point instead of silently producing weird wasm modules. Eventually it's envisioned that a WebAssembly module will contain an interface types section but *also* have JS glue so binding expressions can be used when available but otherwise we'd still generate JS glue for things like nonstandard expressions and accessing JS global values. It should be noted that a major feature not implemented in `wasm-bindgen` yet is the multi-value proposal for WebAssembly. This is coming soon (as soon as we can) in `walrus` and later for a pass here, but for now this means that returning multiple values (like a string which has a pointer/length) is a bit of a hack. To enable this use case a `wasm-bindgen`-specific-convention which will never be stabilized is invented here by using binding expression to indicate "this return value is actually returned through an out-ptr as the first argument list". This is a gross hack and is guaranteed to be removed. Eventually we will support multi-value and the wasm module emitted will simply use multi-value and contain internal polyfills for Rust's ABI which returns values through out-ptrs. Overall this should make `wasm-bindgen` usable for playing around with the WebIDL bindings proposal and helping us get a taste of what it looks like to have entirely standalone WebAssembly modules running in multiple environments, no extra fluff necessary! [proposal]: https://github.com/webassembly/webidl-bindings
Configuration menu - View commit details
-
Copy full SHA for c5dd572 - Browse repository at this point
Copy the full SHA c5dd572View commit details
Commits on Aug 19, 2019
-
Merge pull request #1725 from alexcrichton/real-webidl-section
Add support for emitting a Wasm Interface Types section
Configuration menu - View commit details
-
Copy full SHA for 487289c - Browse repository at this point
Copy the full SHA 487289cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c2daa4f - Browse repository at this point
Copy the full SHA c2daa4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c56c02 - Browse repository at this point
Copy the full SHA 5c56c02View commit details
There are no files selected for viewing