Skip to content

Mainnet Release v.2.0.0 Kṛttikā

Compare
Choose a tag to compare
@andrevmatos andrevmatos released this 23 Dec 16:41
· 376 commits to master since this release

🔪 New Raiden Light Client SDK, dApp and CLI

INFO: The Light Client SDK, CLI and dApp are all work in progress projects. All three projects have been released for mainnet and all code is available in the Light Client repository. As this release still has its limitations and is a beta release, it is crucial to read this readme including the security notes carefully before using the software.

We're happy to announce the new major release of the Raiden Light-Client, v2.0.0!

This is a mainnet-ready release. It includes support for the new raiden-contracts v0.40.0, and as so, requires users to ensure their old channels are closed and settled, and as this also includes new UserDeposit (UDC) contracts, users willing to upgrade should also withdraw the service tokens deposited on the old ones to deposit on the new contracts.

Highlights of the release:

  • The raiden dapp got a new quick pay feature.
  • For the raiden SDK :
    • Support for new contract functions TokenNetwork.openChannelWithDeposit so that opening a channel plus depositing can happen in one transaction saving a rough 12% in gas fees per operation. Withdrawing service tokens from the UDC to the main account can now also happen in one transaction.
    • Faster transfers by encrypting secrets for targets on transfer's metadata (instead of a challenge/response exchange, which is still the fallback)
    • Cooperative settlement: instead of waiting the settleTimeout (default=500 blocks) period before getting the tokens split, cooperating peers can exchange messages attesting the end balance of the respective channels, and get the channel settled in a single step, saving 50% gas compared to the split uncooperative close+settle (fallback).

Raiden SDK

  • [#2949] Allows Raiden.transfer's options.paths to receive a broader schema, including { route: Address[]; estimated_fee: Int<32>; address_metadata?: ... }[], needed to support CLI's paths parameter of /payments endpoint
  • [#2953] config.gasPriceFactor applies over maxPriorityFeePerGas, using the new fee parameters from London when possible; now, by default, no fee parameters are specified, leaving ethers and provider (e.g. Metamask) to figure out best gas fees, fixing [#2952];
  • [#2965] Add +5% gasLimit margin on transactions which are successfuly estimated, to avoid running out of gas on narrow calls.
  • [#3012] Updated raiden-contracts to v0.40

Removed

  • [#2965] Remove options.subkey on certain Raiden public methods; if you need to force subkey or main account usage for single txs, set config.subkey then reset after tx is sent; default behavior is kept

Fixed

  • [#2913] Fix crash when starting client with userDepositContractAddress as contracts entrypoint on a TokenNetworkRegistry with no registered tokens yet
  • [#2963] Don't set channel as closing upon channelClose.request, allowing user to cancel Metamask's prompt and keep an usable channel; Channel becomes closing only after tx is sent

Raiden Dapp

Added

  • [#2882] Add new quick pay feature

Raiden CLI

  • [#2949] Passthrough /payments parameters, including paths, which should receive pre-fetched route in the format { route: Address[]; estimated_fee: NumericString; address_metadata?: MetadataMap }[].
  • [#2971] Allow appending :<block> to --user-deposit-contract-address= option, to start scanning since this block instead of genesis