Blockscout v6.8.0: Optimization and Features
Blockscout 6.8.0 is packed with powerful new features and improvements.
Our latest update brings significant advancements in data optimization, multi-chain support, and security. Featuring more than 30 new ENV variables along with a host of features and big fixes (along with several potential breaking changes), v6.8.0 extends Blockscout functionality and reach.
Let's dive into the highlights of the v6.8.0 backend release!
π Key Features and Enhancements
Data Optimization and Performance
- Internal Transactions Table Reduction: This new feature is still in test mode, but initial results are showing up to a 50% reduction in db size! This is a huge result for instances with high db utilization and promises to save a lot of future hard drive space as Blockscout networks continue to grow.
- CSV Export Enhancements: CSV exports are important for various use cases, and we are trying to make them more useful in different contexts. We added method names to transaction CSV exports (when applicable), provided the option for self-hosted instances to increase the 10K limit, and added token decimals to token transfer CSV exports, making data analysis and sorting easier.
- Memory Metrics for OnDemand Fetchers: Blockscout grabs data for tokens, addresses, contracts and other data using different fetchers. When an instance slows down, it can be difficult to pinpoint which fetcher is responsible for the issue. With these monitors in place it is easier to find and fix resource constraint problems.
Multi-Chain Enhancements
- CELO Chain Support: We've added support for the
:celo
chain type, broadening Blockscout's multi-chain capabilities. We are continuing to index the mainnet instance and support CELO through their L2 transition. - zkSync Contract Verification Support: We've expanded our smart contract verification capabilities to include zkSync, enabling developers to verify and interact with contracts. The upcoming frontend release will add support to the UI, allowing anyone to verify a contract on zkSync. https://zksync.blockscout.com/
- Arbitrum Updates: Significant improvements for Arbitrum exploration include:
- AnyTrust and Celestia support as Data Availability (DA) solutions for Arbitrum batches
- Enhanced status descriptions for Arbitrum messages in transaction views
- WebSocket broadcasting of updates about new Arbitrum batches and L1-L2 messages
- Additional Arbitrum updates and fixes are detailed in the release, visit the latest Arbitrum instance at https://arbitrum.blockscout.com/
Smart Contract Improvements
- Diamond Proxy Pattern Detection: The diamond proxy standard allows for more advanced contracts through modular architecture. Blockscout can now detect the diamond proxy pattern on verified and unverified proxy smart contracts, providing deeper insights and transparency.
- Updated API endpoints: Info is now returned for all proxy types through the
/api/v2/smart-contracts/:hash
API endpoint, and a DELETE method has been added to the/api/v2/import/token-info
endpoint, allowing for easier deletion of unneeded token info. - Verification support: we've added support for zkSync (see above). While not specifically included in the release, we continue to refine the bytecode db and explore edge cases related to the Verifier Alliance initiative.
API and Integration Improvements
- Cryptorank API Integration: We integrated the Cryptorank API for enhanced price data fetching. This option is important for small or new chains so that token prices can be displayed quickly and accurately.
- API Key Config Options: We introduced a new runtime variable for instances that want to provide an API key with no rate limits.
- New and Enhanced API Endpoints: New API endpoints were added to provide more comprehensive data access. This includes endpoints to enrich hashes with metadata from the new Metadata microservice and
Infrastructure and Security
- Rootless Docker Image: Starting from version 6.8.0, our Docker image is now rootless, enhancing security in containerized deployments.
- Public IPFS Gateway URL: We added support for configurable public IPFS gateway URLs for chains that would like to implement this feature. This value was previously hardcoded to a single option, and now networks can choose which url to use when retrieving NFT images and other info stored on IPFS.
π‘ Breaking Changes and Important Notes
- Environment Variables Update: We've simplified the set of environment variables for OP-stack configuration and deprecated some variables. Please refer to the updated documentation for the new set of variables related to OP-chain management.
- Docker Security Context: Due to the shift to a rootless Docker image, ensure you update the security context in your deployment setup.
π οΈ Additional Improvements
We made many additional changes including a long list of bug fixes, minor performance improvements and miscellaneous tasks. Please see the GitHub repository for a complete list.
β What's Next?
Our team is continuously working on improving Blockscout. Frontend updates are currently in progress, some of which support updates made in v6.8.0 (like contract verification on zkSync)
We'd like to thank our community for their ongoing support and feedback. This release features PRs from 3 new community contributors, a big shout out to π£
- @robriks made their first contribution in #10450!
- @jianghuyiyuan made their first contribution in #10519
- @chainchad made their first contribution in #10070
Community input is invaluable in shaping Blockscout's evolution. We encourage you to explore these new features and share your experiences with us.
Stay tuned for more updates, and happy exploring with Blockscout 6.8.0!