To: The Maintainers of ethereum/web3.py (and ecosystem frameworks like ApeWorX/ape)
Migrating to Web3.py v7 introduces significant architectural breaking changes. The deprecation of functional middleware in favor of Web3Middleware classes, combined with the WebsocketProviderV2 and .ws -> .socket renaming, creates a high friction barrier for adoption. A typical ecosystem project requires days of manual refactoring to compile against v7.
We have built and submitted a production-grade, AST-driven codemod to the official codemod.com registry that safely automates ~90% of the v6 to v7 migration path.