Skip to content
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

feat: improvements to RLP encoding #2375

Draft
wants to merge 31 commits into
base: aj/rlp
Choose a base branch
from
Draft

feat: improvements to RLP encoding #2375

wants to merge 31 commits into from

Conversation

peterwht
Copy link
Contributor

wip

ursulabauer and others added 27 commits January 3, 2025 21:41
…ts (#1988)

* Implementing stuff needed for instantiate_contract().

* Implemented return_value() on integration tests.

# Conflicts:
#	crates/env/src/lib.rs
#	crates/env/src/reflect/event.rs
#	crates/ink/codegen/Cargo.toml

* A couple fixes for E2E environment.

* Forgot to delete some fluff.

* Fixed dead code warnings.

* Added tests.

* Fixed-up tomls.

* Updated stderr test files.

* Updated CHANGELOG.

* Passed through rustfmt.

* Passed through clippy.

* Passed through rustfmt again.

* Fixed failing contract builds.

Moved reflection, contract, arithmetic, and miscellaneous types from ink_env
to ink_primitives.

* Revert "Updated stderr test files."

This reverts commit 2d1950a.

* Fixed format errors.

* Fixed failing test.

* Updated stderr test values.

* Fixed some dependencies for doc tests.

* Fixed rustfmt issues.

* Implemented code_hash() and set_code_hash().

* Minor behavior correction for instantiate_contract().

* Tentative invoke_contract() implementation.

* Added invoke_contract_delegate() skeleton.

* Obviated unsafe block.

* own_code_hash implementation

* Add own-code-hash integration test

* Remove unused use.

* Added some missing semantics.

* Passed through rustfmt.

* Passed through clippy.

* Fixed own_code_hash test.

* Tightening up code.

* Improved contract invokation tests. Fixed some things.

* Added tests.

* Removed unused type parameter.

* Updated changelog.

* Fixed clippy errors.

* Reapplied changes from PR 1988.

* Tests passing.

* cargo clippy

---------

Co-authored-by: Brian Ramirez <[email protected]>
* redundancy

* redundancy

* typo

* typo

* typo
* typos lib.rs

* typos call_builder.rs

* typos mod.rs

* typos lib.rs
* corrected order of words

* small fixes

* typo

* typos

* typo

* typos

---------

Co-authored-by: Michael Müller <[email protected]>
* Remove feature gated code

* Migrate code to `pallet-revive`

Remove `LimitParamsV1` + `pallet-contracts`
Use RISC-V target in CI
Use latest `polkadot-sdk` `master`
Use `H256` instead of `E::Hash`
Remove generic from `ToAddr` and `FromAddr`
Remove support for `no_implicit_prelude`
Remove `Determinism`

* Adding dry run for upload

* Revert "Adding dry run for upload"

This reverts commit 86411fa69b220972eb2194013bd6d7c614fabefb.

* Increase limit

* Remove generic `Salt`

* Implement new `delegate_call` API

* Fix CI, upgrade `dylint-link`

* Apply linter

* Fix copy from slice, deactivate `cargo fmt`

* Update `Cargo.lock`, apply `clippy` fixes

* Optimize CI

* Clean up more disc space

* Try to save more disk space

* Debug CI space issues

* Fix types for endowent and balance

* Fix tests and clippy errors

* Debug CI + fix types

* Fix linting tests

* Fix CI

* Fix `erc20` + `trait-erc20`

* Fix `erc721` + `contract-ref`

* Fix `erc1155`

* Update to `polkadot-sdk` `b7afe48ed0bfef30836e7ca6359c2d8bb594d16e`

* Fix `dns`

* Debug CI

* Debug CI

* Fix `lazyvec`

* Debug CI

* Debug CI

* Fix `cross-contract-calls` partly

* Debug `cross-contract-calls`

* Fix `contract-transfer`

* Debug strange bug

* Add stack bug reproducer

* Make clippy happy

* Fix types

* Fix types

* Fix `custom-environment`, `multisig`, `contract-terminate`, `contract-transfer`

* Fix more examples

* Fix more tests

* Run tests with `--all`

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Debug CI

* Fix tests for `lazy` + `delegator`

* Debug strange bug

* Revert "Debug strange bug"

This reverts commit fbd23ee.

* Fix tests

* Make `clippy` happy

* Fix tests + add debugging output

* Debug `mapping` test

* Fix GHA

* Add `unstable` feature

* Fix GHA

* Debug `mapping` tests

* Update CI confgi

* Fix `mapping` + `events` tests

* Fix CI config for `mapping`

* Add `unstable` feature everywhere

* Add missing `unstable` feature for integration tests

* Add `unstable` for `linting`

* Add `unstable` for `linting`

* Add `unstable` for `conditional-compilation`

* Debug `events`

* Add `unstable` for `lang-err` tests

* Fix `static-buffer` tests

* Implement todo's

* Apply `cargo fmt`

* Fix spellcheck + zepter

* Apply `cargo fmt`

* Fix CI + reenable test

* Apply `clippy` fixes

* Fix CI

* Apply `cargo fmt`

* Add failsafe for scripts

* Debug `examples-test-mapping`

* Debug `examples-test-mapping`

* Debug `examples-test-mapping`

* Temporarily `nightly-2024-11-28` for `mapping`

* Use latest `nightly` for `mapping`

* Fix URL

* Disable `doctest` for `mapping`

* Use self-hosted runner

* Fix path for `delegator`

* Update labels for runner

* Revert "Update labels for runner"

This reverts commit d4a2366.

* Revert "Use self-hosted runner"

This reverts commit d995e27.

* Add words to dictionary

* Use self-hosted runner

* Update labels for runner

* Adapt for instantiation testability

* Remove `unstable` feature

* Update test fixtures

* Revert running on self-hosted

* Replace `test_instantiate` feature with `test`

* Add `e2e_tests` module to `contract-invocation`

* Revert "Replace `test_instantiate` feature with `test`"

This reverts commit 79c311a.

* Cleaning up `contract-invocation`

* Add `test_instantiate` to integration tests

* Fix CI

* Deduplicate E2E-built contracts

* Fix CI

* Fix CI

* Fix CI

* Update test fixtures, propagate `test_instantiate`

* Debug CI

* Update test fixtures

* Allow `unexpected_cfgs`

* Add `allow(unexpected_cfgs)` to ui tests

* Use `std` instead of `test_instantiate`

* Remove `test_instantiate` feature throughout

* Update fixtures

* Fix inner attribute

* Remove println's

* Fix linting tests

* Make `panic` an `unreachable`

* Get rid of `unreachable_code` errs

* Update test fixtures

* Fix `contract-invocation`

* Get rid of `unreachable_code` errs

* Update values for `contract-invocation` asserts

* Fix `contract-invocation` tests

* Update test fixtures

* Fix `own_code_hash`

* Use `nightly` for measuring contract sizes (ICE)

* Migrate to `U256`

* Revert "Migrate to `U256`"

This reverts commit ae62747.

* Code cleanup

* Apply `cargo fmt`
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.42.0 to 1.43.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-1.42.0...tokio-1.43.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.13.0 to 0.14.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](rust-itertools/itertools@v0.13.0...v0.14.0)

