Skip to content

Release 3.0.0-beta.3

Compare
Choose a tag to compare
@forshtat forshtat released this 03 Jan 12:15
· 56 commits to master since this release

Improvements:

  1. Accept the 'signTransaction' callback as a dependency override (OG-983)

Previously, there were only two ways the GSN Provider could sign the RelayRequest: either by using an underlying Web3.js/Ethers.js provider to execute signTypedData, or by using a provided private key directly. Both methods would produce the signature compatible with the ERC-712. This is by design and is a requirement for the ERC-2770 Forwarder to verify the signature.

However, the GSN does not require a specific Forwarder implementation. The signing can be performed using different signature algorithms, or RelayRequest signature may be omitted entirely if the Recipient contract has different validation mechanisms.

Now, one can simply override the asyncSignTypedData callback and provide a custom signature function to the GSN.

  1. Expose RelayRequestID to AsyncApprovalData callback (OG-946)

The RelayRequestID may be required in the Verifying Paymaster use-case to keep track of issued 'ApprovalData' signatures, so now RelayRequestID is passed to the AsyncApprovalData.

  1. Separate 'deployGSN' function from 'GsnTestEnvironment' (OG-958)

Fixes:

  1. Fixed "Relay Server happily prints amount of staked token even if token address is incorrect" (OG-939)

  2. Rename 'GatewayForwarder' to 'TestGatewayForwarder' (OG- 957)