Skip to content

Releases: coinbase/mesh-cli

Automated Construction API Testing

29 Jul 23:40
a5cb70e
Compare
Choose a tag to compare

This is the most significant rosetta-cli release to date! For the first time, it is possible to perform an automated test of transaction construction, signing, broadcast, and on-chain confirmation using the Data API and Construction API.

If you are curious how this works, take a look at the Bitcoin and Ethereum configuration files.

Changelog

  • Bump github.com/ethereum/go-ethereum from 1.9.15 to 1.9.18 #82
  • Construction API Tester #81
  • Add BroadcastStorage #80
  • Update Configuration + Configurable Timeout #79
  • [BUG] Parse Operation Success in CoinStorage #78
  • Coin Storage (automated UTXO tracking) #77
  • Implement FindTransaction Function #76
  • StatefulSyncer + BlockWorkers Refactor #75
  • Add Configuration File Support #70
  • Scenario Processing #69
  • Key Storage Backend #67
  • [BUG] Upstream Syncer Improvement #62

Fix reconciler panic on restart

16 Jul 02:51
9eaaf00
Compare
Choose a tag to compare

Fixes coinbase/mesh-sdk-go#67.

Changelog

  • [Bug] Fix reconciler panic on restart #61

Support for Rosetta API v1.4.0

16 Jul 01:29
290ec6c
Compare
Choose a tag to compare

This release adds support for v1.4.0 of the Rosetta API Specification and includes significant upstream improvements to the reconciler (coinbase/mesh-sdk-go#66).

Support for automated Construction API testing is not included in this release but will come soon!

Changelog

  • Network Status Command #60
  • Print Periodic Stats #58
  • Loosen Duplicate Transaction Hash Check #57
  • Add support for v1.4.0 of the Rosetta API Specification #56

Use msgpack for serialization

13 Jul 21:11
7856d74
Compare
Choose a tag to compare

This main purpose of this PR was to put out a fix for #49. Incidentally, the best solution also improved performance (use less memory, faster, less disk storage usage)!

NOTE: THIS RELEASE CHANGES HOW ROSETTA-CLI STORES DATA! YOU WILL NEED TO CREATE A NEW DATASTORE WHEN UPDATING TO THIS VERSION OF THE ROSETTA-CLI!

Changelog

  • Use msgpack for storage instead of gob #52
  • Fix go sec #51
  • Fix header image width #40
  • Update logo #39
  • Bump github.com/stretchr/testify from 1.6.0 to 1.6.1 #37
  • [Chore] Update cobra package #38
  • Bump github.com/stretchr/testify from 1.5.1 to 1.6.0 #33
  • Enable Dependabot #32

Fix Genesis Block Behavior

30 May 16:13
ee7ef27
Compare
Choose a tag to compare

This release fixes a regression introduced in a previous refactor (#15).

Shoutout to @tuxcanfly for putting up the issue(#29) and the PR to fix it(#30)!

Automatic Balance Mismatch Debugging

21 May 01:01
1f0d9c5
Compare
Choose a tag to compare

This release introduces "automatic" debugging of inactive reconciler errors (when an account balance changes without a corresponding operation) #26.

Before this release, the rosetta-cli would print out that there was a balance discrepancy but did not print out the block that was missing the balance-changing operation. To debug the error, one would need to create an interesting-accounts.json file and run check with the --interesting-accounts=./interesting-accounts.json option. Now, all of this happens automatically and the rosetta-cli prints out the block that is missing a balance-changing operation.

Other Improvements

  • Running the check command now exits with a 0 status if there were no errors and a non-zero status if something went wrong (#25). This means it is now possible to use the rosetta-cli in integration tests (issue #20 has more detail on this).
  • Allow for configuring active vs inactive reconciler threads independently. PR #23 has more detail on why this is useful.

Fix Bootstrap Error

15 May 22:52
47c8666
Compare
Choose a tag to compare

This release fixes an error that prevented reconciler bootstrapping from working correctly (#22). It also adds logic to ensure the local database is closed correctly.

Bootstrap Reconciler on Restart

13 May 19:41
cc2e0c4
Compare
Choose a tag to compare

This release bootstraps the reconciler with all accounts saved to persistent storage (when the --data-dir flag is populated) on previous runs of rosetta-cli check (#19).

In the past, accounts in the reconciler were discarded when a run was ended. This meant that reconciliation would only continue on previously seen accounts if they were observed in a new run.

Other Changes

Warning

This release introduces changes to how data is stored in the rosetta-cli. If you are using a persistent store (populating the --data-dir when running rosetta-cli check), you must delete this store and create a new one. We don't expect any further changes to how data is stored in the near future.

If you don't populate this flag when running rosetta-cli check, you don't have to do anything!

Syncer/Reconciler Refactor

08 May 22:27
bd1617c
Compare
Choose a tag to compare

This is the most significant release to date for the rosetta-cli. It provides massive improvements in stability, performance, and UX (#15). Take a look at the new CLI options (rosetta-cli) for documentation on the improvements.

If you have any feedback or suggestions about rosetta-cli, please open an issue!

Exempt Accounts from Reconciliation

01 May 16:40
fcf1f34
Compare
Choose a tag to compare
  • #12 introduces support for exempting certain balances from balance tracking.
  • #13 improves the inactive reconciliation logic and extends the window to retry requests.
  • #14 fixes a bug introduces in #13

Release v0.1.4 contained a bug fixed in #14 and was deleted.