Releases: utxostack/btc-assets-api
v2.0.0
What's Changed
- fix(error): refactor global error handler to fix inaccurate error message by @ahonn in #111
- feat(bitcoin)!: use mempool.space REST API by @ahonn in #96
- chore(error): add filled count to sentry context by @ahonn in #113
- feat(bitcoin): calculate fees when mempool.space recommend fees api unavailable by @ahonn in #114
- fix: fix the state issue of inactive paymaster cell job by @ahonn in #118
- docs: update env vars and add missing docs by @ahonn in #119
- feat(unlock): add spore BTCTimeLock cells unlock support by @ahonn in #120
- feat(bitcoin): add /bitcoin/v1/transactiona/:btc_txid/hex route by @ahonn in #123
- feat(bitcoin): post btc transaction to multi electrs/btc nodes by @ahonn in #127
- fix: fix bitcoin client error message handle by @ahonn in #129
Full Changelog: release/v1.5.0...release/v2.0.0
Upgrading to V2
We have released v2.0.0 for support mempool.space API as the primary Bitcoin data provider, and it is used to broadcast transactions. But it is still compatible with the electrs used previously.
There are two ways to upgrade:
Upgrading from v1.x.x and use electrs (compatible, by default)
Suppose you do not want to use the mempool.space API as the main data provider, you do not need to make any changes.
But we recommend you remove the following env vars for safety:
BITCOIN_JSON_RPC_URL=<http://bitcoin:8332>
BITCOIN_JSON_RPC_USERNAME=<rpc_username>
BITCOIN_JSON_RPC_PASSWORD=<rpc_password>
and add the following env vars to make sure to use electrs as the primary data provider, and add mempool.space API as a fallback:
BITCOIN_DATA_PROVIDER=electrs # recommend, electrs by default
BITCOIN_MEMPOOL_SPACE_API_URL=https://mempool.space # optional, mempool.space as the fallback
Upgrading from v1.x.x and using mempool.space API
The new feature in v2.0.0, we can use mempool.space API as the primary data provider, and use electrs as a fallback.
Add the following env vars:
BITCOIN_DATA_PROVIDER=mempool
BITCOIN_MEMPOOL_SPACE_API_URL=https://mempool.space
If you want to use the previous electrs as a fallback, keep the original BITCOIN_ELECTRS_API_URL
env var. Otherwise, remove this var to avoid using electrs.
BITCOIN_ELECTRS_API_URL=<http://electrs:3002> # optional, electrs as fallback
Recommended Fees API
If use mempool.space API as the primary data provider, then we can use /bitcoin/v1/fees/recommended
to get the bitcoin fees. and we will calculate fees when mempool.space recommend fees API unavailable (see #114).
use electrs as the primary data provider and didn't set BITCOIN_MEMPOOL_SPACE_API_URL
as a fallback, then recommended fees API will be unavailable
v1.5.0
v1.4.0
What's Changed
- test: add not exists transaction test cases by @ahonn in #76
- docs(rgbpp): add type_script param description by @ahonn in #90
- feat: get ckb txhash from job returnvalue by @ahonn in #93
- fix(cron): optimize missing transactions retry logic by @ahonn in #87
- fix(transaction): fix the pool rejected transaction by increasing the fee rate by @ahonn in #91
- fix: fix pool reject resent tx duplicate cellDeps issue (patch for #91) by @ahonn in #94
- refactor(sentry): improve sentry error handle by @ahonn in #88
- feat: add request jwt token info to job data context by @ahonn in #95
- fix: catch ckb rpc fetch error after transaction processed by @ahonn in #99
- fix: update spv proof cache max age by @ahonn in #100
Full Changelog: release/v1.3.0...release/v1.4.0
v1.3.0
What's Changed
- docs: update .env.example and readme by @ahonn in #70
- chore: add protect branches pre-commit hook by @ahonn in #67
- feat: add with_data parameter to support return job data by @ahonn in #78
- feat: job retry and ElectrsAPINotFoundError delayed optimization by @ahonn in #79
- feat: add internal api for manually retry all failed jobs by @ahonn in #50
- feat: add healthcheck by @ahonn in #77
- feat: retry missing transactions when block confirmed by @ahonn in #80
- chore: update sentry cron minitor name of retry missing transactions task by @ahonn in #85
- feat: add env var for enable/disable paymaster receive UTXO check by @ahonn in #84
Full Changelog: release/v1.2.1...release/v1.3.0
v1.2.1
v1.2.0
What's Changed
- feat: security mechanism by @ahonn in #51
- fix: fix error handling of the Transaction service by @ahonn in #57
- feat: upgrade sdk to update estimated ckb tx fee by @ahonn in #60
- feat: add sentry simple rate env vars by @ahonn in #61
- feat: update spv proof api cache control by @ahonn in #63
- fix: get address unspent api compatible only_confirmed is undefined by @ahonn in #64
- test: update test snapshots by @ahonn in #68
Full Changelog: release/v1.1.0...release/v1.2.0
v1.1.0
v1.0.0
What's Changed
- feat: use JWT token audience as CORS origin by @ahonn in #2
- feat: implement bitcoin api by @ahonn in #1
- refactor: use zod validate by @ahonn in #5
- feat: add authentication for token routes by @ahonn in #3
- feat: authentication and docker files by @ahonn in #6
- docs: add api docs description by @ahonn in #7
- feat: check bitcoin JSON-RPC and electrs api network by @ahonn in #9
- ci: add docker image build workflow by @ahonn in #10
- docs: add readme and deployment guide by @ahonn in #22
- ci: add deploy workflow by @ahonn in #23
- feat: optimize transaction process by @ahonn in #21
- feat: upgrade rgbpp sdk by @ahonn in #25
- feat: remove deprecated params by @ahonn in #24
- fix: add missing remove0x by @ahonn in #26
- fix: BTCTimeLock unlock allow supported asset types only by @ahonn in #27
- feat: add sentry events tag/context, captureException 5xx or unknown errors by @ahonn in #28
- feat: simplify token route control by @ahonn in #29
- chore: update sentry cron monitors config by @ahonn in #32
- chore: update the API version showing in the docs by @ahonn in #33
- fix: update the default value of env.PAYMASTER_CELL_CAPACITY by @ahonn in #37
- chore: update api docs title by @ahonn in #38
- feat: add only_confirmed query params to get utxo route by @ahonn in #40
- fix: fix only_confirmed query params type and add test cases by @ahonn in #41
- fix: update sentry job context by @ahonn in #42
- feat: upgrade rgbpp-sdk to get mainnet deployment info by @ahonn in #43
Full Changelog: https://github.com/ckb-cell/btc-assets-api/commits/release/v1.0.0