-
Notifications
You must be signed in to change notification settings - Fork 338
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use wasmparser instead of parity-wasm #1786
Conversation
f118d14
to
2d4aac7
Compare
e39f720
to
524e2d9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great stuff. I like this much more than the first iteration. Very clean and straight forward.
multi_memory: false, | ||
memory64: false, | ||
..Default::default() | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. During parsing we can be a bit more open wrt. Wasm features/extensions. They will be disallowed by the middleware.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this deserves a CHANGELOG entry. But otherwise than that LGTM.
df32812
to
55cfdf1
Compare
This fix Finschia#338. And, this will be replaced with wasmparser in feature version. (CosmWasm/cosmwasm#1786)
This fix Finschia#338. And, this will be replaced with wasmparser in feature version. (CosmWasm/cosmwasm#1786)
* fix: enable sign ext This fix #338. And, this will be replaced with wasmparser in feature version. (CosmWasm/cosmwasm#1786) * Test contract compiled with Rust 1.70.0 * chore: update some contract's lock files * chore: update some contract's lock files --------- Co-authored-by: Simon Warta <[email protected]>
closes #1735
I ported our validation code over to the wasmparser version reexported by wasmer.
Some of the errors have changed slightly because they are now thrown by wasmparser.
I am somewhat unsure about what
WasmFeatures
we want to have here.I set them a little more restrictive than what wasmer has (e.g. no simd, though we catch those in the gatekeeper anyways). This might allow some cases that were previously forbidden because of parity-wasm (e.g. bulk_memory or multi_value)