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

[Calamari]Bump deps to polkadot-v0.9.11 #211

Merged
merged 6 commits into from
Oct 16, 2021
Merged

Conversation

Dengjianping
Copy link
Contributor

@Dengjianping Dengjianping commented Oct 11, 2021

Description

closes: #210

Deps Changes

Polkadot Changes:

  1. Add a force_unfreeze extrinsic to the disputes module paritytech/polkadot#3906
  2. update BaseXcmWeight to match Kusama paritytech/polkadot#3911
  3. XCM Benchmarks for Asset Transactor w/ Fungible Asset paritytech/polkadot#3818
  4. Log info about low connectivity and unreachable validators paritytech/polkadot#3916
  5. remove connected disconnected state, 3rd attempt paritytech/polkadot#3898
  6. Make most XCM APIs accept an Into<MultiLocation> where MultiLocation is accepted paritytech/polkadot#3627
  7. Companion for #9834 (Transaction Priority) paritytech/polkadot#3901
  8. XCM v2: Scripting, Query responses, Exception handling and Error reporting paritytech/polkadot#3629

Substrate Changes:

  1. Fungibles and Non-Fungibles Create and Destroy Traits + Assets and Uniques Implementation paritytech/substrate#9844
  2. Update wasmtime to 0.29.0 paritytech/substrate#9552
  3. Rework Transaction Priority calculation paritytech/substrate#9834

Cumulus Changes:

  1. chore: bump subwasm version to support V14 runtimes paritytech/cumulus#623

statemine diffs between:

fa116cfbfb470a8114fc02f9d2e3c0a5ab6c7193 -> 0.9.10
ede4d527c4fc5d84c43216b408a873625488574b-> 0.9.11

Our Changes

Client

  1. version from 3.0.5 to 3.0.6.
  2. Removed fn rpc_http_threads and telemetry_external_transport from RelayChainCli: change
  3. Removed macro native_executor_instance, we have to manually implement it: change
  4. Refactor rpc service: https://github.com/Manta-Network/Manta/blob/jamie/upgrade-deps-v0.9.11/node/src/rpc.rs

Runtime

  1. New associated type OperationalFeeMultiplier for pallet_transaction_payment: change

    pub const OperationalFeeMultiplier: u8 = 5;

    This means A fee mulitplier for Operational extrinsics to compute "virtual tip" to boost their priority.

    See more details from here: OperationalFeeMultiplier

    I think 5 should be fine.

  2. New associated types AssetTrap and AssetClaims. This is for xcm configuration. For now, we don't enable xcm in calamari, we can just follow statemint' configuration, it should be fine.

    More details: associated types

  3. Update configuration for pallet_xcm. Just follow statemint' configuration.

    const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100;
    type Origin = Origin;
    type Call = Call;

    More details: https://github.com/Manta-Network/Manta/blob/jamie/upgrade-deps-v0.9.11/runtime/calamari/src/lib.rs#L405

  4. New associated type MaxAuthorities for pallet_aura.

    pub const MaxAuthorities: u32 = 100_000;
    type MaxAuthorities = MaxAuthorities;

    This means The maximum number of authorities that the pallet can hold.

    Now, we don't allow comunity to run collator, we can consider it later.

    More details: https://github.com/paritytech/substrate/blob/polkadot-v0.9.11/frame/aura/src/lib.rs#L75

  5. Bump spec_versionto 2.


Tests

  • Does key injection script work (only for calamari-testnet)
  • Check block production
  • Sudo system.setCode upgrade
  • Force transfer balances
  • Pass sudo to multi-sig account
  • Upgrade with authorizeUpgrade + enactAuthorized
  • Check average block time is ~12 seconds
  • Check dropping and reconnecting a collator
  • Native binary replacement

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

  • Targeted PR against correct branch (manta or manta-pc) with right title (start with [Manta] or [Manta-PC]),
  • Linked to Github issue with discussion and accepted design OR have an explanation in the PR that describes this work.
  • Wrote unit tests.
  • Updated relevant documentation in the code.
  • Re-reviewed Files changed in the Github PR explorer.
  • If runtime changes, need to update the version numbers properly:
    • authoring_version: The version of the authorship interface. An authoring node will not attempt to author blocks unless this is equal to its native runtime.
    • spec_version: The version of the runtime specification. A full node will not attempt to use its native runtime in substitute for the on-chain Wasm runtime unless all of spec_name, spec_version, and authoring_version are the same between Wasm and native.
    • impl_version: The version of the implementation of the specification. Nodes are free to ignore this; it serves only as an indication that the code is different; as long as the other two versions are the same then while the actual code may be different, it is nonetheless required to do the same thing. Non-consensus-breaking optimizations are about the only changes that could be made which would result in only the impl_version changing.
    • transaction_version: The version of the extrinsics interface. This number must be updated in the following circumstances: extrinsic parameters (number, order, or types) have been changed; extrinsics or pallets have been removed; or the pallet order in the construct_runtime! macro or extrinsic order in a pallet has been changed. If this number is updated, then the spec_version must also be updated
  • If needed, notify the committer this is a draft-release and a tag is needed after merging the PR.
  • Verify benchmarks & weights have been updated for any modified runtime logics

@Dengjianping Dengjianping added A-manta Area: Issues and PRs related to the Manta Runtime A-calamari Area: Issues and PRs related to the Calamari Runtime labels Oct 11, 2021
@Dengjianping Dengjianping self-assigned this Oct 11, 2021
@Dengjianping Dengjianping changed the title [Calamari]Bump deps to polkadot-v0.9.11(WIP) [Calamari]Bump deps to polkadot-v0.9.11 Oct 13, 2021
Copy link
Contributor

@ghzlatarev ghzlatarev left a comment

Choose a reason for hiding this comment

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

Please update the CHANGELOG.md file as well.

Copy link
Contributor

@ghzlatarev ghzlatarev left a comment

Choose a reason for hiding this comment

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

Can you add the 2 statemint commits you used to get their diff.

@Dengjianping
Copy link
Contributor Author

Can you add the 2 statemint commits you used to get their diff.

Done.

Copy link
Collaborator

@stechu stechu left a comment

Choose a reason for hiding this comment

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

LGTM. Should either keep or remove try-runtime feature entirely.

@Dengjianping
Copy link
Contributor Author

Please update the CHANGELOG.md file as well.

Done.

@ghzlatarev
Copy link
Contributor

LGTM

@stechu stechu merged commit b7b293f into manta-pc Oct 16, 2021
@stechu stechu deleted the jamie/upgrade-deps-v0.9.11 branch October 16, 2021 07:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-calamari Area: Issues and PRs related to the Calamari Runtime A-manta Area: Issues and PRs related to the Manta Runtime
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade to v0.9.11
3 participants