diff --git a/CHANGELOG.md b/CHANGELOG.md index f10af1124..478c3f689 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # CHANGELOG +## 10.0.2 Jul 10, 2022 + +Changes: + +- Adjust async import in `x-fetch` to be Jest-friendly + + ## 10.0.1 Jul 8, 2022 - **Breaking change** In this major version version previously deprecated function signatures have been removed. If still using the old forms for either `bnToHex`, `bnToU8a`, `formatBalance`, `hexToBn` or `u8aToBn`, please update and only pass through an options object as the second parameter. diff --git a/package.json b/package.json index 1c8f35b55..30a440914 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "workspaces": [ "packages/*" ], diff --git a/packages/hw-ledger-transports/package.json b/packages/hw-ledger-transports/package.json index f8a331331..bfc278008 100644 --- a/packages/hw-ledger-transports/package.json +++ b/packages/hw-ledger-transports/package.json @@ -16,7 +16,7 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", @@ -25,7 +25,7 @@ "@ledgerhq/hw-transport": "^6.27.1", "@ledgerhq/hw-transport-webhid": "^6.27.1", "@ledgerhq/hw-transport-webusb": "^6.27.1", - "@polkadot/util": "10.0.2-1-x" + "@polkadot/util": "10.0.2" }, "optionalDependencies": { "@ledgerhq/hw-transport-node-hid-singleton": "^6.27.2" diff --git a/packages/hw-ledger/package.json b/packages/hw-ledger/package.json index e7709acb6..1f6819041 100644 --- a/packages/hw-ledger/package.json +++ b/packages/hw-ledger/package.json @@ -19,13 +19,13 @@ "./detectPackage.cjs" ], "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6", "@ledgerhq/hw-transport": "^6.27.1", - "@polkadot/hw-ledger-transports": "10.0.2-1-x", - "@polkadot/util": "10.0.2-1-x", + "@polkadot/hw-ledger-transports": "10.0.2", + "@polkadot/util": "10.0.2", "@zondax/ledger-substrate": "^0.32.0" } } diff --git a/packages/keyring/package.json b/packages/keyring/package.json index 5214021fc..26821f729 100644 --- a/packages/keyring/package.json +++ b/packages/keyring/package.json @@ -20,15 +20,15 @@ "./detectPackage.cjs" ], "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/util": "10.0.2-1-x", - "@polkadot/util-crypto": "10.0.2-1-x" + "@polkadot/util": "10.0.2", + "@polkadot/util-crypto": "10.0.2" }, "peerDependencies": { - "@polkadot/util": "10.0.2-1-x", - "@polkadot/util-crypto": "10.0.2-1-x" + "@polkadot/util": "10.0.2", + "@polkadot/util-crypto": "10.0.2" } } diff --git a/packages/networks/package.json b/packages/networks/package.json index 3d235c3b4..a1af92718 100644 --- a/packages/networks/package.json +++ b/packages/networks/package.json @@ -17,15 +17,15 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/util": "10.0.2-1-x", + "@polkadot/util": "10.0.2", "@substrate/ss58-registry": "^1.23.0" }, "devDependencies": { - "@polkadot/hw-ledger": "10.0.2-1-x", - "@polkadot/x-fetch": "10.0.2-1-x" + "@polkadot/hw-ledger": "10.0.2", + "@polkadot/x-fetch": "10.0.2" } } diff --git a/packages/util-crypto/package.json b/packages/util-crypto/package.json index aca3473aa..a3d1a7c37 100644 --- a/packages/util-crypto/package.json +++ b/packages/util-crypto/package.json @@ -22,7 +22,7 @@ "./detectPackage.cjs" ], "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": { "crypto": false, "stream": false @@ -32,11 +32,11 @@ "@babel/runtime": "^7.18.6", "@noble/hashes": "1.1.2", "@noble/secp256k1": "1.6.0", - "@polkadot/networks": "10.0.2-1-x", - "@polkadot/util": "10.0.2-1-x", + "@polkadot/networks": "10.0.2", + "@polkadot/util": "10.0.2", "@polkadot/wasm-crypto": "^6.2.3", - "@polkadot/x-bigint": "10.0.2-1-x", - "@polkadot/x-randomvalues": "10.0.2-1-x", + "@polkadot/x-bigint": "10.0.2", + "@polkadot/x-randomvalues": "10.0.2", "@scure/base": "1.1.1", "ed2curve": "^0.3.0", "tweetnacl": "^1.0.3" @@ -45,6 +45,6 @@ "@types/ed2curve": "^0.2.2" }, "peerDependencies": { - "@polkadot/util": "10.0.2-1-x" + "@polkadot/util": "10.0.2" } } diff --git a/packages/util/package.json b/packages/util/package.json index 108a5a2b9..e811b6f85 100644 --- a/packages/util/package.json +++ b/packages/util/package.json @@ -34,18 +34,18 @@ "./detectPackage.cjs" ], "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-bigint": "10.0.2-1-x", - "@polkadot/x-global": "10.0.2-1-x", - "@polkadot/x-textdecoder": "10.0.2-1-x", - "@polkadot/x-textencoder": "10.0.2-1-x", + "@polkadot/x-bigint": "10.0.2", + "@polkadot/x-global": "10.0.2", + "@polkadot/x-textdecoder": "10.0.2", + "@polkadot/x-textencoder": "10.0.2", "@types/bn.js": "^5.1.0", "bn.js": "^5.2.1" }, "devDependencies": { - "@polkadot/x-randomvalues": "10.0.2-1-x" + "@polkadot/x-randomvalues": "10.0.2" } } diff --git a/packages/x-bigint/package.json b/packages/x-bigint/package.json index d42d01bff..bb569cb91 100644 --- a/packages/x-bigint/package.json +++ b/packages/x-bigint/package.json @@ -20,9 +20,9 @@ "./shim.cjs" ], "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x" + "@polkadot/x-global": "10.0.2" } } diff --git a/packages/x-bundle/package.json b/packages/x-bundle/package.json index bbe660eec..bcf594d26 100644 --- a/packages/x-bundle/package.json +++ b/packages/x-bundle/package.json @@ -17,11 +17,11 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/util": "10.0.2-1-x", + "@polkadot/util": "10.0.2", "buffer-es6": "^4.9.3" } } diff --git a/packages/x-fetch/package.json b/packages/x-fetch/package.json index 45dad0c06..c11c45ada 100644 --- a/packages/x-fetch/package.json +++ b/packages/x-fetch/package.json @@ -17,13 +17,13 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x", + "@polkadot/x-global": "10.0.2", "@types/node-fetch": "^2.6.2", "node-fetch": "^3.2.6" } diff --git a/packages/x-fetch/src/node.ts b/packages/x-fetch/src/node.ts index 97d214d0e..024697a36 100644 --- a/packages/x-fetch/src/node.ts +++ b/packages/x-fetch/src/node.ts @@ -5,17 +5,28 @@ import { extractGlobal } from '@polkadot/x-global'; export { packageInfo } from './packageInfo'; -let resolvedFetch: null | typeof fetch = null; +// This is an ESM module, use the async import(...) syntax to pull it +// in. Logically we would like it in nodeFetch(...) itself, however +// while it is all-ok on Node itself, it does create issues in Jest, +// possibly due to the Jest 28 need for --experimental-vm-modules +const importFetch = import('node-fetch').catch(() => null); + +// keep track of the resolved import value +let resolvedFetch: typeof fetch | null = null; async function nodeFetch (...args: Parameters): Promise { - if (!resolvedFetch) { - // we use the async import here to resolve on-demand - // (this allows us to use the latest ESM version of the package) - const mod = await import('node-fetch'); - - resolvedFetch = mod.default as unknown as typeof fetch; + if (resolvedFetch) { + return resolvedFetch(...args); } + const mod = await importFetch; + + if (!mod || !mod.default) { + throw new Error('Unable to import node-fetch in this environment'); + } + + resolvedFetch = mod.default as unknown as typeof fetch; + return resolvedFetch(...args); } diff --git a/packages/x-global/package.json b/packages/x-global/package.json index c59257788..a83a5947b 100644 --- a/packages/x-global/package.json +++ b/packages/x-global/package.json @@ -17,7 +17,7 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "main": "index.js", "dependencies": { "@babel/runtime": "^7.18.6" diff --git a/packages/x-randomvalues/package.json b/packages/x-randomvalues/package.json index 297d4463d..c624c016d 100644 --- a/packages/x-randomvalues/package.json +++ b/packages/x-randomvalues/package.json @@ -17,13 +17,13 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x" + "@polkadot/x-global": "10.0.2" }, "devDependencies": { "@types/react-native": "^0.69.2" diff --git a/packages/x-textdecoder/package.json b/packages/x-textdecoder/package.json index 0ab5b5bdf..3460f13d1 100644 --- a/packages/x-textdecoder/package.json +++ b/packages/x-textdecoder/package.json @@ -17,12 +17,12 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x" + "@polkadot/x-global": "10.0.2" } } diff --git a/packages/x-textencoder/package.json b/packages/x-textencoder/package.json index b7de8cfb9..fa2a71896 100644 --- a/packages/x-textencoder/package.json +++ b/packages/x-textencoder/package.json @@ -17,12 +17,12 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x" + "@polkadot/x-global": "10.0.2" } } diff --git a/packages/x-ws/package.json b/packages/x-ws/package.json index daa384626..51095b89b 100644 --- a/packages/x-ws/package.json +++ b/packages/x-ws/package.json @@ -17,13 +17,13 @@ }, "sideEffects": false, "type": "module", - "version": "10.0.2-1-x", + "version": "10.0.2", "browser": "browser.js", "main": "node.js", "react-native": "react-native.js", "dependencies": { "@babel/runtime": "^7.18.6", - "@polkadot/x-global": "10.0.2-1-x", + "@polkadot/x-global": "10.0.2", "@types/websocket": "^1.0.5", "websocket": "^1.0.34" } diff --git a/yarn.lock b/yarn.lock index 502cd8260..fdc31bc82 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2140,7 +2140,7 @@ __metadata: languageName: node linkType: hard -"@polkadot/hw-ledger-transports@10.0.2-1-x, @polkadot/hw-ledger-transports@workspace:packages/hw-ledger-transports": +"@polkadot/hw-ledger-transports@10.0.2, @polkadot/hw-ledger-transports@workspace:packages/hw-ledger-transports": version: 0.0.0-use.local resolution: "@polkadot/hw-ledger-transports@workspace:packages/hw-ledger-transports" dependencies: @@ -2149,21 +2149,21 @@ __metadata: "@ledgerhq/hw-transport-node-hid-singleton": ^6.27.2 "@ledgerhq/hw-transport-webhid": ^6.27.1 "@ledgerhq/hw-transport-webusb": ^6.27.1 - "@polkadot/util": 10.0.2-1-x + "@polkadot/util": 10.0.2 dependenciesMeta: "@ledgerhq/hw-transport-node-hid-singleton": optional: true languageName: unknown linkType: soft -"@polkadot/hw-ledger@10.0.2-1-x, @polkadot/hw-ledger@workspace:packages/hw-ledger": +"@polkadot/hw-ledger@10.0.2, @polkadot/hw-ledger@workspace:packages/hw-ledger": version: 0.0.0-use.local resolution: "@polkadot/hw-ledger@workspace:packages/hw-ledger" dependencies: "@babel/runtime": ^7.18.6 "@ledgerhq/hw-transport": ^6.27.1 - "@polkadot/hw-ledger-transports": 10.0.2-1-x - "@polkadot/util": 10.0.2-1-x + "@polkadot/hw-ledger-transports": 10.0.2 + "@polkadot/util": 10.0.2 "@zondax/ledger-substrate": ^0.32.0 languageName: unknown linkType: soft @@ -2173,57 +2173,57 @@ __metadata: resolution: "@polkadot/keyring@workspace:packages/keyring" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/util": 10.0.2-1-x - "@polkadot/util-crypto": 10.0.2-1-x + "@polkadot/util": 10.0.2 + "@polkadot/util-crypto": 10.0.2 peerDependencies: - "@polkadot/util": 10.0.2-1-x - "@polkadot/util-crypto": 10.0.2-1-x + "@polkadot/util": 10.0.2 + "@polkadot/util-crypto": 10.0.2 languageName: unknown linkType: soft -"@polkadot/networks@10.0.2-1-x, @polkadot/networks@workspace:packages/networks": +"@polkadot/networks@10.0.2, @polkadot/networks@workspace:packages/networks": version: 0.0.0-use.local resolution: "@polkadot/networks@workspace:packages/networks" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/hw-ledger": 10.0.2-1-x - "@polkadot/util": 10.0.2-1-x - "@polkadot/x-fetch": 10.0.2-1-x + "@polkadot/hw-ledger": 10.0.2 + "@polkadot/util": 10.0.2 + "@polkadot/x-fetch": 10.0.2 "@substrate/ss58-registry": ^1.23.0 languageName: unknown linkType: soft -"@polkadot/util-crypto@10.0.2-1-x, @polkadot/util-crypto@workspace:packages/util-crypto": +"@polkadot/util-crypto@10.0.2, @polkadot/util-crypto@workspace:packages/util-crypto": version: 0.0.0-use.local resolution: "@polkadot/util-crypto@workspace:packages/util-crypto" dependencies: "@babel/runtime": ^7.18.6 "@noble/hashes": 1.1.2 "@noble/secp256k1": 1.6.0 - "@polkadot/networks": 10.0.2-1-x - "@polkadot/util": 10.0.2-1-x + "@polkadot/networks": 10.0.2 + "@polkadot/util": 10.0.2 "@polkadot/wasm-crypto": ^6.2.3 - "@polkadot/x-bigint": 10.0.2-1-x - "@polkadot/x-randomvalues": 10.0.2-1-x + "@polkadot/x-bigint": 10.0.2 + "@polkadot/x-randomvalues": 10.0.2 "@scure/base": 1.1.1 "@types/ed2curve": ^0.2.2 ed2curve: ^0.3.0 tweetnacl: ^1.0.3 peerDependencies: - "@polkadot/util": 10.0.2-1-x + "@polkadot/util": 10.0.2 languageName: unknown linkType: soft -"@polkadot/util@10.0.2-1-x, @polkadot/util@workspace:packages/util": +"@polkadot/util@10.0.2, @polkadot/util@workspace:packages/util": version: 0.0.0-use.local resolution: "@polkadot/util@workspace:packages/util" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-bigint": 10.0.2-1-x - "@polkadot/x-global": 10.0.2-1-x - "@polkadot/x-randomvalues": 10.0.2-1-x - "@polkadot/x-textdecoder": 10.0.2-1-x - "@polkadot/x-textencoder": 10.0.2-1-x + "@polkadot/x-bigint": 10.0.2 + "@polkadot/x-global": 10.0.2 + "@polkadot/x-randomvalues": 10.0.2 + "@polkadot/x-textdecoder": 10.0.2 + "@polkadot/x-textencoder": 10.0.2 "@types/bn.js": ^5.1.0 bn.js: ^5.2.1 languageName: unknown @@ -2307,12 +2307,12 @@ __metadata: languageName: node linkType: hard -"@polkadot/x-bigint@10.0.2-1-x, @polkadot/x-bigint@workspace:packages/x-bigint": +"@polkadot/x-bigint@10.0.2, @polkadot/x-bigint@workspace:packages/x-bigint": version: 0.0.0-use.local resolution: "@polkadot/x-bigint@workspace:packages/x-bigint" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 languageName: unknown linkType: soft @@ -2321,23 +2321,23 @@ __metadata: resolution: "@polkadot/x-bundle@workspace:packages/x-bundle" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/util": 10.0.2-1-x + "@polkadot/util": 10.0.2 buffer-es6: ^4.9.3 languageName: unknown linkType: soft -"@polkadot/x-fetch@10.0.2-1-x, @polkadot/x-fetch@workspace:packages/x-fetch": +"@polkadot/x-fetch@10.0.2, @polkadot/x-fetch@workspace:packages/x-fetch": version: 0.0.0-use.local resolution: "@polkadot/x-fetch@workspace:packages/x-fetch" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 "@types/node-fetch": ^2.6.2 node-fetch: ^3.2.6 languageName: unknown linkType: soft -"@polkadot/x-global@10.0.2-1-x, @polkadot/x-global@workspace:packages/x-global": +"@polkadot/x-global@10.0.2, @polkadot/x-global@workspace:packages/x-global": version: 0.0.0-use.local resolution: "@polkadot/x-global@workspace:packages/x-global" dependencies: @@ -2345,31 +2345,31 @@ __metadata: languageName: unknown linkType: soft -"@polkadot/x-randomvalues@10.0.2-1-x, @polkadot/x-randomvalues@workspace:packages/x-randomvalues": +"@polkadot/x-randomvalues@10.0.2, @polkadot/x-randomvalues@workspace:packages/x-randomvalues": version: 0.0.0-use.local resolution: "@polkadot/x-randomvalues@workspace:packages/x-randomvalues" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 "@types/react-native": ^0.69.2 languageName: unknown linkType: soft -"@polkadot/x-textdecoder@10.0.2-1-x, @polkadot/x-textdecoder@workspace:packages/x-textdecoder": +"@polkadot/x-textdecoder@10.0.2, @polkadot/x-textdecoder@workspace:packages/x-textdecoder": version: 0.0.0-use.local resolution: "@polkadot/x-textdecoder@workspace:packages/x-textdecoder" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 languageName: unknown linkType: soft -"@polkadot/x-textencoder@10.0.2-1-x, @polkadot/x-textencoder@workspace:packages/x-textencoder": +"@polkadot/x-textencoder@10.0.2, @polkadot/x-textencoder@workspace:packages/x-textencoder": version: 0.0.0-use.local resolution: "@polkadot/x-textencoder@workspace:packages/x-textencoder" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 languageName: unknown linkType: soft @@ -2378,7 +2378,7 @@ __metadata: resolution: "@polkadot/x-ws@workspace:packages/x-ws" dependencies: "@babel/runtime": ^7.18.6 - "@polkadot/x-global": 10.0.2-1-x + "@polkadot/x-global": 10.0.2 "@types/websocket": ^1.0.5 websocket: ^1.0.34 languageName: unknown