Skip to content

Fix HostFn::code_hash + HostFn::weight_to_fee#2672

Merged
cmichi merged 11 commits intomasterfrom
cmichi-misc-fixes-sep-24
Oct 8, 2025
Merged

Fix HostFn::code_hash + HostFn::weight_to_fee#2672
cmichi merged 11 commits intomasterfrom
cmichi-misc-fixes-sep-24

Conversation

@cmichi
Copy link
Collaborator

@cmichi cmichi commented Oct 8, 2025

Some general cleanups and improvements around debugging output.

But mostly fixes for HostFn::code_hash and HostFn::weight_to_fee.

@github-actions
Copy link

github-actions bot commented Oct 8, 2025

🦑 📈 ink! Example Contracts ‒ Changes Report 📉 🦑

These are the results when building the integration-tests/* contracts from this branch and comparing them to ink! master:

Show overview

Using the ABI denoted in the contract manifest.

Contract Upstream Size (kB) PR Size (kB) Diff (kB) Diff (%) Change
./integration-tests/all-abi/events 19.65 19.65 0 0%
./integration-tests/internal/call-builder-return-value 9.162 9.161 -0.001 0% 📉
./integration-tests/internal/e2e-runtime-only-backend 2.202 2.202 0 0%
./integration-tests/internal/lang-err/call-builder 8.478 8.476 -0.002 0% 📉
./integration-tests/internal/lang-err/call-builder-delegate 3.6 3.6 0 0%
./integration-tests/internal/lang-err/constructors-return-value 2.442 2.442 0 0%
./integration-tests/internal/lang-err/contract-ref 7.007 6.974 -0.033 0% 📉
./integration-tests/internal/lang-err/integration-flipper 2.059 2.059 0 0%
./integration-tests/internal/mapping 10.622 10.624 0.002 0% 📈
./integration-tests/internal/misc-hostfns 2.204 2.204 0 0%
./integration-tests/internal/mother 16.506 16.511 0.005 0% 📈
./integration-tests/internal/overflow-safety 1.311 1.311 0 0%
./integration-tests/internal/sr25519-verification 0.853 0.853 0 0%
./integration-tests/internal/static-buffer 2.759 3.002 0.243 9% 📈
./integration-tests/internal/storage-types 16.778 16.778 0 0%
./integration-tests/internal/system-precompile 2.229 2.229 0 0%
./integration-tests/public/bytes 4.847 4.847 0 0%
./integration-tests/public/complex-storage-structures 4.857 4.857 0 0%
./integration-tests/public/conditional-compilation 1.727 1.727 0 0%
./integration-tests/public/contract-invocation 8.293 8.291 -0.002 0% 📉
./integration-tests/public/contract-invocation/contract1 2.081 2.081 0 0%
./integration-tests/public/contract-invocation/contract2 1.996 1.996 0 0%
./integration-tests/public/contract-invocation/virtual_contract 4.626 4.598 -0.028 0% 📉
./integration-tests/public/contract-invocation/virtual_contract_ver1 1.954 1.954 0 0%
./integration-tests/public/contract-invocation/virtual_contract_ver2 1.966 1.966 0 0%
./integration-tests/public/contract-storage 7.63 7.63 0 0%
./integration-tests/public/contract-terminate 1.551 1.551 0 0%
./integration-tests/public/contract-transfer 2.738 2.738 0 0%
./integration-tests/public/cross-contract-calls 8.719 8.687 -0.032 0% 📉
./integration-tests/public/cross-contract-calls/other-contract 1.775 1.775 0 0%
./integration-tests/public/custom-allocator 3.275 3.275 0 0%
./integration-tests/public/custom-environment 3.394 3.394 0 0%
./integration-tests/public/debugging-strategies 4.445 4.443 -0.002 0% 📉
./integration-tests/public/dns 10.423 10.421 -0.002 0% 📉
./integration-tests/public/e2e-call-runtime 1.563 1.563 0 0%
./integration-tests/public/erc1155 20.98 20.962 -0.018 0% 📉
./integration-tests/public/erc20 10.898 10.899 0.001 0% 📈
./integration-tests/public/erc721 12.862 12.861 -0.001 0% 📉
./integration-tests/public/events 8.875 8.875 0 0%
./integration-tests/public/fallible-setter 2.632 2.632 0 0%
./integration-tests/public/flipper 1.775 1.775 0 0%
./integration-tests/public/fuzz-testing 1.762 1.762 0 0%
./integration-tests/public/incrementer 1.288 1.288 0 0%
./integration-tests/public/lazyvec 5.726 5.726 0 0%
./integration-tests/public/multi-contract-caller 11.926 11.96 0.034 0% 📈
./integration-tests/public/multi-contract-caller/accumulator 1.134 1.134 0 0%
./integration-tests/public/multi-contract-caller/adder 3.169 3.169 0 0%
./integration-tests/public/multi-contract-caller/subber 3.173 3.173 0 0%
./integration-tests/public/multisig 27.517 27.499 -0.018 0% 📉
./integration-tests/public/payment-channel 7.995 7.995 0 0%
./integration-tests/public/precompile 7.628 7.627 -0.001 0% 📉
./integration-tests/public/runtime-call-contract 1.778 1.778 0 0%
./integration-tests/public/trait-dyn-cross-contract-calls 3.96 4.103 0.143 4% 📈
./integration-tests/public/trait-dyn-cross-contract-calls/contracts/incrementer 1.799 1.799 0 0%
./integration-tests/public/trait-erc20 11.228 11.228 0 0%
./integration-tests/public/trait-flipper 1.728 1.728 0 0%
./integration-tests/public/trait-incrementer 1.87 1.87 0 0%
./integration-tests/public/upgradeable-contracts/delegator 6.452 6.645 0.193 3% 📈
./integration-tests/public/upgradeable-contracts/delegator/delegatee 2.849 2.996 0.147 5% 📈
./integration-tests/public/upgradeable-contracts/delegator/delegatee2 2.849 2.996 0.147 5% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash 1.723 1.723 0 0%
./integration-tests/public/upgradeable-contracts/set-code-hash-migration 1.723 1.723 0 0%
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/migration 1.877 1.877 0 0%
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 1.901 0 0%
./integration-tests/public/upgradeable-contracts/set-code-hash/updated-incrementer 1.675 1.675 0 0%
./integration-tests/public/wildcard-selector 2.948 2.948 0 0%
./integration-tests/solidity-abi/events 11.802 11.802 0 0%
./integration-tests/solidity-abi/sol-cross-contract 6.456 6.454 -0.002 0% 📉
./integration-tests/solidity-abi/sol-cross-contract/other-contract-sol 2.138 2.138 0 0%
./integration-tests/solidity-abi/sol-encoding 2.063 2.063 0 0%
./integration-tests/solidity-abi/solidity-calls-flipper 8.738 8.737 -0.001 0% 📉
./integration-tests/solidity-abi/trait-dyn-cross-contract-calls 5.673 5.672 -0.001 0% 📉
./integration-tests/solidity-abi/trait-dyn-cross-contract-calls/contracts/incrementer 1.651 1.651 0 0%
./integration-tests/solidity-abi/trait-flipper 1.389 1.389 0 0%
Show diagram
gantt dateFormat x axisFormat x section ./integration-tests/all-abi/events : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 19650 kb : a1, 0, 19650 pr default abi - 19650 kb : a1, 0, 19650 pr sol abi - 19650 kb : a2, 0, 19650 pr all abi - 19650 kb : a3, 0, 19650 #nbsp; : a4, 0, 0 section ./integration-tests/internal/call-builder-return-value : a5, 0, 0 v5 default abi - 8924 kb : a1, 0, 8924 master default abi - 9162 kb : a1, 0, 9162 pr default abi - 9161 kb : a1, 0, 9161 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 - 1925 kb : a1, 0, 1925 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 - 2612 kb : a1, 0, 2612 master default abi - 8478 kb : a1, 0, 8478 pr default abi - 8476 kb : a1, 0, 8476 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 - 2612 kb : a1, 0, 2612 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 - 2011 kb : a1, 0, 2011 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 - 5087 kb : a1, 0, 5087 master default abi - 7007 kb : a1, 0, 7007 pr default abi - 6974 kb : a1, 0, 6974 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 - 1910 kb : a1, 0, 1910 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 - 10622 kb : a1, 0, 10622 pr default abi - 10624 kb : a1, 0, 10624 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 - 2330 kb : a3, 0, 2330 #nbsp; : a4, 0, 0 section ./integration-tests/internal/mother : a5, 0, 0 v5 default abi - 12681 kb : a1, 0, 12681 master default abi - 16506 kb : a1, 0, 16506 pr default abi - 16511 kb : a1, 0, 16511 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 - 1311 kb : a1, 0, 1311 pr default abi - 1311 kb : a1, 0, 1311 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 - 1082 kb : a1, 0, 1082 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 - 2759 kb : a1, 0, 2759 pr default abi - 3002 kb : a1, 0, 3002 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 - 11369 kb : a1, 0, 11369 master default abi - 16778 kb : a1, 0, 16778 pr default abi - 16778 kb : a1, 0, 16778 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 - 4847 kb : a1, 0, 4847 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 - 1460 kb : a1, 0, 1460 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 - 8291 kb : a1, 0, 8291 pr sol abi - 10905 kb : a2, 0, 10905 pr all abi - 12262 kb : a3, 0, 12262 #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 - 2891 kb : a3, 0, 2891 #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 - 4598 kb : a1, 0, 4598 pr sol abi - 7068 kb : a2, 0, 7068 pr all abi - 6754 kb : a3, 0, 6754 #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 - 7459 kb : a1, 0, 7459 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 - 1314 kb : a1, 0, 1314 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 - 1520 kb : a1, 0, 1520 master default abi - 2738 kb : a1, 0, 2738 pr default abi - 2738 kb : a1, 0, 2738 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 - 7471 kb : a1, 0, 7471 master default abi - 8719 kb : a1, 0, 8719 pr default abi - 8687 kb : a1, 0, 8687 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 - 1591 kb : a1, 0, 1591 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 - 7993 kb : a1, 0, 7993 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 - 2062 kb : a1, 0, 2062 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 - 4443 kb : a1, 0, 4443 pr sol abi - 4819 kb : a2, 0, 4819 pr all abi - 5205 kb : a3, 0, 5205 #nbsp; : a4, 0, 0 section ./integration-tests/public/dns : a5, 0, 0 v5 default abi - 7142 kb : a1, 0, 7142 master default abi - 10423 kb : a1, 0, 10423 pr default abi - 10421 kb : a1, 0, 10421 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 - 1182 kb : a1, 0, 1182 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 - 2048 kb : a3, 0, 2048 #nbsp; : a4, 0, 0 section ./integration-tests/public/erc1155 : a5, 0, 0 v5 default abi - 14566 kb : a1, 0, 14566 master default abi - 20980 kb : a1, 0, 20980 pr default abi - 20962 kb : a1, 0, 20962 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 - 6993 kb : a1, 0, 6993 master default abi - 10898 kb : a1, 0, 10898 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 - 9754 kb : a1, 0, 9754 master default abi - 12862 kb : a1, 0, 12862 pr default abi - 12861 kb : a1, 0, 12861 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 - 4955 kb : a1, 0, 4955 master default abi - 8875 kb : a1, 0, 8875 pr default abi - 8875 kb : a1, 0, 8875 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 - 2632 kb : a1, 0, 2632 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 - 1701 kb : a1, 0, 1701 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 - 1538 kb : a1, 0, 1538 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 - 5103 kb : a1, 0, 5103 master default abi - 5726 kb : a1, 0, 5726 pr default abi - 5726 kb : a1, 0, 5726 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 - 6420 kb : a1, 0, 6420 master default abi - 11926 kb : a1, 0, 11926 pr default abi - 11960 kb : a1, 0, 11960 pr sol abi - 15951 kb : a2, 0, 15951 pr all abi - 13133 kb : a3, 0, 13133 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller/accumulator : a5, 0, 0 v5 default abi - 1363 kb : a1, 0, 1363 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 - 1733 kb : a1, 0, 1733 master default abi - 3169 kb : a1, 0, 3169 pr default abi - 3169 kb : a1, 0, 3169 pr sol abi - 4739 kb : a2, 0, 4739 pr all abi - 3438 kb : a3, 0, 3438 #nbsp; : a4, 0, 0 section ./integration-tests/public/multi-contract-caller/subber : a5, 0, 0 v5 default abi - 1751 kb : a1, 0, 1751 master default abi - 3173 kb : a1, 0, 3173 pr default abi - 3173 kb : a1, 0, 3173 pr sol abi - 4744 kb : a2, 0, 4744 pr all abi - 3455 kb : a3, 0, 3455 #nbsp; : a4, 0, 0 section ./integration-tests/public/multisig : a5, 0, 0 v5 default abi - 21135 kb : a1, 0, 21135 master default abi - 27517 kb : a1, 0, 27517 pr default abi - 27499 kb : a1, 0, 27499 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 - 0 kb : a1, 0, 0 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section ./integration-tests/public/payment-channel : a5, 0, 0 v5 default abi - 5720 kb : a1, 0, 5720 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 - 7628 kb : a1, 0, 7628 pr default abi - 7627 kb : a1, 0, 7627 pr sol abi - 9391 kb : a2, 0, 9391 pr all abi - 10511 kb : a3, 0, 10511 #nbsp; : a4, 0, 0 section ./integration-tests/public/runtime-call-contract : a5, 0, 0 v5 default abi - 1592 kb : a1, 0, 1592 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 - 2808 kb : a1, 0, 2808 master default abi - 3960 kb : a1, 0, 3960 pr default abi - 4103 kb : a1, 0, 4103 pr sol abi - 5672 kb : a2, 0, 5672 pr all abi - 4648 kb : a3, 0, 4648 #nbsp; : a4, 0, 0 section ./integration-tests/public/trait-dyn-cross-contract-calls/contracts/incrementer : a5, 0, 0 v5 default abi - 1571 kb : a1, 0, 1571 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 - 7286 kb : a1, 0, 7286 master default abi - 11228 kb : a1, 0, 11228 pr default abi - 11228 kb : a1, 0, 11228 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 - 1460 kb : a1, 0, 1460 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 - 1630 kb : a1, 0, 1630 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 - 3869 kb : a1, 0, 3869 master default abi - 6452 kb : a1, 0, 6452 pr default abi - 6645 kb : a1, 0, 6645 pr sol abi - 9015 kb : a2, 0, 9015 pr all abi - 11218 kb : a3, 0, 11218 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/delegator/delegatee : a5, 0, 0 v5 default abi - 1652 kb : a1, 0, 1652 master default abi - 2849 kb : a1, 0, 2849 pr default abi - 2996 kb : a1, 0, 2996 pr sol abi - 2491 kb : a2, 0, 2491 pr all abi - 3284 kb : a3, 0, 3284 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/delegator/delegatee2 : a5, 0, 0 v5 default abi - 1652 kb : a1, 0, 1652 master default abi - 2849 kb : a1, 0, 2849 pr default abi - 2996 kb : a1, 0, 2996 pr sol abi - 2489 kb : a2, 0, 2489 pr all abi - 3284 kb : a3, 0, 3284 #nbsp; : a4, 0, 0 section ./integration-tests/public/upgradeable-contracts/set-code-hash : a5, 0, 0 v5 default abi - 1740 kb : a1, 0, 1740 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 - 1740 kb : a1, 0, 1740 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 - 1302 kb : a1, 0, 1302 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 - 1930 kb : a1, 0, 1930 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 - 1717 kb : a1, 0, 1717 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 - 3234 kb : a1, 0, 3234 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 - 11802 kb : a1, 0, 11802 pr default abi - 11802 kb : a1, 0, 11802 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 - 6456 kb : a1, 0, 6456 pr default abi - 6454 kb : a1, 0, 6454 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 - 2138 kb : a1, 0, 2138 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 - 2063 kb : a1, 0, 2063 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 - 8738 kb : a1, 0, 8738 pr default abi - 8737 kb : a1, 0, 8737 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 - 5673 kb : a1, 0, 5673 pr default abi - 5672 kb : a1, 0, 5672 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 - 1651 kb : a1, 0, 1651 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 - 1389 kb : a1, 0, 1389 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 
Loading
Show contract sizes: ink! vs Solidity ABI

The following table shows how the contract sizes on this branch change when choosing the Solidity ABI instead of the ink! ABI.

Contract Upstream Size (kB) PR Size (kB) Diff (kB) Diff (%) Change
./integration-tests/all-abi/events 19.65 19.65 0 0%
./integration-tests/internal/misc-hostfns 2.204 2.129 -0.075 -2% 📉
./integration-tests/internal/overflow-safety 1.311 2.173 0.862 66% 📈
./integration-tests/internal/own-code-hash 3.221 2.799 -0.422 -12% 📉
./integration-tests/internal/sr25519-verification 0.853 0.777 -0.076 -8% 📉
./integration-tests/internal/system-precompile 2.229 2.089 -0.14 -5% 📉
./integration-tests/public/bytes 4.847 4.847 0 0%
./integration-tests/public/complex-storage-structures 4.857 7.499 2.642 54% 📈
./integration-tests/public/contract-invocation 8.291 10.905 2.614 32% 📈
./integration-tests/public/contract-invocation/contract1 2.081 2.138 0.057 3% 📈
./integration-tests/public/contract-invocation/contract2 1.996 2.102 0.106 5% 📈
./integration-tests/public/contract-invocation/virtual_contract 4.598 7.068 2.47 54% 📈
./integration-tests/public/contract-invocation/virtual_contract_ver1 1.954 2.127 0.173 9% 📈
./integration-tests/public/contract-invocation/virtual_contract_ver2 1.966 2.139 0.173 9% 📈
./integration-tests/public/contract-terminate 1.551 1.517 -0.034 -1% 📉
./integration-tests/public/cross-contract-calls/other-contract 1.775 1.55 -0.225 -12% 📉
./integration-tests/public/custom-environment 3.394 1.738 -1.656 -48% 📉
./integration-tests/public/debugging-strategies 4.443 4.819 0.376 8% 📈
./integration-tests/public/e2e-call-runtime 1.563 1.436 -0.127 -7% 📉
./integration-tests/public/events 8.875 12.532 3.657 41% 📈
./integration-tests/public/fallible-setter 2.632 2.632 0 0%
./integration-tests/public/flipper 1.775 1.55 -0.225 -12% 📉
./integration-tests/public/multi-contract-caller 11.96 15.951 3.991 33% 📈
./integration-tests/public/multi-contract-caller/accumulator 1.134 1.455 0.321 28% 📈
./integration-tests/public/multi-contract-caller/adder 3.169 4.739 1.57 50% 📈
./integration-tests/public/multi-contract-caller/subber 3.173 4.744 1.571 50% 📈
./integration-tests/public/precompile 7.627 9.391 1.764 23% 📈
./integration-tests/public/runtime-call-contract 1.778 1.55 -0.228 -12% 📉
./integration-tests/public/trait-dyn-cross-contract-calls 4.103 5.672 1.569 38% 📈
./integration-tests/public/trait-dyn-cross-contract-calls/contracts/incrementer 1.799 1.651 -0.148 -7% 📉
./integration-tests/public/trait-flipper 1.728 1.389 -0.339 -19% 📉
./integration-tests/public/trait-incrementer 1.87 1.82 -0.05 -2% 📉
./integration-tests/public/upgradeable-contracts/delegator 6.645 9.015 2.37 36% 📈
./integration-tests/public/upgradeable-contracts/delegator/delegatee 2.996 2.491 -0.505 -16% 📉
./integration-tests/public/upgradeable-contracts/delegator/delegatee2 2.996 2.489 -0.507 -16% 📉
./integration-tests/public/upgradeable-contracts/set-code-hash 1.723 2.035 0.312 18% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration 1.723 2.035 0.312 18% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/migration 1.877 2.616 0.739 39% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 2.6 0.699 37% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash/updated-incrementer 1.675 2.024 0.349 21% 📈
Show contract sizes: ink! vs all ABI

The following table shows how the contract sizes on this branch change when choosing the all ABI instead of the ink! ABI.

Contract Upstream Size (kB) PR Size (kB) Diff (kB) Diff (%) Change
./integration-tests/all-abi/events 19.65 19.65 0 0%
./integration-tests/internal/misc-hostfns 2.204 2.33 0.126 6% 📈
./integration-tests/internal/overflow-safety 1.311 2.671 1.36 104% 📈
./integration-tests/internal/own-code-hash 3.221 3.903 0.682 21% 📈
./integration-tests/internal/sr25519-verification 0.853 0.98 0.127 15% 📈
./integration-tests/internal/system-precompile 2.229 2.692 0.463 21% 📈
./integration-tests/public/bytes 4.847 8.361 3.514 72% 📈
./integration-tests/public/complex-storage-structures 4.857 9.14 4.283 88% 📈
./integration-tests/public/contract-invocation 8.291 12.262 3.971 48% 📈
./integration-tests/public/contract-invocation/contract1 2.081 2.891 0.81 39% 📈
./integration-tests/public/contract-invocation/contract2 1.996 2.784 0.788 39% 📈
./integration-tests/public/contract-invocation/virtual_contract 4.598 6.754 2.156 47% 📈
./integration-tests/public/contract-invocation/virtual_contract_ver1 1.954 2.521 0.567 29% 📈
./integration-tests/public/contract-invocation/virtual_contract_ver2 1.966 2.547 0.581 30% 📈
./integration-tests/public/contract-terminate 1.551 1.646 0.095 6% 📈
./integration-tests/public/contract-transfer 2.738 3.12 0.382 14% 📈
./integration-tests/public/cross-contract-calls/other-contract 1.775 2.361 0.586 33% 📈
./integration-tests/public/custom-environment 3.394 3.845 0.451 13% 📈
./integration-tests/public/debugging-strategies 4.443 5.205 0.762 17% 📈
./integration-tests/public/e2e-call-runtime 1.563 2.048 0.485 31% 📈
./integration-tests/public/events 8.875 18.939 10.064 113% 📈
./integration-tests/public/fallible-setter 2.632 3.173 0.541 21% 📈
./integration-tests/public/flipper 1.775 2.361 0.586 33% 📈
./integration-tests/public/multi-contract-caller 11.96 13.133 1.173 10% 📈
./integration-tests/public/multi-contract-caller/accumulator 1.134 2.013 0.879 78% 📈
./integration-tests/public/multi-contract-caller/adder 3.169 3.438 0.269 8% 📈
./integration-tests/public/multi-contract-caller/subber 3.173 3.455 0.282 9% 📈
./integration-tests/public/precompile 7.627 10.511 2.884 38% 📈
./integration-tests/public/runtime-call-contract 1.778 2.366 0.588 33% 📈
./integration-tests/public/trait-dyn-cross-contract-calls 4.103 4.648 0.545 13% 📈
./integration-tests/public/trait-dyn-cross-contract-calls/contracts/incrementer 1.799 2.448 0.649 36% 📈
./integration-tests/public/trait-flipper 1.728 2.128 0.4 23% 📈
./integration-tests/public/trait-incrementer 1.87 2.702 0.832 44% 📈
./integration-tests/public/upgradeable-contracts/delegator 6.645 11.218 4.573 69% 📈
./integration-tests/public/upgradeable-contracts/delegator/delegatee 2.996 3.284 0.288 10% 📈
./integration-tests/public/upgradeable-contracts/delegator/delegatee2 2.996 3.284 0.288 10% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash 1.723 2.642 0.919 53% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration 1.723 2.642 0.919 53% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/migration 1.877 2.584 0.707 38% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 3.098 1.197 63% 📈
./integration-tests/public/upgradeable-contracts/set-code-hash/updated-incrementer 1.675 2.581 0.906 54% 📈
./integration-tests/public/wildcard-selector 2.948 5.211 2.263 77% 📈

Link to the run | Last update: Wed Oct 8 22:38:34 CEST 2025

@cmichi cmichi enabled auto-merge (squash) October 8, 2025 19:52
@cmichi cmichi disabled auto-merge October 8, 2025 22:01
@cmichi cmichi merged commit f95007e into master Oct 8, 2025
36 checks passed
@cmichi cmichi deleted the cmichi-misc-fixes-sep-24 branch October 8, 2025 22:01
@cmichi cmichi mentioned this pull request Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant