-
Notifications
You must be signed in to change notification settings - Fork 428
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
Update to scale-info 1.0
, introduce metadata format versioning
#845
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
I just want to wait with the merge until we have our CI running again everywhere. Otherwise it will become more hairy to sort out where a failure goes back to.
The CI is currently failing because of a number of issues: we changed our repository setup and there are some follow-ups to be done in GitLab (see the issues I created in the ci_cd
repo), but also because I yesterday found WebAssembly/binaryen#4148.
Cool feel free to merge this when ready then 👍 |
Ah could you add the change to |
Codecov Report
@@ Coverage Diff @@
## master #845 +/- ##
==========================================
+ Coverage 84.17% 84.61% +0.44%
==========================================
Files 172 172
Lines 7924 7852 -72
==========================================
- Hits 6670 6644 -26
+ Misses 1254 1208 -46
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Looking forward to having this merged!
Note that the |
Can we merge this now that all tests are passing and we have approvals? |
This PR is blocked by https://github.com/polkadot-js/apps/issues/6167. |
1.0
1.0
, introduce metadata format versioning
Co-authored-by: Michael Müller <michi@parity.io>
Co-authored-by: Michael Müller <michi@parity.io>
…pgrade-scale-info
* [storage] Allow one variant enum to derive SpreadLayout I have an enum that has only one variant, and I want to store the enum value in the storage. I might add new variants later in development, so the enum is not useless. The current implementation doesn't allow to derive the `SpreadLayout` trait for one variant enums, and I fixed it on this PR. # Sample code ```rust #![cfg_attr(not(feature = "std"), no_std)] use ink_lang as ink; #[derive( Copy, Clone, scale::Encode, scale::Decode, ink_storage::traits::SpreadLayout, ink_storage::traits::PackedLayout, )] #[cfg_attr( feature = "std", derive(scale_info::TypeInfo, ink_storage::traits::StorageLayout) )] pub enum MyEnum { A, } #[ink::contract] mod enum_test { use super::MyEnum; #[ink(storage)] pub struct EnumTest { value: MyEnum, } impl EnumTest { #[ink(constructor)] pub fn new() -> Self { Self { value: MyEnum::A } } #[ink(message)] pub fn get(&self) -> MyEnum { self.value } } } ``` Without this change, I get this error. ``` $ cargo +nightly contract build [1/5] Building cargo project Updating crates.io index Compiling enum_test v0.1.0 (/private/var/folders/zn/l2f569z56vnghtt524x1mv6w0000gn/T/cargo-contract_FM50JF) error: proc-macro derive panicked --> /snip/enum_test/lib.rs:10:5 | 10 | ink_storage::traits::SpreadLayout, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: message: can only operate on enums ``` * Update crates/storage/derive/src/spread_layout.rs Co-authored-by: Robin Freyler <robbepop@web.de> * cargo fmt Co-authored-by: Robin Freyler <robbepop@web.de>
Updates the requirements on [pretty_assertions](https://github.com/colin-kiegel/rust-pretty-assertions) to permit the latest version. - [Release notes](https://github.com/colin-kiegel/rust-pretty-assertions/releases) - [Changelog](https://github.com/colin-kiegel/rust-pretty-assertions/blob/main/CHANGELOG.md) - [Commits](rust-pretty-assertions/rust-pretty-assertions@v0.7.1...v1.0.0) --- updated-dependencies: - dependency-name: pretty_assertions dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Use scale-info
1.0
everywhere.Introduces metadata versioning as specified in #941.
Companion
cargo-contract
PR: use-ink/cargo-contract#342todo
cargo-contract
polkadot-js/api
is updated to handle the new metadata format for Canvas UI and polkadot.js/appsSee polkadot-js/api#3687 for polkadot.js and polkadot-js/api#3759 for UI compat progress.