It requires updating minor version of curve25519-dalek and ahash crates in the
Cargo.lock. If you need to use older version of nightly rustc, use
curve25519-dalek-4.1.1 and ahash-07.8/0.8.9. It affects Cargo.lock only.
* support call_parameters v2
* remove old comment
* use released marine
* fix test wasm
* update sdk marine use lens
* fix test module
* WIP fixing the tests to use lens
* WIP tetraplet field renaming test fixes
* rename more lambda to lens
* fix build
* Fix gen-bench-data compilation
* Update gen-bench-data Cargo.lock
* Fix signature tests
---------
Co-authored-by: drrtuy <roman@fluence.one>
Co-authored-by: Ivan Boldyrev <ivan@fluence.one>
Use custom JSON value type with Rc inside. It cannot be edited, but producing new values based on child element is very cheap.
This new type is used exclusively in AquaVM internals. Interface APIs use serde_json's Value or JSON strings, as before.
---------
Co-authored-by: raftedproc <71657594+raftedproc@users.noreply.github.com>
* chore(preformance): use fluence-blake3
Enable wasm32 SIMD on the appropriate target. It gives a noticeable performance improvement.
The smaller memory size on benchmarks is due to unrelated stack size reduction.
* chore: release master
* chore: Bump air-interpreter and air-near-contract version to 0.58.0
* Set minimal interpreter version to 0.58.0
---------
Co-authored-by: Ivan Boldyrev <ivan@fluence.one>
* Refactor out the `InterpreterDataEnvelope`
It is an envelope for the data that makes `version` info accessible in
standard non-changing way. Inner data in `InterpreterDataEnv` is a binary blob.
* Use `rkyv` for `InterpreterData`
* `InterpreterDataEnvelope` uses MsgPack directly
It will be changed when `interpreter-sede` will support types with serde borrows.
It seems that release-please doesn't handle these crates, not updating
dependency versions in the release pull request.
---------
Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev>
* chore: release master
* chore: Bump air-interpreter and air-near-contract version to 0.56.0
* temporary disable risc-0
* remove the risc-0 part from the release-please at all
---------
Co-authored-by: Mike Voronov <michail.vms@gmail.com>
* Update ed25519-dalek and rand_chacha to compatible versions
* Make clippy happier
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ivan Boldyrev <ivan@fluence.one>
New crate air_interpreter_sede introduces a flexible serialization and deserialization infrastructure.
Low level API: the Format trait and related. It includes simple and universal mechanisms for serializing any possible (e.g. implementing the Serde traits) value.
High level API: Representation trait and related. It allows declaring representation types that can serialize and deserialize only certain types (for example, InterpreterDataRepr can serialize only the InterpreterData, but deserialize InterpreterData and Versions` types), producing newtype values as serialization results.
The serialized representation of CallResults now contains byte arrays, not strings, because the new infrastructure serializes to byte arrays only.
Also, the basic support for multicodecs is added.
* chore: release master
* chore: Bump air-interpreter and air-near-contract version to 0.54.0
* Update minimal version to 0.54.0
---------
Co-authored-by: Ivan Boldyrev <ivan@fluence.one>