---
updated-dependencies:
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [baptiste0928/cargo-install](https://github.com/baptiste0928/cargo-install) from 3.1.1 to 3.3.0.
- [Release notes](https://github.com/baptiste0928/cargo-install/releases)
- [Changelog](https://github.com/baptiste0928/cargo-install/blob/main/CHANGELOG.md)
- [Commits](baptiste0928/cargo-install@904927d...91c5da1)

---
updated-dependencies:
- dependency-name: baptiste0928/cargo-install
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](dtolnay/proc-macro2@1.0.92...1.0.93)

---
updated-dependencies:
- dependency-name: proc-macro2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.7.5 to 2.7.7.
- [Release notes](https://github.com/swatinem/rust-cache/releases)
- [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md)
- [Commits](Swatinem/rust-cache@82a92a6...f0deed1)

---
updated-dependencies:
- dependency-name: Swatinem/rust-cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 2.0.4 to 2.0.11.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](dtolnay/thiserror@2.0.4...2.0.11)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Müller <[email protected]>
Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain) from 7b1c307e0dcbda6122208f10795a713336a9b35a to a54c7afa936fefeb4456b2dd8068152669aa8203.
- [Release notes](https://github.com/dtolnay/rust-toolchain/releases)
- [Commits](dtolnay/rust-toolchain@7b1c307...a54c7af)

---
updated-dependencies:
- dependency-name: dtolnay/rust-toolchain
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* add example and storage refactoring docs

* add generic struct with storage key to example

* add explanation for storage keys

* add more types to example and update README

* Make docs more descriptive about changes

* Explain concatenation in more details

* Link to use.ink where necessary

* Apply suggestions

---------

Co-authored-by: ivan770 <[email protected]>
let selector = keccak_selector(b"flip");
let callee: AccountId = callee.into();

// TODO: fails due to call builder encoding with scale
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

more accurately, issue is coming from here:

let decoded = scale::DecodeAll::decode_all(&mut &output[..])?;

cmichi and others added 2 commits January 24, 2025 14:22
…` sync, CI fix (#2379)

* Bump version to `6.0.0-alpha`

* Remove relative deps

* Apply `cargo fmt`

* Bump `polkavm-derive` to `0.19.0`

* Fix CI

* Fix CI

* Fix CI

* Fix CI

* Adapt `complex-storage-structures` to ink! 6

* Debug CI

* Fix `codecov` stage of CI

* Remove debug output
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.