Skip to content

v6.9.0-rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@WhoSoup WhoSoup released this 12 Oct 13:15
· 106 commits to master since this release
f66a363

Changelog v6.9.0-rc1

New Features:

  • Entry sync ("2nd pass") rewritten to limit the number of concurrent requests made
  • New version of FastBoot (14) that removes unused information
  • Buildable with a Makefile (removes build.sh)
  • Inclusion of the P2P2 rework
  • ChainHeadFix reworked to be multithreaded and run faster to improve startup times
  • Command line parameters removed: broadcastnum, journal, journaling, follower, leader, tormanage, torupload
  • Command line parameters changed:
    • "loglvl" default is now "info" (from "none")
    • "debuglog" is now in the format "path/regex" where path points to the folder the logs should be saved, and regex is a regular expression of which files to save
  • Cleanup of the root folder

API Changes:

  • Raw data is now optional for the methods: admin-block, factoid-block, entrycredit-block, dblock-by-height, ecblock-by-height, fblock-by-height,ablock-by-height. To retrieve without raw data, add a parameter "noraw" of "true". Factom client support is in the current developer build.

Developer Changes:

  • The repo now uses go.mod to manage dependencies instead of glide
  • Introduction of the /modules/ folder to factor out independent logic
  • A pub-sub mechanism to abstract communication between independent areas of the code (see modules/pubsub and modules/registry). These have been tightly integrated into many components and the changes are too numerous to list.
  • Use of managed goroutines ("Workers") to track processes (see modules/worker and engine/factomd.go:Run())
  • Removing the golang compile version check
  • Automated circle test revamped to stop unnecessary checks on side branches and improve the flow
  • Inbound messages pass through Basic Message Validation (modules/bmv), which introduces a WellFormed() function for IMsg
  • A lot of grammatical changes and standardization of variable names
  • Control Panel moved to modules/controlPanel
  • Internal event service similar to the live feed. This is slated for removal since the live feed supersedes it. (see modules/internalevents)
  • Prometheus calls have been abstracted to use modules/telemetry calls
  • Introduction of a "Leader" module with partial functionality (see modules/leader)
  • The unit test simulator and SimControl have moved to /simulation
  • Addition of /peerTest which runs multiple tests at the same time over local network (testA + testB)
  • Automated code generation from templates was added to generate some pub-sub queue types (see /factomgenerate)

Bugfixes:

  • Phantom pending coinbase no longer shows up
  • Several unit tests were broken or flaky that have been fixed. All tests pass.