- Include "Volume (24hr)" in homepage summary
- Include block output volume in blocks list (0.17.0+)
- Show "%Full" in blocks lists (with fullness icon) instead of weight with progress bar
- Hide "Date" column on homepage blocks list (Age+TTM) is plenty for the recent blocks)
- Fix to pull UTXO set after RPC connection is established
- Fix for abbreviating "month" to "mo" instead of "m" which can be confused with minutes
- Tweak width of data columns on 1200 screens to avoid some wrapping of title labels
- More consistently "smallify" display of units
- Armor on block-content template for missing blockstats values (identified issue by looking at genesis block, added manual data for that block since RPC returns error, but armor is still probably valuable)
- Tweaks to timestamps "time ago" displays in several places trying to make more consistent and user friendly
- Explicit acknowledgement of "nonstandard" output type
* New data in "Summary" on Block pages (supported for bitcoind v0.17.0+)
* Fee percentiles
* Min / Max fees
* Input / Output counts
* Outputs total value
* UTXO count change
* Min / Max tx sizes
* Start of RPC API versioning support
Changelog additions:
* Optional querying of UTXO set summary
* Note: this is disabled by default to protect slow nodes. Set 'BTCEXP_SLOW_DEVICE_MODE' to false in your `.env` file to enjoy this feature.
* More data in homepage "Network Summary":
* Fee estimates (estimatesmartfee) for 1, 6, 144, 1008 blocks
* Hashrate estimate for 1+7 days
* New item for 'Chain Rewrite Days', using 7day hashrate
* New data based on optional UTXO set summary (see note above):
* UTXO set size
* Total coins in circulation
* Market cap
* Tweaks to data in blocks lists:
* Simpler timestamp formatting for easy reading
* Include "Time-to-Mine" (TTM) for each block (with green/red highlighting for "fast"/"slow" (<5min/>15min) blocks)
* Display average fee in sat/vB
* Add total fees display
* Demote display of "block size" value to hover
* Show weight in kWu instead of Wu
* Zero-indexing for tx inputs/outputs (#173)
* Labels for transaction output types
* Configurable UI "sub-header" links
* Tweaked styling
- Also lots of frontend code cleanup (moving to more consistent pug-style class designations)
* display chain/network in header if not mainnet
* indicate active chain/network in startup log
* specify which chain/network "fun" items apply to and only show them for that chain
* don't display exchange rates for testnet/regtest
* use block interval of 150 for regtest halving
* regtest hacks: since getblockchaininfo.blocks=0 on a default regtest node despite the genesis block existing, hack in a couple of places in order to display the genesis block
* fix /peers page to not throw error with no connections
Calling getrawmempool with true is slow because the node needs to pull all tx mempool details before returning anything. This change instead calls getrawmempool with false, followed by individual requests for tx mempool entries which we submit in parallel up to the configured concurrency limit. This provides some safety against running into the RPC timeout that was previously common (when calling getrawmempool(true)) with large mempools. In addition to greater reliability in large-mempool scenarios, this change significantly improves the performance of the /unconfirmed-tx page in particular - because that page only cares about 20 tx mempool entries at a time; previously we were waiting for the node to query all mempool tx entries and throwing away the vast majority of the returned data.
Fixes#127
Move closer to the original vision of supporting any address-querying implementation desired. Current options include ElectrumX (as before) and now blockchain.com and blockcypher.com since they were easy to support and are publicly/easily available (though ridiculously neither is yet to support bc1 addresses).
- new env var option BTCEXP_ADDRESS_API, value can be electrumx, blockchain.com, blockcypher.com
- update ElectrumX client connect to request v1.4 of API as all clients are now supposed to do
- misc frontend improvements/cleanup for addresses