* Remove all stale on_runtime_upgrade hooks in the runtime
* add docs
* cleanup
* fix warn
* fix more warnings
* fix offence test
* overwrite the damn UItest
* Remove cargo unleash CI job
The CI job is currently breaking, because we released some crates. We also don't need the job
currently because releases are not done. So, the job currently just annoys people and eats CPU time.
This brings us to the conclusion that this job is currently not required and can be readded at a
later point when we are sure that we need it.
* Hopefully fix UI test
* Another try
* Remove `reserved_keyword` ui
* fix order
* Update frame/support/procedural/src/construct_runtime/mod.rs
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* format
* more accurate description
* format
* better explicit types
* fix tests
* address feedback
* add a type to ease non breaking implementation
* add comment about constraint
* fix test
* add test for generated types
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* Update CI image to the latest rustc
* Update rustc error messages
* whitespace
* update test output
* updating compiler errors
* kid's finally learning to read and spots the TRYBUILD=overwrite message.
* undoing a little blessing
* imperfect error msg
* revert ci image to production
Co-authored-by: gilescope <gilescope@gmail.com>
* Rebased with master. Resolved merge conflict in
frame/support/test/tests/pallet.rs
* Switching Account ID to SomeType1, as SomeType3 was giving me conversion error.
* Wrong indent config. Fixed.
* These tabs look fine locally, but look different on Github. Trying to get the style config right.
* Parsing pallet::constant_name.
Passing unit tests, which is confusing because I didn't change `ident` in the ExtraConstantDef initialization.
* Finalized parsing of extra constant name by adding optional metadata field.
Added expansion logic that replaces respective `idents` where they exist.
* Erasing this to try to keep the format the same across the source code.
* Another formatting change for consistency.
* Update frame/support/procedural/src/pallet/expand/constants.rs
strictly more idiomatic.
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Update frame/support/procedural/src/pallet/parse/extra_constants.rs
strictly idiomatic change.
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Fixing formatting and CI warnings.
* switched to nightly compiler to use rustfmt.toml
Co-authored-by: Eric Miller <emiller@lirio.co>
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* improve root filter bypass
* improve doc
* fmt
* refactor test for more understandable flow
* Update frame/support/procedural/src/construct_runtime/expand/origin.rs
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
* match
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
* Record pallet indices in CallMetadata
* Resurrect PalletVersion infrastructure and rename as CrateVersion
* cargo fmt
* Add missing runtime generics to pallet struct
* Fix path to instance
* Fix test
* Fix UI test expectations
* Fix UI test expectations
* Move crate_version function to PalletInfoAccess
* Update UI test expectations
* Add crate_name method to PalletInfo
* Convert path to module name instead of exposing crate name
* cargo fmt
* Keep the double colons when constructing the module name
* Remove unused import
* Update UI test expectations
* Update frame/support/src/traits/metadata.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Update UI test expectations
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Prepare UI tests for rust 1.54
* Delete wrong_page.stderr
* CI: run with a staging CI image
* Revert "CI: run with a staging CI image"
This reverts commit 66f5b00d14b50fd9d8fbf773f7e884f380697591.
* CI: debug, again
* LOG_TARGET is only used in std
* Remove unnecessary unsafe
* Fixes
* Use correct rustc locally
* FMT
* Compile with benchmarking
* Review feedback
* Some ui tests
* I know...
* Fix wasm tests
Co-authored-by: Denis P <denis.pisarev@parity.io>
Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
* Move `PalletVersion` away from the crate version
Before this pr, `PalletVersion` was referring to the crate version that
hosted the pallet. This pr introduces a custom `package.metadata.frame`
section in the `Cargo.toml` that can contain a `pallet-version` key
value pair. While the value is expected to be a valid u16. If this
key/value pair isn't given, the version is set to 1.
It also changes the `PalletVersion` declaration. We now only have one
`u16` that represents the version. Not a major/minor/patch version. As
the old `PalletVersion` was starting with the `u16` major, decoding the
old values will work.
* Overhaul the entire implementation
- Drop PalletVersion
- Introduce StorageVersion
- StorageVersion needs to be set in the crate and set for the macros
- Added migration
* Fix migrations
* Review feedback
* Remove unneeded dep
* remove pub consts
* Brings back logging and implements `GetStorageVersion`
* Return weight from migration
* Fmt and remove unused import
* Update frame/support/src/dispatch.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Update frame/support/src/traits/metadata.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Run cargo fmt on the whole code base
* Second run
* Add CI check
* Fix compilation
* More unnecessary braces
* Handle weights
* Use --all
* Use correct attributes...
* Fix UI tests
* AHHHHHHHHH
* 🤦
* Docs
* Fix compilation
* 🤷
* Please stop
* 🤦 x 2
* More
* make rustfmt.toml consistent with polkadot
Co-authored-by: André Silva <andrerfosilva@gmail.com>
* Emit error when Config part is imported but without the std feature
* Add UI test for missing std feature on GenesisConfig
* Update frame/support/test/Cargo.toml
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Remove unused imports
* Unify all dummy party checker macros
* Fix
* Dispaly pallet_path::GenesisConfig instead of PalletConfig in error message
* Revert changes to construct_runtime_ui.rs
* Add additional parameter for dummy part checker macro
* Apply suggestions from code review
* fix master merge: update version
* update Cargo.lock
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Update impl-codec to use new upstream MaxEncodedLen trait
* Adapt crates to use the updated codec crate for `MaxEncodedLen`
* Remove max-encoded-len crate altogether
* Fix test compilation in `pallet-proxy`
* reorganize import (#9186)
* Fix remaining `MaxEncodedLen` imports
* Fix remaining old usages of max-encoded-len crate
* Fix UI test
* Manually depend on new impl-codec to fix Polkadot companion build
* Use newly released primitive-types v0.9.1 that has new codec impls
* Make sure codec deps are up-to-date in crates that use them
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* always implement storage info on Pallet
* fix UI test
* Fold span computation into trait and method computation
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
* Emit error when construct_runtime imports a non-existent Call part
* Reword and display pallet name when emitting part not found error
* Migrate decl_outer_dispatch to a proc macro
* Rename calls.rs to call.rs
* Create new construct_runtime_v2 macro
* Add UI test for importing non-existent call part in construct_runtime
* Emit error when construct_runtime imports a non-existent Config part
* Emit error when construct_runtime imports a non-existent Event part
* Migrate decl_outer_inherent to a proc macro
* Emit error when construct_runtime imports a non-existent Inherent part
* Migrate decl_outer_validate_unsigned to a proc macro
* Emit error when construct_runtime imports a non-existent ValidateUnsigned part
* impl for old macro
* fix line width
* add doc
* hide macroes and use unique counter everywhere
* Remove construct_runtime_v2
* Encapsulate pallet part check macros in a module
* Fix macro definitions in dummy part checker
* Tag ProvideInherent impl with #[pallet::inherent] properly for authorship pallet
* Remove Call part from pallets that do not define it
* Add Call part unit tests
* Remove undefined Call part import from offences pallet
* Add tests for expand_outer_inherent
* Remove Call part from pallets that do not define them
* Remove Call part imports from pallets that do not have it defined
* Remove Call part import of the offences pallet from grandpa pallet mocks
* Update frame/support/test/tests/pallet.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Remove Call part imports for pallets that do not define them
* Move inherent tests to inherent_expand
* Add unit tests for expand_outer_validate_unsigned
* Add newline at the end of file
* fix ui test
* Small prayer to RNGsus for fixing CI
* Remove Call part from construct_runtime for randomness collective flip pallet
* Remove Call part import for randomness collective flip pallet
* Summon Laplace's demon instead of praying to RNGsus
* Update test expectations
* fix ui test and make sure it's flaky
* Revert "fix ui test and make sure it's flaky"
This reverts commit 362b6881389c911ef8d9ef85d71c9463f5694b20.
* Comment out test instead of putting it in conditional compilation
* Update UI test expectations
* Update UI test expectations
* Emit error when construct_runtime imports a non-existent Origin part
Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Denis P <denis.pisarev@parity.io>
* Implement parsing for #[pallet::storage_name] on storage items
* Rename storage prefix when a #[pallet::storage_name] is supplied
* Fix test_storage_info
* Rename storage_name to storage_prefix
* Check for duplicates when renaming storage prefixes
* Allow only string literals for storage_prefix renames
* Use proper spans for attribute errors
* Check for valid identifiers when parsing storage prefix renames
* Allow additional trait bounds for constants
* Add ui test for constants with additional trait bounds
* Update trait constant ui test
* Import syn::Error
* Use reference instead of cloning
* Add extra invalid bound ui test
* Out or order valid bounds
* Fix ui test
* Fix ui test
* Apply review suggestion about error message
* make all extrinsics public so they are available from outside
* Impl
* fix
* more fix
* more pub
* few more
* merge fix
* fix ui test
* fix ui test
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Bastian Köcher <info@kchr.de>