Skip to content

Releases: dfinity/bitcoin-canister

release/2024-08-30

30 Aug 09:18
4884a83
Compare
Choose a tag to compare

What's Changed

  • feat: allow specifying rust features in docker by @ielashi in #318
  • chore: remove legacy_preupgrade feature by @ielashi in #319
  • chore: upgrade Cargo.lock deps and ic-cdk by @ielashi in #321
  • fix: uploader canister compilation by @ielashi in #323

Full Changelog: release/2024-07-28...release/2024-08-30

release/2024-07-28

28 Jul 17:08
32102be
Compare
Choose a tag to compare

What's Changed

  • Adds a new endpoint (get_block_headers) as specified in dfinity/interface-spec#298.
  • Reduces the maximum number of instructions in heartbeats from 4B to 1B. This helps keep the finalization rate of the subnet smooth and improves response times.
  • Adds a config for eager evaluation of fees, which is useful for local dev environments.
  • Adds the candid interface to the metadata section.
  • Improves serialization of unstable blocks when upgrading

Full Changelog: release/2024-01-22...release/2024-07-28

release/2024-01-22

23 Jan 10:50
62a71e4
Compare
Choose a tag to compare

What's Changed

Bitcoin Canister

Watchdog Canister

  • fix: make the bitcoin testnet watchdog less sensitive by @ielashi in #277

Full Changelog: release/2023-10-13...release/2024-01-22

release/2023-10-13

13 Oct 08:35
aff3eef
Compare
Choose a tag to compare

Fixes

Adds

release/2023-08-10

10 Aug 13:05
377b769
Compare
Choose a tag to compare

Changed

  • test: add proptests for computing next header target. by @ielashi in #223
  • chore: unify crate versions by moving them to workspace level by @maksymar in #229
  • chore: update some crate revisions by @maksymar in #230
  • chore: bump up candid to 0.9.1 by @maksymar in #231
  • chore: Implement the From trait to access the Txid bytes by @THLO in #232
  • chore: add metadata to publish the ic-btc-interface crate by @ielashi in #233
  • perf: add benchmark for the get_metrics endpoint. by @ielashi in #238
  • perf: calculate the main chain height more efficiently by @ielashi in #237
  • chore: add additional logs to the canister heartbeat by @ielashi in #239
  • fix: add panic hook to bitcoin canister by @maksymar in #240
  • docs: add docs on how to cut releases by @ielashi in #235
  • perf: add benchmark for inserting block headers by @ielashi in #242
  • feat: use criterion for running benchmarks by @ielashi in #243
  • perf: make block header validation more efficient by @ielashi in #241
  • refactor: move shared types in ic-btc-types crate by @ielashi in #244
  • perf: skip next block headers if they are already inserted. by @ielashi in #245
  • fix: add a bound on the length of the unstable chain in testnet/regtest by @ielashi in #246
  • fix: drop next block headers above a certain instructions threshold by @ielashi in #247
  • chore: [EXC-1379] remove interim code from previous upgrade by @ielashi in #248

Full Changelog: release/2023-07-06...release/2023-08-10

Fake Release

27 Jul 14:18
bed9053
Compare
Choose a tag to compare
Fake Release Pre-release
Pre-release

NOTE: This release is only maintained to not break existing clients. It is not a release that was deployed to production.

This release downgrades candid from 0.9.0-beta.3 to 0.8.1.

Since there is no actual changes to the Bitcoin canister this release is NOT going to be rolled-out to production and is only intended for the users who need to have the Wasm file with this specific candid version.

Wasm Hash

3df5c5875aacfb3a2b3a680300d69d85e81eef56cd6c1f2e650290c8f422f193  ic-btc-canister.wasm.gz

release/2023-06-12

13 Jun 09:24
b169361
Compare
Choose a tag to compare

Summary

This release is primarily focusing on the integration and enhancement of the watchdog canister.

Key additions are the inclusion of a watchdog canister with configurations for both mainnet and testnet, configurable explorers, and its verification in the Docker build process and the checks-pass workflow.

Changes include refactoring for end-to-end tests and improved debugging, while fixes address issues around HTTP requests and metrics handling.

Added

  • chore: add tests for explorer api abuse to watchdog canister #194 by @maksymar
  • feat: add mainnet & testnet watchdog configs, add bitaps explorer API #196 by @maksymar
  • feat: don't plot default values when missing data for watchdog canister metrics #197 by @maksymar
  • chore: add watchdog jobs to checks-pass workflow #201 by @maksymar
  • chore: fix LICENSE, add copyright owner #202 by @maksymar
  • feat: add watchdog stop-switch for bitcoin canister #203 by @maksymar
  • chore: expose bitcoin_canister api_access metric #205 by @maksymar
  • feat: add configurable explorers for watchdog canister #209 by @maksymar
  • chore: add watchdog-canister to docker #210 by @maksymar
  • chore: add watchdog_canister to set_config_request api #211 by @maksymar

Changed

Fixed

  • fix: watchdog canister running out of cycles when sending http_request (#195) by @maksymar
  • fix: use f64::NAN as null value for watchdog canister metrics #199 by @maksymar

sha256sum

8cc43d3f40bb734a0c87f42ae19eee70c360f2d66a0c88c631f0f0e785505133  ic-btc-canister.wasm.gz
d1d2a6fdd63ef9d00218e40027c79004ca8bfb876b32851ca52e26b9b0a5526e  uploader-canister.wasm.gz
d5c8486fd30203a3c0a195ab69e5f7832b39058109a6ae79e993f52e42b3f963  watchdog-canister.wasm.gz

release/2023-04-21

21 Apr 14:31
c60ed68
Compare
Choose a tag to compare

Added

  • feat: add metric to track if the canister is synced by @ielashi in #167
  • feat: add ic-http simple API for HTTP outcalls on the IC with mocks in tests by @maksymar in #172
  • feat: create a watchdog canister to fetch Bitcoin block data from explorers by @maksymar in #177
  • feat: add metrics to watchdog canister by @maksymar in #189

Changed

  • feat: do not respond to requests when not fully synced by @dragoljub-duric in #151
  • chore: upgrade dfx to 0.13.1 by @ielashi in #161
  • optimize: cache block hash computations to speed up block insertions by @ielashi in #164
  • chore: upgrade stable structures to version 0.5.2 by @ielashi in #176
  • chore(deps): bump h2 from 0.3.16 to 0.3.17 by @dependabot in #184

Fixed

release/2023-03-31

03 Apr 05:40
e01652b
Compare
Choose a tag to compare

Added

Changed

  • feat: use the guard pattern when fetching blocks. by @ielashi in #154
  • chore: upgrade rust to 1.68.0 by @ielashi in #155

Fixed

  • fix: ignore coinbase transactions when computing fee percentiles. by @ielashi in #152
  • fix: fix bug in retrieving the caller in the set_config endpoint. by @ielashi in #157

2023-02-23

23 Feb 13:26
8bb486a
Compare
Choose a tag to compare

Changed

  • Validating timestamps is now consistent with Bitcoin core. Timestamps are validated to ensure they aren't too far in the future.
  • The fee for each endpoint is now charged in all cases (as opposed to only charging if the input is valid).

Fixed

  • Correctly set the syncing flag in the init method.