JSPM

@morpho-dev/subsquid-evm-processor

1.28.5
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2474
  • Score
    100M100P100Q151875F
  • License GPL-3.0-or-later

Data fetcher and mappings executor for EVM-based chains with enhanced exponential retry mechanism

Package Exports

  • @morpho-dev/subsquid-evm-processor
  • @morpho-dev/subsquid-evm-processor/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@morpho-dev/subsquid-evm-processor) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@morpho-dev/subsquid-evm-processor

Data fetcher and mappings executor for EVM-based chains with enhanced exponential retry mechanism.

This is a Morpho-maintained fork of @subsquid/evm-processor with additional features:

  • Exponential retry for ALL errors (not just connection errors)
  • True exponential backoff with configurable limits
  • Jitter support to prevent thundering herd
  • Enhanced retry configuration options
  • Backward compatible with original @subsquid/evm-processor

Installation

npm install @morpho-dev/subsquid-evm-processor

Quick Start

import {EvmBatchProcessor} from '@morpho-dev/subsquid-evm-processor'

const processor = new EvmBatchProcessor()
    .setRpcEndpoint({
        url: 'https://eth.llamarpc.com',

        // Enable retry for ALL errors
        retryAllErrors: true,

        // Use exponential backoff
        useExponentialBackoff: true,
        exponentialBackoffInitialDelay: 100,
        maxBackoff: 60000,
        retryJitter: true,

        retryAttempts: 10,
    })
    .addLog({
        address: ['0x...'],
        topic0: ['0x...']
    })

processor.run(database, async ctx => {
    // Your processing logic
})

Enhanced Retry Features

See RETRY_CONFIGURATION.md for comprehensive documentation on:

  • Configuration options
  • Use cases and examples
  • Best practices
  • Migration guide
  • Troubleshooting

Original Documentation

For general usage and API documentation, see the original @subsquid/evm-processor documentation.

Key Differences from @subsquid/evm-processor

Feature @subsquid/evm-processor @morpho-dev/subsquid-evm-processor
Retry connection errors
Retry ALL errors
Exponential backoff ❌ (fixed schedule)
Jitter support
Configurable max backoff

License

GPL-3.0-or-later

Upstream

Based on @subsquid/evm-processor v1.27.3