mirror of
https://github.com/pezkuwichain/revive.git
synced 2026-04-22 10:18:02 +00:00
7f81f37e0c
Pre-eliminary support for LLVM releases and resolc binary releases by streamlining the build process for all supported hosts platforms. - Introduce the revive-llvm-builder crate with the revive-llvm builder utilty. - Do not rely on the LLVM dependency in $PATH to decouple the system LLVM installation from the LLVM host dependency. - Fix the emscripten build by decoupling the host and native LLVM dependencies. Thus allowing a single LLVM emscripten release that can be used on any host platform. - An example Dockerfile building an alpine container with a fully statically linked resolc ELF binary. - Remove the Debian builder utilities and workflow.
2.1 KiB
2.1 KiB
Changelog
Unreleased
This is a development pre-release.
Added
- The
revive-llvm-buildercrate with therevive-llvmhelper utility for streamlined management of the LLVM framework dependency.
Changed
- The minimum supported Rust version is
1.81.0.
Fixed
- Decouple the LLVM target dependency from the LLVM host dependency.
v0.1.0-dev.7
This is a development pre-release.
Added
- Implement the
GASPRICEopcode. - Implement the
BASEFEEopcode. - Implement the
GASLIMITopcode.
Changed
- The
GASopcode now returns the remainingref_time. - Contracts can now be supplied call data input of arbitrary size.
- Some syscalls now return the value in a register, slightly improving emitted contract code.
- Calls forward maximum weight limits instead of 0, anticipating a change in polkadot-sdk where weight limits of 0 no longer interprets as uncapped limit.
Fixed
- A linker bug which was preventing certain contracts from linking with the PVM linker.
- JS: Fix encoding conversion from JS string (UTF-16) to UTF-8.
- The git commit hash slug is always displayed in the version string.
v0.1.0-dev.6
This is a development pre-release.
Added
- Implement the
BLOCKHASHopcode. - Implement delegate calls.
- Implement the
GASPRICEopcode. Currently hard-coded to return1. - The ELF shared object contract artifact is dumped into the debug output directory.
- Initial support for emitting debug info (opt in via the
-gflag)
Changed
- resolc now emits 64bit PolkaVM blobs, reducing contract code size and execution time.
- The RISC-V bit-manipulation target feature (
zbb) is enabled.
Fixed
- Compilation to Wasm (for usage in node and web browsers)
v0.1.0-dev.5
This is development pre-release.
Added
- Implement the
CODESIZEandEXTCODESIZEopcodes.
Changed
- Include the full revive version in the contract metadata.
Fixed
v0.1.0-dev-4
This is development pre-release.
Added
- Support the
ORIGINopcode.
Changed
- Update polkavm to
v0.14.0. - Enable the
a,fast-unaligned-accessandxtheadcondmovLLVM target features, decreasing the code size for some contracts.