banteg / multicall.py

aggregate results of multiple smart contract calls into one
MIT License
246 stars 106 forks source link

web3 version 6+ support? #79

Closed dyslexia closed 5 months ago

dyslexia commented 1 year ago

Hi,

Looking to use Multicall in a web3py >6.0 project. Would be great to upgrade to latest web3

dyslexia commented 1 year ago

Looking over other multicall libs, thread support in web3py 6+ seems to be the blocker

janeuend commented 1 year ago

I installed Multicall 0.7.7 (latest) ignoring dependencies with web3py 6.9.0 (latest) and it seems to run just fine. This might be as simple as updating the allowed web3py versions to include some in the 6.0+ range.

scottincrypto commented 11 months ago

I installed Multicall 0.7.7 (latest) ignoring dependencies with web3py 6.9.0 (latest) and it seems to run just fine. This might be as simple as updating the allowed web3py versions to include some in the 6.0+ range.

I've done the same and have been using it production with this workaround. I've only had a quick look, but it appears the dependency is due to eth-brownie, which is only required for dev/tests as far as I can tell. I think the path forward is to remove eth-brownie as a dependency on the tests (use web3.py as the provider instead) and web3.py >=6.0.0 might be OK without too many changes.

godofbeans commented 8 months ago

I just want to bump this as official support for web3 v6+ would be REALLY helpful. Thanks so much for your hard work on this project. I'm excited for what's to come!

janeuend commented 6 months ago

Bump