Skip to content

Releases: dfinity/exchange-rate-canister

2024.09.05

05 Sep 14:09
8ee6522
Compare
Choose a tag to compare

Release created to make the mock XRC canister available for download.

2024.07.12

11 Jul 13:04
458adc3
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: 458adc36f9c3f6b7232a8868528262c0c3eb52ab
  • Compressed WASM Hash: 206f8b6304ebddad1dd32ad93ca79eae434ce641aa1aee3c671be208517d1a4a
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Prevent repeated calls to failed exchanges
  • Enable the ability to release to an application subnet using feature flags

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 458adc36f9c3f6b7232a8868528262c0c3eb52ab
$ git log --format="%C(auto) %h %s" 51428a562622c5fb3f0bf24214cff77f27ce9bdf..458adc36f9c3f6b7232a8868528262c0c3eb52ab --  ./src/xrc
 458adc3 fix: Prevent repeated calls to failed exchanges (#264)
 987d384 fix: Enable beta release by upping the required cycles and lowering the minimum forexes if IPv4 support is not available. (#263)
 036bac7 feat: Add flag to support sending cycles on an application subnet. (#262)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 458adc36f9c3f6b7232a8868528262c0c3eb52ab
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

206f8b6304ebddad1dd32ad93ca79eae434ce641aa1aee3c671be208517d1a4a  xrc.wasm.gz

2024.04.05

28 Mar 13:42
51428a5
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: 51428a562622c5fb3f0bf24214cff77f27ce9bdf
  • Compressed WASM Hash: dcc42fd617ce8382a28941678b6299cc4c23f1bfc29bfb1eec517e1e84b9128a
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Add two new crypto exchanges: Bitget and Digifinex
  • Add new forex source: Central Bank Of Turkey
  • Update Rust to 1.75.0.
  • Update chrono to resolve security vulnerability.
  • Ensure that /dashboard endpoint returns content-type header.

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 51428a562622c5fb3f0bf24214cff77f27ce9bdf
$ git log --format="%C(auto) %h %s" 06395554fe69c3d423704ed0ed3d5275ea3a3262..51428a562622c5fb3f0bf24214cff77f27ce9bdf --  ./src/xrc
 51428a5 fix: Switch Bitget endpoint and updated response data structure (#261)
 2992c1e feat: Add Turkey forex (#260)
 97d6731 feat: Add Digifinex crypto exchange (#258)
 2589353 feat: Add Bitget exchange (#256)
 064147f fix: Remove access by index when inverting and dividing rates (#257)
 e8ec7fa chore: Update rust toolchain to 1.75.0 (#253)
 3f7ee77 chore: Update chrono to resolve security vulnerability (#254)
 a035563 fix: Set /dashboard content-type (#255)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 51428a562622c5fb3f0bf24214cff77f27ce9bdf
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

dcc42fd617ce8382a28941678b6299cc4c23f1bfc29bfb1eec517e1e84b9128a  xrc.wasm.gz

2024.02.02

31 Jan 17:29
0639555
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: 06395554fe69c3d423704ed0ed3d5275ea3a3262
  • Compressed WASM Hash: 4bfbaa72726f0395383bf5241e77516c3e1b727da04484e728d8e496e24be569
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Update the max response bytes for all exchanges to 3KiB. This allows extra padding in case new headers are introduced in responses by exchanges (ex. MEXC).

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 06395554fe69c3d423704ed0ed3d5275ea3a3262
$ git log --format="%C(auto) %h %s" 77cdb2c91c2b59238def95bab738bc8308389b9b..06395554fe69c3d423704ed0ed3d5275ea3a3262 --  ./src/xrc
0639555 fix: Bump all exchanges to default max response bytes to 3KiB (#251)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 06395554fe69c3d423704ed0ed3d5275ea3a3262
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

4bfbaa72726f0395383bf5241e77516c3e1b727da04484e728d8e496e24be569  xrc.wasm.gz

2024.01.17

17 Jan 20:54
77cdb2c
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: 77cdb2c91c2b59238def95bab738bc8308389b9b
  • Compressed WASM Hash: 785ad7825857116528fe17d2b286b488bff6a533999d8e46d505f85f3c46bc3f
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Update the handling of responses from Gate.io due to a change in their API.
  • Update Candid to 0.10.0.

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 77cdb2c91c2b59238def95bab738bc8308389b9b
$ git log --format="%C(auto) %h %s" b6b25bcb6db7a972dcee58ab9b53b04d88fdda9a..77cdb2c91c2b59238def95bab738bc8308389b9b --  ./src/xrc
77cdb2c fix: Gate.io updated API Response (#250)
ff2a2b5 chore: updated candid to 0.10.0 (#249)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 77cdb2c91c2b59238def95bab738bc8308389b9b
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

785ad7825857116528fe17d2b286b488bff6a533999d8e46d505f85f3c46bc3f  xrc.wasm.gz

2023.12.01

01 Dec 15:52
b6b25bc
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: b6b25bcb6db7a972dcee58ab9b53b04d88fdda9a
  • Compressed WASM Hash: fe91ed906ba7f7b3ac506680d68ab50fc815dba5718154539fe9df032e222553
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Replace ByBit with Crypto.com as an exchange source.

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout b6b25bcb6db7a972dcee58ab9b53b04d88fdda9a
$ git log --format="%C(auto) %h %s" 9ee933fb2d8b29fcc4a2a4ff9052b9c21a72433e..b6b25bcb6db7a972dcee58ab9b53b04d88fdda9a --  ./src/xrc
b6b25bc chore: Replace bybit with crypto.com (#248)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout b6b25bcb6db7a972dcee58ab9b53b04d88fdda9a
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

fe91ed906ba7f7b3ac506680d68ab50fc815dba5718154539fe9df032e222553  xrc.wasm.gz

2023.11.28

28 Nov 15:40
9ee933f
Compare
Choose a tag to compare

Summary

  • Proposer: DFINITY Foundation
  • Git Hash: 9ee933fb2d8b29fcc4a2a4ff9052b9c21a72433e
  • Compressed WASM Hash: 45e306e083590365adef0feca43b1f1bc13e8ab8da7b1547800317a6f0e441ef
  • Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai
  • Repository: https://github.com/dfinity/exchange-rate-canister.git

Features

  • Ensure forex rates are sorted in the transform function to ensure consensus passes.
  • Replace Binance with ByBit as an exchange source.
  • Update to candid 0.9.11
  • Remove Singapore from forex sources.

Commit Log

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ git checkout 9ee933fb2d8b29fcc4a2a4ff9052b9c21a72433e
$ git log --format="%C(auto) %h %s" aff48f88ea2f26bb16dea1d644636dc00197c942..e9a789189425bb70e7bf6bf0efa1dfa4a3e180f9 --  ./src/xrc
9ee933f fix: In order to ensure consensus passes, forex rates must be sorted. (#247)
4cbef71 chore: Removing the Singapore forex source (#246)
f956dc0 chore: Replacing Binance with Bybit (#245)
03f4f44 chore: Update to latest candid, ic-cdk, and serde-xml-rs (#237)

To Verify

$ git clone https://github.com/dfinity/exchange-rate-canister.git
$ cd exchange-rate-canister
$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

45e306e083590365adef0feca43b1f1bc13e8ab8da7b1547800317a6f0e441ef  xrc.wasm.gz

2023.07.24

17 Jul 16:12
e9a7891
Compare
Choose a tag to compare

Summary

Git Hash: e9a789189425bb70e7bf6bf0efa1dfa4a3e180f9
Compressed WASM Hash: 513bd326c827881278810c09327573a95aac84976a9a97c769847179223ffc27
Target Canister: uf6dk-hyaaa-aaaaq-qaaaq-cai

Features

  • The pricing has been updated in accordance with the new price function of HTTPS outcalls. In short, the number of cycles that need to be attached and the number of cycles charged have been reduced by a factor of 10!
  • The exchange rate canister now supports variable decimals. That is, the decimals field in the returned exchange rate metadata may deviate from the default value 9 to represent very small or large exchange rates.
  • Since all rates are represented as integers, the standard deviation in the metadata is now computed using an integer square-root function to minimize the use of floating-point operations.
  • The exchange rate canister now supports the upcoming dfx deps feature, which will make it possible to easily install canisters locally.
  • Several new end-to-end tests have been added to test the canister’s behavior in various scenarios.

Commit Log

$ git checkout e9a789189425bb70e7bf6bf0efa1dfa4a3e180f9
$ git log --format="%C(auto) %h %s" aff48f88ea2f26bb16dea1d644636dc00197c942..e9a789189425bb70e7bf6bf0efa1dfa4a3e180f9 --  ./src/xrc
 e9a7891 `chore`: Update Coinbase max response bytes (#236)
 c55e2f5 Update cycle pricing (#232)
 bfb1f74 Removing floating-point square-root operations (#230)
 cd127b1 fix(stddev): Update standard deviation to account for overflow (#229)
 e6030c9 feat: Enabling variable decimals (#222)
 2b82623 feat: Mock forex and stablecoin responses (#221)
 ef51b10 chore: Update rust version to 1.69.0 (#215)

Verify the WASM hash of the canister

$ export IP_SUPPORT=ipv4
$ ./scripts/docker-build
$ sha256sum xrc.wasm.gz

Expected output

513bd326c827881278810c09327573a95aac84976a9a97c769847179223ffc27  xrc.wasm.gz