https://github.com/paritytech/wasm-utils
https://github.com/paritytech/wasm-utils
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/paritytech/wasm-utils
- Owner: paritytech
- License: apache-2.0
- Archived: true
- Created: 2017-04-12T10:57:19.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-01-17T15:07:18.000Z (about 3 years ago)
- Last Synced: 2025-01-18T09:43:10.880Z (3 months ago)
- Language: Rust
- Size: 538 KB
- Stars: 82
- Watchers: 26
- Forks: 46
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-substrate - wasm-utils, Contract-oriented collection of build tools for Rust
README
# pwasm-utils
> :warning: **This repository/crate is deprecated and unmaintained**: Switch to [`wasm-instrument`](https://github.com/paritytech/wasm-instrument) in order to use wasm instrumentation (gas metering, stack height limiter) in your project. For wasm code optimization [`binaryen`](https://github.com/WebAssembly/binaryen) should be used.
A collection of WASM utilities used in pwasm-ethereum and substrate contract development.
This repository contains the package `pwasm-utils` which consists of a library crate
and a collection of cli binaries that make use of this library.## Installation of cli tools
```
cargo install pwasm-utils --features cli
```This will install the following binaries:
* wasm-build
* wasm-check
* wasm-ext
* wasm-gas
* wasm-pack
* wasm-prune
* wasm-stack-height## Symbols pruning (wasm-prune)
```
wasm-prune
```This will optimize WASM symbols tree to leave only those elements that are used by contract `call` function entry.
## Gas counter (wasm-gas)
For development purposes, a raw WASM contract can be injected with gas counters (the same way as it done in the `pwasm-ethereum/substrate` runtime when running contracts)
```
wasm-gas
```# License
`wasm-utils` is primarily distributed under the terms of both the MIT
license and the Apache License (Version 2.0), at your choice.See LICENSE-APACHE, and LICENSE-MIT for details.
## Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in `wasm-utils` by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.