Skip to content

Conversation

@BobTheBuidler
Copy link
Owner

  • fix: Made function params Optional, as None is the default input

  • feat: Made AsyncWeb3 class Generic to fix type errors when importing Web3

  • refactor: remove unnecessary noqa: E501 uses

  • fix: remove Optional where it isn't optional

  • fix: Use Optional where appropriate

  • chore: add newsfragment for Make AsyncWeb3 Generic ethereum/web3.py#3761

  • fix: Removed where it isn't optional

  • Remove unnecessary changes


What was wrong?

Related to Issue #
Closes #

How was it fixed?

Todo:

  • Clean up commit history
  • Add or update documentation related to these changes
  • Add entry to the release notes

Cute Animal Picture

Put a link to a cute animal picture inside the parenthesis-->

aleexharris and others added 4 commits October 17, 2025 03:24
* fix: Made function params Optional, as None is the default input

* feat: Made AsyncWeb3 class Generic to fix type errors when importing Web3

* refactor: remove unnecessary noqa: E501 uses

* fix: remove `Optional` where it isn't optional

* fix: Use `Optional` where appropriate

* chore: add newsfragment for ethereum#3761

* fix: Removed  where it isn't optional

* Remove unnecessary changes

---------

Co-authored-by: fselmo <[email protected]>
Co-authored-by: kclowes <[email protected]>
@BobTheBuidler BobTheBuidler merged commit 091a244 into master Oct 17, 2025
1 of 2 checks passed
@BobTheBuidler BobTheBuidler deleted the update branch October 17, 2025 03:51
@github-actions
Copy link

Pytest Benchmark Diff

