Enhanced resolution for contracts with composite ABI

Arsenii

In this release, we’ve introduced key enhancements to ABI resolution for composite contracts, improved functionality for managing contract metadata, and made updates to our persistence layer to ensure more robust performance.

Improved ABI Resolution for Composite Contracts

We've refactored the ABI resolution process, focusing on better handling of composite contracts like plugin-pattern, base router, and diamond pattern contracts. This included ensuring extra stability by introducing checks to prevent recursive calls and other redundant resources-heavy mechanics.

Additional Improvements

  • Improved the schema for better handling of proxy contracts.
  • Added functionality to refresh contract metadata across all persistence layers, simplifying data management.
  • Updated persistence-related functions for better error handling and performance, especially in scenarios involving proxies and non-proxy contracts.
  • Improved build times and dependency management (could this hint at something bigger, perhaps even... open-sourcing the project s00n? 👀)

With these updates rolling out we get faster ABI resolutions and even more reliable contract data persistence!