Merged
Conversation
e6f56fc to 9943e43 Compare 🦑 📈 ink! Example Contracts ‒ Changes Report 📉 🦑These are the results when building the Show overviewUsing the ABI denoted in the contract manifest.
Show diagramgantt dateFormat x axisFormat x section ./integration-tests/all-abi/events : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 19842 kb : a1, 0, 19842 pr default abi - 19673 kb : a1, 0, 19673 pr sol abi - 19673 kb : a2, 0, 19673 pr all abi - 19673 kb : a3, 0, 19673 #nbsp; : a4, 0, 0 section ./integration-tests/internal/call-builder-return-value : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 9162 kb : a1, 0, 9162 pr default abi - 9162 kb : a1, 0, 9162 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/e2e-runtime-only-backend : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2202 kb : a1, 0, 2202 pr default abi - 2202 kb : a1, 0, 2202 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/lang-err/call-builder : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8477 kb : a1, 0, 8477 pr default abi - 8477 kb : a1, 0, 8477 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/lang-err/call-builder-delegate : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3600 kb : a1, 0, 3600 pr default abi - 3600 kb : a1, 0, 3600 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/lang-err/constructors-return-value : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2442 kb : a1, 0, 2442 pr default abi - 2442 kb : a1, 0, 2442 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/lang-err/contract-ref : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 7007 kb : a1, 0, 7007 pr default abi - 7007 kb : a1, 0, 7007 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/lang-err/integration-flipper : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2059 kb : a1, 0, 2059 pr default abi - 2059 kb : a1, 0, 2059 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/mapping : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10621 kb : a1, 0, 10621 pr default abi - 10621 kb : a1, 0, 10621 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/misc-hostfns : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2204 kb : a1, 0, 2204 pr default abi - 2204 kb : a1, 0, 2204 pr sol abi - 2129 kb : a2, 0, 2129 pr all abi - 2333 kb : a3, 0, 2333 #nbsp; : a4, 0, 0 section ./integration-tests/internal/mother : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 16506 kb : a1, 0, 16506 pr default abi - 16506 kb : a1, 0, 16506 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/overflow-safety : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1310 kb : a1, 0, 1310 pr default abi - 1310 kb : a1, 0, 1310 pr sol abi - 2173 kb : a2, 0, 2173 pr all abi - 2671 kb : a3, 0, 2671 #nbsp; : a4, 0, 0 section ./integration-tests/internal/sr25519-verification : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 853 kb : a1, 0, 853 pr default abi - 853 kb : a1, 0, 853 pr sol abi - 777 kb : a2, 0, 777 pr all abi - 980 kb : a3, 0, 980 #nbsp; : a4, 0, 0 section ./integration-tests/internal/static-buffer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2760 kb : a1, 0, 2760 pr default abi - 2760 kb : a1, 0, 2760 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/storage-types : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 16782 kb : a1, 0, 16782 pr default abi - 16782 kb : a1, 0, 16782 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/internal/system-precompile : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2229 kb : a1, 0, 2229 pr default abi - 2229 kb : a1, 0, 2229 pr sol abi - 2089 kb : a2, 0, 2089 pr all abi - 2692 kb : a3, 0, 2692 #nbsp; : a4, 0, 0 section ./integration-tests/public/bytes : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 5252 kb : a1, 0, 5252 pr default abi - 4847 kb : a1, 0, 4847 pr sol abi - 4847 kb : a2, 0, 4847 pr all abi - 8361 kb : a3, 0, 8361 #nbsp; : a4, 0, 0 section ./integration-tests/public/complex-storage-structures : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 4857 kb : a1, 0, 4857 pr default abi - 4857 kb : a1, 0, 4857 pr sol abi - 7499 kb : a2, 0, 7499 pr all abi - 9140 kb : a3, 0, 9140 #nbsp; : a4, 0, 0 section ./integration-tests/public/conditional-compilation : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1727 kb : a1, 0, 1727 pr default abi - 1727 kb : a1, 0, 1727 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8293 kb : a1, 0, 8293 pr default abi - 8293 kb : a1, 0, 8293 pr sol abi - 10907 kb : a2, 0, 10907 pr all abi - 12264 kb : a3, 0, 12264 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation/contract1 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2081 kb : a1, 0, 2081 pr default abi - 2081 kb : a1, 0, 2081 pr sol abi - 2138 kb : a2, 0, 2138 pr all abi - 2892 kb : a3, 0, 2892 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation/contract2 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1996 kb : a1, 0, 1996 pr default abi - 1996 kb : a1, 0, 1996 pr sol abi - 2102 kb : a2, 0, 2102 pr all abi - 2784 kb : a3, 0, 2784 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation/virtual_contract : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 4626 kb : a1, 0, 4626 pr default abi - 4626 kb : a1, 0, 4626 pr sol abi - 7067 kb : a2, 0, 7067 pr all abi - 6772 kb : a3, 0, 6772 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation/virtual_contract_ver1 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1954 kb : a1, 0, 1954 pr default abi - 1954 kb : a1, 0, 1954 pr sol abi - 2127 kb : a2, 0, 2127 pr all abi - 2521 kb : a3, 0, 2521 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-invocation/virtual_contract_ver2 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1966 kb : a1, 0, 1966 pr default abi - 1966 kb : a1, 0, 1966 pr sol abi - 2139 kb : a2, 0, 2139 pr all abi - 2547 kb : a3, 0, 2547 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-storage : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 7630 kb : a1, 0, 7630 pr default abi - 7630 kb : a1, 0, 7630 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-terminate : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1551 kb : a1, 0, 1551 pr default abi - 1551 kb : a1, 0, 1551 pr sol abi - 1517 kb : a2, 0, 1517 pr all abi - 1646 kb : a3, 0, 1646 #nbsp; : a4, 0, 0 section ./integration-tests/public/contract-transfer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2736 kb : a1, 0, 2736 pr default abi - 2736 kb : a1, 0, 2736 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 3120 kb : a3, 0, 3120 #nbsp; : a4, 0, 0 section ./integration-tests/public/cross-contract-calls : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8719 kb : a1, 0, 8719 pr default abi - 8719 kb : a1, 0, 8719 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/cross-contract-calls/other-contract : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1775 kb : a1, 0, 1775 pr default abi - 1775 kb : a1, 0, 1775 pr sol abi - 1550 kb : a2, 0, 1550 pr all abi - 2361 kb : a3, 0, 2361 #nbsp; : a4, 0, 0 section ./integration-tests/public/custom-allocator : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3275 kb : a1, 0, 3275 pr default abi - 3275 kb : a1, 0, 3275 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/custom-environment : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3394 kb : a1, 0, 3394 pr default abi - 3394 kb : a1, 0, 3394 pr sol abi - 1738 kb : a2, 0, 1738 pr all abi - 3845 kb : a3, 0, 3845 #nbsp; : a4, 0, 0 section ./integration-tests/public/debugging-strategies : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 4445 kb : a1, 0, 4445 pr default abi - 4445 kb : a1, 0, 4445 pr sol abi - 4822 kb : a2, 0, 4822 pr all abi - 5208 kb : a3, 0, 5208 #nbsp; : a4, 0, 0 section ./integration-tests/public/dns : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10423 kb : a1, 0, 10423 pr default abi - 10423 kb : a1, 0, 10423 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/e2e-call-runtime : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1563 kb : a1, 0, 1563 pr default abi - 1563 kb : a1, 0, 1563 pr sol abi - 1436 kb : a2, 0, 1436 pr all abi - 2049 kb : a3, 0, 2049 #nbsp; : a4, 0, 0 section ./integration-tests/public/erc1155 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 20979 kb : a1, 0, 20979 pr default abi - 20979 kb : a1, 0, 20979 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/erc20 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10899 kb : a1, 0, 10899 pr default abi - 10899 kb : a1, 0, 10899 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/erc721 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 12862 kb : a1, 0, 12862 pr default abi - 12862 kb : a1, 0, 12862 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/events : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8873 kb : a1, 0, 8873 pr default abi - 8873 kb : a1, 0, 8873 pr sol abi - 12532 kb : a2, 0, 12532 pr all abi - 18939 kb : a3, 0, 18939 #nbsp; : a4, 0, 0 section ./integration-tests/public/fallible-setter : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2972 kb : a1, 0, 2972 pr default abi - 2632 kb : a1, 0, 2632 pr sol abi - 2632 kb : a2, 0, 2632 pr all abi - 3173 kb : a3, 0, 3173 #nbsp; : a4, 0, 0 section ./integration-tests/public/flipper : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1775 kb : a1, 0, 1775 pr default abi - 1775 kb : a1, 0, 1775 pr sol abi - 1550 kb : a2, 0, 1550 pr all abi - 2361 kb : a3, 0, 2361 #nbsp; : a4, 0, 0 section ./integration-tests/public/fuzz-testing : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1762 kb : a1, 0, 1762 pr default abi - 1762 kb : a1, 0, 1762 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1288 kb : a1, 0, 1288 pr default abi - 1288 kb : a1, 0, 1288 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/lazyvec : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 5725 kb : a1, 0, 5725 pr default abi - 5725 kb : a1, 0, 5725 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 11926 kb : a1, 0, 11926 pr default abi - 11926 kb : a1, 0, 11926 pr sol abi - 15904 kb : a2, 0, 15904 pr all abi - 12983 kb : a3, 0, 12983 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller/accumulator : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1134 kb : a1, 0, 1134 pr default abi - 1134 kb : a1, 0, 1134 pr sol abi - 1455 kb : a2, 0, 1455 pr all abi - 2013 kb : a3, 0, 2013 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller/adder : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3169 kb : a1, 0, 3169 pr default abi - 3169 kb : a1, 0, 3169 pr sol abi - 4742 kb : a2, 0, 4742 pr all abi - 3442 kb : a3, 0, 3442 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller/subber : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3173 kb : a1, 0, 3173 pr default abi - 3173 kb : a1, 0, 3173 pr sol abi - 4749 kb : a2, 0, 4749 pr all abi - 3455 kb : a3, 0, 3455 #nbsp; : a4, 0, 0 section ./integration-tests/public/multisig : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 27517 kb : a1, 0, 27517 pr default abi - 27517 kb : a1, 0, 27517 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/own-code-hash : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3065 kb : a1, 0, 3065 pr default abi - 3065 kb : a1, 0, 3065 pr sol abi - 2587 kb : a2, 0, 2587 pr all abi - 3287 kb : a3, 0, 3287 #nbsp; : a4, 0, 0 section ./integration-tests/public/payment-channel : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 7995 kb : a1, 0, 7995 pr default abi - 7995 kb : a1, 0, 7995 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/precompile : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 7861 kb : a1, 0, 7861 pr default abi - 7628 kb : a1, 0, 7628 pr sol abi - 9391 kb : a2, 0, 9391 pr all abi - 10512 kb : a3, 0, 10512 #nbsp; : a4, 0, 0 section ./integration-tests/public/runtime-call-contract : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1778 kb : a1, 0, 1778 pr default abi - 1778 kb : a1, 0, 1778 pr sol abi - 1550 kb : a2, 0, 1550 pr all abi - 2366 kb : a3, 0, 2366 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-dyn-cross-contract-calls : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3960 kb : a1, 0, 3960 pr default abi - 3960 kb : a1, 0, 3960 pr sol abi - 5673 kb : a2, 0, 5673 pr all abi - 4386 kb : a3, 0, 4386 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-dyn-cross-contract-calls/contracts/incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1799 kb : a1, 0, 1799 pr default abi - 1799 kb : a1, 0, 1799 pr sol abi - 1651 kb : a2, 0, 1651 pr all abi - 2448 kb : a3, 0, 2448 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-erc20 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 11222 kb : a1, 0, 11222 pr default abi - 11222 kb : a1, 0, 11222 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-flipper : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1728 kb : a1, 0, 1728 pr default abi - 1728 kb : a1, 0, 1728 pr sol abi - 1389 kb : a2, 0, 1389 pr all abi - 2128 kb : a3, 0, 2128 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1870 kb : a1, 0, 1870 pr default abi - 1870 kb : a1, 0, 1870 pr sol abi - 1820 kb : a2, 0, 1820 pr all abi - 2702 kb : a3, 0, 2702 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/delegator : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 6452 kb : a1, 0, 6452 pr default abi - 6452 kb : a1, 0, 6452 pr sol abi - 9014 kb : a2, 0, 9014 pr all abi - 10907 kb : a3, 0, 10907 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/delegator/delegatee : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2849 kb : a1, 0, 2849 pr default abi - 2849 kb : a1, 0, 2849 pr sol abi - 2321 kb : a2, 0, 2321 pr all abi - 3141 kb : a3, 0, 3141 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/delegator/delegatee2 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2849 kb : a1, 0, 2849 pr default abi - 2849 kb : a1, 0, 2849 pr sol abi - 2321 kb : a2, 0, 2321 pr all abi - 3140 kb : a3, 0, 3140 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1723 kb : a1, 0, 1723 pr default abi - 1723 kb : a1, 0, 1723 pr sol abi - 2035 kb : a2, 0, 2035 pr all abi - 2642 kb : a3, 0, 2642 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash-migration : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1723 kb : a1, 0, 1723 pr default abi - 1723 kb : a1, 0, 1723 pr sol abi - 2035 kb : a2, 0, 2035 pr all abi - 2642 kb : a3, 0, 2642 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash-migration/migration : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1877 kb : a1, 0, 1877 pr default abi - 1877 kb : a1, 0, 1877 pr sol abi - 2616 kb : a2, 0, 2616 pr all abi - 2584 kb : a3, 0, 2584 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash-migration/updated-incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1901 kb : a1, 0, 1901 pr default abi - 1901 kb : a1, 0, 1901 pr sol abi - 2600 kb : a2, 0, 2600 pr all abi - 3098 kb : a3, 0, 3098 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash/updated-incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 1675 kb : a1, 0, 1675 pr default abi - 1675 kb : a1, 0, 1675 pr sol abi - 2024 kb : a2, 0, 2024 pr all abi - 2581 kb : a3, 0, 2581 #nbsp; : a4, 0, 0 section ./integration-tests/public/wildcard-selector : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2948 kb : a1, 0, 2948 pr default abi - 2948 kb : a1, 0, 2948 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 5211 kb : a3, 0, 5211 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/events : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 12253 kb : a1, 0, 12253 pr default abi - 11813 kb : a1, 0, 11813 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/sol-cross-contract : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 6677 kb : a1, 0, 6677 pr default abi - 6456 kb : a1, 0, 6456 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/sol-cross-contract/other-contract-sol : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2574 kb : a1, 0, 2574 pr default abi - 2138 kb : a1, 0, 2138 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/sol-encoding : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2510 kb : a1, 0, 2510 pr default abi - 2063 kb : a1, 0, 2063 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/solidity-calls-flipper : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8965 kb : a1, 0, 8965 pr default abi - 8738 kb : a1, 0, 8738 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/trait-dyn-cross-contract-calls : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 6037 kb : a1, 0, 6037 pr default abi - 5673 kb : a1, 0, 5673 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/trait-dyn-cross-contract-calls/contracts/incrementer : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2353 kb : a1, 0, 2353 pr default abi - 1651 kb : a1, 0, 1651 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/solidity-abi/trait-flipper : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2245 kb : a1, 0, 2245 pr default abi - 1389 kb : a1, 0, 1389 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 Show contract sizes: ink! vs Solidity ABIThe following table shows how the contract sizes on this branch change when choosing the Solidity ABI instead of the ink! ABI.
Show contract sizes: ink! vs all ABIThe following table shows how the contract sizes on this branch change when choosing the all ABI instead of the ink! ABI.
Link to the run | Last update: Fri Sep 26 13:44:33 CEST 2025 |
9943e43 to 1b8e037 Compare 254f23d to 89c35da Compare e4120e4 to 151cf05 Compare cmichi approved these changes Sep 26, 2025
Collaborator
cmichi left a comment
There was a problem hiding this comment.
LGTM! And the results speak for itself 📉 !
The differential testing against alloy-sol-types is so nice.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #_
cargo-contractorpallet-revive?Description
With a lot of system calls/host functions being moved to precompiles in
pallet-revive(see paritytech/polkadot-sdk#8572), we now have a few places inink_envwhere we have to Solidity ABI encode parameters for these precompile calls.The parameters are typically dynamic or fixed size bytes types, and we'd prefer a non-allocating encoding implementation for these cases.
However, because the Solidity ABI encoder implementation in
alloy-sol-typesis internally allocating, we currently "manually" re-implement various Solidity ABI encoding utilities inink_envinstead of using existing utilities and abstractions inink_primitives::solthat are currently implemented on top of thealloy-sol-typesABI encoder.Another consideration is that a non-allocating encoder implementation may yield improvements in performance and contract size. The contract size hypothesis appears to be validated by this PR as contracts compiled in "sol" and "all" ABI have some noticeable size reductions.




In summary, this PR:
SolTypeEncode::encodeandSolParamsEncode::encodemethods (and by extensionSolEncode::encode,ink_primitives::encode_sequenceand encoding methods forAbiEncodeWith::<ink::abi::Sol>) to using the new encoderencode_to(&self, buffer: &mut [u8]) -> usizemethods toSolEncode,SolTypeEncodeandSolParamsEncodei.e methods that accept a buffer, and return the number of bytes written to the buffer.encode_sequence_toutility as a convenience wrapper forSolParamsEncode::encode_toencode_tomethods that compare against thealloy-sol-typesresultsFollow ups/ related TODOs
ink_envto useink_primitivesabstractions where appropriateArgumentList(RefactorArgumentListencoding and abstractions #2678)Checklist before requesting a review
CHANGELOG.md