Skip to content

fix: Support name attribute in trait definitions#2644

Merged
davidsemakula merged 5 commits intomasterfrom
semakula/trait-def-name-override
Sep 17, 2025
Merged

fix: Support name attribute in trait definitions#2644
davidsemakula merged 5 commits intomasterfrom
semakula/trait-def-name-override

Conversation

@davidsemakula
Copy link
Collaborator

@davidsemakula davidsemakula commented Sep 17, 2025

Summary

Follow up to #2577

  • [n] y/n | Does it introduce breaking changes?
  • [n] y/n | Is it dependent on a specific version of cargo-contract or pallet-revive?

Description

Checklist before requesting a review

  • I have added an entry to CHANGELOG.md
  • I have commented on my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works
  • Any dependent changes have been merged and published in downstream modules
@davidsemakula davidsemakula marked this pull request as ready for review September 17, 2025 19:49
@github-actions
Copy link

🦑 📈 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
all-abi/events 19.853 19.853 0 0%
bytes 5.252 5.252 0 0%
call-builder-return-value 9.162 9.162 0 0%
complex-storage-structures 4.857 4.857 0 0%
conditional-compilation 1.727 1.727 0 0%
contract-invocation 8.293 8.293 0 0%
contract-invocation/contract1 2.081 2.081 0 0%
contract-invocation/contract2 1.996 1.996 0 0%
contract-invocation/virtual_contract 4.626 4.626 0 0%
contract-invocation/virtual_contract_ver1 1.954 1.954 0 0%
contract-invocation/virtual_contract_ver2 1.966 1.966 0 0%
contract-storage 7.63 7.63 0 0%
contract-terminate 1.551 1.551 0 0%
contract-transfer 2.736 2.736 0 0%
cross-contract-calls 8.718 8.718 0 0%
cross-contract-calls/other-contract 1.775 1.775 0 0%
custom-allocator 3.275 3.275 0 0%
custom-environment 3.394 3.394 0 0%
debugging-strategies 4.445 4.445 0 0%
dns 10.423 10.423 0 0%
e2e-call-runtime 1.563 1.563 0 0%
e2e-runtime-only-backend 2.202 2.202 0 0%
erc1155 20.979 20.979 0 0%
erc20 10.898 10.898 0 0%
erc721 12.861 12.861 0 0%
events 8.873 8.873 0 0%
fallible-setter 2.972 2.972 0 0%
flipper 1.775 1.775 0 0%
fuzz-testing 1.762 1.762 0 0%
incrementer 1.288 1.288 0 0%
lang-err/call-builder 8.478 8.478 0 0%
lang-err/call-builder-delegate 3.6 3.6 0 0%
lang-err/constructors-return-value 2.442 2.442 0 0%
lang-err/contract-ref 7.007 7.007 0 0%
lang-err/integration-flipper 2.059 2.059 0 0%
lazyvec 5.725 5.725 0 0%
mapping 10.622 10.622 0 0%
mother 16.506 16.506 0 0%
multi-contract-caller 11.926 11.926 0 0%
multi-contract-caller/accumulator 1.134 1.134 0 0%
multi-contract-caller/adder 3.168 3.168 0 0%
multi-contract-caller/subber 3.172 3.172 0 0%
multisig 27.517 27.517 0 0%
overflow-safety 1.31 1.31 0 0%
own-code-hash 3.065 3.065 0 0%
payment-channel 7.995 7.995 0 0%
solidity-abi/events 12.253 12.253 0 0%
solidity-abi/sol-cross-contract 6.677 6.677 0 0%
solidity-abi/sol-cross-contract/other-contract-sol 2.574 2.574 0 0%
solidity-abi/sol-encoding 2.51 2.51 0 0%
solidity-abi/solidity-calls-flipper 8.965 8.965 0 0%
solidity-abi/trait-dyn-cross-contract-calls 6.037 6.037 0 0%
solidity-abi/trait-dyn-cross-contract-calls/contracts/incrementer 2.353 2.353 0 0%
solidity-abi/trait-flipper 2.245 2.245 0 0%
sr25519-verification 0.853 0.853 0 0%
static-buffer 2.76 2.76 0 0%
storage-types 16.779 16.779 0 0%
system-precompile 10.622 10.622 0 0%
trait-dyn-cross-contract-calls 3.96 3.96 0 0%
trait-dyn-cross-contract-calls/contracts/incrementer 1.799 1.799 0 0%
trait-erc20 11.226 11.226 0 0%
trait-flipper 1.728 1.728 0 0%
trait-incrementer 1.87 1.87 0 0%
upgradeable-contracts/delegator 6.452 6.452 0 0%
upgradeable-contracts/delegator/delegatee 2.849 2.849 0 0%
upgradeable-contracts/delegator/delegatee2 2.849 2.849 0 0%
upgradeable-contracts/set-code-hash 1.723 1.723 0 0%
upgradeable-contracts/set-code-hash-migration 1.723 1.723 0 0%
upgradeable-contracts/set-code-hash-migration/migration 1.877 1.877 0 0%
upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 1.901 0 0%
upgradeable-contracts/set-code-hash/updated-incrementer 1.675 1.675 0 0%
wildcard-selector 2.948 2.948 0 0%
Show diagram
gantt dateFormat x axisFormat x section all-abi/events : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 19853 kb : a1, 0, 19853 pr default abi - 19853 kb : a1, 0, 19853 pr sol abi - 19853 kb : a2, 0, 19853 pr all abi - 19853 kb : a3, 0, 19853 #nbsp; : a4, 0, 0 section bytes : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 5252 kb : a1, 0, 5252 pr default abi - 5252 kb : a1, 0, 5252 pr sol abi - 5252 kb : a2, 0, 5252 pr all abi - 8705 kb : a3, 0, 8705 #nbsp; : a4, 0, 0 section 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 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 - 7850 kb : a2, 0, 7850 pr all abi - 9492 kb : a3, 0, 9492 #nbsp; : a4, 0, 0 section 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 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 - 11266 kb : a2, 0, 11266 pr all abi - 12698 kb : a3, 0, 12698 #nbsp; : a4, 0, 0 section 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 - 2719 kb : a2, 0, 2719 pr all abi - 3425 kb : a3, 0, 3425 #nbsp; : a4, 0, 0 section 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 - 2671 kb : a2, 0, 2671 pr all abi - 3317 kb : a3, 0, 3317 #nbsp; : a4, 0, 0 section 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 - 7367 kb : a2, 0, 7367 pr all abi - 7000 kb : a3, 0, 7000 #nbsp; : a4, 0, 0 section 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 - 2431 kb : a2, 0, 2431 pr all abi - 2821 kb : a3, 0, 2821 #nbsp; : a4, 0, 0 section 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 - 2443 kb : a2, 0, 2443 pr all abi - 2848 kb : a3, 0, 2848 #nbsp; : a4, 0, 0 section 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 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 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 cross-contract-calls : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8718 kb : a1, 0, 8718 pr default abi - 8718 kb : a1, 0, 8718 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2358 kb : a2, 0, 2358 pr all abi - 2797 kb : a3, 0, 2797 #nbsp; : a4, 0, 0 section 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 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 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 - 5143 kb : a2, 0, 5143 pr all abi - 5829 kb : a3, 0, 5829 #nbsp; : a4, 0, 0 section 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 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 - 1905 kb : a2, 0, 1905 pr all abi - 2365 kb : a3, 0, 2365 #nbsp; : a4, 0, 0 section 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 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 erc20 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10898 kb : a1, 0, 10898 pr default abi - 10898 kb : a1, 0, 10898 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section erc721 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 12861 kb : a1, 0, 12861 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 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 - 12911 kb : a2, 0, 12911 pr all abi - 19183 kb : a3, 0, 19183 #nbsp; : a4, 0, 0 section fallible-setter : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 2972 kb : a1, 0, 2972 pr default abi - 2972 kb : a1, 0, 2972 pr sol abi - 2972 kb : a2, 0, 2972 pr all abi - 3514 kb : a3, 0, 3514 #nbsp; : a4, 0, 0 section 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 - 2358 kb : a2, 0, 2358 pr all abi - 2797 kb : a3, 0, 2797 #nbsp; : a4, 0, 0 section 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 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 lang-err/call-builder : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 8478 kb : a1, 0, 8478 pr default abi - 8478 kb : a1, 0, 8478 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 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 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 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 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 mapping : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10622 kb : a1, 0, 10622 pr default abi - 10622 kb : a1, 0, 10622 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 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 - 16283 kb : a2, 0, 16283 pr all abi - 13139 kb : a3, 0, 13139 #nbsp; : a4, 0, 0 section 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 - 2236 kb : a2, 0, 2236 pr all abi - 2794 kb : a3, 0, 2794 #nbsp; : a4, 0, 0 section multi-contract-caller/adder : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3168 kb : a1, 0, 3168 pr default abi - 3168 kb : a1, 0, 3168 pr sol abi - 5060 kb : a2, 0, 5060 pr all abi - 3444 kb : a3, 0, 3444 #nbsp; : a4, 0, 0 section multi-contract-caller/subber : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 3172 kb : a1, 0, 3172 pr default abi - 3172 kb : a1, 0, 3172 pr sol abi - 5066 kb : a2, 0, 5066 pr all abi - 3456 kb : a3, 0, 3456 #nbsp; : a4, 0, 0 section 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 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 - 2619 kb : a2, 0, 2619 pr all abi - 3112 kb : a3, 0, 3112 #nbsp; : a4, 0, 0 section 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 - 2973 kb : a2, 0, 2973 pr all abi - 3621 kb : a3, 0, 3621 #nbsp; : a4, 0, 0 section 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 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 - 12253 kb : a1, 0, 12253 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 6677 kb : a1, 0, 6677 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2574 kb : a1, 0, 2574 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2510 kb : a1, 0, 2510 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 8965 kb : a1, 0, 8965 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 6037 kb : a1, 0, 6037 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2353 kb : a1, 0, 2353 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2245 kb : a1, 0, 2245 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 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 storage-types : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 16779 kb : a1, 0, 16779 pr default abi - 16779 kb : a1, 0, 16779 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section system-precompile : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 10622 kb : a1, 0, 10622 pr default abi - 10622 kb : a1, 0, 10622 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 6037 kb : a2, 0, 6037 pr all abi - 4769 kb : a3, 0, 4769 #nbsp; : a4, 0, 0 section 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 - 2353 kb : a2, 0, 2353 pr all abi - 2794 kb : a3, 0, 2794 #nbsp; : a4, 0, 0 section trait-erc20 : a5, 0, 0 v5 default abi - 0 kb : a1, 0, 0 master default abi - 11226 kb : a1, 0, 11226 pr default abi - 11226 kb : a1, 0, 11226 pr sol abi - 0 kb : a2, 0, 0 pr all abi - 0 kb : a3, 0, 0 #nbsp; : a4, 0, 0 section 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 - 2245 kb : a2, 0, 2245 pr all abi - 2611 kb : a3, 0, 2611 #nbsp; : a4, 0, 0 section 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 - 2522 kb : a2, 0, 2522 pr all abi - 3048 kb : a3, 0, 3048 #nbsp; : a4, 0, 0 section 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 - 9624 kb : a2, 0, 9624 pr all abi - 11588 kb : a3, 0, 11588 #nbsp; : a4, 0, 0 section 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 - 2700 kb : a2, 0, 2700 pr all abi - 3464 kb : a3, 0, 3464 #nbsp; : a4, 0, 0 section 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 - 2699 kb : a2, 0, 2699 pr all abi - 3466 kb : a3, 0, 3466 #nbsp; : a4, 0, 0 section 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 - 2397 kb : a2, 0, 2397 pr all abi - 2999 kb : a3, 0, 2999 #nbsp; : a4, 0, 0 section 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 - 2397 kb : a2, 0, 2397 pr all abi - 2999 kb : a3, 0, 2999 #nbsp; : a4, 0, 0 section 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 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 - 2946 kb : a2, 0, 2946 pr all abi - 3443 kb : a3, 0, 3443 #nbsp; : a4, 0, 0 section 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 - 2381 kb : a2, 0, 2381 pr all abi - 2938 kb : a3, 0, 2938 #nbsp; : a4, 0, 0 section 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 
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
all-abi/events 19.853 19.853 0 0%
bytes 5.252 5.252 0 0%
complex-storage-structures 4.857 7.85 2.993 62% 📈
contract-invocation 8.293 11.266 2.973 36% 📈
contract-invocation/contract1 2.081 2.719 0.638 31% 📈
contract-invocation/contract2 1.996 2.671 0.675 34% 📈
contract-invocation/virtual_contract 4.626 7.367 2.741 59% 📈
contract-invocation/virtual_contract_ver1 1.954 2.431 0.477 24% 📈
contract-invocation/virtual_contract_ver2 1.966 2.443 0.477 24% 📈
contract-terminate 1.551 1.517 -0.034 -1% 📉
cross-contract-calls/other-contract 1.775 2.358 0.583 33% 📈
custom-environment 3.394 1.738 -1.656 -48% 📉
debugging-strategies 4.445 5.143 0.698 16% 📈
e2e-call-runtime 1.563 1.905 0.342 22% 📈
events 8.873 12.911 4.038 46% 📈
fallible-setter 2.972 2.972 0 0%
flipper 1.775 2.358 0.583 33% 📈
multi-contract-caller 11.926 16.283 4.357 37% 📈
multi-contract-caller/accumulator 1.134 2.236 1.102 97% 📈
multi-contract-caller/adder 3.168 5.06 1.892 60% 📈
multi-contract-caller/subber 3.172 5.066 1.894 60% 📈
overflow-safety 1.31 2.619 1.309 100% 📈
own-code-hash 3.065 2.973 -0.092 -2% 📉
sr25519-verification 0.853 0.777 -0.076 -8% 📉
trait-dyn-cross-contract-calls 3.96 6.037 2.077 52% 📈
trait-dyn-cross-contract-calls/contracts/incrementer 1.799 2.353 0.554 31% 📈
trait-flipper 1.728 2.245 0.517 30% 📈
trait-incrementer 1.87 2.522 0.652 35% 📈
upgradeable-contracts/delegator 6.452 9.624 3.172 49% 📈
upgradeable-contracts/delegator/delegatee 2.849 2.7 -0.149 -4% 📉
upgradeable-contracts/delegator/delegatee2 2.849 2.699 -0.15 -4% 📉
upgradeable-contracts/set-code-hash 1.723 2.397 0.674 39% 📈
upgradeable-contracts/set-code-hash-migration 1.723 2.397 0.674 39% 📈
upgradeable-contracts/set-code-hash-migration/migration 1.877 2.616 0.739 39% 📈
upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 2.946 1.045 55% 📈
upgradeable-contracts/set-code-hash/updated-incrementer 1.675 2.381 0.706 42% 📈
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
all-abi/events 19.853 19.853 0 0%
bytes 5.252 8.705 3.453 66% 📈
complex-storage-structures 4.857 9.492 4.635 95% 📈
contract-invocation 8.293 12.698 4.405 53% 📈
contract-invocation/contract1 2.081 3.425 1.344 65% 📈
contract-invocation/contract2 1.996 3.317 1.321 66% 📈
contract-invocation/virtual_contract 4.626 7 2.374 51% 📈
contract-invocation/virtual_contract_ver1 1.954 2.821 0.867 44% 📈
contract-invocation/virtual_contract_ver2 1.966 2.848 0.882 45% 📈
contract-terminate 1.551 1.646 0.095 6% 📈
contract-transfer 2.736 3.12 0.384 14% 📈
cross-contract-calls/other-contract 1.775 2.797 1.022 58% 📈
custom-environment 3.394 3.845 0.451 13% 📈
debugging-strategies 4.445 5.829 1.384 31% 📈
e2e-call-runtime 1.563 2.365 0.802 51% 📈
events 8.873 19.183 10.31 116% 📈
fallible-setter 2.972 3.514 0.542 18% 📈
flipper 1.775 2.797 1.022 58% 📈
multi-contract-caller 11.926 13.139 1.213 10% 📈
multi-contract-caller/accumulator 1.134 2.794 1.66 146% 📈
multi-contract-caller/adder 3.168 3.444 0.276 9% 📈
multi-contract-caller/subber 3.172 3.456 0.284 9% 📈
overflow-safety 1.31 3.112 1.802 138% 📈
own-code-hash 3.065 3.621 0.556 18% 📈
sr25519-verification 0.853 0.98 0.127 15% 📈
trait-dyn-cross-contract-calls 3.96 4.769 0.809 20% 📈
trait-dyn-cross-contract-calls/contracts/incrementer 1.799 2.794 0.995 55% 📈
trait-flipper 1.728 2.611 0.883 51% 📈
trait-incrementer 1.87 3.048 1.178 63% 📈
upgradeable-contracts/delegator 6.452 11.588 5.136 80% 📈
upgradeable-contracts/delegator/delegatee 2.849 3.464 0.615 22% 📈
upgradeable-contracts/delegator/delegatee2 2.849 3.466 0.617 22% 📈
upgradeable-contracts/set-code-hash 1.723 2.999 1.276 74% 📈
upgradeable-contracts/set-code-hash-migration 1.723 2.999 1.276 74% 📈
upgradeable-contracts/set-code-hash-migration/migration 1.877 2.584 0.707 38% 📈
upgradeable-contracts/set-code-hash-migration/updated-incrementer 1.901 3.443 1.542 81% 📈
upgradeable-contracts/set-code-hash/updated-incrementer 1.675 2.938 1.263 75% 📈
wildcard-selector 2.948 5.211 2.263 77% 📈

Link to the run | Last update: Wed Sep 17 21:55:23 CEST 2025

Copy link
Collaborator

@cmichi cmichi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@davidsemakula davidsemakula merged commit 02dbc88 into master Sep 17, 2025
35 checks passed
@davidsemakula davidsemakula deleted the semakula/trait-def-name-override branch September 17, 2025 22:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants