All notable changes to this project will be documented in this file.
[1.5.4] - 2018-12-20
- Upgraded Node.js base Docker image to Node.js
- Removed deprecated
make backup-auth-keysMakefile target. Use
- Removed all references to PostgreSQL, which is no longer used, from
- Removed all references to Redis, which is no longer used, from
- Optional experimental TLS/HTTPS support and self-signed certificate generation. Requires port 443 open for use. Port 80 will continue to operate the same as before.
- Retry mechanism on failure to submit an aggregated Merkle Root to Core.
/verifyendpoint as a convenience when verifying a proof
- Community provided Korean translation of the
[1.5.3] - 2018-08-20
- Migrate and remove all PostgreSQL data to RocksDB. Redis and PostgreSQL containers will be removed in a future release.
- No longer start
ntpdis detected on Linux, or
pacemakeron macOS. Previously only
ntpdwas tested for.
- Perform automatic backups of Auth (HMAC) keys to
keys/backupsdirectory on Node registration or restart.
make backup-auth-keystarget as backups are now automatic.
make print-auth-keysoutput. This provides easier to use one-line command to restore a backup key to the
keysdir. Run this
echocommand to place a
.keyfile in the keys directory with proper Auth Key (HMAC) content.
- Removed Redis and PostgreSQL related
maketargets as they are no longer needed.
- Send a
User-Agentstring with upstream requests.
- Updated NPM dependencies.
[1.5.2] - 2018-07-30
- Write ephemeral proof state to RocksDB (formerly Redis). This provides a significant increase in sustained inbound hash rate while consuming disk space instead of RAM. The ephemeral data written to RocksDB is auto-pruned after 24 hours. The Redis database will be removed from the Node in a future release.
- Upgrade to PostgreSQL 9.6.9
- Upgrade to Redis 4.0.10
- Upgrade Node.js (
node:8.11.3-stretch) Docker container base
- Reduce HTTP calls to
PUT /nodesif request body matches previous successful
- Certain caching functions, which contain small amounts of volatile data, now store their data in RAM instead of Redis.
- Improved handling of processing time hints from Chainpoint Core.
- Auto-migrate old Redis proof state and other Redis data to RocksDB on initial startup.
- Node UI React application internal re-factoring and bugfixes.
validator.isIP()receives a string avoiding rare crash in
/keys/backupsdirectories if previously deleted.
- Improve detection, handling, and UI messaging in Brave browser when third-party cookies and local storage are disabled.
- Trim whitespace from the list of hashes provided to
POST /hashesusing the
- Further enforce Node operation on HTTP port 80.
[1.5.1] - 2018-07-03
- Replaced Node local firewall with custom updatable IP filter. This eliminates the need for the Node to schedule and perform automatic restarts.
- If a Node receives an HTTP
426 Upgrade Requirederror from Core, indicating that the Node is running too old a version of the Node software to update its registration, it will no longer retry a request that cannot succeed. It will log an error message to the logs and exit.
- During registration, if an HTTP
409 Conflicterror is thrown as a result of the Ethereum address or public URI already being registered, the Node will no longer retry and will exit.
- When a Node is configured password with
CHAINPOINT_NODE_UI_PASSWORD=falsethe Node UI will bypass the login screen and redirect the user directly to dashboard.
- An issue with persisting Redux data to browser local storage which sometimes resulted in the Node UI appearing 'stuck' and not displaying the most current data.
- Enabled authentication form submit via [enter] key, only validate after form submitted.
[1.5.0] - 2018-06-27
- Reduce retry count for failed registrations to 3.
- Nodes that fail to register will no longer exit after retries. The Node will continue to run, allowing access to the Node UI.
- Allow adjustment of Node hash aggregation period based on Core config.
- Update Chainpoint library dependencies
chainpoint-parseto current versions.
- New Makefile target for
make print-auth-keyswhich will print the filename and auth key contents of each file in the
keys/backupsdirectory. This allows for easier copy/paste of backup key contents as an alternative to exploring the files in the
- Auth keys will be automatically backed up to the local drive on registration.
- Log some additional details about the cause(s) of a failed audit to the
falseas a Boolean or String to
.envconfiguration will now work as expected.
- Update to Node UI to correctly display Node ms delta.
- Simplify and enhance performance of Core proof retrieval.
[1.4.2] - 2018-05-08
make clear-containerswill now only apply to Chainpoint related containers.
make clear-containersno longer uses
sudo. Assumes you have setup system so that logged-in user has permissions to docker commands without use of
- The check for Ubuntu OS in certain
makecommands will no longer exit make task if Ubuntu not detected. A warning will be printed on
make upgradeif not running Ubuntu.
- Log an error if
CHAINPOINT_NODE_PUBLIC_URIis set to an RFC-1918 private IP address that will never be routable over the public Internet.
- Restoration of auth keys from a
.keyfile where the file contains trailing newlines or whitespace now works as expected.
- A spurious error related to importing a backup auth key :
INFO : Registration : HMAC Auth Key Not Found
- Importing an auth key backup where there is whitespace in the
make upgrade-docker-composetask caused issues for some as apparently the binary download from its source Github repository is unreliable and can cause an upgrade to a corrupted binary. We are now providing a download of our own binary for
docker-composewhich is frozen into this repository as well. You can install it using
make upgrade-docker-composeor, if your
docker-composeinstall is already having issues and you can't do a normal
make upgrade, you can use the out-of-band installation by running the following
curlcommand. This will download the same frozen Linux binary. This should resolve issues with
text file busyerrors and allow you to proceed normally with
curl -sSL https://chainpoint-node.storage.googleapis.com/docker-compose-install.sh | bash
[1.4.1] - 2018-05-04
- Enhanced backup and restore documentation in the README.md file
- If a
CHAINPOINT_NODE_PUBLIC_URIis provided (public Node) the Node will perform an HTTP health check on startup to ensure that the configured URI is the same as the Node is actually running on. Will help prevent IP misconfiguration and resulting audit failures. The Node will exit if mis-configured and can't reach itself on the IP URI configured.
- A newly registered Node will now automatically generate a backup of the Node Auth key without user intervention. This will only be triggered on first Node registration, and not on subsequent updates.
- A new Makefile task
make upgrade-docker-composewhich will upgrade it to version
1.21.0. This task will now be run automatically on
make upgradeas well.
- A new Makefile task
make clear-containerswhich will stop and remove any running Docker containers on the host. This will be run automatically on
make upgradeas well. This prevents occasional issues with stuck containers that would cause an error on Node upgrade.
- Node UI login on Microsoft Windows 10 - Edge browser v16 & v14 - now works.
- Restoration of auth keys from a
.keyfile where the Ethereum address in the filename is mixed case now works as expected.
[1.4.0] - 2018-05-03
- Node UI (preview version) and secure transfer of audit health data to Node
- Local caching of Core proofs
- Make use of new
COMPOSE_IGNORE_ORPHANSenv var with
docker-composeto hide unneeded 'orphan container' warnings. Requires current version of
docker-composewhich can now be upgraded in place using
- Updated Docker ntpd image
- New auth key backup/restore method
make backup-auth-keyswhich will store backups as files in
keys/backupsdirectory, and allow restore from
- Upgraded Redis docker image to v4.0.9
- Upgraded NTPD docker image
.env.sampleupdated to document new Node UI password configuration
make upgradewill now ensure that the Node is being upgraded from the
masterbranch of the Github repository
- Prevent the Node daily auto-restart from occuring near the time of scheduled audits
make auth-keyswill be removed in a future release. It is now an alias for the new