diff --git a/.github/workflows/pr-any.yml b/.github/workflows/pr-any.yml index 12ab345c26..03abe457c8 100644 --- a/.github/workflows/pr-any.yml +++ b/.github/workflows/pr-any.yml @@ -17,7 +17,6 @@ jobs: deno-version: vx.x.x - name: ${{ matrix.step }} if: always() - continue-on-error: true run: | yarn install --immutable | grep -v 'YN0013' yarn ${{ matrix.step }} diff --git a/package.json b/package.json index 7002390841..933e2d77f4 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@babel/core": "^7.18.10", "@babel/register": "^7.18.9", "@babel/runtime": "^7.18.9", - "@polkadot/dev": "^0.67.89", + "@polkadot/dev": "^0.67.90", "@polkadot/typegen": "workspace:packages/typegen", "@types/jest": "^28.1.6", "copyfiles": "^2.4.1" diff --git a/packages/api-contract/src/test/compare/user_v3_ask.test.json b/packages/api-contract/src/test/compare/user_v3_ask.test.json new file mode 100644 index 0000000000..a51e002941 --- /dev/null +++ b/packages/api-contract/src/test/compare/user_v3_ask.test.json @@ -0,0 +1,71 @@ +[ + { + "info": "Plain", + "lookupIndex": 0, + "type": "u8", + "docs": [], + "namespace": "" + }, + { + "info": "Plain", + "lookupIndex": 1, + "type": "Text", + "docs": [], + "namespace": "" + }, + { + "info": "VecFixed", + "lookupIndex": 2, + "type": "[u8;32]", + "docs": [], + "namespace": "", + "length": 32, + "sub": { + "info": "Plain", + "lookupIndex": 0, + "type": "u8", + "docs": [], + "namespace": "" + } + }, + { + "info": "Struct", + "lookupIndex": 3, + "type": "{\"inner\":\"[u8;32]\"}", + "docs": [], + "namespace": "", + "sub": [ + { + "docs": [], + "name": "inner", + "info": "VecFixed", + "lookupIndex": 2, + "type": "[u8;32]", + "namespace": "", + "length": 32, + "sub": { + "info": "Plain", + "lookupIndex": 0, + "type": "u8", + "docs": [], + "namespace": "" + }, + "typeName": "FixedArray32" + } + ] + }, + { + "info": "Plain", + "lookupIndex": 4, + "type": "u128", + "docs": [], + "namespace": "" + }, + { + "info": "Plain", + "lookupIndex": 5, + "type": "bool", + "docs": [], + "namespace": "" + } +] \ No newline at end of file diff --git a/packages/api-contract/src/test/contracts/user/index.ts b/packages/api-contract/src/test/contracts/user/index.ts index d774523a5a..9e075d31ca 100644 --- a/packages/api-contract/src/test/contracts/user/index.ts +++ b/packages/api-contract/src/test/contracts/user/index.ts @@ -3,5 +3,6 @@ import { createVersionedExport } from '../util'; import * as v0 from './v0'; +import * as v3 from './v3'; -export default createVersionedExport({ v0 }); +export default createVersionedExport({ v0, v3 }); diff --git a/packages/api-contract/src/test/contracts/user/v3/ask.json b/packages/api-contract/src/test/contracts/user/v3/ask.json new file mode 100644 index 0000000000..0d9141f801 --- /dev/null +++ b/packages/api-contract/src/test/contracts/user/v3/ask.json @@ -0,0 +1,550 @@ +{ + "source": { + "hash": "", + "language": "Ask! 0.4.0", + "compiler": "asc 0.19.23" + }, + "contract": { + "name": "", + "version": "", + "authors": [] + }, + "V3": { + "spec": { + "constructors": [ + { + "args": [ + { + "type": { + "type": 1, + "displayName": [ + "string" + ] + }, + "label": "name" + }, + { + "type": { + "type": 1, + "displayName": [ + "string" + ] + }, + "label": "symbol" + } + ], + "docs": [], + "label": "default", + "payable": false, + "selector": "0xed4b9d1b" + } + ], + "messages": [ + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "to" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "amount" + } + ], + "docs": [], + "label": "mint", + "selector": "0xcfdd9aa2" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "from" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "amount" + } + ], + "docs": [], + "label": "burn", + "selector": "0xb1efc17b" + }, + { + "mutates": false, + "payable": false, + "args": [], + "returnType": { + "type": 1, + "displayName": [ + "string" + ] + }, + "docs": [], + "label": "name", + "selector": "0x3adaf70d" + }, + { + "mutates": false, + "payable": false, + "args": [], + "returnType": { + "type": 1, + "displayName": [ + "string" + ] + }, + "docs": [], + "label": "symbol", + "selector": "0x9bd1933e" + }, + { + "mutates": false, + "payable": false, + "args": [], + "returnType": { + "type": 0, + "displayName": [ + "u8" + ] + }, + "docs": [], + "label": "decimal", + "selector": "0xcc3fec6d" + }, + { + "mutates": false, + "payable": false, + "args": [], + "returnType": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "docs": [], + "label": "totalSupply", + "selector": "0xcae60595" + }, + { + "mutates": false, + "payable": false, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "account" + } + ], + "returnType": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "docs": [], + "label": "balanceOf", + "selector": "0xf48def67" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "recipient" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "amount" + } + ], + "returnType": { + "type": 5, + "displayName": [ + "bool" + ] + }, + "docs": [], + "label": "transfer", + "selector": "0x84a15da1" + }, + { + "mutates": false, + "payable": false, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "owner" + }, + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "spender" + } + ], + "returnType": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "docs": [], + "label": "allowance", + "selector": "0x6a00165e" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "spender" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "amount" + } + ], + "returnType": { + "type": 5, + "displayName": [ + "bool" + ] + }, + "docs": [], + "label": "approve", + "selector": "0x681266a0" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "sender" + }, + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "recipient" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "amount" + } + ], + "returnType": { + "type": 5, + "displayName": [ + "bool" + ] + }, + "docs": [], + "label": "transferFrom", + "selector": "0x02a6e0d5" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "spender" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "addedValue" + } + ], + "returnType": { + "type": 5, + "displayName": [ + "bool" + ] + }, + "docs": [], + "label": "increaseAllowance", + "selector": "0xcb005356" + }, + { + "mutates": true, + "payable": true, + "args": [ + { + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "label": "spender" + }, + { + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "label": "subtractedValue" + } + ], + "returnType": { + "type": 5, + "displayName": [ + "bool" + ] + }, + "docs": [], + "label": "decreaseAllowance", + "selector": "0xe19fabb4" + } + ], + "events": [ + { + "id": 1, + "label": "Transfer", + "args": [ + { + "label": "from", + "indexed": false, + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "docs": [ + "" + ] + }, + { + "label": "to", + "indexed": false, + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "docs": [ + "" + ] + }, + { + "label": "value", + "indexed": false, + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "docs": [ + "" + ] + } + ], + "docs": [ + "" + ] + }, + { + "id": 2, + "label": "Approval", + "args": [ + { + "label": "owner", + "indexed": false, + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "docs": [ + "" + ] + }, + { + "label": "spender", + "indexed": false, + "type": { + "type": 3, + "displayName": [ + "AccountId" + ] + }, + "docs": [ + "" + ] + }, + { + "label": "value", + "indexed": false, + "type": { + "type": 4, + "displayName": [ + "u128" + ] + }, + "docs": [ + "" + ] + } + ], + "docs": [ + "" + ] + } + ], + "docs": [ + "" + ] + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 1, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 2, + "type": { + "def": { + "array": { + "len": 32, + "type": 0 + } + } + } + }, + { + "id": 3, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "inner", + "type": 2, + "typeName": "FixedArray32" + } + ] + }, + "path": [] + } + } + }, + { + "id": 4, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 5, + "type": { + "def": { + "primitive": "bool" + } + } + } + ] + } +} diff --git a/packages/api-contract/src/test/contracts/user/v3/index.ts b/packages/api-contract/src/test/contracts/user/v3/index.ts new file mode 100644 index 0000000000..0054a6d0ad --- /dev/null +++ b/packages/api-contract/src/test/contracts/user/v3/index.ts @@ -0,0 +1,4 @@ +// Copyright 2017-2022 @polkadot/api-contract authors & contributors +// SPDX-License-Identifier: Apache-2.0 + +export { default as ask } from './ask.json' assert { type: 'json' }; diff --git a/yarn.lock b/yarn.lock index 60006268d4..7a0d6857cd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2057,9 +2057,9 @@ __metadata: languageName: unknown linkType: soft -"@polkadot/dev@npm:^0.67.89": - version: 0.67.89 - resolution: "@polkadot/dev@npm:0.67.89" +"@polkadot/dev@npm:^0.67.90": + version: 0.67.90 + resolution: "@polkadot/dev@npm:0.67.90" dependencies: "@babel/cli": ^7.18.10 "@babel/core": ^7.18.10 @@ -2084,8 +2084,8 @@ __metadata: "@rollup/plugin-json": ^4.1.0 "@rollup/plugin-node-resolve": ^13.3.0 "@rushstack/eslint-patch": ^1.1.4 - "@typescript-eslint/eslint-plugin": 5.32.0 - "@typescript-eslint/parser": 5.32.0 + "@typescript-eslint/eslint-plugin": 5.33.0 + "@typescript-eslint/parser": 5.33.0 "@vue/component-compiler-utils": ^3.3.0 babel-jest: ^28.1.3 babel-plugin-module-extension-resolver: ^1.0.0-rc.2 @@ -2148,7 +2148,7 @@ __metadata: polkadot-exec-rollup: scripts/polkadot-exec-rollup.mjs polkadot-exec-tsc: scripts/polkadot-exec-tsc.mjs polkadot-exec-webpack: scripts/polkadot-exec-webpack.mjs - checksum: dcdb286b5e5ae6fa56760f545f92547a13eaf8745df54e28386efe80b69adc756ca9354a08751069fb75d8d767dfcdd3c2282eacc8a86ebc1722bb8d034e3d92 + checksum: 89360435ac599375bfdc3bfc4a69b523fa01bdf751c309a04dd0bb47423b74e0317b432af7e2d4b82c377e6bd8849545f5823270a5302c1b68f65ce490a60822 languageName: node linkType: hard @@ -2925,13 +2925,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/eslint-plugin@npm:5.32.0" +"@typescript-eslint/eslint-plugin@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/eslint-plugin@npm:5.33.0" dependencies: - "@typescript-eslint/scope-manager": 5.32.0 - "@typescript-eslint/type-utils": 5.32.0 - "@typescript-eslint/utils": 5.32.0 + "@typescript-eslint/scope-manager": 5.33.0 + "@typescript-eslint/type-utils": 5.33.0 + "@typescript-eslint/utils": 5.33.0 debug: ^4.3.4 functional-red-black-tree: ^1.0.1 ignore: ^5.2.0 @@ -2944,42 +2944,42 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 9785c34d9742b51130237bfe244924ca6dfd529bdcc5932a5cf81558f0235099c963a11125df393037db51ce451f7ab9442aba3c3a8bb2e0607569a0e31480c8 + checksum: d408f3f474b34fefde8ee65d98deb126949fd7d8e211a7f95c5cc2b507dedbf8eb239f3895e0c37aa6338989531e37c5f35c2e0de36a126c52f0846e89605487 languageName: node linkType: hard -"@typescript-eslint/parser@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/parser@npm:5.32.0" +"@typescript-eslint/parser@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/parser@npm:5.33.0" dependencies: - "@typescript-eslint/scope-manager": 5.32.0 - "@typescript-eslint/types": 5.32.0 - "@typescript-eslint/typescript-estree": 5.32.0 + "@typescript-eslint/scope-manager": 5.33.0 + "@typescript-eslint/types": 5.33.0 + "@typescript-eslint/typescript-estree": 5.33.0 debug: ^4.3.4 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 3fcfa183cad125c3198fd63701c6e13dad1cc984d309e8cd40ec9a2eb857902abfd7e9ee3f030b18eb1c18c795a61ea289ef147a7f9dfac38df905e7514316af + checksum: 2617aba987a70ee6b16ecc6afa6d245422df33a9d056018ff2e316159e667a0ab9d9c15fcea95e0ba65832661e71cc2753a221e77f0b0fab278e52c4497b8278 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/scope-manager@npm:5.32.0" +"@typescript-eslint/scope-manager@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/scope-manager@npm:5.33.0" dependencies: - "@typescript-eslint/types": 5.32.0 - "@typescript-eslint/visitor-keys": 5.32.0 - checksum: 69bdeb029f39d1112299dc0cb0ddef30e51bdb782fdb79cc4e72fa448e00d71e39938d3bff3fa4ee43b3416c2e3b4564de2c37252914772b07eeedafb14412d6 + "@typescript-eslint/types": 5.33.0 + "@typescript-eslint/visitor-keys": 5.33.0 + checksum: b2cbea9abd528d01a5acb2d68a2a5be51ec6827760d3869bdd70920cf6c3a4f9f96d87c77177f8313009d9db71253e4a75f8393f38651e2abaf91ef28e60fb9d languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/type-utils@npm:5.32.0" +"@typescript-eslint/type-utils@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/type-utils@npm:5.33.0" dependencies: - "@typescript-eslint/utils": 5.32.0 + "@typescript-eslint/utils": 5.33.0 debug: ^4.3.4 tsutils: ^3.21.0 peerDependencies: @@ -2987,7 +2987,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 4063808ca054789bebc6adb376d15c13e38f8ea14fa2842c38ae616d77fb77681b67a04b77887cf9ceb6f801ab3fc5eddfb6325779ab821404c62f36c56310bb + checksum: a1d1ffb42fe96bfc2339cc2875e218aa82fa9391be04c1a266bb11da1eca6835555687e81cde75477c60e6702049cd4dde7d2638e7e9b9d8cf4b7b2242353a6e languageName: node linkType: hard @@ -2998,19 +2998,19 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/types@npm:5.32.0" - checksum: 6758f54d8d7763893cd7c1753f525ef1777eee8b558bf3d54fd2a2ce691ca0cf813c68a26e4db83a1deae4e4a62b247f1195e15a1f3577f1293849f9e55a232c +"@typescript-eslint/types@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/types@npm:5.33.0" + checksum: 8bbddda84cb3adf5c659b0d42547a2d6ab87f4eea574aca5dd63a3bd85169f32796ecbddad3b27f18a609070f6b1d18a54018d488bad746ae0f6ea5c02206109 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.32.0" +"@typescript-eslint/typescript-estree@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.33.0" dependencies: - "@typescript-eslint/types": 5.32.0 - "@typescript-eslint/visitor-keys": 5.32.0 + "@typescript-eslint/types": 5.33.0 + "@typescript-eslint/visitor-keys": 5.33.0 debug: ^4.3.4 globby: ^11.1.0 is-glob: ^4.0.3 @@ -3019,7 +3019,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 6aee08be5d36603d038fb8340f324f5cb38519150c9b37c012f0c1ff2a4d8cf22fbc6835de31d069949c2b3d8ed3e729076a724ef29db4289d9fe73b97c9d310 + checksum: 26f9005cdfb14654125a33d90d872b926820e560dff8970c4629fd5f6f47ad2a31e4c63161564d21bb42a8fc3ced0033994854ee37336ae07d90ccf6300d702b languageName: node linkType: hard @@ -3041,19 +3041,19 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/utils@npm:5.32.0" +"@typescript-eslint/utils@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/utils@npm:5.33.0" dependencies: "@types/json-schema": ^7.0.9 - "@typescript-eslint/scope-manager": 5.32.0 - "@typescript-eslint/types": 5.32.0 - "@typescript-eslint/typescript-estree": 5.32.0 + "@typescript-eslint/scope-manager": 5.33.0 + "@typescript-eslint/types": 5.33.0 + "@typescript-eslint/typescript-estree": 5.33.0 eslint-scope: ^5.1.1 eslint-utils: ^3.0.0 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: cfd88d93508c8fb0db17d2726691e1383db390357fa0637bd8111558fbe72da5130d995294001d71b1d929d620fbce3f20a70b277a77ca21a4241b3b470dc758 + checksum: 6ce5ee5eabeb6d73538b24e6487f811ecb0ef3467bd366cbd15bf30d904bdedb73fc6f48cf2e2e742dda462b42999ea505e8b59255545825ec9db86f3d423ea7 languageName: node linkType: hard @@ -3067,13 +3067,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:5.32.0": - version: 5.32.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.32.0" +"@typescript-eslint/visitor-keys@npm:5.33.0": + version: 5.33.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.33.0" dependencies: - "@typescript-eslint/types": 5.32.0 + "@typescript-eslint/types": 5.33.0 eslint-visitor-keys: ^3.3.0 - checksum: 1f9b756d648c2346a6e8538ffde729d3d9ce6621fded3d9f15c96aa0ebf8f511daf8232470423fb36359c2113538a4daaf3336181be78a0cfbfd297af91ce9ba + checksum: d7e3653de6bac6841e6fcc54226b93ad6bdca4aa76ebe7d83459c016c3eebcc50d4f65ee713174bc267d765295b642d1927a778c5de707b8389e3fcc052aa4a1 languageName: node linkType: hard @@ -9292,7 +9292,7 @@ resolve@^2.0.0-next.3: "@babel/core": ^7.18.10 "@babel/register": ^7.18.9 "@babel/runtime": ^7.18.9 - "@polkadot/dev": ^0.67.89 + "@polkadot/dev": ^0.67.90 "@polkadot/typegen": "workspace:packages/typegen" "@types/jest": ^28.1.6 copyfiles: ^2.4.1