Skip to content
This repository has been archived by the owner on Aug 30, 2024. It is now read-only.

Releases: debridge-finance/dln-taker

v2.8.1

09 Aug 08:49
a676ad4
Compare
Choose a tag to compare

What's Changed

  • fix: reject orders that require pre-fulfill swaps where swaps are not available by @alexeychr in #102

Full Changelog: v2.8.0...v2.8.1

v2.8.0 Add Base and Optimism

03 Aug 12:38
7ece452
Compare
Choose a tag to compare

What's Changed

  • feature: base and optimist support by @mncdg in #100

Full Changelog: v2.7.0...v2.8.0

v2.7.0

20 Jul 12:08
6d19687
Compare
Choose a tag to compare

What's Changed

New opt-in feature: Linea blockchain

This release introduces support of Linea blockchain. To start processing orders to/from Linea, do the following steps:

  1. Register the new chain in your configuration file (e.g., executor.config.ts) and configure it properly. Use sample.config.ts as an example:
    {
      chain: ChainId.Linea,
      chainRpc: `${process.env.LINEA_RPC}`,

      constraints: {
        // Defines necessary and sufficient block confirmation thresholds per worth of order expressed in dollars.
        requiredConfirmationsThresholds: [
          // worth <$100: 1+ block confirmation
          // {thresholdAmountInUSD: 100, minBlockConfirmations: 1},

          // worth >$100: guaranteed block confirmations (15)
        ],

        // Defines a TVL hard cap for orders coming from this chain that were fulfilled before getting guaranteedly finalized.
        nonFinalizedTVLBudget: 10_000,
      },

      beneficiary: `${process.env.LINEA_BENEFICIARY}`,
      takerPrivateKey: `${process.env.LINEA_TAKER_PRIVATE_KEY}`,
      unlockAuthorityPrivateKey: `${process.env.LINEA_UNLOCK_AUTHORITY_PRIVATE_KEY}`,
    }
  1. Add the Linea's native coin (ETH) to the token bucket in your configuration file (e.g., executor.config.ts):
  buckets: [
    //
    // Setting the USDC bucket (all tokens are emitted by Circle Inc on every DLN supported chain)
    //
    new TokensBucket({
      [ChainId.Arbitrum]: ["0xff970a61a04b1ca14834a43f5de4533ebddb5cc8"],
      [ChainId.Avalanche]: ["0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"],
      [ChainId.BSC]: ["0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d"],
      [ChainId.Ethereum]: ["0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"],
      [ChainId.Polygon]: ["0x2791bca1f2de4661ed88a30c99a7a9449aa84174"],
      [ChainId.Solana]: ["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"],
    }),
    //
    // Setting the ETH/wETH bucket
    //
    new TokensBucket({
      [ChainId.Arbitrum]: ['0x0000000000000000000000000000000000000000'],
      [ChainId.Avalanche]: ['0x49D5c2BdFfac6CE2BFdB6640F4F80f226bc10bAB'],
      [ChainId.BSC]: ['0x2170Ed0880ac9A755fd29B2688956BD959F933F8'],
      [ChainId.Ethereum]: ['0x0000000000000000000000000000000000000000'],
      [ChainId.Linea]: ['0x0000000000000000000000000000000000000000'], // <!-- this is the new line 🔴
      [ChainId.Polygon]: ['0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619']
    }),
  ],
  1. Set proper values to the environment variables referenced above in your .env file:
# Linea
LINEA_RPC=https://
LINEA_TAKER_PRIVATE_KEY=
LINEA_UNLOCK_AUTHORITY_PRIVATE_KEY=
LINEA_BENEFICIARY=0x...
  1. Deploy enough ETH to your taker's address on Linea, according to the documentation

Breaking changes

In previous versions of dln-ts-client, the adapter to Coingecko API was using a hardcoded value of the USDC token (EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v) on Solana. The new version removes the hack, effectively breaking BC and thus affects estimation of orders from Solana. To facilitate the change, your are required to update the config file as follows:

  1. add the following line to the beginning of your config file:
