Breaking Changes for Relayers
Updated events and fill functions for relayers supporting non-EVM chains.
Relayers must update their event subscriptions and fill functions to support the new event formats introduced in the non-EVM migration.
Changes took effect January 23, 2025. Query both old and new event types during the transition.
Event Changes
Three events that relayers depend on are being deprecated and replaced:
| Deprecated Event | Replacement Event |
|---|---|
V3FundsDeposited | FundsDeposited |
RequestedSpeedUpV3Deposit | RequestedSpeedUpDeposit |
FilledV3Relay | FilledRelay |
Key Differences
- Address types: All
addressfields →bytes32to support non-EVM chains - Gas optimization:
FilledRelaycontains only themessageHashinstead of the full message - Deposit ID:
uint32→uint256
Migration Strategy
Query both old and new event types to ensure a smooth transition. Each SpokePool upgrades at a different time, but the protocol guarantees no single fill or deposit will emit duplicate events.
// Monitor both old and new deposit events
// Old: V3FundsDeposited (address types, uint32 depositId)
// New: FundsDeposited (bytes32 types, uint256 depositId)
// Process whichever event you receive — they won't overlapNew fillRelay Function
The new fillRelay function replaces fillV3Relay and adds:
- Repayment address selection — Relayers can designate a repayment address different from the fill-executing address
- Non-EVM fill capabilities — Supports filling on non-EVM chains
Migrating to fillRelay is recommended but not immediately required. fillV3Relay continues to work during the transition period. However, fillRelay is required for Solana and future non-EVM chain fills.