oasisprotocol / oasisprotocol/oasis-sdk
contract-sdk: Once wasm abi becomes stable consider switching back to it
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 90
- Forks
- 35
- Avg merge
- 5d 9h
- Merged PRs (30d)
- 5
Description
https://github.com/oasisprotocol/oasis-sdk/pull/548 switches from the exprimental wasm to using "C" ABI in the contract-sdk.
In future (as wasm abi becomes more stable) switching back to wasm ABI should be reconsidered. This however will be a breaking change for existing contracts, unless both ABIs are supported by the sdk.
Couple of issues with the wasm ABI:
- problems with u128 https://github.com/rust-lang/rust/issues/88207
- problems with compiling multivalue functions https://github.com/ptrus/wasm-bug (todo: should probably open an upstream issue for this)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading contract-sdk PR #548 and the linked Rust u128 and multivalue WebAssembly issues. Reassess whether the WebAssembly ABI is stable enough to replace the C ABI, and determine whether both ABIs must be supported to avoid breaking existing contracts.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, wasm
- Domain
- blockchain
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100