Skip to content

Releases: raiden-network/light-client

Mainnet Release v.1.1.0 Bharani

09 Aug 13:50
d7914f6
Compare
Choose a tag to compare

♀️ New Raiden Light Client SDK, dApp and CLI Release

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.

Summary of features that went in:

  • Add Capabilities.IMMUTABLE_METADATA in a backwards compatible manner to allow opting in of not prunning metadata.route and allowing to pass it through mediators unchanged.
  • Add encryptedSecret to allow sending secret to the target on LockedTransfer's metadata, encrypted with ECIES over their publicKey, skipping SecretRequest/Reveal messages and speeding up transfers.
  • Add E2E and unit tests for the service worker functionality.

Raiden SDK

Added

  • [#2766] Add Capabilities.IMMUTABLE_METADATA (true on LC, fallback to falsy for backwards compatibility) to allow opting in of not prunning metadata.route and allowing to pass it through mediators unchanged
  • [#2730] Add config.encryptSecret and Raiden.transfer's encryptSecret boolean option, to allow sending secret to target on LockedTransfer's metadata, encrypted with ECIES over their publicKey, skipping SecretRequest/Reveal and speeding up transfers.

Mainnet Release - v1.0.0 - Ashvini

16 Jun 12:57
Compare
Choose a tag to compare

🌌 New Raiden Light Client SDK, dApp and CLI Release

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.

Summary of features that went in:

  • This is the first Light-Client release to be officially supported on Ethereum Mainnet (Homestead), including our deployed https://lightclient.raiden.network/ web dApp instance, but you can always server it locally as well, of course.
  • The SDK now requires to be connected to a Raiden Bespin - v2.x network for transport, clients and services. This release breaks compatibility with previous Raiden 1.x Alderaan in order to improve scalability, efficiency and reliability of the network.
  • Most of the non-breaking improvements and fixes on this release got a last release for previous Raiden version in the form of the Light Client v0.17.0 - Sleeping Beauty release, so be sure to also check its release notes as well.

Raiden SDK

Added

  • [#2822] Added ability to use peer's presence from LockedTransfer's metadata.routes.address_metadata

Changed

  • [#2572] BREAKING Send services messages through toDevice instead of global rooms
  • [#2822] BREAKING Presence now gets fetched from PFS and requires a Bespin-compatible (Raiden 2.0) service and transport network
  • [#2824] Default Monitoring Service reward increased to 80 SVT

Removed

  • [#2571] BREAKING Remove ability to join and send messages to global service rooms
  • [#2822] BREAKING Do not join global rooms anymore, so Matrix-based presence won't work

Testnet Release - v0.17.0 - Sleeping Beauty

15 Jun 16:15
5e766eb
Compare
Choose a tag to compare

👸🏽 New Raiden Light Client SDK, dApp and CLI Release

INFO: The Light Client SDK, dApp and CLI are work in progress, are not
production-ready, and currently can only be used on the Ethereum Testnets.

Summary of features that went in:

  • The SDK can now deploy token networks and takes imbalance fees.
  • In the dApp the connection screen has been re-worked and now includes the option to connect using WalletConnect.
  • The CLI is made available as a package on NPM.

Raiden SDK

Added

  • #1576 Add functionality to deploy token networks
  • #2577 Add imbalance penalty mediation fees
  • #2795 Add config.gasPriceFactor option, to increase the transactions gasPrice as a multiplier of provider-returned eth_gasPrice
  • #2813 open/depositChannel have a new option (confirmConfirmation, true by default) to wait +confirmationBlocks (default=5) after last transaction to give more time for it to be synced on partners and services

Changed

  • #2669 Update to Raiden contracts v0.37.5
  • #2677 Removed the dependency on reactive notifications of peer's presences changes and updated WebRTC signaling algorithm

Fixed

  • #2797 Fixed a non-critical bug where withdraw expiration messages would not stop being retried

Raiden dApp

Added

  • #2599 Add WalletConnect as another wallet/provider
  • #2685 Add a hint dialog when the connection process takes very long
  • #2690 Allow user to reset connections while in progress
  • #2630 Allow user to customize WalletConnection options
  • #2598 Allow user to customize direct RPC provider options
  • [#2689] Add new connection manager to let the user select and configure provider
  • #2604 Improve layout to work everywhere on narrow mobile screens
  • Full setup to build dApp for Android and iOS
  • Full setup to automate publishing of Android app to the Google Play Store

Fixed

  • #2671 Fix preventing transfers to partners with closed channel
  • #2675 Fix insecure behavior on navigation without connected token
  • #2754 Fix empty logs in production mode
  • #2774 Fix duplicated navigation error after doing a backup

Raiden CLI

Added

  • [#2789] Make raiden-cli package being published to NPM registry on new releases

Testnet Release - v0.16.0 - The Supreme Archer

01 Apr 19:37
46d876f
Compare
Choose a tag to compare

🏹 New Raiden Light Client SDK, dApp and CLI Release

INFO: The Light Client SDK, dApp and CLI are work in progress, are not
production-ready, and currently can only be used on the Ethereum Testnets.

Summary of features that went in:

  • The SDK can now charge mediation fees, flat as well as proportional, the options for which are also included in the CLI.
  • The user_deposit endpoint with possibility of deposit, withdraw and planned withdraw with necessary changes in the SDK
  • Initial sync optimizations
  • Removing raiden transport through rooms and relying on toDevice and WebRTC channels.
  • Removing SDK's reliance on WebRTC so that SDK will be fully functional in environments that do not support it, through the toDevice messages
  • Changes in various screens for the dapp to adapt it for full fledged mobile usage.
  • Additional services URLs can be passed as a list in CLI as well as mentioning them more number of times through options passed to the --pathfindingServiceAddress

Raiden SDK

Added

  • #1342 Flat (fixed) mediation fees for mediator nodes
  • #1343 Proportional (per transfer amount) mediation fees for mediator nodes
  • #2581 config.pfsSafetyMargin now also accepts a [f, a] pair, which will add f*fee + a*amount on top of PFS's estimated fee, if one wants finer-grain control on safety margin which is added on the transfer to be initiated.
  • #2629 config.autoUDCWithdraw (default=true) to allow disabling automatically completing a planned UDC withdraw, and new Raiden.getUDCWithdrawPlan and Raiden.withdrawFromUDC to check and perform UDC withdraw when not in auto mode.
  • #2644 Raiden.getUDCTotalDeposit method to fetch UDC total_deposit, base of depositToUDC amounts

Changed

  • #2536 Wait for global messages before resolving deposits and channel open request
  • #2566 Optimize initial sync and resume previous sync filters scans
  • #2570 Support multiple custom services in config.pfs
  • #2635 BREAKING Renamed Raiden.planUdcWithdraw to Raiden.planUDCWithdraw for consistency
  • #2645 Wait for condition to be ready on settleChannel and withdrawFromUDC in case it's called early instead of erroring

Removed

  • #2550 BREAKING Remove migration of legacy state at localStorage during creation
  • #2567 BREAKING Remove support for peer-to-peer communication through Matrix rooms; now supports only toDevice and WebRTC channels.
  • #2600 wrtc auto-polyfill; now, if you're using raiden-ts in a NodeJS project, you're expected to polyfill wrtc or some WebRTC-compatible API to your global object; in exchange, the SDK doesn't require WebRTC, and therefore should work fine on environments without it (through matrix' toDevice messages).

Fixed

  • #2596 Fix unlocking sent transfers even if receiving is disabled

Raiden dApp

Fixed

  • #2590 Fix back arrow not visible on account screen when disconnected
  • #2606 Fix NoTokens screen not being displayed
  • #2420 Fix withdraw and deposit button for channels on mobile
  • #2421 Fix account menu on mobile devices by making it scrollable
  • #2422 Fix broken layout on RaidenAccount screen for mobile virtual keyboard
  • #2383 Fix broken handling of path/query parameters of transfer route
  • #2607 Fix endless navigation loop when canceling open channel route
  • #2617 Fix automatic token selection on external open channel event for new accounts

Added

  • #1515 Button for disconnecting the dApp

Raiden CLI

Changed

  • #2570 Support list of additional services URLs to be passed to --pathfindingServiceAddress
  • #2581 CLI now defaults to 3% * fee + 0.05% * amount for fee safety margin, same as PC

Added

  • #1342 --flat-fee param to set a fixed fee (per token) to be taken on transfers being mediated

Testnet Release - v0.15.0 - Chris

26 Jan 17:29
Compare
Choose a tag to compare
Pre-release

💂‍♂️ New Raiden Light Client SDK, dApp and CLI Release

INFO: The Light Client SDK, dApp and CLI are work in progress, are not
production-ready, and currently can only be used on the Ethereum Testnets.

This minor release fixes many of the remaining issues towards a mainnet release.

The SDK now uses an adaptive syncing mechanism that works with slower nodes and provides partner suggestions from the pathfinding service. Beside that a lot of work went into cleaning up start and shutdown logic, fixes to the transport layer and performance improvements.

The dApp now provides partner suggestions in the UI and got many fixes for smaller paper cuts. It now also checks that the browser supports all required features.
Another important addition is the usage of the browser cache to make the dApp usable without access to our servers. The dApp now also checks if the browser supports all required features and is installable on browsers that support PWAs.

Raiden SDK

Added

  • #211 'suggestPartners' method to fetch suggested partners from PFS
  • #485 Enable the Redux DevTools Extension in development for monitoring the Redux store
  • #2417 Make 'start' async, introduce 'synced' promise, both resolves when syncing finishes
  • #2444 Add adaptative sync for chunked getLogs
  • #2446 Add parameter for subkey generation to overwrite origin URL

Changed

  • #2409 Lower default payment expiration to 1.1 × reveal timeout
  • #2505 Properly shut down epics on stop and wait for teardown/cleanup tasks

Fixed

  • #2352 Presence bug, transport fixes and performance improvements

Raiden dApp

Fixed

  • #2415 Fix sorting latest transaction on top in transactions list
  • #2391 Fix notification icon handling for special scenarios
  • #2410 Fix transfer history list not showing third entry initially
  • #2426 Display total available capacity in transfer view
  • #2431 Disable UDC 'withdraw' button when no eth is is raiden account
  • #2476 Fix persitence to remember disclaimer acceptance if selected
  • #2430 Remember token selection during navigation
  • #2474 Fix TransferHeader behaviour with no available capacity
  • #2485 Show better message in case the PFS doesn't suggest partners
  • #2418 Channel close button incorrectly inactivated

Added

  • #211 Hub proposal when connecting to new token network
  • #2379 Illustrations for info overlays
  • #2435 Sync indicator when connecting to dApp
  • #2399 Hint for user to stay online while receving transfers
  • #2458 Click on notification snackbar to open notification panel
  • #2446 Add VUE_APP_SUBKEY_ORIGIN_URL env variable to recover backups
  • #2527 Add check if browser supports all necessary features or block dApp

Changed

  • #2409 Lower default payment expiration to 1.1 × reveal timeout
  • #2448 Align basic route design in open channel user flow
  • #2414 Allow the dApp do be served from cache after first load
  • #2440 Establish a strict and secure update mechanism

Raiden CLI

Added

  • #2417 Register sensible endpoints on 'synced' SDK promise, updates /status API accordingly

Changed

  • #2505 Wait for background tasks to gracefully complete before exiting

Testnet Release - v0.14.0 - Makalani

25 Nov 18:09
Compare
Choose a tag to compare
Pre-release

🏇 New Raiden Light Client SDK, dApp and CLI Release

INFO: The Light Client SDK, dApp and CLI are work in progress, are not
production-ready, and currently can only be used on the Ethereum Testnets.

This minor release version focuses on strengthening the stability of the SDK and
CLI as well as improving the user experience of interacting with the user
deposit contract in the dApp.

Raiden SDK

Fixed

  • #2360 Properly error & shutdown if database gets deleted at runtime

Added

  • #1256 Disable receiving if blocks don't arrive in a timely manner
  • #2395 Calculate and expose Raiden.blockTime$ as observable of average block times

Raiden dApp

Fixed

  • #2376 Fix Raiden Account tokens not showing up for withdrawal

Added

  • #1693 Customizable privacy policy
  • #2308 Show status of planned user deposit withdrawals
  • #2372 Provide navigation link for withdrawn notification

Changed

  • #2369 Overall re-design of accounts UDC screen
  • #2307 Enhanced user flow and information for withdrawal screen

Raiden CLI

Fixed

  • #2361 Workaround wrtc segfault on teardown

Testnet Release - v0.13.0 - Papagaio

10 Nov 16:57
Compare
Choose a tag to compare
Pre-release

🦜 New Raiden Light Client SDK, CLI and dApp Release

INFO: The Light Client SDK, CLI and dApp are work in progress, are not production-ready, and currently can only be used on the Ethereum Testnets.

This release features a lot of important groundwork and dependencies upgrades: we're now using latest major version of ethers.js and all its improvements, switched to Yarn Workspaces for our mono-repo and dependency management needs, and bumped minimum required NodeJS version to v14 LTS, which includes latest ECMAScript 2020, for better performance and correctness. On dApp side, better notifications to remind you of backing up your local state and better E2E testing with Cypress should make sure things don't break unexpectedly.

Raiden SDK

Fixed

  • [#2058] Check some potential overflows when handling received messages
  • [#2240] Handle network problems when connecting to the Eth node gracefully
  • [#2299] Don't acknowledge SecretReveals if receiving is disabled
  • [#2312] Call WebRTC's connection.close() on teardown

Changed

  • [#1707] Upgrade ethers to v5
  • [#2289] Switch to yarn from pnpm
  • [#2297] Add logs when ignoring incoming transfers
  • [#2311] Bump NodeJS requirement to v14 LTS
  • [#2312] Make Raiden.stop() async, resolves when DB finished flushing

Raiden dApp

Added

  • [#2178] Backup state reminder notification
  • [#2285] Add custom Cypress attributes to selectors
  • [#2274] Add Cypress tests for closing/settling channel

Raiden CLI

Fixed

  • [#2314] Return proper error codes for transfer failures
  • [#2344] Handle JSON wallets with trimmed IVs

Testnet Release - v0.12.0 - Axolotl

22 Oct 17:05
Compare
Choose a tag to compare
Pre-release

🐉 New Raiden Light Client SDK, CLI and dApp Release

INFO: The Light Client SDK, CLI and dApp are work in progress, are not production-ready, and currently can only be used on the Ethereum Testnets.

This release features a new storage backend which resolves problems with restarting the SDK and improves the transport layers resilience in high throughput scenarios. In the dApp more context dependent information is displayed and various smaller issues have been fixed.

Raiden SDK

Fixed

  • #2078 Check for overflows before sending transfers
  • #2094 Fix TransferState's timestamps missing
  • #2174 Fix a few transport issues triggered on high-load scenarios
  • #2229 Fix nonce mismatch caused by room waiting overhead
  • #2275 Fix mismatch between UDC totalDeposit and effectiveBalance

Added

  • #2044 Introduce PouchDB (IndexedDB/leveldown) as new persistent state storage backend
  • #2204 Implement toDevice capability and messaging

Changed

  • #2158 Adapt WebRTC to new protocol compatible with python client
  • #2205 Adapt capabilities to the new query string format

Raiden CLI

Changed

  • #2053 Remove obsolete entrypoint and make raiden the default one
  • #2172 Bundle CLI with ncc

Raiden dApp

Fixed

  • #2237 Displays RDN token on Withdrawal screen
  • #2026 Removed delay time on tooltips
  • #2098 Input fields disabled on transfer screen when no channels are open
  • #1838 Fixes Disclaimer mobile layout
  • #2096 Fixes buggy wallet connection procedure
  • #2108 Fixes red underline under amount input fields on production builds
  • #2144 Fixes navigation to transfer screen when token was selected
  • #2159 Fixes routing issues for account and transfer steps
  • #2238 Fixes broken token overlay for too many connected tokens
  • #2224 Show ETH balance of correct account when withdrawing from UDC

Added

  • #1941 Notification for opening channels
  • #1255 Optional identifier query parameter for transfers

Changed

  • #1929 Design adjustments to settlement notifications and notification panel

Testnet Release - v0.11.1 - Balin

18 Aug 15:10
6f68b16
Compare
Choose a tag to compare
Pre-release

:neckbeard: New Raiden Light Client SDK, CLI and dApp Release

INFO: The Light Client SDK, CLI and dApp are work in progress, are not production-ready, and currently can only be used on the Ethereum Testnets.

This patch release is in first place an update to the Raiden contracts version v0.37.1. Thereby the Light Client is compatible with the Raiden Python client v1.1.1.

Raiden SDK

Changed

  • #2049 Target ES2019 (NodeJS 12+) on SDK builds
  • #2054 Update to Raiden contracts v0.37.1

Raiden CLI

Changed

  • #2054 Update to Raiden contracts v0.37.1

Raiden dApp

Fixed

  • #2047 Conversion and token amount display in UDC deposit dialog

Changed

  • #1951 Update to be compatible with Raiden Python client v1.1.1

Testnet Release - v0.11.0 - Chameleon

04 Aug 15:35
Compare
Choose a tag to compare
Pre-release

🦎 New Raiden Light Client SDK, CLI and dApp Release

INFO: The Light Client SDK, CLI and dApp are work in progress, are not production-ready, and currently can only be used on the Ethereum Testnets.

This release includes a command-line version of the raiden-cli utility tweaked to accept several of the same parameters syntax as the full raiden client. Parameters not implemented yet are ignored. This allows the raiden-cli to actually be used in many cases as a drop-in replacement for the raiden python client/package, or to impersonate it.
Most notably, this has allowed us to run the TypeScript-SDK-based client on several of the scenarios from the Raiden test suite using the Scenario Player tool, unearth several bugs and small behavior asymmetries, and fix them in order to get BF, MS and PFS scenarios (a huge part of the test suite) already passing using solely the light-client. Huge thanks to the Raiden-python team for all the assistance on getting this important compliance landmark achieved.
Additionally, several UI and UX improvements and bugfixes were made to the dApp, better notification of events, protocol fixes and performance improvements to the SDK, and testing and infrastructure improvements to support the continued development of the client.

Raiden SDK

Fixed

  • #1923 Fix fromEthersEvent ranges fetching in case of temporary connectivity loss
  • #1952 Fix nonce conflict issues with concurrent transactions
  • #1997 Fix matrix rate-limiting logins when many nodes are started in parallel
  • #1998 Fix events reverted due to a reorg still getting confirmed
  • #2010 Fix multiple approve on secure ERC20 tokens, like RDN

Added

  • #237 Add autoSettle config (off by default) to allow auto-settling settleable channels
  • #703 Add option to fetch all contracts addresses from UserDeposit address alone
  • #1710 Add option to specify a transfer's lock timeout
  • #1910 Add option to mint tokens for any address
  • #1913 Added contractsInfo getter holding current contracts info
  • #1824 Expose channel settle actions as events
  • #2022 Add 'pfsMaxFee', 'pfsMaxPaths' and 'pfsIouTimeout' config options

Changed

  • #1905 Fail early if not enough tokens to deposit
  • #1958 Transfers can fail before requesting PFS if there's no viable channel
  • #2010 Token.approve defaults to MaxUint256, so only one approval is needed per token; set config.minimumAllowance to Zero to fallback to strict deposit values
  • #2019 Use exponential back-off strategy for protocol messages retries

Raiden dApp

Added

  • #1786 Introduces snackbar display for notifications
  • #1824 Listen to channel settle events and push notifications for them
  • #2002 Add support to VUE_APP_MATRIX_LIST_URL transpile-time env var
  • #1658 Add a disclaimer that the user needs to accept to get access to the app

Changed

  • #1925 Transfer screen style alignments
  • #2001 Pending transfers removed from identicon
  • #1770 Updated UDC deposit dialog for mainnet
  • #1931 dApp always uses hash mode on router
  • #1769 Updated UDC deposit dialog for testnet
  • #1768 Updated UDC screen
  • #1265 Reduce logs size by hiding superfluous actions entries
  • #1875 Redact sensitive information (transport's accessToken, transfer's secrets) from logs

Compatibility

Compatibility has been tested with Alderaan client and network: