What's Changed
We've made some improvements in the mining pool, transaction and block propagation as well as many bug fixes and CLI improvements! Read on for more info.
Mining Pool
We've made some improvements to the mining pool by adding a command to get the status from the mining pool with the command ironfish miners:pools:status -p pool.ironfish.network
. This shows things like subscribed count and number of clients connected to the pool
- adds cli command to get pool status by @hughy in #1704
- fixes sql error from missing space by @hughy in #1715
- Materialize subscribed count by @NullSoldier in #1717
- Add clients to status by @NullSoldier in #1718
Transaction + Block Propagation
We've merged a lot of code related to transaction and block propagation improvements. Those improvements won't be seen in this release since the feature is not ready, but look forward to that code being used soon.
- Add new
Transaction.hash()
method to transactions by @danield9tqh in #1694 - Telemetry for network bandwidth usage per message type by @danield9tqh in #1691
- Upload peer lists to telemetry by @danield9tqh in #1720
- Track known block hashes on Peers by @dguenther in #1683
- Add
NewBlockHashes
message by @dguenther in #1737 - Replace transaction hashing method in mempool by @danield9tqh in #1740
- Add
NewBlockV2
message by @dguenther in #1745 - Create network message
PooledTransactionsRequest
for querying for transactions based on hash by @danield9tqh in #1747 - Log transaction propagation to telemetry by @danield9tqh in #1734
- Create network message
PooledTransactionsResponse
for responding to transaction hash query by @danield9tqh in #1752 - Handle
PooledTransactionRequest
by @danield9tqh in #1756
CLI Improvements
We've made some usability improvements to CLI commands notably adding progress bar to the long running accounts:rescan
command and fixing the progress bar for chain:export
.
- Always show syncer progress if not synced by @NullSoldier in #1719
- Fix
chain:export
progress bar by @vchs1v in #1712 - Enable telemetry as part of testnet command by @NullSoldier in #1760
- Minor rescan improvements by @NullSoldier in #1766
- Abort rescan if aborted after waiting for head by @NullSoldier in #1772
- Fix rescan to scan to chain head if null processor by @NullSoldier in #1774
- Improve accounts:rescan CLI command UX by @NullSoldier in #1776
Code Cleanup / Bug Fixes
Some users were seeing Node already in use
messages even when a node was not running. That has been changed to surface underlying DB errors that may now show up instead. Also adding a potential fix for noteToNullifiers map
error that some users encounter.
- Delete old open api files by @NullSoldier in #1698
- feat(ironfish): Move note decryption when syncing transactions to worker pool by @rohanjadvani in #1708
- Remove
.entires()
call on iterating a map by @NullSoldier in #1733 - Update README with information about preferred installation methods by @mat-if in #1753
- Update
accountsToRemove
map inminedBlocksIndexer
by @mat-if in #1761 - fix(ironfish): Add mutex for sending transactions by @rohanjadvani in #1762
- Properly catch and surface leveldb corruption errors by @NullSoldier in #1763
- Add Rpc prefix to all Rpc types by @NullSoldier in #1765
- Spelling and Grammar fixes of Markdown files by @hamza-siddiq in #1759
- Clamp telemetry floats to 0 by @NullSoldier in #1769
- Tests for
TimeUtils
by @vchs1v in #1742 - Use built-in no-unused-expressions lint by @mat-if in #1773
- Make blockchain iteration return buffer hashes by @NullSoldier in #1771
Full Changelog: v0.1.37...v0.1.38