ens/base_ens - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
is_valid_name[] 0.0000017317065662625313 0.0000010020559648636789 42.13% 72.82% 1.73x
is_valid_name[a..eth] 0.000024695279089731326 0.00003076009240179391 -24.56% -19.72% 0.80x
is_valid_name[a.eth..] 0.00002496237664569284 0.00003041564029475861 -21.85% -17.93% 0.82x
is_valid_name[a.eth.] 0.000025135798573233828 0.00003060029501947415 -21.74% -17.86% 0.82x
is_valid_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.22483655180003553 0.23664573599994582 -5.25% -4.99% 0.95x
is_valid_name[alice.eth] 0.010490703729182371 0.010846167333342706 -3.39% -3.28% 0.97x
is_valid_name[bob.eth] 0.006170238621128966 0.0067505760460583614 -9.41% -8.60% 0.91x
is_valid_name[emoji\U0001f468\U0001f3fb.eth] 0.27443441839996013 0.24427429040001697 10.99% 12.35% 1.12x
is_valid_name[subdomain.alice.eth] 0.030623229090927205 0.03189916331247389 -4.17% -4.00% 0.96x
labelhash[] 0.00013596409565623375 0.00008313914943084701 38.85% 63.54% 1.64x
labelhash[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa] 0.22486485199997333 0.23332899959996212 -3.76% -3.63% 0.96x
labelhash[alice] 0.007638742656245867 0.007735752375001681 -1.27% -1.25% 0.99x
labelhash[bob] 0.0033946048900328533 0.003423918835061468 -0.86% -0.86% 0.99x
labelhash[emoji\U0001f468\U0001f3fb] 0.2491180426000028 0.23550013340000078 5.47% 5.78% 1.06x
labelhash[xn--fiqs8s] 0.023993508595243015 0.02590933294736954 -7.98% -7.39% 0.93x
namehash[] 0.000009526487896874076 0.0000031937026766313254 66.48% 198.29% 2.98x
namehash[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.4690994488000797 0.4851318647999051 -3.42% -3.30% 0.97x
namehash[alice.eth] 0.021597956195641334 0.022306453121955644 -3.28% -3.18% 0.97x
namehash[bob.eth] 0.013593331608096894 0.013883566780827071 -2.14% -2.09% 0.98x
namehash[emoji\U0001f468\U0001f3fb.eth] 0.5322696932000326 0.5064032475999738 4.86% 5.11% 1.05x
namehash[subdomain.alice.eth] 0.06412804256243021 0.06583446633330822 -2.66% -2.59% 0.97x
nameprep[] 0.000008389954242931955 0.0000030675403962344086 63.44% 173.51% 2.74x
nameprep[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.23147322440008794 0.23892758660003893 -3.22% -3.12% 0.97x
nameprep[alice.eth] 0.010359374206191862 0.010733261456548264 -3.61% -3.48% 0.97x
nameprep[bob.eth] 0.0062202089750073245 0.006699279610383461 -7.70% -7.15% 0.93x
nameprep[emoji\U0001f468\U0001f3fb.eth] 0.2549062213999605 0.22951401039999836 9.96% 11.06% 1.11x
nameprep[subdomain.alice.eth] 0.030742847242408694 0.03138695953123971 -2.10% -2.05% 0.98x
parent[] 9.8341923687389e-7 8.448058591122396e-7 14.10% 16.41% 1.16x
parent[bar.eth] 0.000003639898680420112 0.0000024714372828663653 32.10% 47.28% 1.47x
parent[eth] 0.000002000912259576109 0.000001430762174671718 28.49% 39.85% 1.40x
parent[foo.bar.eth] 0.000004250885412337583 0.00000316712666572091 25.49% 34.22% 1.34x
parent[sub.sub2.foo.bar.eth] 0.000004930303730103915 0.0000039049934147180475 20.80% 26.26% 1.26x
reverse_domain[0x0000000000000000000000000000000000000000] 0.00004990110870614766 0.00001701572583867374 65.90% 193.26% 2.93x
reverse_domain[0x1111111111111111111111111111111111111111] 0.00005104897086521948 0.000016702070459698362 67.28% 205.64% 3.06x
reverse_domain[0x314159265dD8dbb310642f98f50C066173C1259b] 0.000050643402229247965 0.00001696964610007298 66.49% 198.44% 2.98x

ens/ens - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
address[] 0.000013923149708167806 0.000014470852064248277 -3.93% -3.78% 0.96x
address[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.000013825457448665548 0.000013732488555749916 0.67% 0.68% 1.01x
address[alice.eth] 0.00001413145241471538 0.000013720193308726616 2.91% 3.00% 1.03x
address[bob.eth] 0.000013859079666105746 0.0000138589167755989 0.00% 0.00% 1.00x
address[emoji\U0001f468\U0001f3fb.eth] 0.00001445468045090227 0.00001389862854287192 3.85% 4.00% 1.04x
address[subdomain.alice.eth] 0.000014018822556915776 0.000013712096808811335 2.19% 2.24% 1.02x

ens/normalization - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
normalize_name_ensip15[] 0.00014745098806590216 0.00014510114696577678 1.59% 1.62% 1.02x
normalize_name_ensip15[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.0001452118743529425 0.00014496792356607873 0.17% 0.17% 1.00x
normalize_name_ensip15[alice.eth] 0.0001507420267904769 0.00014390422815613606 4.54% 4.75% 1.05x
normalize_name_ensip15[bob.eth] 0.00014572130322108856 0.00014382844225556586 1.30% 1.32% 1.01x
normalize_name_ensip15[emoji\U0001f468\U0001f3fb.eth] 0.00014856307210379458 0.00014230655078784917 4.21% 4.40% 1.04x
normalize_name_ensip15[subdomain.alice.eth] 0.00014614494032217962 0.00014332337747670018 1.93% 1.97% 1.02x

ens/utils - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
address_to_reverse_domain[0x0000000000000000000000000000000000000000] 0.0024820381825252894 0.0008230352392041237 66.84% 201.57% 3.02x
address_to_reverse_domain[0x1111111111111111111111111111111111111111] 0.002523743563778439 0.0008170870881077763 67.62% 208.87% 3.09x
address_to_reverse_domain[0x314159265dD8dbb310642f98f50C066173C1259b] 0.0025244903860066705 0.0008225142904871481 67.42% 206.92% 3.07x
dns_encode_name[] 0.000006535691134955834 0.00000438290927976718 32.94% 49.12% 1.49x
dns_encode_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.22961587140007395 0.235904917400012 -2.74% -2.67% 0.97x
dns_encode_name[alice.eth] 0.010843479376350638 0.011049964065216005 -1.90% -1.87% 0.98x
dns_encode_name[bob.eth] 0.006571257019491635 0.0067030925163463016 -2.01% -1.97% 0.98x
dns_encode_name[emoji\U0001f468\U0001f3fb.eth] 0.25369772320004813 0.25800491500003775 -1.70% -1.67% 0.98x
dns_encode_name[subdomain.alice.eth] 0.031076947424267157 0.03167320450000233 -1.92% -1.88% 0.98x
estimate_auction_start_gas[labels0] 0.00007449256570707886 0.000046639063937497446 37.39% 59.72% 1.60x
estimate_auction_start_gas[labels1] 0.00007505748538641355 0.00004609712829058852 38.58% 62.82% 1.63x
estimate_auction_start_gas[labels2] 0.00006590711779753855 0.00004538141277158105 31.14% 45.23% 1.45x
is_empty_name[ ] 0.000055369520482482225 0.00004020293643489693 27.39% 37.73% 1.38x
is_empty_name[.] 0.00005489628713902893 0.00004117179679458776 25.00% 33.33% 1.33x
is_empty_name[0] 0.00005527563523180771 0.00004001356261093304 27.61% 38.14% 1.38x
is_empty_name[1] 0.000054604232742264684 0.000039755847832069485 27.19% 37.35% 1.37x
is_empty_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.000057425629903880575 0.00003965189193743995 30.95% 44.82% 1.45x
is_empty_name[alice.eth] 0.00005896710494442362 0.00004029949084696129 31.66% 46.32% 1.46x
is_empty_name[bob.eth] 0.000057602774388755955 0.000040094557250260604 30.39% 43.67% 1.44x
is_empty_name[emoji\U0001f468\U0001f3fb.eth] 0.00005894611961292514 0.00004114589944728281 30.20% 43.26% 1.43x
is_empty_name[subdomain.alice.eth] 0.00005831415158541649 0.00003974059926984176 31.85% 46.74% 1.47x
is_none_or_zero_address[] 0.000043143061428896045 0.0000386322455335131 10.46% 11.68% 1.12x
is_none_or_zero_address[0x0000000000000000000000000000000000000000] 0.00004897970874469599 0.000045189348520695204 7.74% 8.39% 1.08x
is_none_or_zero_address[0x1111111111111111111111111111111111111111] 0.00005301327419475204 0.00004533806244162566 14.48% 16.93% 1.17x
is_none_or_zero_address[0x314159265dD8dbb310642f98f50C066173C1259b] 0.00005335011464174764 0.00004503392913875557 15.59% 18.47% 1.18x
is_valid_ens_name[] 0.000001812945224946473 0.0000013963105024240703 22.98% 29.84% 1.30x
is_valid_ens_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.227203968799995 0.23901957900002344 -5.20% -4.94% 0.95x
is_valid_ens_name[alice.eth] 0.010654848499993838 0.010901210301089152 -2.31% -2.26% 0.98x
is_valid_ens_name[bar] 0.0000019271553203436456 0.000001509525393476876 21.67% 27.67% 1.28x
is_valid_ens_name[baz] 0.000001909900504725305 0.0000015019301539092187 21.36% 27.16% 1.27x
is_valid_ens_name[bob.eth] 0.006217323061731703 0.006509195928570139 -4.69% -4.48% 0.96x
is_valid_ens_name[emoji\U0001f468\U0001f3fb.eth] 0.2505063288000201 0.2291924740000013 8.51% 9.30% 1.09x
is_valid_ens_name[foo] 0.0000019198124859750485 0.0000015160720297447305 21.03% 26.63% 1.27x
is_valid_ens_name[subdomain.alice.eth] 0.030467224242405184 0.03198831212500153 -4.99% -4.76% 0.95x
is_valid_name[] 0.0000015876704013353767 0.0000010426476453957464 34.33% 52.27% 1.52x
is_valid_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.22722883000001276 0.2509912295999584 -10.46% -9.47% 0.91x
is_valid_name[alice.eth] 0.010519404854164804 0.010881181108676747 -3.44% -3.32% 0.97x
is_valid_name[bob.eth] 0.006273271203705614 0.006542302121778367 -4.29% -4.11% 0.96x
is_valid_name[emoji\U0001f468\U0001f3fb.eth] 0.25712743980006963 0.23631779759998608 8.09% 8.81% 1.09x
is_valid_name[subdomain.alice.eth] 0.03042454621210268 0.033285407064524056 -9.40% -8.59% 0.91x
label_to_hash[] 0.00013660648637186642 0.00008359042801688272 38.81% 63.42% 1.63x
label_to_hash[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa] 0.2297162809999918 0.2301354715999878 -0.18% -0.18% 1.00x
label_to_hash[alice] 0.007735508453844467 0.007730860007936393 0.06% 0.06% 1.00x
label_to_hash[bob] 0.003413844653840153 0.0033738966962461865 1.17% 1.18% 1.01x
label_to_hash[emoji\U0001f468\U0001f3fb] 0.249071970399973 0.23281466080002247 6.53% 6.98% 1.07x
label_to_hash[xn--fiqs8s] 0.023871953837241625 0.024490044195118105 -2.59% -2.52% 0.97x
normal_name_to_hash[] 0.0000016328353491103081 9.925658097396342e-7 39.21% 64.51% 1.65x
normal_name_to_hash[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.23070729659998507 0.23426914839997154 -1.54% -1.52% 0.98x
normal_name_to_hash[alice.eth] 0.011384663337202953 0.011494388852267693 -0.96% -0.95% 0.99x
normal_name_to_hash[bob.eth] 0.007138917188410852 0.007022730352122713 1.63% 1.65% 1.02x
normal_name_to_hash[emoji\U0001f468\U0001f3fb.eth] 0.25943032059999493 0.2575280958000349 0.73% 0.74% 1.01x
normal_name_to_hash[subdomain.alice.eth] 0.03181581293752345 0.03238626758063894 -1.79% -1.76% 0.98x
normalize_name[] 0.000008022364126001529 0.0000030570646656688354 61.89% 162.42% 2.62x
normalize_name[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.23280582479997064 0.23807057039994106 -2.26% -2.21% 0.98x
normalize_name[alice.eth] 0.01044504384693872 0.010843487053759702 -3.81% -3.67% 0.96x
normalize_name[bob.eth] 0.006455772503147656 0.006640420750000267 -2.86% -2.78% 0.97x
normalize_name[emoji\U0001f468\U0001f3fb.eth] 0.25075603660002344 0.2320205114000146 7.47% 8.07% 1.08x
normalize_name[subdomain.alice.eth] 0.030714674882373776 0.03132363059376786 -1.98% -1.94% 0.98x
raw_name_to_hash[] 0.000009587073775246012 0.0000032496259495748336 66.10% 195.02% 2.95x
raw_name_to_hash[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.4553172053999788 0.46661950779998734 -2.48% -2.42% 0.98x
raw_name_to_hash[alice.eth] 0.021824787808525876 0.02220186311109905 -1.73% -1.70% 0.98x
raw_name_to_hash[bob.eth] 0.01339794122666414 0.013433790918909566 -0.27% -0.27% 1.00x
raw_name_to_hash[emoji\U0001f468\U0001f3fb.eth] 0.506688208200012 0.4631069457999729 8.60% 9.41% 1.09x
raw_name_to_hash[subdomain.alice.eth] 0.06224959058823408 0.06339526924999461 -1.84% -1.81% 0.98x
sha3_text[0] 0.00011921952869850839 0.00007531124938468987 36.83% 58.30% 1.58x
sha3_text[1] 0.00011948351146389421 0.00007591890370312918 36.46% 57.38% 1.57x
sha3_text[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.eth] 0.000127818536445167 0.00008403746816488686 34.25% 52.10% 1.52x
sha3_text[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa] 0.00012963721760851708 0.00008504450212145086 34.40% 52.43% 1.52x
sha3_text[alice.eth] 0.00012945894167586532 0.00008394422174399897 35.16% 54.22% 1.54x
sha3_text[alice] 0.00012918102593531967 0.00008367543935224912 35.23% 54.38% 1.54x
sha3_text[bob.eth] 0.00012943397480206928 0.00008393131306258847 35.16% 54.21% 1.54x
sha3_text[bob] 0.00013072949387167674 0.000083984897537745 35.76% 55.66% 1.56x
sha3_text[emoji\U0001f468\U0001f3fb.eth] 0.0001289223564250213 0.00008403871215145079 34.81% 53.41% 1.53x
sha3_text[emoji\U0001f468\U0001f3fb] 0.00012941191688952363 0.00008486179633566833 34.43% 52.50% 1.52x
sha3_text[subdomain.alice.eth] 0.00012922406570966852 0.00008373734625300118 35.20% 54.32% 1.54x
sha3_text[xn--fiqs8s] 0.00012913552772425284 0.00008421996180624888 34.78% 53.33% 1.53x

web3/_utils/abi - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
abi_data_tree 0.00029465299014533265 0.00025474862564166777 13.54% 15.66% 1.16x
fallback_func_abi_exists 0.000259478529674105 0.00024979910214164934 3.73% 3.87% 1.04x
filter_by_argument_name[a] 0.0006418630418363729 0.00037405654854797337 41.72% 71.60% 1.72x
filter_by_argument_name[a+b] 0.0006611384698689358 0.00040084168859116253 39.37% 64.94% 1.65x
filter_by_argument_name[b] 0.0006407874610229455 0.0003799279002362996 40.71% 68.66% 1.69x
filter_by_argument_name[c] 0.0006512574292375238 0.00038347180469705164 41.12% 69.83% 1.70x
filter_by_argument_name[notfound] 0.0006450204359286515 0.00037892780783955793 41.25% 70.22% 1.70x
filter_by_argument_type[address] 0.0005787665205039176 0.0005948370222361487 -2.78% -2.70% 0.97x
filter_by_argument_type[notatype] 0.000574368832530625 0.0005813015750771168 -1.21% -1.19% 0.99x
filter_by_argument_type[string] 0.0005804573834858283 0.0005935766386664292 -2.26% -2.21% 0.98x
filter_by_argument_type[uint+address] 0.000595545687695628 0.0005968658217983328 -0.22% -0.22% 1.00x
filter_by_argument_type[uint256] 0.0005812225482459732 0.0005888066939020388 -1.30% -1.29% 0.99x
filter_by_types[constructor] 0.00003628347801005471 0.000036806154615878375 -1.44% -1.42% 0.99x
filter_by_types[event] 0.0000362828271004836 0.000037076025703576056 -2.19% -2.14% 0.98x
filter_by_types[fallback] 0.00003681489551398857 0.000037950433018517453 -3.08% -2.99% 0.97x
filter_by_types[func+event] 0.00004263137072417874 0.00004141785600469872 2.85% 2.93% 1.03x
filter_by_types[function] 0.00003649939078305131 0.000037682035249268215 -3.24% -3.14% 0.97x
filter_by_types[none] 0.00003717714043898351 0.00003638611520909046 2.13% 2.17% 1.02x
filter_by_types[receive] 0.00003621297626695167 0.00003867059868588138 -6.79% -6.36% 0.94x
find_constructor_abi_element_by_type 0.000033993490218794524 0.000033738385243187944 0.75% 0.76% 1.01x
get_abi_element_signature[custom] 0.000052404383570107685 0.00004953512482270008 5.48% 5.79% 1.06x
get_abi_element_signature[fallback] 0.00002107038392804875 0.000020364067807949028 3.35% 3.47% 1.03x
get_abi_element_signature[receive] 0.000027775132817920308 0.00002777863674548678 -0.01% -0.01% 1.00x
get_abi_element_signature[transfer] 0.00005760663964813377 0.000054398009988024964 5.57% 5.90% 1.06x
get_name_from_abi_element_identifier[custom] 0.00004270834506235938 0.000038873139855251016 8.98% 9.87% 1.10x
get_name_from_abi_element_identifier[fallback] 0.000011891931567362325 0.000011832168783373679 0.50% 0.51% 1.01x
get_name_from_abi_element_identifier[func] 0.000041360270951576595 0.00003759559730790128 9.10% 10.01% 1.10x
get_name_from_abi_element_identifier[receive] 0.000018311875149426527 0.000018059418012496366 1.38% 1.40% 1.01x
get_tuple_type_str_parts[not-tuple] 0.000021705895054333675 0.000021460849338260514 1.13% 1.14% 1.01x
get_tuple_type_str_parts[one-dim] 0.000071987487450319 0.0000724631602330121 -0.66% -0.66% 0.99x
get_tuple_type_str_parts[plain] 0.000046478960219699514 0.00004676875634285888 -0.62% -0.62% 0.99x
get_tuple_type_str_parts[two-dim] 0.00009199245480056095 0.00009182949353761146 0.18% 0.18% 1.00x
is_address_type[address] 0.000043403824552776254 0.000043775766636384516 -0.86% -0.85% 0.99x
is_address_type[array] 0.000046710540667158754 0.00004708245749106017 -0.80% -0.79% 0.99x
is_address_type[bool] 0.00004225805922701788 0.000042509451828789114 -0.59% -0.59% 0.99x
is_address_type[bytes] 0.000043354133218102116 0.00004345232908055858 -0.23% -0.23% 1.00x
is_address_type[bytes32] 0.000044710123834404425 0.00004394277882720941 1.72% 1.75% 1.02x
is_address_type[bytes33] 0.000045713851956141954 0.0000464900561269914 -1.70% -1.67% 0.98x
is_address_type[empty] 0.0000428484388530953 0.00004289970318904016 -0.12% -0.12% 1.00x
is_address_type[enum] 0.000044933167647837024 0.00004358069706585163 3.01% 3.10% 1.03x
is_address_type[int256] 0.00004252658277913995 0.000043409683751188966 -2.08% -2.03% 0.98x
is_address_type[invalid] 0.00004421602245893788 0.00004441459218879352 -0.45% -0.45% 1.00x
is_address_type[string] 0.00004262924632754317 0.0000443233327238235 -3.97% -3.82% 0.96x
is_address_type[tuple-array] 0.00004435337188827203 0.000043885034627002895 1.06% 1.07% 1.01x
is_address_type[tuple] 0.000042827211200381214 0.00004250130657444248 0.76% 0.77% 1.01x
is_address_type[uint256] 0.00004442915975338973 0.000044034649623059005 0.89% 0.90% 1.01x
is_array_type[address] 0.00039083922680186676 0.0004030319528054997 -3.12% -3.03% 0.97x
is_array_type[array] 0.000398231093212533 0.0004113523399675825 -3.29% -3.19% 0.97x
is_array_type[bool] 0.0003631898453962382 0.0003751914823365191 -3.30% -3.20% 0.97x
is_array_type[bytes] 0.0003717614342534707 0.00037934596561205777 -2.04% -2.00% 0.98x
is_array_type[bytes32] 0.0003911393035131297 0.00040209318702596824 -2.80% -2.72% 0.97x
is_array_type[bytes33] 0.00038954588884047674 0.00040035324919316534 -2.77% -2.70% 0.97x
is_array_type[empty] 0.00029912559968050466 0.00031005524400605435 -3.65% -3.53% 0.96x
is_array_type[enum] 0.00038153308510795506 0.00039384199129600543 -3.23% -3.13% 0.97x
is_array_type[int256] 0.00037920756554492453 0.0003953923902994776 -4.27% -4.09% 0.96x
is_array_type[invalid] 0.0003984243105543335 0.0004109841616389272 -3.15% -3.06% 0.97x
is_array_type[string] 0.00037933292335069865 0.00039678814342539485 -4.60% -4.40% 0.96x
is_array_type[tuple-array] 0.0004016887099665611 0.0004116968636761487 -2.49% -2.43% 0.98x
is_array_type[tuple] 0.00037086601586188724 0.00038500233008537804 -3.81% -3.67% 0.96x
is_array_type[uint256] 0.0003903375411060163 0.0004038135773626845 -3.45% -3.34% 0.97x
is_bool_type[address] 0.000042687472994175924 0.000043139803558279115 -1.06% -1.05% 0.99x
is_bool_type[array] 0.00004447590146231437 0.00004469287995875829 -0.49% -0.49% 1.00x
is_bool_type[bool] 0.000043435151663977384 0.00004362181741232802 -0.43% -0.43% 1.00x
is_bool_type[bytes] 0.00004403276895482081 0.00004338971306241153 1.46% 1.48% 1.01x
is_bool_type[bytes32] 0.00004247239164914257 0.000043300684087311194 -1.95% -1.91% 0.98x
is_bool_type[bytes33] 0.000044418729227078056 0.00004456166357877802 -0.32% -0.32% 1.00x
is_bool_type[empty] 0.0000436306476661326 0.000042927920445460394 1.61% 1.64% 1.02x
is_bool_type[enum] 0.00004428925679032923 0.000044760371507011953 -1.06% -1.05% 0.99x
is_bool_type[int256] 0.00004316562205213442 0.00004393391154596786 -1.78% -1.75% 0.98x
is_bool_type[invalid] 0.00004432047031074138 0.00004466568229239022 -0.78% -0.77% 0.99x
is_bool_type[string] 0.000043054104607173196 0.00004311406977176957 -0.14% -0.14% 1.00x
is_bool_type[tuple-array] 0.0000450199557484951 0.000044638472226020266 0.85% 0.85% 1.01x
is_bool_type[tuple] 0.000043510333722070664 0.00004308678297966595 0.97% 0.98% 1.01x
is_bool_type[uint256] 0.00004295761569063345 0.00004261283491977583 0.80% 0.81% 1.01x
is_bytes_type[address] 0.00031063959695909883 0.00030736760266919364 1.05% 1.06% 1.01x
is_bytes_type[array] 0.0003125682456100574 0.00031053137552779274 0.65% 0.66% 1.01x
is_bytes_type[bool] 0.00027833083718986406 0.00028862870257067436 -3.70% -3.57% 0.96x
is_bytes_type[bytes] 0.00027728615453365173 0.00027568941229913285 0.58% 0.58% 1.01x
is_bytes_type[bytes32] 0.00029574970727258175 0.0003001344215818283 -1.48% -1.46% 0.99x
is_bytes_type[bytes33] 0.00030958196558187505 0.0003125516493205829 -0.96% -0.95% 0.99x
is_bytes_type[empty] 0.00028106968715343274 0.0002816139980563769 -0.19% -0.19% 1.00x
is_bytes_type[enum] 0.0003006409627205734 0.000296644273125727 1.33% 1.35% 1.01x
is_bytes_type[int256] 0.0002964537893774981 0.0003011282418063452 -1.58% -1.55% 0.98x
is_bytes_type[invalid] 0.00028381776505354673 0.0002814209579497225 0.84% 0.85% 1.01x
is_bytes_type[string] 0.00030119955789420397 0.0002980611865117963 1.04% 1.05% 1.01x
is_bytes_type[tuple-array] 0.0002834439120439713 0.0002866937195742585 -1.15% -1.13% 0.99x
is_bytes_type[tuple] 0.00028972270408015606 0.0002832402201081956 2.24% 2.29% 1.02x
is_bytes_type[uint256] 0.00030683566515080833 0.00031324453325002477 -2.09% -2.05% 0.98x
is_int_type[address] 0.00019944772783322612 0.00019986559284850607 -0.21% -0.21% 1.00x
is_int_type[array] 0.00019729199581723482 0.0001998601592342232 -1.30% -1.28% 0.99x
is_int_type[bool] 0.00019664840196221176 0.00019739529071495211 -0.38% -0.38% 1.00x
is_int_type[bytes] 0.00025863723355536313 0.00025493377395410495 1.43% 1.45% 1.01x
is_int_type[bytes32] 0.00019971731412715907 0.0001992774363311787 0.22% 0.22% 1.00x
is_int_type[bytes33] 0.0001997502636946582 0.00019817717956784156 0.79% 0.79% 1.01x
is_int_type[empty] 0.00019700631363308286 0.0001998441851302969 -1.44% -1.42% 0.99x
is_int_type[enum] 0.00022752532635378865 0.0002387718288680534 -4.94% -4.71% 0.95x
is_int_type[int256] 0.00023422176184740177 0.00022887519101087047 2.28% 2.34% 1.02x
is_int_type[invalid] 0.00019946419987935493 0.00020408964100979612 -2.32% -2.27% 0.98x
is_int_type[string] 0.00023012270932984126 0.00023195806067735265 -0.80% -0.79% 0.99x
is_int_type[tuple-array] 0.00019798658805440407 0.00020438127734485377 -3.23% -3.13% 0.97x
is_int_type[tuple] 0.00021031900991079757 0.00021493093254700907 -2.19% -2.15% 0.98x
is_int_type[uint256] 0.00019931513094463606 0.00019787432382426296 0.72% 0.73% 1.01x
is_probably_enum[address] 0.00006606733128344454 0.00006913358233308098 -4.64% -4.44% 0.96x
is_probably_enum[empty] 0.00006115053770749762 0.00006333501228329015 -3.57% -3.45% 0.97x
is_probably_enum[enum] 0.0000654357918670033 0.00006858822102746802 -4.82% -4.60% 0.95x
is_probably_enum[lib-dot] 0.00006909167667169495 0.00006949042859718978 -0.58% -0.57% 0.99x
is_probably_enum[lib-enum] 0.00007411630096346572 0.000076433992918117 -3.13% -3.03% 0.97x
is_probably_enum[uint256] 0.00006595904446235339 0.0000684332387730162 -3.75% -3.62% 0.96x
is_recognized_type[address] 0.00007943436061592564 0.00008465853592340357 -6.58% -6.17% 0.94x
is_recognized_type[array] 0.00008443911923085893 0.00008984207356610904 -6.40% -6.01% 0.94x
is_recognized_type[bool] 0.00007922853061890403 0.00008372748932493327 -5.68% -5.37% 0.95x
is_recognized_type[bytes] 0.00015716809244634573 0.0001614850397853548 -2.75% -2.67% 0.97x
is_recognized_type[bytes32] 0.00015056052481085826 0.00015913345602859715 -5.69% -5.39% 0.95x
is_recognized_type[bytes33] 0.00013896386310021858 0.0001458187828831931 -4.93% -4.70% 0.95x
is_recognized_type[empty] 0.00006131922217841507 0.00006667598819556504 -8.74% -8.03% 0.92x
is_recognized_type[enum] 0.00008293376320568935 0.00009080225406374762 -9.49% -8.67% 0.91x
is_recognized_type[int256] 0.0001255076528769106 0.00013134405344384373 -4.65% -4.44% 0.96x
is_recognized_type[invalid] 0.00008390067070013479 0.00009167171008843876 -9.26% -8.48% 0.92x
is_recognized_type[string] 0.00010221254019263778 0.00010754647185806284 -5.22% -4.96% 0.95x
is_recognized_type[tuple-array] 0.00008345145770294736 0.00009082722108011612 -8.84% -8.12% 0.92x
is_recognized_type[tuple] 0.0000829525706915095 0.00009079297629960996 -9.45% -8.64% 0.91x
is_recognized_type[uint256] 0.0001256397990390403 0.00013280338414109 -5.70% -5.39% 0.95x
is_string_type[address] 0.00004282495399173783 0.00004294120532337709 -0.27% -0.27% 1.00x
is_string_type[array] 0.00004404320020792538 0.00004457339467085091 -1.20% -1.19% 0.99x
is_string_type[bool] 0.000042198178425383367 0.00004392471686772255 -4.09% -3.93% 0.96x
is_string_type[bytes] 0.000042678332875079165 0.00004318344804708097 -1.18% -1.17% 0.99x
is_string_type[bytes32] 0.000042092136914677474 0.000042968993585736025 -2.08% -2.04% 0.98x
is_string_type[bytes33] 0.00004419682781946147 0.0000447491315534321 -1.25% -1.23% 0.99x
is_string_type[empty] 0.000042429084838455966 0.00004285285764261975 -1.00% -0.99% 0.99x
is_string_type[enum] 0.000046296680433734834 0.00004622918087862795 0.15% 0.15% 1.00x
is_string_type[int256] 0.00004463757484901423 0.000044180673219524534 1.02% 1.03% 1.01x
is_string_type[invalid] 0.00004492776294807516 0.00004456561604594461 0.81% 0.81% 1.01x
is_string_type[string] 0.00004283861533996476 0.000043157279757463127 -0.74% -0.74% 0.99x
is_string_type[tuple-array] 0.0000440196608516233 0.000044684371334996045 -1.51% -1.49% 0.99x
is_string_type[tuple] 0.000042805469426933395 0.00004321970796484712 -0.97% -0.96% 0.99x
is_string_type[uint256] 0.00004225350312609483 0.000043159433782749193 -2.14% -2.10% 0.98x
is_uint_type[address] 0.00023380734936920557 0.00022804316780299411 2.47% 2.53% 1.03x
is_uint_type[array] 0.00022547379344962725 0.00023546945657437204 -4.43% -4.24% 0.96x
is_uint_type[bool] 0.00020448952053767145 0.00019954179494769192 2.42% 2.48% 1.02x
is_uint_type[bytes] 0.00020256112270818132 0.00020583152368243917 -1.61% -1.59% 0.98x
is_uint_type[bytes32] 0.00023049330822595826 0.00022837083894579777 0.92% 0.93% 1.01x
is_uint_type[bytes33] 0.0002186486643803452 0.00023449297019988784 -7.25% -6.76% 0.93x
is_uint_type[empty] 0.00019698051779753052 0.00019673703432164895 0.12% 0.12% 1.00x
is_uint_type[enum] 0.00021660223913642115 0.00021253966404898405 1.88% 1.91% 1.02x
is_uint_type[int256] 0.00021194710609781194 0.00021213068377892155 -0.09% -0.09% 1.00x
is_uint_type[invalid] 0.0002038301333359116 0.00019861885999970956 2.56% 2.62% 1.03x
is_uint_type[string] 0.00022123907903503565 0.0002212657407549939 -0.01% -0.01% 1.00x
is_uint_type[tuple-array] 0.00019925071746897336 0.00020530067811248758 -3.04% -2.95% 0.97x
is_uint_type[tuple] 0.00020543746078409466 0.00020505936378528808 0.18% 0.18% 1.00x
is_uint_type[uint256] 0.00021396648179259427 0.0002161868877145015 -1.04% -1.03% 0.99x
length_of_array_type[dynamic] 0.00016862585968472642 0.0001688186860990288 -0.11% -0.11% 1.00x
length_of_array_type[fixed] 0.00017883256114543055 0.0001766346820508493 1.23% 1.24% 1.01x
length_of_array_type[nested] 0.00018710520257254686 0.00018712767391330747 -0.01% -0.01% 1.00x
map_abi_data 0.006472760736843888 0.0050771558666674035 21.56% 27.49% 1.27x
normalize_event_input_types 0.0004223107915678822 0.00043569201117856784 -3.17% -3.07% 0.97x
receive_func_abi_exists 0.000316338713637299 0.0003255133451909699 -2.90% -2.82% 0.97x
strip_abi_types 0.0016185284683327458 0.0015543756821818277 3.96% 4.13% 1.04x
sub_type_of_array_type[nested] 0.00018278330020877077 0.00018627603423805765 -1.91% -1.88% 0.98x
sub_type_of_array_type[simple] 0.0001728275266529167 0.0001778885764135236 -2.93% -2.85% 0.97x

web3/_utils/blocks - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
is_hex_encoded_block_hash[int] 0.000020551686467036583 0.000021856881794746585 -6.35% -5.97% 0.94x
is_hex_encoded_block_hash[invalid-g] 0.00008496099108172424 0.00006423085958784875 24.40% 32.27% 1.32x
is_hex_encoded_block_hash[none] 0.000020737851386118454 0.000021148133818115238 -1.98% -1.94% 0.98x
is_hex_encoded_block_hash[short] 0.0000444032902279599 0.000030107226832787493 32.20% 47.48% 1.47x
is_hex_encoded_block_hash[too-long] 0.00004467154074474703 0.00003021718001633875 32.36% 47.83% 1.48x
is_hex_encoded_block_hash[too-short] 0.00004376929722188819 0.000029527306986860917 32.54% 48.23% 1.48x
is_hex_encoded_block_hash[valid-a] 0.00009600095149601225 0.00007456839023901301 22.33% 28.74% 1.29x
is_hex_encoded_block_hash[valid-f] 0.00009666523324821132 0.00007557365223818706 21.82% 27.91% 1.28x
is_hex_encoded_block_number[int] 0.00002064876296687242 0.00002378636986686686 -15.20% -13.19% 0.87x
is_hex_encoded_block_number[invalid-g] 0.0001609572253391474 0.0002260312434344783 -40.43% -28.79% 0.71x
is_hex_encoded_block_number[max-64-a] 0.00010384038345826878 0.00008523476562106658 17.92% 21.83% 1.22x
is_hex_encoded_block_number[max-64-f] 0.00010269961069330856 0.00008636204024031683 15.91% 18.92% 1.19x
is_hex_encoded_block_number[none] 0.000020600822877273827 0.000023484485219648858 -14.00% -12.28% 0.88x
is_hex_encoded_block_number[small] 0.00009237167516791738 0.00005102677832915364 44.76% 81.03% 1.81x
is_hex_encoded_block_number[too-long] 0.00010580485141045808 0.00006254419164107297 40.89% 69.17% 1.69x
is_predefined_block_number[bytes-latest] 0.000032352081169311694 0.0000293341981157654 9.33% 10.29% 1.10x
is_predefined_block_number[bytes-pending] 0.00003263612607701818 0.000029149827631174533 10.68% 11.96% 1.12x
is_predefined_block_number[bytes-random] 0.000031450647970336836 0.00002834468262123933 9.88% 10.96% 1.11x
is_predefined_block_number[int] 0.00003399086514882727 0.000023722991390608595 30.21% 43.28% 1.43x
is_predefined_block_number[none] 0.00012259254955315134 0.00021427737699787172 -74.79% -42.79% 0.57x
is_predefined_block_number[object] 0.00015290912803288476 0.00025096768915490567 -64.13% -39.07% 0.61x
is_predefined_block_number[str-earliest] 0.000013051856432598963 0.000009678046084783038 25.85% 34.86% 1.35x
is_predefined_block_number[str-finalized] 0.000013026609873794929 0.000009591012056052723 26.37% 35.82% 1.36x
is_predefined_block_number[str-foo] 0.000013054104085258029 0.000009530615639077833 26.99% 36.97% 1.37x
is_predefined_block_number[str-latest] 0.00001310859738944546 0.000009749106895750136 25.63% 34.46% 1.34x
is_predefined_block_number[str-pending] 0.00001303269867325196 0.000009636873030943625 26.06% 35.24% 1.35x
is_predefined_block_number[str-safe] 0.000013020950850711772 0.000009778406666973484 24.90% 33.16% 1.33x
select_method_for_block_identifier[hash-bytes] 0.00005124240961904287 0.0000414727626072253 19.07% 23.56% 1.24x
select_method_for_block_identifier[hash-hexstr] 0.00012852554611975054 0.0000963290087951601 25.05% 33.42% 1.33x
select_method_for_block_identifier[invalid-none] 0.0008959518435035516 0.0010684188613734335 -19.25% -16.14% 0.84x
select_method_for_block_identifier[invalid-object] 0.0009564014889104185 0.0011230380707539264 -17.42% -14.84% 0.85x
select_method_for_block_identifier[number-hexstr] 0.00017372725124939272 0.00008760205218634053 49.57% 98.31% 1.98x
select_method_for_block_identifier[number-int] 0.00011194677591159907 0.00005803488773141428 48.16% 92.90% 1.93x
select_method_for_block_identifier[predefined-bytes] 0.000050079048797544536 0.00004419346203284869 11.75% 13.32% 1.13x
select_method_for_block_identifier[predefined-str] 0.0000277085250864179 0.000020692182789386564 25.32% 33.91% 1.34x

web3/_utils/datatypes - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
PropertyCheckingFactory[big-invalid] 0.0004700858685838178 0.000543917133251656 -15.71% -13.57% 0.86x
PropertyCheckingFactory[big-valid] 0.0004685056271183971 0.0005404018239978958 -15.35% -13.30% 0.87x
PropertyCheckingFactory[inheritance] 0.0009879675030730107 0.0010091176605310987 -2.14% -2.10% 0.98x
PropertyCheckingFactory[invalid] 0.00046935885907344033 0.0005400301238713059 -15.06% -13.09% 0.87x
PropertyCheckingFactory[multi-normalizer] 0.000472483002514866 0.0005455836416371827 -15.47% -13.40% 0.87x
PropertyCheckingFactory[multi-prop] 0.0004695876074996584 0.0005439842242461199 -15.84% -13.68% 0.86x
PropertyCheckingFactory[normalized] 0.00047515190573502517 0.0005445257729181508 -14.60% -12.74% 0.87x
PropertyCheckingFactory[valid] 0.001232677299563828 0.0010018215297278967 18.73% 23.04% 1.23x
verify_attr[empty] 0.00010074736119340323 0.00015927584018221344 -58.09% -36.75% 0.63x
verify_attr[found-end] 0.000012117667900032218 0.000009960085467622064 17.81% 21.66% 1.22x
verify_attr[found-start] 0.000009296351538158218 0.000007984165822853567 14.12% 16.43% 1.16x
verify_attr[large-found] 0.00012999064411915989 0.00012581185361700754 3.21% 3.32% 1.03x
verify_attr[large-notfound] 0.00019724942027251688 0.00025799677422256575 -30.80% -23.55% 0.76x
verify_attr[notfound] 0.00010661452771922317 0.0001657235550614736 -55.44% -35.67% 0.64x

web3/_utils/http - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
construct_user_agent 0.0006557054195716885 0.0006695486737769901 -2.11% -2.07% 0.98x

web3/_utils/math - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
percentile[10-median] 0.00007926587267233325 0.000023367019690162056 70.52% 239.22% 3.39x
percentile[100-90th] 0.00011103035112255895 0.00005330820930480323 51.99% 108.28% 2.08x
percentile[100k-99th] 0.036853136607127066 0.036519274571422296 0.91% 0.91% 1.01x
percentile[100k-median] 0.03669500807692517 0.03659799370372504 0.26% 0.27% 1.00x
percentile[10k-10th] 0.003788957599999776 0.0036871136162349555 2.69% 2.76% 1.03x
percentile[10k-99th] 0.0037671677849081086 0.0036390766483516647 3.40% 3.52% 1.04x
percentile[10k-median] 0.003760776215907044 0.0037166148773203496 1.17% 1.19% 1.01x
percentile[1k-99th] 0.00047273091117576855 0.00045741359967137364 3.24% 3.35% 1.03x
percentile[1M-median] 0.6264549620000253 0.6345424077999724 -1.29% -1.27% 0.99x

web3/_utils/type_conversion - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
to_bytes_if_hex[bytes] 0.000012879381307230438 0.0000069573332721476555 45.98% 85.12% 1.85x
to_bytes_if_hex[empty-str] 0.00030949569446410717 0.000039683670211453656 87.18% 679.91% 7.80x
to_bytes_if_hex[hexstr] 0.0003352848684031232 0.000048940322323254156 85.40% 585.09% 6.85x
to_bytes_if_hex[large-hex] 0.00034293168291834485 0.000054123927188348204 84.22% 533.60% 6.34x
to_bytes_if_hex[non-prefixed-hex] 0.00032047092793818327 0.00004517536614950178 85.90% 609.39% 7.09x
to_bytes_if_hex[nothex] 0.00041282112335347317 0.00027055952933819136 34.46% 52.58% 1.53x
to_bytes_if_hex[unicode] 0.0004241738175730999 0.0002771326088907186 34.67% 53.06% 1.53x
to_bytes_if_hex[zero] 0.0003387000342611871 0.00004902002914825433 85.53% 590.94% 6.91x
to_hex_if_bytes[bytes] 0.0002224637914276906 0.00005356552254482034 75.92% 315.31% 4.15x
to_hex_if_bytes[empty-bytes] 0.00020802494170872225 0.00004131790351740661 80.14% 403.47% 5.03x
to_hex_if_bytes[empty-str] 0.00010155894907085721 0.000189175023523443 -86.27% -46.31% 0.54x
to_hex_if_bytes[hexstr] 0.0002837945089323135 0.000025068697062705464 91.17% 1032.07% 11.32x
to_hex_if_bytes[large-bytes] 0.00022619318654460067 0.00005607199146027596 75.21% 303.40% 4.03x
to_hex_if_bytes[non-prefixed-hex] 0.00010387205325225221 0.00019014083619254453 -83.05% -45.37% 0.55x
to_hex_if_bytes[not-hex] 0.00010306390491599333 0.00019247516707175468 -86.75% -46.45% 0.54x
to_hex_if_bytes[unicode] 0.00010949676196883614 0.00019809626140512097 -80.92% -44.73% 0.55x

web3/_utils/utility_methods - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
all_in_dict[all-in] 0.0003050619924257828 0.00009950363416643447 67.38% 206.58% 3.07x
all_in_dict[empty-dict] 0.0002615623525490744 0.00007532919755455161 71.20% 247.23% 3.47x
all_in_dict[empty-list] 0.00025767374927865104 0.0000856374296746956 66.77% 200.89% 3.01x
all_in_dict[mixed-types] 0.0003106595548222527 0.00010310794220465043 66.81% 201.30% 3.01x
all_in_dict[no-overlap] 0.0002775137704930004 0.00008743882305760605 68.49% 217.38% 3.17x
all_in_dict[none-in] 0.0002764387579232883 0.00008742527629300047 68.37% 216.20% 3.16x
all_in_dict[one-in] 0.0002817250470157737 0.00009086031325233882 67.75% 210.06% 3.10x
all_in_dict[partial-overlap] 0.0003175727691005903 0.00009825970449465591 69.06% 223.20% 3.23x
all_in_dict[value-none] 0.00028174997075644943 0.00009160584479781749 67.49% 207.57% 3.08x
any_in_dict[all-in] 0.00027714456706573253 0.00008912583692668044 67.84% 210.96% 3.11x
any_in_dict[empty-dict] 0.00030518412519515916 0.0000910319505313315 70.17% 235.25% 3.35x
any_in_dict[empty-list] 0.00026423439676566553 0.00008491154508998286 67.87% 211.19% 3.11x
any_in_dict[mixed-types] 0.0002771969105189405 0.00008959822914957797 67.68% 209.38% 3.09x
any_in_dict[no-overlap] 0.0003213261259763141 0.00010368777944681538 67.73% 209.90% 3.10x
any_in_dict[none-in] 0.0002847102317310688 0.00009188740637745114 67.73% 209.85% 3.10x
any_in_dict[one-in] 0.0002736837528786224 0.00008730570852863415 68.10% 213.48% 3.13x
any_in_dict[partial-overlap] 0.0002762910627790279 0.00008773054544653774 68.25% 214.93% 3.15x
any_in_dict[value-none] 0.00027563863587671807 0.00008693444245091045 68.46% 217.06% 3.17x
either_set_is_a_subset[both-empty] 0.0001674954287173458 0.0001498798880157074 10.52% 11.75% 1.12x
either_set_is_a_subset[empty-set1] 0.0001669111026310424 0.0001470134553976358 11.92% 13.53% 1.14x
either_set_is_a_subset[empty-set2] 0.000254917874999344 0.00024952072452502346 2.12% 2.16% 1.02x
either_set_is_a_subset[identical] 0.00018548866151945083 0.00015986201255560725 13.82% 16.03% 1.16x
either_set_is_a_subset[mixed-types] 0.00019701061308168878 0.0001690342740512834 14.20% 16.55% 1.17x
either_set_is_a_subset[not-subset] 0.00027363784704618745 0.0002533451554107431 7.42% 8.01% 1.08x
either_set_is_a_subset[partial-overlap] 0.0002961053557509435 0.0002831602754565483 4.37% 4.57% 1.05x
either_set_is_a_subset[subset] 0.00019199821837410444 0.00016501100802904003 14.06% 16.35% 1.16x
either_set_is_a_subset[superset] 0.00029188858472050955 0.0002847237543122922 2.45% 2.52% 1.03x
none_in_dict[all-in] 0.0002927887371432253 0.00008862275305192821 69.73% 230.38% 3.30x
none_in_dict[empty-dict] 0.0003175267574523316 0.00009052866297491468 71.49% 250.75% 3.51x
none_in_dict[empty-list] 0.00027205241194495656 0.00008823353455750897 67.57% 208.33% 3.08x
none_in_dict[mixed-types] 0.00029105796762851654 0.00008911391153698661 69.38% 226.61% 3.27x
none_in_dict[no-overlap] 0.00033913187976359493 0.00010483089133653598 69.09% 223.50% 3.24x
none_in_dict[none-in] 0.00030011013290123307 0.00009488970198979906 68.38% 216.27% 3.16x
none_in_dict[one-in] 0.00029017305533064454 0.00008691934187406764 70.05% 233.84% 3.34x
none_in_dict[partial-overlap] 0.00028891167105208726 0.00008783228928303269 69.60% 228.94% 3.29x
none_in_dict[value-none] 0.0002868457640726687 0.00008620835081131482 69.95% 232.74% 3.33x

web3/datastructures - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
attributedict_eq 0.001473778651091107 0.0015095273478295992 -2.43% -2.37% 0.98x
attributedict_hash[flat] 0.0011046607512293538 0.0010971721653658274 0.68% 0.68% 1.01x
attributedict_hash[nested] 0.001745660365698742 0.0017514668992206508 -0.33% -0.33% 1.00x
attributedict_init[empty] 0.00008363738450430924 0.00008386304104598019 -0.27% -0.27% 1.00x
attributedict_init[large] 0.0001248016850878667 0.0001260336407241407 -0.99% -0.98% 0.99x
attributedict_init[small] 0.00009139851460784513 0.0000892928010487761 2.30% 2.36% 1.02x
mutableattributedict_delitem 0.0003917990100308855 0.00039994142686124103 -2.08% -2.04% 0.98x
mutableattributedict_setitem 0.00033663148267133264 0.000334567981220037 0.61% 0.62% 1.01x
namedelementonion_add 0.008823696333327765 0.02926064208823304 -231.61% -69.84% 0.30x
namedelementonion_as_tuple_of_middleware 0.00014506181558455192 0.00014678549961979185 -1.19% -1.17% 0.99x
namedelementonion_contains 0.00003188137381601801 0.000031700199415729966 0.57% 0.57% 1.01x
namedelementonion_getitem 0.000028636484989894048 0.000028844990863602428 -0.73% -0.72% 0.99x
namedelementonion_init[callables2] 0.00013508917012519504 0.0001342769361289578 0.60% 0.60% 1.01x
namedelementonion_init[callables3] 0.0001684621713699094 0.00016902137944487704 -0.33% -0.33% 1.00x
namedelementonion_init[empty] 0.000043782707521589685 0.000043362533994075496 0.96% 0.97% 1.01x
namedelementonion_inject 0.028595565736850403 0.03547518832583387 -24.06% -19.39% 0.81x
namedelementonion_iter 0.00015159274697067692 0.0001552036948911155 -2.38% -2.33% 0.98x
namedelementonion_remove 0.0006804352008638202 0.0007009317009530159 -3.01% -2.92% 0.97x
namedelementonion_replace 0.0026030564251321624 0.002596332539646321 0.26% 0.26% 1.00x
readableattributedict_getitem[large] 0.000015170181486447348 0.000015013035373412716 1.04% 1.05% 1.01x
readableattributedict_getitem[small] 0.000014728290338626032 0.000014415193694900476 2.13% 2.17% 1.02x
readableattributedict_init[empty] 0.00005171276276059288 0.000051664700947723006 0.09% 0.09% 1.00x
readableattributedict_init[large] 0.00008565285509691489 0.00008784765540531051 -2.56% -2.50% 0.98x
readableattributedict_init[small] 0.00005586109010981104 0.00005543217787043979 0.77% 0.77% 1.01x
readableattributedict_recursive[list-in-dict] 0.0008933465501384576 0.0008939879361318027 -0.07% -0.07% 1.00x
readableattributedict_recursive[nested-dict] 0.0009027249521539436 0.0009181227042599901 -1.71% -1.68% 0.98x
readableattributedict_recursive[set] 0.0004656404776111168 0.0004616706806349759 0.85% 0.86% 1.01x
tupleize_lists_nested[list-in-dict] 0.0008543004158774686 0.00084775596116612 0.77% 0.77% 1.01x
tupleize_lists_nested[tuple-in-dict] 0.0009447686460089885 0.0009343084870358275 1.11% 1.12% 1.01x

web3/utils/caching - view benchmarks

Function Reference Mean Faster Mean % Change Speedup (%) x Faster Faster
simplecache_cache[10] 0.0003309376415093365 0.0002594917475643626 21.59% 27.53% 1.28x
simplecache_cache[100] 0.0027197434337081702 0.00195944395445757 27.95% 38.80% 1.39x
simplecache_cache[1000] 0.027222729405421715 0.019226874826927087 29.37% 41.59% 1.42x
simplecache_eviction[10] 0.0005914864685185082 0.0005916730806433955 -0.03% -0.03% 1.00x
simplecache_eviction[100] 0.005213192573690226 0.005289722180850005 -1.47% -1.45% 0.99x
simplecache_pop[10] 0.000457711001412906 0.0003629067199991758 20.71% 26.12% 1.26x
simplecache_pop[100] 0.0038066344461614022 0.002929488840835291 23.04% 29.94% 1.30x
simplecache_retrieval[10] 0.00009060940899514668 0.00005855112883874646 35.38% 54.75% 1.55x
simplecache_retrieval[100] 0.000805461385965244 0.00047206779839726617 41.39% 70.62% 1.71x

@codspeed-hq
Copy link

codspeed-hq bot commented Oct 17, 2025

CodSpeed Performance Report

Merging #127 will not alter performance

Comparing update (6d8014e) with master (091a244)1

Summary

✅ 431 untouched
⏩ 91 skipped2

Footnotes

  1. No successful run was found on master (8849102) during the generation of this report, so 091a244 was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

  2. 91 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants