JSPM

@morpho-dev/subsquid-evm-processor

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

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

Package Exports

    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