Skip to content
This repository has been archived by the owner on May 28, 2021. It is now read-only.

Releases: connext/indra

Indra v7.3.11

31 Aug 08:42
Compare
Choose a tag to compare

New Features

  • #1405 - Improved collateral management (explanation below)

Improved Collateral Management

Node

  • Admin endpoints to add and view rebalance profiles per channel/asset combo. Example requests:
# Add Rebalance Profile
POST http://localhost:3000/api/admin/rebalance-profile
Content-Type: application/json
x-auth-token: cxt1234

{
  "multisigAddress": "0x93a8eAFC6436F3e238d962Cb429893ec22875705",
  "rebalanceProfile": {
    "assetId": "0x4E72770760c011647D4873f60A3CF6cDeA896CD8",
    "collateralizeThreshold": "5",
    "target": "15",
    "reclaimThreshold": "0"
  }
}

###
# Get Rebalance Profile

GET http://localhost:3000/api/admin/rebalance-profile/0x93a8eAFC6436F3e238d962Cb429893ec22875705/0x0000000000000000000000000000000000000000
Content-Type: application/json
x-auth-token: cxt1234
  • New environment variables exposed for setting default collateralization limits. Set using stringified JSON.
    • INDRA_DEFAULT_REBALANCE_PROFILE_ETH
    • INDRA_DEFAULT_REBALANCE_PROFILE_TOKEN - Currently applies across all tokens

Example:

export INDRA_DEFAULT_REBALANCE_PROFILE_TOKEN='{"assetId":"0x4E72770760c011647D4873f60A3CF6cDeA896CD8","collateralizeThreshold":"10000000000000000","target":"50000000000000000","reclaimThreshold":"200000000000000000"}'

Client

  • Optional amount field added to requestCollateral method. amount can be larger than target but must be less than reclaimThreshold.

Artifacts

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.3.11

Indra v7.3.7

24 Aug 15:34
Compare
Choose a tag to compare

Features

  • #1390 - Allow middleware to be injected by client.

Improvements

  • #1372 - Withdrawal robustness.

Bugfixes

  • #1357 - Guaranteed uniqueness of paymentId.
  • #981 - End-user input is not case-sensitive anymore.

Artifacts

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.3.7

Indra 7.3.6 | Client 7.3.6

21 Aug 03:44
Compare
Choose a tag to compare
  • Includes fix to save transaction request, even if it immediately fails
  • USDT compliant (different from ERC20 compliant)

indra-7.3.5 | client-7.3.5

21 Aug 03:16
Compare
Choose a tag to compare
  • Bug fix to save the latest action properly when removing app instances

Indra v7.3.1

15 Aug 15:13
Compare
Choose a tag to compare

Bugfixes

  • #1380 - Fix withdrawal contracts to support non-conforming ERC20 contracts using Uniswap's safeTransfer.
  • #1379 - Transfer behavior is more predictable and will not continue on node-side if collateralization takes too long, which already triggered a client-side timeout.

Artifacts

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.3.1

Indra v7.3.0

15 Aug 07:38
Compare
Choose a tag to compare
indra-7.3.0

Deploy indra-7.3.0

Indra v7.2.0 | Client v7.2.0

12 Aug 09:02
Compare
Choose a tag to compare

New features:

  • Linked transfers that require the recipient to be online: channel.conditionalTransfer({ conditionType: ConditionalTransferTypes.OnlineTransfer })
  • Support for all side-chains that spacefold supports + improved ETC support.

Indra v7.1.1

10 Aug 08:05
Compare
Choose a tag to compare

API Changes

  • #1359 - Client API methods deposit and requestCollateral now return without waiting for the completion of an onchain tx. The methods return a function completed() as part of the response to allow waiting for the full process including the onchain tx and offchain protocol (inspired by Ethers' await tx.wait() API).

An example deposit call:

import { BigNumber, constants } from "ethers";
const response = await client.deposit({ amount: BigNumber.from(10), assetId: constants.AddressZero });
// deposit method returns quickly

await response.completed();
// tx complete, channel balance updated

New Features

  • #1073 - Added groundwork for supporting Grafana and Prometheus to provide a node operator dashboard. More to come.

Bugfixes

  • #1340 - Fix cases where onchain tx was taking too long when the receiver needed to be collateralized.
  • #1153 - Add more reliable onchain transaction tracking to cf-core.
  • #1331 - Fix issue where mainnet was getting spammed by error logs from SwapRateService.
  • #1347 - More reliable process around withdrawing to enable node to send the client a tx hash immediately.
  • #1327 - Ops bug.
  • #1332 - Reenable config endpoint with old API (without chainId specification).
  • #1330 - Fix pruneExpiredApps task
  • #1332 - Hard limit on number of apps allowed in a channel.
  • #1323 - Allow locking on just the appIdentityHash rather than full channel locks.
  • #1298 - Add version number to protocol, follows semantic versioning.
  • #1087 - Delete commitments on uninstall.
  • #1310 - Cooperative cancel for receiver.
  • #1317 - Retry failed txes.

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.1.1

Indra v7.0.0

22 Jul 08:18
Compare
Choose a tag to compare

New Features

  • #922 - Multi-chain support
  • #900 - In-flight swaps (cross-asset and/or cross-chain)
  • Support for in-place upgradeability

Under The Hood

  • #1319 - Revamped transfer flows
  • #1288 - Add tx data to commitments to make them resilient to upgrades
  • #1087 - Delete commitments on uninstall
  • #1298 - Add version number to protocol

Breaking Changes

  • Node env var INDRA_ETH_PROVIDER has been changed to INDRA_CHAIN_PROVIDERS to support multi-chain configuration. Example usage:
# .env
export INDRA_CHAIN_PROVIDERS="{\"1337\":\"http://172.17.0.1:8545\",\"1338\":\"http://172.17.0.1:8546\"}"
  • Node env vars INDRA_ETH_MNEMONIC, INDRA_ETH_MNEMONIC_FILE, and INDRA_ETH_CONTRACT_ADDRESSES are changed to be chain-agnostic: INDRA_MNEMONIC_FILE, INDRA_MNEMONIC, and INDRA_CONTRACT_ADDRESSES.
  • Supported node env vars are listed below. Any env vars that are not listed are no longer supported.
    INDRA_ADMIN_TOKEN
    INDRA_CHAIN_PROVIDERS
    INDRA_CONTRACT_ADDRESSES
    INDRA_MNEMONIC_FILE
    INDRA_MNEMONIC
    INDRA_LOG_LEVEL
    INDRA_NATS_JWT_SIGNER_PRIVATE_KEY
    INDRA_NATS_JWT_SIGNER_PUBLIC_KEY
    INDRA_NATS_SERVERS
    INDRA_NATS_WS_ENDPOINT
    INDRA_PG_DATABASE
    INDRA_PG_HOST
    INDRA_PG_PASSWORD_FILE
    INDRA_PG_PORT
    INDRA_PG_USERNAME
    INDRA_PORT
    INDRA_REDIS_URL
    NODE_ENV

Artifacts

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.0.0

Indra v7.0.0-alpha.11

03 Jul 07:54
Compare
Choose a tag to compare

New Features And Improvements

  • #900 - Added support for in-flight swaps. This is an experimental new feature, so please contact us for assistance with implementation.
  • #1178 - Performance improvements (an ongoing task).
  • Require online recipient for Graph transfer.

Bugfixes

  • #1281 - Attempted fix for Ethers quorum issue.

Artifacts

Node Docker Image

NPM Packages

  • @connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.0.0-alpha.6