Mark Polkadot 26 upgrade (#2843)

This commit is contained in:
Jaco Greeff
2020-11-12 16:33:26 +01:00
committed by GitHub
parent 03570f2f11
commit 98b01a462d
3 changed files with 34 additions and 6 deletions
@@ -0,0 +1,10 @@
// Copyright 2017-2020 @polkadot/types-known authors & contributors
// SPDX-License-Identifier: Apache-2.0
import all from '.';
describe('upgrades', (): void => {
it('is valid', (): void => {
expect(all).toBeDefined();
});
});
+23 -6
View File
@@ -5,16 +5,33 @@ import { ChainUpgrades } from '@polkadot/types/types';
import { ChainUpgradesRaw } from './types';
import BN from 'bn.js';
import { hexToU8a } from '@polkadot/util';
import { assert, hexToU8a } from '@polkadot/util';
import kusama from './kusama';
import polkadot from './polkadot';
import westend from './westend';
function rawToFinal ({ genesisHash, versions }: ChainUpgradesRaw): ChainUpgrades {
/** @internal */
function checkOrder (network: string, versions: [number, number][]): [number, number][] {
const ooo = versions.filter((curr, index): boolean => {
const prev = versions[index - 1];
return index === 0
? false
: curr[0] <= prev[0] || curr[1] <= prev[1];
});
assert(!ooo.length, `${network}: Mismatched upgrade ordering: ${JSON.stringify(ooo)}`);
return versions;
}
/** @internal */
function rawToFinal (network: string, { genesisHash, versions }: ChainUpgradesRaw): ChainUpgrades {
return {
genesisHash: hexToU8a(genesisHash),
versions: versions.map(([blockNumber, specVersion]) => ({
network,
versions: checkOrder(network, versions).map(([blockNumber, specVersion]) => ({
blockNumber: new BN(blockNumber),
specVersion: new BN(specVersion)
}))
@@ -23,9 +40,9 @@ function rawToFinal ({ genesisHash, versions }: ChainUpgradesRaw): ChainUpgrades
// Type overrides for specific spec types & versions as given in runtimeVersion
const upgrades: ChainUpgrades[] = [
rawToFinal(kusama),
rawToFinal(polkadot),
rawToFinal(westend)
rawToFinal('kusama', kusama),
rawToFinal('polkadot', polkadot),
rawToFinal('westend', westend)
];
export default upgrades;