-
Notifications
You must be signed in to change notification settings - Fork 11
feat: ⏫ upgrade to Polkadot SDK stable2409 #228
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
Conversation
…ng events in tests
| mod genesis_config_presets; | ||
| mod weights; | ||
|
|
||
| extern crate alloc; |
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.
Do you know why this is here?
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.
This is because the runtime is a no_std crate that supports allocation (more specifically, we use alloc in the genesis_config_presets.rs file), and alloc is a "sysroot" crate which is distributed with Rust itself, so the 2018 Rust update that removed the need for extern crate syntax doesn't apply for it (more info here)
Update from Polkadot SDK stable2407 to stable2409
Node Dev:MetricsServiceand add public constructor toRpcHandlersbuild_network, updated in SH.polkadot-parachain-libhelper library that can be used to build a parachain node.sp-consensus-slots. This function returns the timestamp when the slot began.env_loggerwithsp_tracingbecause of an issue withenv_loggerandgum.env_logger.sc-serviceAPI by not requiring the wholeConfigurationobject and using specific configuration options instead.BestBlockevents only forNewBlockreports. This ensures that thechainHead_v1_followmethod of the RPC-v2 API is always reporting aBestBlockevent after aNewBlockBestBlockevent for a block not previously reported viaNewBlockbecause of a race condition. Now, instead of relying on the client’s info they use the last finalized block to emit a new event. So there are two cases when a newBestBlockevent is emitted:&mut selfwith&selfinBlockImport::import_block(), since independent blocks can technically be imported concurrently (and in practice it was called throughArcanyway).Runtime Dev:pallet::getterusage from thetransaction-paymentpallet.MaybeConsiderationextension trait forConsideration. This allows the management of tickets that may represent no cost.Considerationis used for migrating pallets that utilize theCurrencyandfungibletraits for holds and freezes, which we do, so it might be useful in the future.pallet-migrations: fix index access for singular migrations.DryRunApi.dry_run_callandDryRunApi.dry_run_xcmfunctions used to populateforwarded_xcmswith all the existing messages in the queues at the time. Now, existing (irrelevant) messages are cleared when dry-running, meaning only the messages produced by the dry-run call (or xcm) will be returned inforwarded_xcms.xcm-emulatorfrom_melforFootprint. This allows to generate aFootprinttype by calculating the Maximum Encoded Length of a generic type.AssetExchangerto swap fees to use for delivery fees, if possible.AssetExchanger. Maybe we could allow to swap other assets to DOT using the AssetHub, but I believe (not confirmed) those would not be native DOTs and we would end up managing two kinds of DOTs (native and derivative).PendingConfigsstorage item public, which holds a list of configuration changes each with a session index at which it should be applied.pallet::getterfrompallet-balances.xcm::v4::PalletInfopublic.polkadot-sdk. In addition, theProofSizeExtextension is available during benchmarking.polkadot-sdkrepo has for tests of system chains, but I believe this should be done in the PR that adds StorageHub as a system chain to the repo.OverlayedChanges, which were reset. It also adds the—genesis-builder-presetoption to allow using different genesis preset names.Node Operator:—experimental-rpc-endpointto specify listed address.deny_unsafefrom the RPC implementation.—public-addrCLI parameter when starting a validator node. In the future, this will be a hard failure.Runtime User: