diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index b0fa00af..dc7f4705 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -43,7 +43,7 @@ jobs: uses: fluencelabs/aqua/.github/workflows/tests.yml@main with: js-client-snapshots: "${{ needs.js-client.outputs.js-client-snapshots }}" - nox-image: "docker.fluence.dev/nox:feat-VM-407-msgpack-particle" + nox-image: "docker.fluence.dev/nox:renovate-avm_4905_1" flox: needs: - js-client @@ -51,4 +51,4 @@ jobs: uses: fluencelabs/flox/.github/workflows/tests.yml@main with: js-client-snapshots: "${{ needs.js-client.outputs.js-client-snapshots }}" - nox-image: "docker.fluence.dev/nox:feat-VM-407-msgpack-particle" \ No newline at end of file + nox-image: "docker.fluence.dev/nox:renovate-avm_4905_1" \ No newline at end of file diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 68bda196..69395c41 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -28,4 +28,4 @@ jobs: uses: ./.github/workflows/tests.yml with: ref: ${{ github.ref }} - nox-image: "docker.fluence.dev/nox:feat-VM-407-msgpack-particle" + nox-image: "docker.fluence.dev/nox:renovate-avm_4905_1" diff --git a/packages/core/interfaces/package.json b/packages/core/interfaces/package.json index 050a6d2d..c46491bc 100644 --- a/packages/core/interfaces/package.json +++ b/packages/core/interfaces/package.json @@ -49,8 +49,6 @@ "license": "Apache-2.0", "dependencies": {}, "devDependencies": { - "@multiformats/multiaddr": "11.3.0", - "@fluencelabs/avm": "0.59.0", "hotscript": "1.0.13" } } diff --git a/packages/core/interfaces/src/future.ts b/packages/core/interfaces/src/future.ts index 0cb12aab..59cd3de0 100644 --- a/packages/core/interfaces/src/future.ts +++ b/packages/core/interfaces/src/future.ts @@ -14,6 +14,8 @@ * limitations under the License. */ +import { Call, Pipe, Objects, Tuples, Unions, Fn } from "hotscript"; + import { ArrayType, ArrowType, @@ -25,8 +27,7 @@ import { StructType, TopType, UnlabeledProductType, -} from "@fluencelabs/interfaces"; -import { Call, Pipe, Objects, Tuples, Unions, Fn } from "hotscript"; +} from "./compilerSupport/aquaTypeDefinitions.js"; // Type definitions for inferring ts types from air json definition // In the future we may remove string type declaration and move to type inference. diff --git a/packages/core/interfaces/src/utils.ts b/packages/core/interfaces/src/utils.ts deleted file mode 100644 index 06015c7f..00000000 --- a/packages/core/interfaces/src/utils.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Copyright 2023 Fluence Labs Limited - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -export type InterfaceToType = { - [K in keyof T]: T[K]; -}; - -export type MaybePromise = T | Promise; diff --git a/packages/core/js-client-isomorphic/package.json b/packages/core/js-client-isomorphic/package.json index 3938a9c9..00b7f162 100644 --- a/packages/core/js-client-isomorphic/package.json +++ b/packages/core/js-client-isomorphic/package.json @@ -22,8 +22,8 @@ } }, "dependencies": { - "@fluencelabs/avm": "0.59.0", - "@fluencelabs/marine-js": "0.8.0", + "@fluencelabs/avm": "0.62.0", + "@fluencelabs/marine-js": "0.13.0", "@fluencelabs/marine-worker": "0.5.1", "@fluencelabs/threads": "^2.0.0" }, diff --git a/packages/core/js-client/package.json b/packages/core/js-client/package.json index 239fd22a..ed8ce0d7 100644 --- a/packages/core/js-client/package.json +++ b/packages/core/js-client/package.json @@ -32,7 +32,7 @@ "dependencies": { "@chainsafe/libp2p-noise": "14.0.0", "@chainsafe/libp2p-yamux": "6.0.1", - "@fluencelabs/avm": "0.59.0", + "@fluencelabs/avm": "0.62.0", "@fluencelabs/interfaces": "workspace:*", "@fluencelabs/js-client-isomorphic": "workspace:*", "@fluencelabs/marine-worker": "0.5.1", diff --git a/packages/core/js-client/src/jsPeer/FluencePeer.ts b/packages/core/js-client/src/jsPeer/FluencePeer.ts index c2402193..0444b5d8 100644 --- a/packages/core/js-client/src/jsPeer/FluencePeer.ts +++ b/packages/core/js-client/src/jsPeer/FluencePeer.ts @@ -515,6 +515,15 @@ export abstract class FluencePeer { item.callResults, ); + const [, , , forthParam] = args; + + if ( + typeof forthParam === "object" && + "hard_limit_enabled" in forthParam + ) { + forthParam["hard_limit_enabled"] = false; + } + let avmCallResult: InterpreterResult | Error; try { diff --git a/packages/core/js-client/src/services/securityGuard.ts b/packages/core/js-client/src/services/securityGuard.ts index 443753ff..da32486e 100644 --- a/packages/core/js-client/src/services/securityGuard.ts +++ b/packages/core/js-client/src/services/securityGuard.ts @@ -55,7 +55,7 @@ export const allowServiceFn = ( */ export const allowExactJsonPath = (jsonPath: string): SecurityGuard => { return allowTetraplet((t) => { - return t.json_path === jsonPath; + return t.lens === jsonPath; }); }; diff --git a/packages/core/js-client/src/util/testUtils.ts b/packages/core/js-client/src/util/testUtils.ts index 8ba6a3de..11be2584 100644 --- a/packages/core/js-client/src/util/testUtils.ts +++ b/packages/core/js-client/src/util/testUtils.ts @@ -221,7 +221,7 @@ export const makeTestTetraplet = ( peer_pk: initPeerId, function_name: fnName, service_id: serviceId, - json_path: "", + lens: "", }, ], ], diff --git a/packages/core/marine-worker/package.json b/packages/core/marine-worker/package.json index d949ee14..a0fc611c 100644 --- a/packages/core/marine-worker/package.json +++ b/packages/core/marine-worker/package.json @@ -24,7 +24,7 @@ "vitest": "0.34.6" }, "dependencies": { - "@fluencelabs/marine-js": "0.8.0", + "@fluencelabs/marine-js": "0.13.0", "observable-fns": "0.6.1", "@fluencelabs/threads": "^2.0.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bea1ec93..0f5ded55 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -196,12 +196,6 @@ importers: packages/core/interfaces: devDependencies: - '@fluencelabs/avm': - specifier: 0.59.0 - version: 0.59.0 - '@multiformats/multiaddr': - specifier: 11.3.0 - version: 11.3.0 hotscript: specifier: 1.0.13 version: 1.0.13 @@ -215,8 +209,8 @@ importers: specifier: 6.0.1 version: 6.0.1 '@fluencelabs/avm': - specifier: 0.59.0 - version: 0.59.0 + specifier: 0.62.0 + version: 0.62.0 '@fluencelabs/interfaces': specifier: workspace:* version: link:../interfaces @@ -333,11 +327,11 @@ importers: packages/core/js-client-isomorphic: dependencies: '@fluencelabs/avm': - specifier: 0.59.0 - version: 0.59.0 + specifier: 0.62.0 + version: 0.62.0 '@fluencelabs/marine-js': - specifier: 0.8.0 - version: 0.8.0 + specifier: 0.13.0 + version: 0.13.0 '@fluencelabs/marine-worker': specifier: 0.5.1 version: link:../marine-worker @@ -348,8 +342,8 @@ importers: packages/core/marine-worker: dependencies: '@fluencelabs/marine-js': - specifier: 0.8.0 - version: 0.8.0 + specifier: 0.13.0 + version: 0.13.0 '@fluencelabs/threads': specifier: ^2.0.0 version: 2.0.0 @@ -1878,6 +1872,7 @@ packages: /@chainsafe/is-ip@2.0.2: resolution: {integrity: sha512-ndGqEMG1W5WkGagaqOZHpPU172AGdxr+LD15sv3WIUvT5oCFUrG1Y0CW/v2Egwj4JXEvSibaIIIqImsm98y1nA==} + dev: false /@chainsafe/libp2p-noise@14.0.0: resolution: {integrity: sha512-/E7QnSL24APpfXTj/YRS/EVRvTATg09+AwqEUGs+OeLFcO/DwPal3W6pj7c4eyJFSgxnegbpbgiH8EBvTZ4Iwg==} @@ -2724,11 +2719,6 @@ packages: resolution: {integrity: sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - /@fastify/busboy@2.1.0: - resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==} - engines: {node: '>=14'} - dev: true - /@fluencelabs/aqua-api@0.13.0: resolution: {integrity: sha512-AY6pXoK6xsFfgQHxhv6Lj+uPZKqiL3qPc2EVIZcl1RFX0Q+S0o1SmFlAVX2PrdA+31gbk9aAOtTXt+40GadooA==} dev: true @@ -2749,14 +2739,15 @@ packages: resolution: {integrity: sha512-+JVbWmHeGB+X/BSqmk6/B0gwWJ4bEAxkepVTN8l0mVrJ5zRRmYaCKVplWy6Z3W012m3VVK3A1o3rm/fgfVrQkw==} dev: true - /@fluencelabs/avm@0.59.0: - resolution: {integrity: sha512-dm6CMCAq5HLEInbYICd17PlhDiKR5kxVFL4v4O0BfQhKskSA4riC+E/6pcQqj8XK7I3bKkFZCoY4bq1q6LDarw==} + /@fluencelabs/avm@0.62.0: + resolution: {integrity: sha512-6jV8Ix967VG7A8fhc0jP+nMT6heR9wQ8RpPyFzeorHZmILBszGwb/j02PW6WNA0E3bsAGZYyG5N0NanG9pH5tQ==} dependencies: msgpack-lite: 0.1.26 multicodec: 3.2.1 + dev: false - /@fluencelabs/marine-js@0.8.0: - resolution: {integrity: sha512-exxp0T0Dk69dxnbpAiVc/qp66s8Jq/P71TRB9aeQZLZy3EQtVAMCBJvwQY8LzVVlYEyVjmqQkFG/N0rAeYU1vg==} + /@fluencelabs/marine-js@0.13.0: + resolution: {integrity: sha512-/qGc6FkLAwgf4U1P8eSb3ECY6cNm77FjfGokva+Pme4VB9EAKDdWxpY/F+AcdUyJ7XUgl/I4eMebTDGpMto5bQ==} dependencies: '@wasmer/wasi': 0.12.0 '@wasmer/wasmfs': 0.12.0 @@ -3377,20 +3368,6 @@ packages: - supports-color dev: false - /@multiformats/multiaddr@11.3.0: - resolution: {integrity: sha512-Inrmp986nHe92pgYyOWNVnB8QDmYe5EhR/7TStc46O4YEm87pbc1i4DWiTlEJ6tOpL8V6IBH5ol8BZsIaN+Tww==} - engines: {node: '>=16.0.0', npm: '>=7.0.0'} - dependencies: - '@chainsafe/is-ip': 2.0.2 - dns-over-http-resolver: 2.1.3 - err-code: 3.0.1 - multiformats: 11.0.2 - uint8arrays: 4.0.10 - varint: 6.0.0 - transitivePeerDependencies: - - supports-color - dev: true - /@multiformats/multiaddr@12.1.12: resolution: {integrity: sha512-hrY4uN/oeYhn410jBSpVXn37eenn4djKOj6Dh20Yh4xzGgqmS6u+/X08zQfHgWNjk7NJejPUcRfHEfs8e/MOcw==} dependencies: @@ -6842,17 +6819,6 @@ packages: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} dev: false - /dns-over-http-resolver@2.1.3: - resolution: {integrity: sha512-zjRYFhq+CsxPAouQWzOsxNMvEN+SHisjzhX8EMxd2Y0EG3thvn6wXQgMJLnTDImkhe4jhLbOQpXtL10nALBOSA==} - dependencies: - debug: 4.3.4 - native-fetch: 4.0.2(undici@5.28.2) - receptacle: 1.3.2 - undici: 5.28.2 - transitivePeerDependencies: - - supports-color - dev: true - /dns-over-http-resolver@3.0.0: resolution: {integrity: sha512-5+BI+B7n8LKhNaEZBYErr+CBd9t5nYtjunByLhrLGtZ+i3TRgiU8yE87pCjEBu2KOwNsD9ljpSXEbZ4S8xih5g==} dependencies: @@ -7065,6 +7031,7 @@ packages: /err-code@3.0.1: resolution: {integrity: sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==} + dev: false /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} @@ -7793,6 +7760,7 @@ packages: /event-lite@0.1.3: resolution: {integrity: sha512-8qz9nOz5VeD2z96elrEKD2U433+L3DWdUdDkOINLGOJvx1GsMBbMn0aCeu28y8/e85A6mCigBiFlYMnTBEGlSw==} + dev: false /eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} @@ -8771,12 +8739,13 @@ packages: /int64-buffer@0.1.10: resolution: {integrity: sha512-v7cSY1J8ydZ0GyjUHqF+1bshJ6cnEVLo9EnjB8p+4HDRPZc9N5jjmvUV7NvEsqQOKyH0pmIBFWXVQbiS0+OBbA==} + dev: false /int64-buffer@1.0.1: resolution: {integrity: sha512-+3azY4pXrjAupJHU1V9uGERWlhoqNswJNji6aD/02xac7oxol508AsMC5lxKhEqyZeDFy3enq5OGWXF4u75hiw==} engines: {node: '>= 4.5.0'} dev: false - + /interface-datastore@8.2.10: resolution: {integrity: sha512-D8RuxMdjOPB+j6WMDJ+I2aXTDzUT6DIVjgzo1E+ODL7w8WrSFl9FXD2SYmgj6vVzdb7Kb5qmAI9pEnDZJz7ifg==} dependencies: @@ -9059,6 +9028,7 @@ packages: /isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + dev: false /isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} @@ -10556,6 +10526,7 @@ packages: ieee754: 1.2.1 int64-buffer: 0.1.10 isarray: 1.0.0 + dev: false /multicast-dns@7.2.5: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} @@ -10571,20 +10542,17 @@ packages: dependencies: uint8arrays: 3.1.1 varint: 6.0.0 + dev: false /multiformats@11.0.1: resolution: {integrity: sha512-atWruyH34YiknSdL5yeIir00EDlJRpHzELYQxG7Iy29eCyL+VrZHpPrX5yqlik3jnuqpLpRKVZ0SGVb9UzKaSA==} engines: {node: '>=16.0.0', npm: '>=7.0.0'} dev: false - /multiformats@11.0.2: - resolution: {integrity: sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==} - engines: {node: '>=16.0.0', npm: '>=7.0.0'} - dev: true - /multiformats@12.1.3: resolution: {integrity: sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw==} engines: {node: '>=16.0.0', npm: '>=7.0.0'} + dev: false /multiformats@13.0.1: resolution: {integrity: sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA==} @@ -10592,6 +10560,7 @@ packages: /multiformats@9.9.0: resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==} + dev: false /mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} @@ -10606,14 +10575,6 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - /native-fetch@4.0.2(undici@5.28.2): - resolution: {integrity: sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg==} - peerDependencies: - undici: '*' - dependencies: - undici: 5.28.2 - dev: true - /natural-compare-lite@1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} dev: false @@ -12652,6 +12613,7 @@ packages: resolution: {integrity: sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==} dependencies: ms: 2.1.3 + dev: false /recursive-readdir@2.2.3: resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} @@ -14170,11 +14132,13 @@ packages: resolution: {integrity: sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==} dependencies: multiformats: 9.9.0 + dev: false /uint8arrays@4.0.10: resolution: {integrity: sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA==} dependencies: multiformats: 12.1.3 + dev: false /uint8arrays@4.0.3: resolution: {integrity: sha512-b+aKlI2oTnxnfeSQWV1sMacqSNxqhtXySaH6bflvONGxF8V/fT3ZlYH7z2qgGfydsvpVo4JUgM/Ylyfl2YouCg==} @@ -14212,13 +14176,6 @@ packages: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} dev: true - /undici@5.28.2: - resolution: {integrity: sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==} - engines: {node: '>=14.0'} - dependencies: - '@fastify/busboy': 2.1.0 - dev: true - /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -14392,6 +14349,7 @@ packages: /varint@6.0.0: resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} + dev: false /vary@1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}