import configurator from "./src/configurator";
  1. find the lines
  tokenPriceService: new CachePriceFeed(
    new CoingeckoPriceFeed(process?.env?.COINGECKO_API_KEY),
    60 * 5 // 5min cache
  ),
  1. replace with the new lines:
  tokenPriceService: configurator.tokenPriceService({
    coingeckoApiKey: process?.env?.COINGECKO_API_KEY
  }),

Full Changelog: v2.6.2...v2.7.0

v2.6.2

11 Jul 14:45
8fe6984
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.6.1...v2.6.2

v2.6.1

29 Jun 13:21
2460ffe
Compare
Choose a tag to compare

What's Changed

  • feat: correctly check order status for non-finalized orders coming from Solana by @alexeychr in #96

Full Changelog: v2.6.0...v2.6.1

v2.6.0

27 Jun 09:23
c3e30bd
Compare
Choose a tag to compare

What's Changed

  • feature: pre-fulfill swap's change recipient by @alexeychr in #94

New opt-in feature: pre-fulfill swaps' change recipient

This releases introduces an opt-int feature to configure pre-fulfill swaps' change recipient. By default, any change occurred after pre-fulfill swap is transferred to the taker; now it is possible to change this behaviour so that change is transferred to maker:

      dstConstraints: {
        // transfer pre-fulfill swap change to maker (orderAuthorityDstAddress). Default value: "taker"
        preFulfillSwapChangeRecipient: "maker"
      }

Full Changelog: v2.5.0...v2.6.0

v2.5.0

23 Jun 15:05
969b7ab
Compare
Choose a tag to compare

What's Changed

New opt-in feature: delayed fulfillment

This releases introduces an opt-int feature to configure delayed fulfillments. More on this: https://github.com/debridge-finance/dln-taker/tree/v2.5-latest#delayed-fulfillments

Full Changelog: v2.4.0...v2.5.0

v2.4.0

20 Jun 12:18
6ad9e43
Compare
Choose a tag to compare

What's Changed

  • feature: non-finalized orders budget by @mncdg in #84

Full Changelog: v2.3.1...v2.4.0

New opt-in feature: nonFinalizedTVLBudget

This release introduces a budget (a hard cap) of all successfully fulfilled orders' value (expressed in USD) that were not reached
yet guaranteed finality at the given point in time, which solves the issue covered in #84.

To start using this feature, add the constraints.nonFinalizedTVLBudget property to every chain defined in your config. Consider reading the corresponding section in the documentation: https://github.com/debridge-finance/dln-taker/tree/v2.4-latest#setting-a-budget-for-non-finalized-orders

v2.3.1

08 Jun 14:42
11a9de6
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.3.0...v2.3.1

v2.3.0

31 May 10:59
e81c2c2
Compare
Choose a tag to compare

What's Changed

  • feature: send transaction with signed transaction by @mncdg in #77
  • feat: Fantom blockchain now supported for taking orders (to/from) by @mncdg in #87

What's New

This release introduces the support of Fantom blockchain. To start fulfilling orders from/to Fantom, you need to add the new section in your configuration file, as stated in sample.config.ts:

chains: [
  // ... 

    {
      chain: ChainId.Fantom,
      chainRpc: `${process.env.FANTOM_RPC}`,

      beneficiary: `${process.env.FANTOM_BENEFICIARY}`,
      takerPrivateKey: `${process.env.FANTOM_TAKER_PRIVATE_KEY}`,
      unlockAuthorityPrivateKey: `${process.env.FANTOM_UNLOCK_AUTHORITY_PRIVATE_KEY}`,
    },
]

Additionally, add the following new environment variables to your .env file, as stated in sample.env:

FANTOM_RPC=https://
FANTOM_TAKER_PRIVATE_KEY=
FANTOM_UNLOCK_AUTHORITY_PRIVATE_KEY=
FANTOM_BENEFICIARY=0x...

Full Changelog: v2.2.3...v2.3.0