2022-01-21 10:15:24 +01:00
|
|
|
# 0.9.5 (TBD)
|
|
|
|
|
|
|
|
* Update dependencies (`serde-json`, `serde`, `tempfile`, `crossbeam-channel`)
|
|
|
|
* Fix `txid` index collision handling (#653)
|
|
|
|
* Use `bitcoincore_rpc`'s `getblockchaininfo` implementation (#656)
|
|
|
|
|
2021-12-28 14:49:44 +01:00
|
|
|
# 0.9.4 (Dec 30 2021)
|
2021-12-04 08:02:37 +01:00
|
|
|
|
2021-12-16 21:18:15 +01:00
|
|
|
* Update dependencies (`anyhow`, `serde`, `serde_json`, `signal-hook`)
|
2021-12-04 09:45:11 +01:00
|
|
|
* Improve p2p receiving metrics (#633)
|
2021-12-16 21:18:15 +01:00
|
|
|
* Warn on attempt to connect over SSL (#634)
|
2021-12-04 08:02:37 +01:00
|
|
|
* Disable `index_lookup_limit` by default (#635)
|
2021-12-16 21:18:15 +01:00
|
|
|
* Parse p2p messages in a separate thread (#638)
|
2021-12-28 14:49:44 +01:00
|
|
|
* Add server loop-related metrics
|
2021-12-04 08:02:37 +01:00
|
|
|
|
2021-11-19 08:06:07 +01:00
|
|
|
# 0.9.3 (Nov 20 2021)
|
2021-11-01 07:37:19 +01:00
|
|
|
|
2021-11-19 08:06:07 +01:00
|
|
|
* Support basic RPC handling during initial sync (#543)
|
2021-11-01 07:37:19 +01:00
|
|
|
* Update MSRV requirements to Rust 1.48 (#603)
|
|
|
|
* Bump `env_logger` to 0.9 (#604)
|
|
|
|
* Monitor RocksDB statistics via Prometheus (#605)
|
2021-11-07 08:00:10 +01:00
|
|
|
* Don't warn when queried with unsubscribed scripthashes (#609)
|
|
|
|
* Allow skipping merkle proofs' during subscription (#610)
|
2021-11-08 15:12:31 +01:00
|
|
|
* Remove `verbose` configuration (#615)
|
2021-11-19 08:06:07 +01:00
|
|
|
* Add `curl` to `Dockerfile` (#624)
|
2021-11-01 07:37:19 +01:00
|
|
|
|
2021-10-30 15:11:03 +02:00
|
|
|
# 0.9.2 (Oct 31 2021)
|
2021-10-25 12:51:21 +02:00
|
|
|
|
|
|
|
* Add a feature to ignore default config files (#396)
|
|
|
|
* Support Rust 1.48.0 and test on Debian 11 (#455)
|
2021-10-30 15:11:03 +02:00
|
|
|
* Allow multiple scripthashes' subscription in parallel(#464)
|
2021-10-25 12:51:21 +02:00
|
|
|
* Ignore `cargo audit` warning in `tiny_http` (#575)
|
|
|
|
* Re-organize and split documentation (#583)
|
|
|
|
* Use `/electrs:$VERSION/` in p2p 'user-agent' (#585)
|
2021-10-25 08:22:36 +02:00
|
|
|
* Build rocksdb with conditional SSE support (#595)
|
2021-10-25 18:19:12 +02:00
|
|
|
* Ignore 'addr' p2p messages (#596)
|
2021-10-25 12:51:21 +02:00
|
|
|
|
2021-10-17 20:18:44 +02:00
|
|
|
# 0.9.1 (Oct 19 2021)
|
2021-10-15 21:20:23 +02:00
|
|
|
|
|
|
|
* Initialize chain height metric (#515)
|
|
|
|
* Don't shutdown write-side before all responses are sent back (#523)
|
|
|
|
* Use p2p protocol to replace waitfornewblock hidden RPC (#526)
|
|
|
|
* Use correct Prometheus buckets for size and duration (#528)
|
|
|
|
* Don't ignore signals during IBD (#533)
|
|
|
|
* Expose index DB size as a Prometheus gauge metric (#544)
|
|
|
|
* Add p2p protocol monitoring (#546)
|
|
|
|
* Fix contrib/xpub.py support for ypub/zpub keys (#549)
|
|
|
|
* Rewrite and simplify p2p message receiving thread (#550)
|
2021-10-17 20:18:44 +02:00
|
|
|
* Re-introduce mempool vsize and txs' count metrics (#557, #562, #563)
|
2021-10-15 21:20:23 +02:00
|
|
|
* Allow RPC connection before initial sync is over (#558)
|
|
|
|
|
2021-09-27 19:47:54 +02:00
|
|
|
# 0.9.0 (Sep 30 2021)
|
2021-09-19 09:34:46 +02:00
|
|
|
|
2021-09-16 11:26:47 +02:00
|
|
|
**IMPORTANT: This release contains major changes, please read carefully!**
|
|
|
|
|
2021-09-29 22:15:53 +02:00
|
|
|
The four main things to watch out for:
|
2021-09-16 11:26:47 +02:00
|
|
|
|
|
|
|
* Database schema changed - this will cause **reindex after upgrade**.
|
2021-09-29 22:15:53 +02:00
|
|
|
* `mainnet` subdirectory was renamed to `bitcoin`, you should delete `mainnet` after successful reindex.
|
2021-09-16 11:26:47 +02:00
|
|
|
* We now use **bitcoin p2p protocol** to fetch blocks - some configurations may not work.
|
2021-09-25 19:39:39 +02:00
|
|
|
* Trace log level now logs much more information - make sure it's not used in production.
|
2021-09-16 11:26:47 +02:00
|
|
|
|
2021-10-21 08:51:59 +02:00
|
|
|
See [upgrading](doc/upgrading.md) section of our docs to learn more.
|
2021-09-16 11:26:47 +02:00
|
|
|
|
|
|
|
Full list of changes:
|
|
|
|
|
2021-09-28 17:12:21 +02:00
|
|
|
* Add electrs logo (#510)
|
|
|
|
|
2021-09-23 17:08:58 +02:00
|
|
|
## 0.9.0-rc2 (Sep 23 2021)
|
|
|
|
|
|
|
|
* Prevent panic during logging of p2p messages (#490)
|
|
|
|
* Don't collect process' Prometheus metrics by default (#492)
|
|
|
|
* Support initial sync resume (#494)
|
|
|
|
|
|
|
|
## 0.9.0-rc1 (Sep 17 2021)
|
|
|
|
|
2021-08-18 15:59:27 +02:00
|
|
|
* Fix incorrect ordering of same-block transactions (#297)
|
|
|
|
* Change DB index format and use Zstd compression (instead of Snappy)
|
2021-09-17 13:30:09 +02:00
|
|
|
* The database will be reindexed automatically when it encounters old version (#477)
|
2021-08-18 15:59:27 +02:00
|
|
|
* Don't use bitcoind JSON RPC for fetching blocks (#373)
|
2021-09-17 18:17:50 +02:00
|
|
|
* Use p2p protocol for headers and block fetching only.
|
2021-09-17 13:29:32 +02:00
|
|
|
This is safer than reading `blk*dat` files and faster than JSON RPC.
|
2021-08-18 15:59:27 +02:00
|
|
|
* Support Electrum JSON RPC batching and errors
|
|
|
|
* Use `rust-bitcoincore-rpc` crate
|
|
|
|
* Increase default `index_lookup_limit` to 200
|
2021-09-17 18:17:50 +02:00
|
|
|
* Implement 'blockchain.scripthash.listunspent' RPC (#475)
|
|
|
|
* Update RocksDB to 6.11.4 (#473)
|
2021-09-26 11:21:04 +02:00
|
|
|
* Allow logging configuration via `RUST_LOG` environment variable (using `env_logger`)
|
2021-08-18 15:59:27 +02:00
|
|
|
|
2021-09-14 11:38:07 +02:00
|
|
|
# 0.8.12 (14 Sep 2021)
|
|
|
|
|
|
|
|
* Fail if `cookie` is specified (#478)
|
|
|
|
* Move usage in README up and recommend our guide (#463)
|
|
|
|
* A bunch of improvements to issue templates (#462)
|
|
|
|
|
2021-08-18 19:15:57 +02:00
|
|
|
# 0.8.11 (18 Aug 2021)
|
|
|
|
|
|
|
|
* Update dependencies (#401, #402)
|
|
|
|
* Add python example in RPC examples (#415, #417)
|
|
|
|
* Add regtest and signet networks in examples (#425)
|
|
|
|
* Clippy fixes (#430)
|
|
|
|
* CI fixes (#437, #438, #441)
|
|
|
|
* Update relevant versions (#450)
|
|
|
|
* Drop unused compression algorithms for RocksDB
|
|
|
|
|
2021-05-14 13:32:32 +02:00
|
|
|
# 0.8.10 (14 May 2021)
|
|
|
|
|
|
|
|
* Fix JSONRPC errors' handling (#398, #390)
|
|
|
|
* Optimize Dockerfile (#387, #388, #392)
|
|
|
|
* Fix signet default port (https://github.com/romanz/electrs/b53178c140e575b0527a70ead566d50c7fe6cb1f)
|
|
|
|
|
2021-04-30 12:24:04 +02:00
|
|
|
# 0.8.9 (19 Mar 2021)
|
2021-03-18 21:33:55 +01:00
|
|
|
|
|
|
|
* Use non-batched RPC to reduce bitcoind memory usage (#373)
|
2021-03-19 12:02:59 +01:00
|
|
|
* Fix inverted logic of deprecation (#379)
|
2021-03-18 21:33:55 +01:00
|
|
|
* Ignore individual mempool transaction fetch fails (#381)
|
|
|
|
* Increase default wait_duration_secs to 10s (#384)
|
|
|
|
|
2021-02-22 19:14:57 +01:00
|
|
|
# 0.8.8 (22 Feb 2021)
|
2021-02-22 18:48:26 +01:00
|
|
|
|
|
|
|
* Deprecate `--cookie` configuration (@Kixunil)
|
|
|
|
* Update dependencies (@Kixunil)
|
|
|
|
* Improve documentation (@Kixunil)
|
|
|
|
|
2021-01-15 08:23:29 +01:00
|
|
|
# 0.8.7 (15 Jan 2021)
|
|
|
|
|
|
|
|
* Support signet (#239)
|
|
|
|
|
2020-11-25 08:20:37 +01:00
|
|
|
# 0.8.6 (25 Nov 2020)
|
|
|
|
* [Fix](https://github.com/romanz/electrs/commit/c88a0dc331eb16163276becf98fcc020565d97eb) Electrum fee histogram duplicates
|
|
|
|
* [Fix](https://github.com/romanz/electrs/commit/8f2f53303a62321e3ccd1a8dc42b46c63629a03f) Electrum protocol negotiation
|
|
|
|
* Update multiple crates (@kixunil): [lru](#333), [prometheus](#334), [dirs-next](#335)
|
|
|
|
* Support Rust 1.41.1 (for Debian stable)
|
|
|
|
* [Update](https://github.com/romanz/electrs/commit/af6ff09a275ec12b6fd0d6a101637f4710902a3c) bitcoin crate (@dr-orlovsky)
|
|
|
|
* [Fix](https://github.com/romanz/electrs/commit/4764dccbbe4cd04a6dc79771a686847d8e6e2edf) a deadlock when shutting down (@kixunil)
|
|
|
|
|
2020-07-01 21:50:32 +02:00
|
|
|
# 0.8.5 (1 July 2020)
|
|
|
|
|
|
|
|
* Add a 'blocks_dir' option (@darosior)
|
|
|
|
* Return fee for unconfirmed transactions history (for Electrum 4.0)
|
|
|
|
* Handle SIGUSR1 for external notifications
|
|
|
|
|
|
|
|
# 0.8.4 (3 June 2020)
|
|
|
|
|
|
|
|
* Update to latest rust-bitcoin (@dr-orlovsky)
|
|
|
|
* Fix deadlock and refactor RPC threading (@Kixunil)
|
|
|
|
|
2020-01-30 20:56:24 +01:00
|
|
|
# 0.8.3 (30 Jan 2020)
|
|
|
|
|
|
|
|
* Fix memory leak (@champo)
|
|
|
|
|
2019-12-06 12:16:27 +01:00
|
|
|
# 0.8.2 (6 Dec 2019)
|
|
|
|
|
|
|
|
* Downgrade rust-rocksdb to 0.12.2 (https://github.com/romanz/electrs/issues/193)
|
|
|
|
|
2019-11-20 21:21:49 +01:00
|
|
|
# 0.8.1 (20 Nov 2019)
|
2019-11-10 12:11:31 +01:00
|
|
|
|
|
|
|
* Allow setting `--cookie-file` path via configuration (@Kixunil)
|
2019-11-19 13:27:13 +01:00
|
|
|
* Bump rust-rocksdb to 0.13.0, using RockDB 6.2.4
|
2019-11-10 12:11:31 +01:00
|
|
|
|
2019-10-28 21:25:59 +01:00
|
|
|
# 0.8.0 (28 Oct 2019)
|
2019-09-07 10:33:17 +02:00
|
|
|
|
|
|
|
* Use `configure_me` instead of `clap` to support config files, environment variables and man pages (@Kixunil)
|
|
|
|
* Don't accept `--cookie` via CLI arguments (@Kixunil)
|
2019-09-20 13:45:21 +02:00
|
|
|
* Define cache size in MB instead of number of elements (@dagurval)
|
2019-09-07 10:57:18 +02:00
|
|
|
* Support Rust >=1.34 (for Debian)
|
2019-10-05 11:42:16 +02:00
|
|
|
* Bump rust-rocksdb to 0.12.3, using RockDB 6.1.2
|
2019-10-28 21:25:59 +01:00
|
|
|
* Bump bitcoin crate to 0.21 (@MichelKansou)
|
2019-09-07 10:33:17 +02:00
|
|
|
|
2019-07-27 16:42:32 +02:00
|
|
|
# 0.7.1 (27 July 2019)
|
|
|
|
|
|
|
|
* Allow stopping bulk indexing via SIGINT/SIGTERM
|
2019-09-20 13:45:21 +02:00
|
|
|
* Cache list of transaction IDs for blocks (@dagurval)
|
2019-07-27 16:42:32 +02:00
|
|
|
|
2019-06-13 21:34:26 +02:00
|
|
|
# 0.7.0 (13 June 2019)
|
2019-05-11 09:07:43 +02:00
|
|
|
|
2019-06-13 21:34:26 +02:00
|
|
|
* Support Bitcoin Core 0.18
|
2019-05-30 09:15:12 +02:00
|
|
|
* Build with LTO
|
2019-06-13 21:34:26 +02:00
|
|
|
* Allow building with latest Rust (via feature flag)
|
|
|
|
* Use iterators instead of returning vectors (@Kixunil)
|
|
|
|
* Use atomics instead of `Mutex<u64>` (@Kixunil)
|
|
|
|
* Better handling invalid blocks (@azuchi)
|
|
|
|
|
|
|
|
# 0.6.2 (17 May 2019)
|
|
|
|
|
|
|
|
* Support Rust 1.32 (for Debian)
|
2019-05-11 09:07:43 +02:00
|
|
|
|
2019-05-09 10:48:02 +02:00
|
|
|
# 0.6.1 (9 May 2019)
|
2019-05-06 10:48:01 +02:00
|
|
|
|
|
|
|
* Fix crash during initial sync
|
|
|
|
* Switch to `signal-hook` crate
|
|
|
|
|
2019-04-29 13:18:14 +02:00
|
|
|
# 0.6.0 (29 Apr 2019)
|
2019-04-04 10:30:15 +02:00
|
|
|
|
2019-04-29 13:36:04 +02:00
|
|
|
* Update to Rust 1.34
|
2019-04-04 10:30:15 +02:00
|
|
|
* Prefix Prometheus metrics with 'electrs_'
|
|
|
|
* Update RocksDB crate to 0.12.1
|
|
|
|
* Update Bitcoin crate to 0.18
|
|
|
|
* Support latest bitcoind mempool entry vsize field name
|
2019-04-29 12:28:34 +02:00
|
|
|
* Fix "chain-trimming" reorgs
|
2019-04-29 13:18:14 +02:00
|
|
|
* Serve by default on IPv4 localhost
|
2019-04-04 10:30:15 +02:00
|
|
|
|
|
|
|
# 0.5.0 (3 Mar 2019)
|
2019-01-13 09:01:29 +01:00
|
|
|
|
|
|
|
* Limit query results, to prevent RPC server to get stuck (see `--txid-limit` flag)
|
2019-04-04 10:30:15 +02:00
|
|
|
* Update RocksDB crate to 0.11
|
|
|
|
* Update Bitcoin crate to 0.17
|
2019-01-13 09:01:29 +01:00
|
|
|
|
2018-12-23 08:55:54 +01:00
|
|
|
# 0.4.3 (23 Dec 2018)
|
|
|
|
|
|
|
|
* Support Rust 2018 edition (1.31)
|
|
|
|
* Upgrade to Electrum protocol 1.4 (from 1.2)
|
|
|
|
* Let server banner be configurable via command-line flag
|
|
|
|
* Improve query.get_merkle_proof() performance
|
|
|
|
|
2018-11-22 10:23:39 +01:00
|
|
|
# 0.4.2 (22 Nov 2018)
|
|
|
|
|
|
|
|
* Update to rust-bitcoin 0.15.1
|
|
|
|
* Use bounded LRU cache for transaction retrieval
|
|
|
|
* Support 'server.ping' and partially 'blockchain.block.header' Electrum RPC
|
|
|
|
|
2018-10-14 13:39:31 +02:00
|
|
|
# 0.4.1 (14 Oct 2018)
|
|
|
|
|
|
|
|
* Don't run full compaction after initial import is over (when using JSONRPC)
|
|
|
|
|
2018-09-22 14:44:24 +02:00
|
|
|
# 0.4.0 (22 Sep 2018)
|
|
|
|
|
|
|
|
* Optimize for low-memory systems by using different RocksDB settings
|
|
|
|
* Rename `--skip_bulk_import` flag to `--jsonrpc-import`
|
|
|
|
|
2018-09-14 16:59:54 +02:00
|
|
|
# 0.3.2 (14 Sep 2018)
|
|
|
|
|
|
|
|
* Optimize block headers processing during startup
|
|
|
|
* Handle TCP disconnections during long RPCs
|
|
|
|
* Use # of CPUs for bulk indexing threads
|
|
|
|
* Update rust-bitcoin to 0.14
|
|
|
|
* Optimize block headers processing during startup
|
|
|
|
|
|
|
|
|
2018-08-20 10:19:40 +02:00
|
|
|
# 0.3.1 (20 Aug 2018)
|
|
|
|
|
|
|
|
* Reconnect to bitcoind only on transient errors
|
|
|
|
* Poll mempool after transaction broadcasting
|
|
|
|
|
2018-08-14 10:17:29 +02:00
|
|
|
# 0.3.0 (14 Aug 2018)
|
|
|
|
|
|
|
|
* Optimize for low-memory systems
|
|
|
|
* Improve compaction performance
|
|
|
|
* Handle disconnections from bitcoind by retrying
|
|
|
|
* Make `blk*.dat` ingestion more robust
|
|
|
|
* Support regtest network
|
|
|
|
* Support more Electrum RPC methods
|
|
|
|
* Export more Prometheus metrics (CPU, RAM, file descriptors)
|
|
|
|
* Add `scripts/run.sh` for building and running `electrs`
|
|
|
|
* Add some Python tools (as API usage examples)
|
2018-08-14 10:36:32 +02:00
|
|
|
* Change default Prometheus monitoring ports
|
2018-08-14 10:17:29 +02:00
|
|
|
|
2018-07-15 08:13:12 +02:00
|
|
|
# 0.2.0 (14 Jul 2018)
|
|
|
|
|
|
|
|
* Allow specifying custom bitcoind data directory
|
|
|
|
* Allow specifying JSONRPC cookie from commandline
|
|
|
|
* Improve initial bulk indexing performance
|
|
|
|
* Support 32-bit systems
|
|
|
|
|
|
|
|
# 0.1.0 (2 Jul 2018)
|
|
|
|
|
|
|
|
* Announcement: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-July/016190.html
|
|
|
|
* Published to https://crates.io/electrs and https://docs.rs/electrs
|