diff --git a/CHANGELOG.md b/CHANGELOG.md index f0b639e21..4e8822ff0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - External receivers are enabled for single file compilation: PR [#495](https://github.com/tact-lang/tact/pull/495) - `[DEBUG]` prefix was removed from debug prints because a similar prefix was already present: PR [#506](https://github.com/tact-lang/tact/pull/506) - File paths in debug prints always use POSIX file paths (even on Windows): PR [#523](https://github.com/tact-lang/tact/pull/523) +- The IPFS ABI and supported interfaces getters are not generated by default; to generate those, set to `true` the two newly introduced per-project options in `tact.config.json`: `ipfsAbiGetter` and `interfacesGetter`: PR [#534](https://github.com/tact-lang/tact/pull/534) ### Fixed diff --git a/cspell.json b/cspell.json index bb280eeb5..1837209a2 100644 --- a/cspell.json +++ b/cspell.json @@ -81,23 +81,15 @@ "*.boc", "*.fif", "**/*/output", + "*.spec.ts.snap", "node_modules", "dist", - "examples/__snapshots__/multisig-3.spec.ts.snap", "func", "grammar/sample.json", "src/generator/writers/writeStdlib.ts", - "src/generator/writers/__snapshots__/writeSerialization.spec.ts.snap", "src/grammar/grammar.ohm-bundle.d.ts", "src/imports/stdlib.ts", "/src/test/compilation-failed/const-eval-failed.spec.ts", - "src/test/e2e-emulated/__snapshots__/constants.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/deep.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/implicit-init.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/masterchain.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/sample-jetton.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/try-catch.spec.ts.snap", - "src/test/e2e-emulated/__snapshots__/initof.spec.ts.snap", "src/test/e2e-emulated/address.spec.ts", "src/test/e2e-emulated/intrinsics.spec.ts", "src/test/e2e-emulated/optionals.spec.ts", diff --git a/examples/__snapshots__/increment.spec.ts.snap b/examples/__snapshots__/increment.spec.ts.snap index 6ec88e61b..1bbf4e4ab 100644 --- a/examples/__snapshots__/increment.spec.ts.snap +++ b/examples/__snapshots__/increment.spec.ts.snap @@ -20,7 +20,7 @@ exports[`increment should deploy 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQD6nAKeXIDwsXvmoLzvgplYcBDQIev4lyf1hznCywYBtZwE", + "to": "kQCFVwtFcoSZ-muVDfXKSpI0fzDrWMuzTgXqo4_QDKKycmXS", "type": "internal", "value": "10", }, @@ -41,7 +41,7 @@ exports[`increment should deploy 1`] = ` }, }, "bounce": false, - "from": "kQD6nAKeXIDwsXvmoLzvgplYcBDQIev4lyf1hznCywYBtZwE", + "from": "kQCFVwtFcoSZ-muVDfXKSpI0fzDrWMuzTgXqo4_QDKKycmXS", "to": "@treasure(treasure)", "type": "internal", "value": "9.990313", @@ -71,7 +71,7 @@ exports[`increment should deploy 2`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQD6nAKeXIDwsXvmoLzvgplYcBDQIev4lyf1hznCywYBtZwE", + "to": "kQCFVwtFcoSZ-muVDfXKSpI0fzDrWMuzTgXqo4_QDKKycmXS", "type": "internal", "value": "10", }, diff --git a/examples/__snapshots__/multisig-3.spec.ts.snap b/examples/__snapshots__/multisig-3.spec.ts.snap index 834a9c717..7bfdb84dc 100644 --- a/examples/__snapshots__/multisig-3.spec.ts.snap +++ b/examples/__snapshots__/multisig-3.spec.ts.snap @@ -17,7 +17,7 @@ exports[`multisig-3 should deploy 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQBXbQ5TLfxfUX18NuZ6xVRfHett-T_4o8LEea5wStaBGa9n", + "to": "kQCM9SxGev2rN3tzzK8TMNBB0Rhbr-1wc9DKPJoJUzSGM3jm", "type": "internal", "value": "10", }, diff --git a/examples/__snapshots__/wallet.spec.ts.snap b/examples/__snapshots__/wallet.spec.ts.snap index 53e51a905..89b3136db 100644 --- a/examples/__snapshots__/wallet.spec.ts.snap +++ b/examples/__snapshots__/wallet.spec.ts.snap @@ -17,7 +17,7 @@ exports[`wallet should deploy 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCR5iC3JwCwj6f0xBFwvLeYS8sZvKRQbtXJRpajfqVarbq6", + "to": "kQBkJMYSKVKU-3Ow5coQiKI0gKV--vUYHsJC1g_RbzJk2MF3", "type": "internal", "value": "10", }, @@ -33,7 +33,7 @@ exports[`wallet should deploy 1`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000006", + "amount": "0.000000005", }, { "$type": "received", @@ -45,7 +45,7 @@ exports[`wallet should deploy 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCR5iC3JwCwj6f0xBFwvLeYS8sZvKRQbtXJRpajfqVarbq6", + "to": "kQBkJMYSKVKU-3Ow5coQiKI0gKV--vUYHsJC1g_RbzJk2MF3", "type": "internal", "value": "1", }, @@ -62,7 +62,7 @@ exports[`wallet should deploy 1`] = ` "type": "empty", }, "bounce": true, - "from": "kQCR5iC3JwCwj6f0xBFwvLeYS8sZvKRQbtXJRpajfqVarbq6", + "from": "kQBkJMYSKVKU-3Ow5coQiKI0gKV--vUYHsJC1g_RbzJk2MF3", "to": "@treasure(treasure)", "type": "internal", "value": "10", @@ -81,7 +81,7 @@ exports[`wallet should deploy 2`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000006", + "amount": "0.000000005", }, { "$type": "received", @@ -92,7 +92,7 @@ exports[`wallet should deploy 2`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCR5iC3JwCwj6f0xBFwvLeYS8sZvKRQbtXJRpajfqVarbq6", + "to": "kQBkJMYSKVKU-3Ow5coQiKI0gKV--vUYHsJC1g_RbzJk2MF3", "type": "internal", "value": "1", }, @@ -113,7 +113,7 @@ exports[`wallet should deploy 3`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000006", + "amount": "0.000000005", }, { "$type": "received", @@ -123,7 +123,7 @@ exports[`wallet should deploy 3`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCR5iC3JwCwj6f0xBFwvLeYS8sZvKRQbtXJRpajfqVarbq6", + "to": "kQBkJMYSKVKU-3Ow5coQiKI0gKV--vUYHsJC1g_RbzJk2MF3", "type": "internal", "value": "1", }, diff --git a/schemas/configSchema.json b/schemas/configSchema.json index 098eb89c3..1245a24de 100644 --- a/schemas/configSchema.json +++ b/schemas/configSchema.json @@ -46,6 +46,16 @@ "default": false, "description": "False by default. If set to true, enables support of external message receivers.\n\nRead more about external message receivers: https://docs.tact-lang.org/book/external." }, + "ipfsAbiGetter": { + "type": "boolean", + "default": false, + "description": "False by default. If set to true, enables generation of a getter with IPFS links describing the contract's ABI.\n\nRead more about IPFS ABI links: https://docs.tact-lang.org/ref/evolution/OTP-003." + }, + "interfacesGetter": { + "type": "boolean", + "default": false, + "description": "False by default. If set to true, enables generation of a getter the information on the interfaces provided by the contract.\n\nRead more about supported interfaces: https://docs.tact-lang.org/ref/evolution/OTP-001." + }, "experimental": { "type": "object", "description": "Experimental options that might be removed in the future. Use with caution!", diff --git a/src/benchmarks/benchmarks.spec.ts b/src/benchmarks/benchmarks.spec.ts index 97ad42aae..d7da1d213 100644 --- a/src/benchmarks/benchmarks.spec.ts +++ b/src/benchmarks/benchmarks.spec.ts @@ -31,7 +31,7 @@ describe("benchmarks", () => { ); expect(gasUsed).toMatchInlineSnapshot(`3648n`); expect(functions.init!.code.toBoc().length).toMatchInlineSnapshot( - `429`, + `281`, ); }); it("benchmark functions(inline)", async () => { @@ -61,7 +61,7 @@ describe("benchmarks", () => { ); expect(gasUsed).toMatchInlineSnapshot(`3517n`); expect(functions.init!.code.toBoc().length).toMatchInlineSnapshot( - `422`, + `274`, ); }); }); diff --git a/src/config/features.ts b/src/config/features.ts index 8b615a173..419728479 100644 --- a/src/config/features.ts +++ b/src/config/features.ts @@ -18,6 +18,14 @@ export function enabledExternals(ctx: CompilerContext) { return featureEnabled(ctx, "external"); } +export function enabledIpfsAbiGetter(ctx: CompilerContext) { + return featureEnabled(ctx, "ipfsAbiGetter"); +} + +export function enabledInterfacesGetter(ctx: CompilerContext) { + return featureEnabled(ctx, "interfacesGetter"); +} + export function featureEnabled(ctx: CompilerContext, key: string) { return featureStore.get(ctx, key) === true; } diff --git a/src/config/parseConfig.ts b/src/config/parseConfig.ts index 6693c90bf..90279528a 100644 --- a/src/config/parseConfig.ts +++ b/src/config/parseConfig.ts @@ -5,6 +5,8 @@ const optionsSchema = z debug: z.boolean().optional(), masterchain: z.boolean().optional(), external: z.boolean().optional(), + ipfsAbiGetter: z.boolean().optional(), + interfacesGetter: z.boolean().optional(), experimental: z .object({ inline: z.boolean().optional(), diff --git a/src/generator/writers/writeContract.ts b/src/generator/writers/writeContract.ts index e45cb0722..e618dc0c3 100644 --- a/src/generator/writers/writeContract.ts +++ b/src/generator/writers/writeContract.ts @@ -1,5 +1,10 @@ import { contractErrors } from "../../abi/errors"; -import { enabledInline, enabledMasterchain } from "../../config/features"; +import { + enabledInline, + enabledInterfacesGetter, + enabledIpfsAbiGetter, + enabledMasterchain, +} from "../../config/features"; import { ItemOrigin } from "../../grammar/grammar"; import { InitDescription, TypeDescription } from "../../types/types"; import { WriterContext } from "../Writer"; @@ -248,15 +253,19 @@ export function writeMainContract( } // Interfaces - writeInterfaces(type, ctx); + if (enabledInterfacesGetter(ctx.ctx)) { + writeInterfaces(type, ctx); + } // ABI - ctx.append(`_ get_abi_ipfs() method_id {`); - ctx.inIndent(() => { - ctx.append(`return "${abiLink}";`); - }); - ctx.append(`}`); - ctx.append(); + if (enabledIpfsAbiGetter(ctx.ctx)) { + ctx.append(`_ get_abi_ipfs() method_id {`); + ctx.inIndent(() => { + ctx.append(`return "${abiLink}";`); + }); + ctx.append(`}`); + ctx.append(); + } // Deployed ctx.append(`_ lazy_deployment_completed() method_id {`); diff --git a/src/node.ts b/src/node.ts index 6ef82d510..170330913 100644 --- a/src/node.ts +++ b/src/node.ts @@ -22,7 +22,12 @@ function configForSingleFile(fileName: string): ConfigWithRootPath { name: path.basename(fileName, ".tact"), path: fileName, output: path.dirname(fileName), - options: { debug: true, external: true }, + options: { + debug: true, + external: true, + ipfsAbiGetter: false, + interfacesGetter: false, + }, mode: "full", }, ], diff --git a/src/pipeline/build.ts b/src/pipeline/build.ts index 7b9b9f862..5a215c0a5 100644 --- a/src/pipeline/build.ts +++ b/src/pipeline/build.ts @@ -58,6 +58,14 @@ export async function build(args: { logger.error(" > 👀 Enabling inline"); ctx = featureEnable(ctx, "inline"); } + if (config.options.ipfsAbiGetter) { + logger.error(" > 👀 Enabling IPFS ABI getter"); + ctx = featureEnable(ctx, "ipfsAbiGetter"); + } + if (config.options.interfacesGetter) { + logger.error(" > 👀 Enabling contract interfaces getter"); + ctx = featureEnable(ctx, "interfacesGetter"); + } } // Precompile diff --git a/src/test/e2e-emulated/__snapshots__/constants.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/constants.spec.ts.snap index 34daf9642..54fc43965 100644 --- a/src/test/e2e-emulated/__snapshots__/constants.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/constants.spec.ts.snap @@ -727,7 +727,7 @@ ConstantTester { }, ], }, - "address": kQBgzQPc9i9gX1N6ouvYrrsJXpSfdpVxh6poWq9vD8gjOCN_, + "address": kQC1tr9E8NNDdnsvyLWPBaXhdX_hhp8x5khdXUOtjWo-v04i, "init": { "code": x{FF00F4A413F4BCF2C80B} x{62_} @@ -887,12 +887,10 @@ ConstantTester { x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} x{75} - x{5} - x{BF5DB3CDB3C31} - x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} - x{6D} - x{70} - x{BD182705CEC3D5D2CAE7B1E84EC39D64A851B6682709DD6352D2B647CB322D3AF2DFDF1623982702055C01B80676394CE583AAE4725B2C382701BD49DEF954596F1C753D3DE0559C32682709D974E5AB34ECB733A0E966D9466E8A4} + x{A6EBB679B67863_} + x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} + x{6D} + x{70} x{AA83DB3CDB3C31} x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} @@ -927,12 +925,10 @@ ConstantTester { x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} x{6D} - x{6A_} - x{ACB6CF36CF0C6_} - x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} - x{6D} - x{800B} - x{AEE3435697066733A2F2F516D64786B474251726F77703652356156704659664C4838555657364C7946414B4D7334614C653234413171343882_} + x{A24B6CF36CF0C6_} + x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} + x{6D} + x{800B} x{A767B679B67863_} x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} @@ -1141,12 +1137,10 @@ ConstantTester { x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} x{75} - x{5} - x{BF5DB3CDB3C31} - x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} - x{6D} - x{70} - x{BD182705CEC3D5D2CAE7B1E84EC39D64A851B6682709DD6352D2B647CB322D3AF2DFDF1623982702055C01B80676394CE583AAE4725B2C382701BD49DEF954596F1C753D3DE0559C32682709D974E5AB34ECB733A0E966D9466E8A4} + x{A6EBB679B67863_} + x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} + x{6D} + x{70} x{AA83DB3CDB3C31} x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} @@ -1181,12 +1175,10 @@ ConstantTester { x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} x{6D} - x{6A_} - x{ACB6CF36CF0C6_} - x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} - x{6D} - x{800B} - x{AEE3435697066733A2F2F516D64786B474251726F77703652356156704659664C4838555657364C7946414B4D7334614C653234413171343882_} + x{A24B6CF36CF0C6_} + x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} + x{6D} + x{800B} x{A767B679B67863_} x{ED44D0D401F863D20030916DE0F828D70B0A8309BAF2E089DB3C} x{6D} diff --git a/src/test/e2e-emulated/__snapshots__/deep.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/deep.spec.ts.snap index fb813903b..7ea30741e 100644 --- a/src/test/e2e-emulated/__snapshots__/deep.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/deep.spec.ts.snap @@ -1,10 +1,10 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`random should chain deep sequences correctly 1`] = `"kQDrBeBEkP7QP4-M2-FUSzRoUQK_AxvhYOKkIGSEHqmmjUqW"`; +exports[`random should chain deep sequences correctly 1`] = `"kQBOkY_QdYHnIzZ64gX91WUiNMwl1cG6Bw41Qz1mj5YEzAlg"`; -exports[`random should chain deep sequences correctly 2`] = `"kQD4CriC3RmScKPAhCkviu-kHj1peUa71rGD7gERLfT6h7rP"`; +exports[`random should chain deep sequences correctly 2`] = `"kQDyAlT-y1CSItLqwQpZIugg2FjA44hie8gHmhnhnKg3-XtO"`; -exports[`random should chain deep sequences correctly 3`] = `"kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF"`; +exports[`random should chain deep sequences correctly 3`] = `"kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5"`; exports[`random should chain deep sequences correctly 4`] = ` [ @@ -23,7 +23,7 @@ exports[`random should chain deep sequences correctly 4`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQDrBeBEkP7QP4-M2-FUSzRoUQK_AxvhYOKkIGSEHqmmjUqW", + "to": "kQBOkY_QdYHnIzZ64gX91WUiNMwl1cG6Bw41Qz1mj5YEzAlg", "type": "internal", "value": "10", }, @@ -41,10 +41,10 @@ exports[`random should chain deep sequences correctly 4`] = ` "type": "text", }, "bounce": true, - "from": "kQDrBeBEkP7QP4-M2-FUSzRoUQK_AxvhYOKkIGSEHqmmjUqW", - "to": "kQD4CriC3RmScKPAhCkviu-kHj1peUa71rGD7gERLfT6h7rP", + "from": "kQBOkY_QdYHnIzZ64gX91WUiNMwl1cG6Bw41Qz1mj5YEzAlg", + "to": "kQDyAlT-y1CSItLqwQpZIugg2FjA44hie8gHmhnhnKg3-XtO", "type": "internal", - "value": "9.970524", + "value": "9.972736", }, ], }, @@ -69,10 +69,10 @@ exports[`random should chain deep sequences correctly 5`] = ` "type": "text", }, "bounce": true, - "from": "kQDrBeBEkP7QP4-M2-FUSzRoUQK_AxvhYOKkIGSEHqmmjUqW", - "to": "kQD4CriC3RmScKPAhCkviu-kHj1peUa71rGD7gERLfT6h7rP", + "from": "kQBOkY_QdYHnIzZ64gX91WUiNMwl1cG6Bw41Qz1mj5YEzAlg", + "to": "kQDyAlT-y1CSItLqwQpZIugg2FjA44hie8gHmhnhnKg3-XtO", "type": "internal", - "value": "9.970524", + "value": "9.972736", }, }, { @@ -88,10 +88,10 @@ exports[`random should chain deep sequences correctly 5`] = ` "type": "text", }, "bounce": true, - "from": "kQD4CriC3RmScKPAhCkviu-kHj1peUa71rGD7gERLfT6h7rP", - "to": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", + "from": "kQDyAlT-y1CSItLqwQpZIugg2FjA44hie8gHmhnhnKg3-XtO", + "to": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", "type": "internal", - "value": "9.946637", + "value": "9.950458", }, ], }, @@ -116,10 +116,10 @@ exports[`random should chain deep sequences correctly 6`] = ` "type": "text", }, "bounce": true, - "from": "kQD4CriC3RmScKPAhCkviu-kHj1peUa71rGD7gERLfT6h7rP", - "to": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", + "from": "kQDyAlT-y1CSItLqwQpZIugg2FjA44hie8gHmhnhnKg3-XtO", + "to": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", "type": "internal", - "value": "9.946637", + "value": "9.950458", }, }, { @@ -135,10 +135,10 @@ exports[`random should chain deep sequences correctly 6`] = ` "type": "text", }, "bounce": true, - "from": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", - "to": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", + "from": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", + "to": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", "type": "internal", - "value": "9.92301", + "value": "9.92844", }, ], }, @@ -155,10 +155,10 @@ exports[`random should chain deep sequences correctly 6`] = ` "type": "text", }, "bounce": true, - "from": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", - "to": "kQBGt4TP7qlVmFk8HoqKcbfHRMJXPx9wiCGqz20U3RjpIZGF", + "from": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", + "to": "kQCrbYuBNKCLCt9djALpBhYY7a02T13eEngbe_aOD-JnjOo5", "type": "internal", - "value": "9.92301", + "value": "9.92844", }, }, { diff --git a/src/test/e2e-emulated/__snapshots__/implicit-init.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/implicit-init.spec.ts.snap index bf7c496bb..17a4d2365 100644 --- a/src/test/e2e-emulated/__snapshots__/implicit-init.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/implicit-init.spec.ts.snap @@ -20,7 +20,7 @@ exports[`implicit-init should deploy 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCmHLVs4hhx9eQvHIhXKr0w4IRdDqnO9LdM6HTrBxxmpeOZ", + "to": "kQA2Gngl1cZ5BkRRR3UOenTUhET0LR7TuhtWgYlh6KwLf3YT", "type": "internal", "value": "1", }, @@ -41,7 +41,7 @@ exports[`implicit-init should deploy 1`] = ` }, }, "bounce": false, - "from": "kQCmHLVs4hhx9eQvHIhXKr0w4IRdDqnO9LdM6HTrBxxmpeOZ", + "from": "kQA2Gngl1cZ5BkRRR3UOenTUhET0LR7TuhtWgYlh6KwLf3YT", "to": "@treasure(treasure)", "type": "internal", "value": "0.991657", @@ -67,7 +67,7 @@ exports[`implicit-init should increment counter 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCmHLVs4hhx9eQvHIhXKr0w4IRdDqnO9LdM6HTrBxxmpeOZ", + "to": "kQA2Gngl1cZ5BkRRR3UOenTUhET0LR7TuhtWgYlh6KwLf3YT", "type": "internal", "value": "1", }, @@ -94,7 +94,7 @@ exports[`implicit-init should increment counter 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCmHLVs4hhx9eQvHIhXKr0w4IRdDqnO9LdM6HTrBxxmpeOZ", + "to": "kQA2Gngl1cZ5BkRRR3UOenTUhET0LR7TuhtWgYlh6KwLf3YT", "type": "internal", "value": "1", }, diff --git a/src/test/e2e-emulated/__snapshots__/initof.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/initof.spec.ts.snap index 834a52425..337bbfff1 100644 --- a/src/test/e2e-emulated/__snapshots__/initof.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/initof.spec.ts.snap @@ -17,7 +17,7 @@ exports[`initOf should implement initof correctly - 4 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCQ9YMnQzaDyt17d0pyJR7wP1uBYCIerKSaJnu0J-hSk2gE", + "to": "kQBB5L5kZM448DuVBjbRJVqVQ3rQ3D1y3XJwRmJnDz7RVn7C", "type": "internal", "value": "10", }, diff --git a/src/test/e2e-emulated/__snapshots__/masterchain.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/masterchain.spec.ts.snap index f6f0b3e90..ac7f19c3a 100644 --- a/src/test/e2e-emulated/__snapshots__/masterchain.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/masterchain.spec.ts.snap @@ -17,7 +17,7 @@ exports[`masterchain should deploy to the workchain 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQD9Rd1f21h4jkjh1ZNxBw5DlUvPA8Yf9_X6WzPUYUUFvG07", + "to": "kQDSuAQHFrqpJA5TD7sDh45U7-bg76NNNfmaX7AID1bdlWiE", "type": "internal", "value": "10", }, @@ -48,7 +48,7 @@ exports[`masterchain should deploy to the workchain from masterchain when master }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQB4GR7QxoLczPfQReBFnohwnNAblXe-53Zyw_ZmpPRd99VZ", + "to": "kQDODwXkLheXHjo3o0OlxiKH0j0uyVUq4US8ZHZkeHjcWl8D", "type": "internal", "value": "10", }, @@ -79,7 +79,7 @@ exports[`masterchain should deploy to the workchain when masterchain enabled 1`] }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQB4GR7QxoLczPfQReBFnohwnNAblXe-53Zyw_ZmpPRd99VZ", + "to": "kQDODwXkLheXHjo3o0OlxiKH0j0uyVUq4US8ZHZkeHjcWl8D", "type": "internal", "value": "10", }, @@ -110,7 +110,7 @@ exports[`masterchain should not deploy to the workchain from masterchain 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQD9Rd1f21h4jkjh1ZNxBw5DlUvPA8Yf9_X6WzPUYUUFvG07", + "to": "kQDSuAQHFrqpJA5TD7sDh45U7-bg76NNNfmaX7AID1bdlWiE", "type": "internal", "value": "10", }, @@ -128,7 +128,7 @@ exports[`masterchain should not deploy to the workchain from masterchain 1`] = ` "type": "cell", }, "bounce": false, - "from": "kQD9Rd1f21h4jkjh1ZNxBw5DlUvPA8Yf9_X6WzPUYUUFvG07", + "from": "kQDSuAQHFrqpJA5TD7sDh45U7-bg76NNNfmaX7AID1bdlWiE", "to": "@treasure(treasure)", "type": "internal", "value": "9.989", diff --git a/src/test/e2e-emulated/__snapshots__/mutating-method-chaining.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/mutating-method-chaining.spec.ts.snap index a43d11593..0c19fbeb7 100644 --- a/src/test/e2e-emulated/__snapshots__/mutating-method-chaining.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/mutating-method-chaining.spec.ts.snap @@ -16,7 +16,7 @@ exports[`bugs should implement mutating method chaining correctly 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCGg-qsZbZ6ObsEGqnPA1Q2Ma7bpCHVkJNXu0LvqWZSmD8C", + "to": "kQAl2F5UIJZzp5PrfTYOzrbfeDpxygpMvjjRQxQMBU7zCy3V", "type": "internal", "value": "10", }, diff --git a/src/test/e2e-emulated/__snapshots__/sample-jetton.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/sample-jetton.spec.ts.snap index e3e35ed60..627aee54f 100644 --- a/src/test/e2e-emulated/__snapshots__/sample-jetton.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/sample-jetton.spec.ts.snap @@ -12,14 +12,14 @@ exports[`bugs should deploy sample jetton correctly 1`] = ` "$type": "received", "message": { "body": { - "cell": "x{178D45190000000000000000502540BE400801AA83CBBCA5263F67EAA1559AD9E623E62E67A29FA27E595CC8FE11388F31EDEF0016E3A425A4E75B646191AC9A34FE5D050BD101A5C490F87D01C66D885D09BC1082_}", + "cell": "x{178D45190000000000000000502540BE400800F4E48F7C7669DBB98B5860A3DF843B6A47BE760733A53682DC8C2D7888E272890016E3A425A4E75B646191AC9A34FE5D050BD101A5C490F87D01C66D885D09BC1082_}", "type": "cell", }, "bounce": false, - "from": "kQDVQeXeUpMfs_VQqs1s8xHzFzPRT9E_LK5kfwicR5j297b1", - "to": "kQB0KL6E6fdGDVrtJBp7LpazUNhD-ZyguSjmHr4riyDbX6NG", + "from": "kQB6cke-OzTt3MWsMFHvwh21I987A5nSm0FuRha8RHE5RLcf", + "to": "kQAs-ScGiWnp9mLiF2J01NJKNIqVEKcmrFCZJBm9zSs-z5mo", "type": "internal", - "value": "9.959886", + "value": "9.961639", }, }, { @@ -38,10 +38,10 @@ exports[`bugs should deploy sample jetton correctly 1`] = ` }, }, "bounce": false, - "from": "kQB0KL6E6fdGDVrtJBp7LpazUNhD-ZyguSjmHr4riyDbX6NG", + "from": "kQAs-ScGiWnp9mLiF2J01NJKNIqVEKcmrFCZJBm9zSs-z5mo", "to": "@treasure(treasure)", "type": "internal", - "value": "9.916924834", + "value": "9.920430846", }, ], }, diff --git a/src/test/e2e-emulated/__snapshots__/send.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/send.spec.ts.snap index 72b94a865..f1e413a0f 100644 --- a/src/test/e2e-emulated/__snapshots__/send.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/send.spec.ts.snap @@ -7,7 +7,7 @@ exports[`send should bounce on unknown message 1`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000005", + "amount": "0.000000004", }, { "$type": "received", @@ -18,7 +18,7 @@ exports[`send should bounce on unknown message 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQByD0c2DY3X44XUMGHBSk3w4qTf0pMFuM8rPRXRTt7pJhX8", + "to": "kQATx58YvlfHtRNTqNXYeKUD0aoA8zP1ffmepeP5UaunSzFu", "type": "internal", "value": "10", }, @@ -36,7 +36,7 @@ exports[`send should bounce on unknown message 1`] = ` "type": "cell", }, "bounce": false, - "from": "kQByD0c2DY3X44XUMGHBSk3w4qTf0pMFuM8rPRXRTt7pJhX8", + "from": "kQATx58YvlfHtRNTqNXYeKUD0aoA8zP1ffmepeP5UaunSzFu", "to": "@treasure(treasure)", "type": "internal", "value": "9.996013", @@ -67,7 +67,7 @@ exports[`send should send reply correctly 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQByD0c2DY3X44XUMGHBSk3w4qTf0pMFuM8rPRXRTt7pJhX8", + "to": "kQATx58YvlfHtRNTqNXYeKUD0aoA8zP1ffmepeP5UaunSzFu", "type": "internal", "value": "10", }, @@ -101,7 +101,7 @@ exports[`send should send reply correctly 2`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000005", + "amount": "0.000000004", }, { "$type": "received", @@ -112,7 +112,7 @@ exports[`send should send reply correctly 2`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQByD0c2DY3X44XUMGHBSk3w4qTf0pMFuM8rPRXRTt7pJhX8", + "to": "kQATx58YvlfHtRNTqNXYeKUD0aoA8zP1ffmepeP5UaunSzFu", "type": "internal", "value": "10", }, @@ -130,7 +130,7 @@ exports[`send should send reply correctly 2`] = ` "type": "text", }, "bounce": true, - "from": "kQByD0c2DY3X44XUMGHBSk3w4qTf0pMFuM8rPRXRTt7pJhX8", + "from": "kQATx58YvlfHtRNTqNXYeKUD0aoA8zP1ffmepeP5UaunSzFu", "to": "@treasure(treasure)", "type": "internal", "value": "9.990889", diff --git a/src/test/e2e-emulated/__snapshots__/structs.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/structs.spec.ts.snap index 537f41e2a..1b1edd7e4 100644 --- a/src/test/e2e-emulated/__snapshots__/structs.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/structs.spec.ts.snap @@ -289,7 +289,7 @@ exports[`structs should implement structs correctly 13`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000014", + "amount": "0.000000013", }, { "$type": "received", @@ -300,7 +300,7 @@ exports[`structs should implement structs correctly 13`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQCrlBLOnYwuUVhoEd9stnroUM3J7rKXhQIS3FIYvrDLvXrj", + "to": "kQDRnqCB_EnIf6UL3CjSB6SmSJ0cB8fi8Ol-y9Hdpim3nPkX", "type": "internal", "value": "10", }, @@ -318,7 +318,7 @@ exports[`structs should implement structs correctly 13`] = ` "type": "cell", }, "bounce": false, - "from": "kQCrlBLOnYwuUVhoEd9stnroUM3J7rKXhQIS3FIYvrDLvXrj", + "from": "kQDRnqCB_EnIf6UL3CjSB6SmSJ0cB8fi8Ol-y9Hdpim3nPkX", "to": "@treasure(treasure)", "type": "internal", "value": "9.993898", diff --git a/src/test/e2e-emulated/__snapshots__/try-catch.spec.ts.snap b/src/test/e2e-emulated/__snapshots__/try-catch.spec.ts.snap index b56cd29d7..e7b375f0f 100644 --- a/src/test/e2e-emulated/__snapshots__/try-catch.spec.ts.snap +++ b/src/test/e2e-emulated/__snapshots__/try-catch.spec.ts.snap @@ -7,7 +7,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000007", + "amount": "0.000000006", }, { "$type": "received", @@ -18,7 +18,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQDgHT7Fi8yi-nN-GpNCs36I1rRzKCtVHddSzFuuvMOd0SvA", + "to": "kQBigf8fP2I2o-v1qNOp7_hRp1we8735yxhf4ZE1rD54dbqU", "type": "internal", "value": "10", }, @@ -34,7 +34,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000007", + "amount": "0.000000006", }, { "$type": "received", @@ -45,7 +45,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQDgHT7Fi8yi-nN-GpNCs36I1rRzKCtVHddSzFuuvMOd0SvA", + "to": "kQBigf8fP2I2o-v1qNOp7_hRp1we8735yxhf4ZE1rD54dbqU", "type": "internal", "value": "10", }, @@ -61,7 +61,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` "events": [ { "$type": "storage-charged", - "amount": "0.000000007", + "amount": "0.000000006", }, { "$type": "received", @@ -72,7 +72,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` }, "bounce": true, "from": "@treasure(treasure)", - "to": "kQDgHT7Fi8yi-nN-GpNCs36I1rRzKCtVHddSzFuuvMOd0SvA", + "to": "kQBigf8fP2I2o-v1qNOp7_hRp1we8735yxhf4ZE1rD54dbqU", "type": "internal", "value": "10", }, @@ -90,7 +90,7 @@ exports[`ternary should implement try-catch statements correctly 1`] = ` "type": "text", }, "bounce": true, - "from": "kQDgHT7Fi8yi-nN-GpNCs36I1rRzKCtVHddSzFuuvMOd0SvA", + "from": "kQBigf8fP2I2o-v1qNOp7_hRp1we8735yxhf4ZE1rD54dbqU", "to": "@treasure(treasure)", "type": "internal", "value": "9.986684",