Release Notes: 7.5
We are happy to announce DipDup 7.5! This release focuses on improving compatibility with various EVM blockchains, performance improvements, and bug fixes.
DipDup has been tested with many EVM networks, both with Subsquid and node datasources. Check out the EVM networks page to see the list of supported networks and their configuration examples.
New config option http.polling_interval allows setting the interval between polling requests. This setting applies only to some datasources in specific cases. For example, when using the evm.subsquid datasource without nodes attached or the evm.node datasource without WebSocket realtime subscriptions.
A bunch of performance improvements have been made in this release. DipDup now indexes EVM chains faster, collects more metrics for memory caches, and is less hungry for resources overall.
The Hasura adapter now supports the bulk request type to apply table customizations faster and organize custom metadata files more conveniently.
Finally, DipDup 6.5, the stable release branch, has reached end-of-life. 6.5.16 is the last release in this branch. Please, follow the 7.0 Migration Guide to upgrade to the latest version.
Changes since 7.4
Added
- config: Added
http.polling_intervaloption to set the interval between polling requests (some datasources). - evm.subsquid:
evm.nodedatasources can be used as index datasources. - hasura: Allow
bulkrequest type in custom metadata files.
Fixed
- cli: Fixed incorrect indexer status logging.
- cli: Improved logging of indexer status.
- config: Don't raise
ConfigurationErrorfrom some model validators. - config: Fixed crash when database path is relative and nested.
- config: Fixed issue with
fromfilter being ignored. - config: Fixed setting logging levels according to the config.
- config: Forbid extra arguments in config mappings.
- deps: Removed
pyarrowfrom dependencies, bumpedweb3. - evm.etherscan: Raise
AbiNotAvailableErrorwhen contract is not verified. - evm.events: Improve fetching event batches from node.
- evm.node: Fixed default ratelimit sleep time being too high.
- evm.node: Fixed memory leak when using realtime subscriptions.
- evm.node: Fixed processing chain reorgs.
- evm.node: Fixed updating
dipdup_headtable when head block is received. - evm.node: Respect
http.batch_sizewhen fetching block headers. - evm.subsquid.events: Fixed matching logs when filtering by topic0.
- evm.subsquid.transactions: Fixed issue with
node_onlyflag ignored. - models: Fixed
CachedModelpreloading. - performance: Fixed estimation indexing speed in levels per second.
- project: Fixed
make imagetarget command. - tezos.tzkt.operations: Fixed crash when handler definition contains optional items.
- tezos.tzkt.operations: Fixed missing operations when handler pattern contains item without entrypoint.
Changed
- api:
/performanceendpoint response format has been changed. - performance: All time intervals are now measured in seconds.
- performance: Several metrics have been renamed and new ones have been added.
Performance
- evm.subsquid: Dynamically adjust the batch size when syncing with node.
- hasura: Apply table customizations in a single request.
- performance: Collect hit/miss stats for cached models.
- performance: Decrease main loop and node polling intervals.
- performance: Drop caches when all indexes have reached realtime.
See you soon! 👋
DipDup is a free open-source software created by the community and for the community. Join our socials to discuss this release, ask any questions, or participate in development.