polkadot-runtime-template icon indicating copy to clipboard operation
polkadot-runtime-template copied to clipboard

[WIP] Pallet Wrappers PoC

Open 4meta5 opened this issue 1 year ago • 1 comments

PoC for #257

Scope for this PR is currently the OzSystem Wrapper. Scope may be expanded before merging if the OzSystem Wrapper design is approved.

TODOs

  • [x] impl OzSystem for generic::Runtime
  • [x] use OzSystem in frame_system::Config for generic::Runtime
  • [x] use OzSystem in pallet_timestamp::Config for generic::Runtime
  • [x] use OzSystem in parachain_info::Config for generic::Runtime
  • [x] use OzSystem in pallet_proxy::Config for generic::Runtime
  • [x] use OzSystem in pallet_utility::Config for generic::Runtime
  • [ ] use OzSystem in pallet_scheduler::Config for generic::Runtime
  • [ ] use OzSystem in pallet_preimage::Config for generic::Runtime
  • [ ] use OzSystem in pallet_balances::Config for generic::Runtime
  • [ ] use OzSystem in cumulus_pallet_parachain_system::Config for generic::Runtime

Logistics

  • move oz-wrappers to root directory to share between templates
  • once derive_impl is fixed, use it to generate assignments for all <OzSystem<Configuration> as DefaultConfig>::$TYPES

Notes for Reviewers

frame macros used include:

Follow Ups / Parallel Tasks

As mentioned internally, it may be productive for @ozgunozerk to tackle one of these in parallel to see distinct approaches and explore the design space in general. Remaining pallet abstraction groupings:

  • OzTokens
  • OzConsensus
  • OzGovernance
  • OzEVM
  • OzXCM

4meta5 avatar Aug 13 '24 21:08 4meta5

Deploy Preview for docs-oz-polkadot canceled.

Name Link
Latest commit 9dfad12f484faf980f5835ecd3caee701c6f07c0
Latest deploy log https://app.netlify.com/sites/docs-oz-polkadot/deploys/66c6587b9cb99b00083be610

netlify[bot] avatar Aug 13 '24 21:08 netlify[bot]

After internal discussion, we are going with a different PoC approach that will leverage our own custom macros to expand inner code into the impl blocks, construct_runtime declaration, and RuntimeApi impls.

Opening WIP PR of the above approach later today :)

4meta5 avatar Aug 22 '24 14:08 4meta5