Skip to content

Releases: 2acoin/2acoin

2ACoin - v2.1.5

03 Jan 22:16
v2.1.5
5925ed0
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.1.5

Build Status Build status

Special Notes

End of Life (EOL) Notice
Please note that v2.1.x are the last releases to contain 2acoin-service. Releases after v2.1.x will no longer contain the 2acoin-service binaries and the code will be removed. The next release will not contain 2acoin-service or any legacy WalletGreen dependencies. If you have not converted your wallet(s) and or services over to Proton, zedwallet, or wallet-api you are encouraged to do so soon. The next release will remove all legacy support for older wallets and the daemon API will be changed thus rendering 2acoin-service inoperable. Should you experience any issues working with wallet-api, please make sure that you open an issue so that the issue may be resolved as quickly as possible.

This also establishes the timeline for the End of Support (EOS) of 2acoin-service being the next release (v3.0.0). With the release of v3.0.0, 2acoin-service will no longer be supported or work with the core software.This release includes the replacement for legacy zedwallet. Legacy zedwallet has been replaced with zedwallet++ and all legacy zedwallet code has been removed. Please make sure that you have backed up your keys from legacy wallets, then upgrade them to the new format by using zedwallet, wallet-api, or wallet-upgrader in this release and ensure that you can access your wallets using the above tools.

Clarification: 2acoin-service is not being deprecated as part of this process. It will still be available until further notice specifically regarding that binary.

Full Node Resync May Be Required
The new version of 2acoin-service will require a full re-sync. If you are using 2acoin-service you will be required to re-sync your node or create a new wallet for v2.1.5.

If you encounter a message stating that your local blockchain cache is corrupted, please try the directions given (be patient, it may take a while). Or, you may resync your node from scratch.

Checkpoints
To help speed up your sync, you may use checkpoints to help speed things up. (Review the steps on how to sync quickly below)

Release Notes

General Updates

  • Fix Boost Libraries (aarch64)
  • Fix Windows compilation issues
  • Resolve changes with latest VisualStudio image

2ACoind Updates

  • Modify the list of SEED nodes
  • Update internal checkpoints
  • Update fork heights (future)
  • Extend software supported fork index

zedwallet Updates

  • N/A

2acoin-service Updates

  • N/A

wallet-api Updates

  • N/A

miner Updates

  • N/A

cryptotest Updates

  • N/A

wallet-upgrader (NEW)

  • N/A

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v2.1.4

20 Sep 16:06
c0a7f04
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.1.4

Build Status Build status

Special Notes

End of Life (EOL) Notice
Please note that v2.1.x are the last releases to contain 2acoin-service. Releases after v2.1.x will no longer contain the 2acoin-service binaries and the code will be removed. The next release will not contain 2acoin-service or any legacy WalletGreen dependencies. If you have not converted your wallet(s) and or services over to Proton, zedwallet, or wallet-api you are encouraged to do so soon. The next release will remove all legacy support for older wallets and the daemon API will be changed thus rendering 2acoin-service inoperable. Should you experience any issues working with wallet-api, please make sure that you open an issue so that the issue may be resolved as quickly as possible.

This also establishes the timeline for the End of Support (EOS) of 2acoin-service being the next release (v3.0.0). With the release of v3.0.0, 2acoin-service will no longer be supported or work with the core software.This release includes the replacement for legacy zedwallet. Legacy zedwallet has been replaced with zedwallet++ and all legacy zedwallet code has been removed. Please make sure that you have backed up your keys from legacy wallets, then upgrade them to the new format by using zedwallet, wallet-api, or wallet-upgrader in this release and ensure that you can access your wallets using the above tools.

Clarification: 2acoin-service is not being deprecated as part of this process. It will still be available until further notice specifically regarding that binary.

End of Support (EOS) Notice
Legacy zedwallet is no longer be supported and has been removed from this release.

Full Node Resync May Be Required
The new version of 2acoin-service will require a full re-sync. If you are using 2acoin-service you will be required to re-sync your node or create a new wallet for v2.1.3.

Release v2.1.2 contained a host of updates to the way that we handle data for fee per byte processing. The updates are necessary for the proper operation of 2ACoind, zedwallet, 2acoin-service, and wallet-api; however, this update may require you to re-sync your wallet with an updated daemon. Please be sure to backup your wallets before update.

If you encounter a message stating that your local blockchain cache is corrupted, please try the directions given (be patient, it may take a while). Or, you may resync your node from scratch.

Checkpoints
To help speed up your sync, you may use checkpoints to help speed things up. (Review the steps on how to sync quickly below)

Release Notes

General Updates

  • This release contains a few bug fixes as well as resolving an issue with deploying build artifacts to S3 storage.

2ACoind Updates

  • Update internal checkpoints
  • Update fork heights (future)
  • Extend software supported fork index

zedwallet Updates

  • N/A

2acoin-service Updates

  • N/A

wallet-api Updates

  • Update wallet-api help doc link

miner Updates

  • N/A

cryptotest Updates

  • N/A

wallet-upgrader (NEW)

  • N/A

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v2.1.3

07 Nov 21:17
v2.1.3
26e3aff
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.1.3

Build Status Build status

Special Notes

End of Life (EOL) Notice
Please note that v2.1.x are the last releases to contain 2acoin-service. Releases after v2.1.x will no longer contain the 2acoin-service binaries and the code will be removed. The next release will not contain 2acoin-service or any legacy WalletGreen dependencies. If you have not converted your wallet(s) and or services over to Proton, zedwallet, or wallet-api you are encouraged to do so soon. The next release will remove all legacy support for older wallets and the daemon API will be changed thus rendering 2acoin-service inoperable. Should you experience any issues working with wallet-api, please make sure that you open an issue so that the issue may be resolved as quickly as possible.

This also establishes the timeline for the End of Support (EOS) of 2acoin-service being the next release (v3.0.0). With the release of v3.0.0, 2acoin-service will no longer be supported or work with the core software.This release includes the replacement for legacy zedwallet. Legacy zedwallet has been replaced with zedwallet++ and all legacy zedwallet code has been removed. Please make sure that you have backed up your keys from legacy wallets, then upgrade them to the new format by using zedwallet, wallet-api, or wallet-upgrader in this release and ensure that you can access your wallets using the above tools.

Clarification: 2acoin-service is not being deprecated as part of this process. It will still be available until further notice specifically regarding that binary.

End of Support (EOS) Notice
Support will be provided for legacy zedwallet through October 31, 2020. After that date, legacy zedwallet will no longer be supported.

Full Node Resync May Be Required
The new version of 2acoin-service will require a full re-sync. If you are using 2acoin-service you will be required to re-sync your node or create a new wallet for v2.1.3.

Release v2.1.2 contained a host of updates to the way that we handle data for fee per byte processing. The updates are necessary for the proper operation of 2ACoind, zedwallet, 2acoin-service, and wallet-api; however, this update may require you to re-sync your wallet with an updated daemon. Please be sure to backup your wallets before update.

If you encounter a message stating that your local blockchain cache is corrupted, please try the directions given (be patient, it may take a while). Or, you may resync your node from scratch.

Checkpoints
To help speed up your sync, you may use checkpoints to help speed things up. (Review the steps on how to sync quickly below)

Release Notes

General Updates

  • This release contains a bug fix for raw blocks not being found which caused the daemon to stall

2ACoind Updates

  • Stop probability of raw block not found

zedwallet Updates

  • N/A

2acoin-service Updates

  • N/A

wallet-api Updates

  • N/A

miner Updates

  • N/A

cryptotest Updates

  • N/A

wallet-upgrader (NEW)

  • N/A

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

v2.1.2

27 Oct 18:35
v2.1.2
fd5880f
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.1.2

Build Status Build status

Special Notes

HARD FORK
This release in MANDATORY for all 2ACoin users. In this release we performed a block rewind to 775,000 block height. The release also contains a new Network ID and P2P Version.

NOTE - The change to fee-per byte takes effect immediately in this release. The software will not wait for the network upgrade before setting the minimum transaction fee via fee-per-byte.

Network Soft Fork
We will have a network soft fork at block 780,000 (see details below).

End of Life (EOL) Notice
Please note that v2.1.x are the last releases to contain 2acoin-service. Releases after v2.1.x will no longer contain the 2acoin-service binaries and the code will be removed. The next release will not contain 2acoin-service or any legacy WalletGreen dependencies. If you have not converted your wallet(s) and or services over to Proton, zedwallet, or wallet-api you are encouraged to do so soon. The next release will remove all legacy support for older wallets and the daemon API will be changed thus rendering 2acoin-service inoperable. Should you experience any issues working with wallet-api, please make sure that you open an issue so that the issue may be resolved as quickly as possible.

This also establishes the timeline for the End of Support (EOS) of 2acoin-service being the next release (v3.0.0). With the release of v3.0.0, 2acoin-service will no longer be supported or work with the core software.This release includes the replacement for legacy zedwallet. Legacy zedwallet has been replaced with zedwallet++ and all legacy zedwallet code has been removed. Please make sure that you have backed up your keys from legacy wallets, then upgrade them to the new format by using zedwallet, wallet-api, or wallet-upgrader in this release and ensure that you can access your wallets using the above tools.

Clarification: 2acoin-service is not being deprecated as part of this process. It will still be available until further notice specifically regarding that binary.

End of Support (EOS) Notice
Support will be provided for legacy zedwallet through October 31, 2020. After that date, legacy zedwallet will no longer be supported.

Full Node Resync May Be Required
The new version of 2acoin-service will require a full re-sync. If you are using 2acoin-service you will be required to re-sync your node or create a new wallet for v2.1.2.

Release v2.1.2 contains a host of updates to the way that we handle data for fee per byte processing. The updates are necessary for the proper operation of 2ACoind, zedwallet, 2acoin-service, and wallet-api; however, this update may require you to re-sync your wallet with an updated daemon. Please be sure to backup your wallets before update.

If you encounter a message stating that your local blockchain cache is corrupted, please try the directions given (be patient, it may take a while). Or, you may resync your node from scratch.

Checkpoints
To help speed up your sync, you may use checkpoints to help speed things up. (Review the steps on how to sync quickly below)

SoftFork
This release contains a network consensus update at block 780,000 that activates the following consensus rules:

  • Enforces a requirement that coinbase transactions (miner rewards) be provably claimed by a miner (or pool). This is a consensus level requirement that helps to reinforce the security of the network.

Release Notes

General Updates

  • New Network ID and P2P Version defined
  • New Fee per Byte enforced immediately
  • Fixed numerous Clang 10 warnings & Updated RocksDB to v6.10.2
  • Require coinbase transactions to prove their destination address
  • Updated COMPILE.md with directions for CentOS 7.x
  • Updated OpenSSL to 1.1.1f in AARCH64 Cross-Compilation
  • Updated Windows CI (GH Actions) Builds
  • Updated CI build instructions to use the latest GH Actions image(s)
  • Add LevelDB support
    • Enable use of LevelDB instead of RocksDB using the --db-enable-level-db configuration switch
    • If you'd like to switch to using LevelDB, you must fully resync your node
  • Readme Cleanup
  • Multi-signature primitives
  • Update python path in Windows CI builds
  • Removal of invalid assert
  • Updated internal checkpoints as of block
  • Fix issues with macOS CI tests
  • Link in SSS3 Support in Argon2
  • Remove legacy Zedwallet and promote Zedwallet++ out of beta
  • Enforce Excessive Output Creation Limits
  • Reorder transaction validation to be easier to follow

2ACoind Updates

  • Create Pool Nonce TX_EXTRA tag
  • Resolved regression whereby block submissions to the daemon would result in a failure to accept a valid block in rare instances. -- Special thanks to the Hashvault.pro pool for notifying us of this bug.
  • Daemon CORS Header Adjustment (no longer handles an array as that is unsupported in the HTTP header)
  • Fix issue where has was interpreted as height
  • Prevent calling certain endpoints when unsynced
  • Use a thread safe DB access method for threaded input is spent check
  • Fix race conditions in pool and submit block
  • Better way to ensure daemon is fully synced
  • 2ACoind API changes
    • A number of API changes have been made as a result of the RPC rewrite in #903. The /getinfo, /getheight, /getpeers, and /getfee calls have been removed in lieu of /info, /height, /peers, and /fee. In addition, quite a few json_rpc calls were removed as they were deemed redundant during the rewrite. All of the TurtleCoind API calls remaining are listed below. All other API methods have been removed.
      • /info
      • /fee
      • /height
      • /peers
      • /json_rpc
        • getblocktemplate
        • submitblock
        • getblockcount
        • getlastblockheader
        • getblockheaderbyhash
        • getblockheaderbyheight
        • f_blocks_list_json
        • f_block_json
        • f_transaction_json
        • f_on_transactions_pool_json
      • /sendrawtransaction
      • /getrandom_outs
      • /getwalletsyncdata
      • /get_global_indexes_for_range
      • /queryblockslite
      • /get_transactions_status
      • /get_pool_changes_lite
      • /queryblocksdetailed
      • /get_o_indexes
      • /getrawblocks
  • Full RPC rewrite with threading
  • Update Transaction Pool To Account For Additional Metrics in Transaction Ordering
  • Limit the number of Fusion Transactions In The Transaction Pool
  • Add size, fee to Daemon 's command print_pool_sh.
  • Log the IP address of the requestor when they use the daemon RPC
  • TransactionValidationResult Cross Thread Safety
  • Updated P2P Version from 7 to 11 and set the minimum required to 9 to help with the network upgrade at block 780,000

zedwallet Updates

  • Replaced with zedwallet++
  • Fixed a potential infinite loop while exiting
  • Allow parallel send transaction requests to not interfere with each other
  • Add logging to file arg for zedwallet and wallet-api
  • Generating deterministic private spend keys for subwallets
  • Improved nigel logging
  • Update zedwallet to allow setting trace log level via command
  • Allow syncing with /getrawblocks instead of /getwalletsyncdata

2acoin-service Updates

  • Resolves an error whereby the payment ID was not being properly included in transaction
  • Fix block with final transaction with invalid public key preventing wallet syncing
  • Fix bug in handling of fee params in created delayed transaction
  • Allow parallel send transaction requests to not interfere with each other
  • Add exporting wallet JSON to file to wallet-api
  • Add User-Agent Header to HTTP requests made by NodeRpcProxy
  • Fix 2acoin-service log levels not working as expected
  • NodeRpcProxy HTTP Method fixes for Threaded RPC

wallet-api Updates

  • Fixed a potential infinite loop while exiting
  • Add /transactions/paymentid and /transaction/paymentid/{paymentid} endpoints
  • Fix path of delete prepared transaction
  • Fix invalidly accessing JSON causing throw
  • Ensure we do not add inputs to a container more than once
  • Add logging to file arg for zedwallet and wallet-api
  • Add optimize target parameter
  • Generating deterministic private spend keys for subwallets
  • Improved nigel logging
  • Allow Arbitrary Data in Transaction Extra Nonce via Wallet-API
  • Allow syncing with /getrawblocks instead of /getwalletsyncdata

miner Updates

  • N/A

cryptotest Updates

  • Multi-signature primitives

wallet-upgrader (NEW)

  • Created a simple tool designed to upgrade wallets to the latest wallet format used by zedwallet++ and wallet-api

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the [2ACoin Release](https://g...

Read more

2ACoin - v2.0.1

26 Mar 22:14
v2.0.1
fab44b8
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.0.1

Build Status Build status

Special Notes

Network Soft Fork
Upgrade to this release is Mandatory by block 585,000!
Please update your software before block 585,000 to ensure you remain synced with the network (see details below).

End of Life (EOL) Notice
This release is last release to contain legacy zedwallet. Any releases of the core suite after v2.0.1 will replace the legacy zedwallet with zedwallet++ and all legacy zedwallet code will be removed. Please make sure that you have backed up your keys from legacy wallets, upgraded them to the new format by using zedwallet-beta, wallet-api, or wallet-upgrader and that you can access your wallets using the above tools.

Clarification: 2acoin-service is not being deprecated as part of this process. It will still be available until further notice specifically regarding that binary.

End of Support (EOS) Notice
Support will be provided for legacy zedwallet through August 31, 2020. After that date, legacy zedwallet will no longer be supported.

Full Node Resync May Be Required
This release contains 2 fixes to the way that data is serialized/deserialzed. The fixes are necessary for the proper operation of 2ACoind; however, the fix may reveal data corruption in your local copy of the blockchain (both the database and underlying local cache). Unfortunately, the only way to resolve the data corruption is purge the corrupted data and resync from that point or perform a full resync.

If you encounter a message stating that your local blockchain cache is corrupted, please try the directions given (be patient, it may take a while). Or, you may resync your node from scratch.

Checkpoints
To help speed up your sync, you may use checkpoints to help speed things up. (Review the steps on how to sync quickly below)

SoftFork
This release contains a network consensus update at block 585,000 which will not permit an output of a transaction to exceed 1/4th of the total supply (4,477,500.00000000 ARMS). Due to the static mixin size requirement of 3 mixins and thus a ring size of 4, it is impossible to have enough mixins available to spend an output larger than 4.477 Million ARMS.

Release Notes

General Updates

  • Added an additional EU (Amsterdam) seed nodes
  • Scheduled network upgrade at block 585,000 that will no longer permit transaction outputs in excess of 4,477,500.00000000 ARMS to mitigate creating unmixable outputs
    • 4,477,500 * 4 (current ring size) is equal to the total supply
  • Wallets will refrain from creating outputs larger than 1,000,000.00000000 ARMS to mitigate the risk of creating unmixable outputs.
    • This value is 1/17th of the total supply
  • Limit fusion transactions in mempool to 50
  • Removed unused code and other general code cleanup
  • Removed some Boost dependencies throughout the code base
  • Now builds consistently with boost >= 1.70
  • Bugfix: OSX compilation errors in some environments
  • Bugfix: resolved a bug when deserializing data in some edge cases

2ACoind Updates

  • Upgraded RocksDB to v6.4.0
    • Changed RocksDB compression engine from LZ4 to ZSTD for better compression ratios
    • Removed support for RocksDB local blockchain cache due to storage amplification issues
  • Removed support for SQLite local blockchain cache due to performance issues
  • Improved the output of print_pool_sh in the daemon console
  • Improved the output of status in the daemon console
  • Improved the transaction validation routine to allow for faster transaction validation on adding to pool
  • Improved the pool transaction validation routine when a new block is added to the chain
  • Updated daemon CORS policy to support request preflights
  • Added the current version to the status command
  • Added ? as an alias of help in the daemon console
  • Added helpful error message that provides directions for recovering from blockchain cache corruption in the local data storage
  • Moved a few warning messages to debug messages as part of normal network operations
  • Added optional blockCount parameter to /getblocks endpoint
  • The /queryblocksdetailed endpoint has been moved behind the --enable-blockexplorer-detailed configuration option
  • Bugfix: p2p-external-port out of range
  • Bugfix: setting db-enable-compression in a config file doesn't work
  • Bugfix: resolved an issue in returning RawBlocks via /getblocks endpoint

zedwallet Updates

  • N/A

zedwallet++ (zedwallet-beta) Updates

  • Added user-agent string to requests made to a node
  • Bugfix: issue when upgrading a wallet from legacy wallet structures
  • Bugfix: zedwallet-beta segfaults if you attempt to open a directory
  • Bugfix: issue whereby locked inputs may have been removed from a wallet erroneously

2acoin-service Updates

  • N/A

wallet-api Updates

  • Added user-agent string to requests made to a node
  • Resolved issue when upgrading a wallet from legacy wallet structures
  • Resolved issue whereby locked inputs may have been removed from a wallet erroneously

miner Updates

  • N/A

cryptotest Updates

  • N/A

wallet-upgrader (NEW)

  • Created a simple tool designed to upgrade wallets to the latest wallet format used by zedwallet++ and wallet-api

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v2.0.0

09 Nov 15:08
747e00a
Compare
Choose a tag to compare

2ACoin - Production Release.

v2.0.0

Build Status Build status

Special Notes

Network Soft Fork
Upgrade to this release is Mandatory by block 455,000!
Please update your software before block 455,000 to ensure you remain synced with the network (see details below).

Features/Enhancements
2ACoin v2.0.0 release of the core 2ACoin software suite activates a network upgrade at block 455,000 that implements block major version 6. Block Major Version 6 changes the Proof-of-Work (PoW) algorithm to Argon2/Chukwa for 2ACoin.

Miners currently mining 2ACoin/ARMS will be required to switch their miners from Cryptonight-Litev7 to Argon2/Chukwa upon upgrade of the network at Block 455,000. Please refer to our block for additional information as it is released.

In addition to our blog, we urge users to join the 2ACoin Discord and follow the #announcements channel to be notififed of the latest 2ACoin updates.

2ACoin pools, miners, and services can do their part by upgrading their daemons as soon as possible.

Known Mining Software With Argon2/Chukwa Support

Please review your selected mining software's documentation for how to activate the proper algorithm for mining Argon2/Chukwa after the network ugprade.

If your preferred mining software is not listed above, please contact the developer/maintainer of the package and let them know you want Argon2/Chukwa support!

Known Mining Pool Software With Argon2/Chukwa Support (For Pool Operators)

The changes for supporting Argon2/Chukwa in most pool software packages is minimal. If your pool software uses the Node8-Multi-Hashing Node.js module then we have a modified version (node8-multi-hashing) for you to use. However, if you need assistance adding support to your pool, please feel free to ask for assistance in the 2ACoin Discord in the #dev_pool channel.

2ACoind Default Settings Change
The default database write buffer size, read buffer size, maximum open files, and background threads have increased to help with daemon stability. The increases are as follows:

  • Write Buffer Size: 256MB -> 256MB
  • Read Buffer Size: 10MB -> 256MB
  • Maximum Open Files: 100 -> 125
  • Background Threads: 2 -> 4

These values may need adjusted based on your system resources, configured limits, etc. Please review the 2ACoind --help for changing these values at runtime.

Release Notes

General Updates

  • Added Chukwa support
    • Argon2id with 512KB memory, 3 iterations, 1 thread.
  • Scheduled block major version change to 6 at block 455,000.
  • Applied standard code formatting via clang-format to project source code.
  • Resolved a number of compiler warnings when using Clang or GCC
  • Dropped support for gcc based builds on OSX due to ongoing issues with the gcc toolchain on that platform. Clang is the recommended toolchain for OSX.
  • Internal checkpoints updated through block 425,0000
  • CryptoNight based cryptography has been split into platform specific files to make it easier to read through the code.
  • Resolves an issue with the portable CryptoNight cryptography that would result in invalid hash calculations on some platforms.
  • Changed default build type from Release with Debug Info to Release
  • Core code reorganization to help reduce dependencies for some binaries thereby speeding up compilation for some users.
  • Switch to native builds instead of portable builds by default. Releases will still be default (portable) builds. Please see the build directions if you wish to compile portable builds.
  • Simplified the Windows build instructions
  • Renamed all directories in the /src folder to lowercase
  • Removed unused code from the project.

2ACoind Updates

  • Bugfix: QueryBlocksDetailed does not populate transaction extra "raw" property in response
  • Bugfix: Return better error messages via the node /sendrawtransaction method
    • This now returns an informative error message in the error property of the response on why a submitted transaction failed to be broadcast to the network
  • P2P version increased to version 6 to assist with the upcoming network upgrade
    • Minimum version now set to 5
  • Increased the default DB write buffer size, read buffer size, max open files, and number of background threads to improve daemon performance.
  • Clarified the error message generated when a submitted transaction contains already spent input key images
  • Removed all references to testnet as that has not been supported in production code for quite some time.

zedwallet Updates

  • Bugfix: Zedwallet crashing when parsing extra)
  • Bugfix: Resolved issue in edge cases where parsing of the public key from tx_extra would fail.

zedwallet-beta Updates

  • Bugfix: Resolved an issue in handling inputs during chain reorganization events
  • Bugfix: Resolved issue in edge cases where parsing of the public key from tx_extra would fail.
  • Added support for skipCoinbaseTransactions that is enabled by default that skips scanning coinbase transactions as the large majority of users do not directly receive block rewards.
    • To enable the scanning of coinbase transactions, specify --scan-coinbase-transactions as a CLI argument.
  • Added support for prefetching block information from nodes such that the wallet maintains a cache of blocks locally for processing versus waiting for new data before scanning for transactions.
  • Added support for multithreaded wallet syncing thereby allowing the wallet to sync faster than when just a single thread is used.
  • Added support for opening and thus transparently upgrading legacy wallets created by zedwallet and 2acoin-service.
  • Added --set_log_level command
  • Updated user messages to provide more information upon chain fork.

2acoin-service Updates

N/A

wallet-api Updates

  • Bugfix: Resolved issue in edge cases where parsing of the public key from tx_extra would fail.
  • Bugfix: Resolved an issue in handling inputs during chain reorganization events
  • BugFix: Corrected API HTTP status code responses for some endpoint calls
  • Added support for skipCoinbaseTransactions that is enabled by default that skips scanning coinbase transactions as the large majority of users do not directly receive block rewards. To enable the scanning of coinbase transactions, specify --scan-coinbase-transactions as a CLI argument.
    • If you operate a pool or other service using wallet-api we highly recommend that you activate this option.
  • Added support for prefetching block information from nodes such that the wallet maintains a cache of blocks locally for processing versus waiting for new data before scanning for transactions.
  • Added support for multithreaded wallet syncing thereby allowing the wallet to sync faster than when just a single thread is used.
  • Added support for opening and thus transparently upgrading legacy wallets created by zedwallet and 2acoin-service.
  • Added --no-console option to allow for a non-interactive session thereby supporting wallet-api as a daemon process in the background
  • Updated some user messages to provide more information upon chain fork.

miner Updates

  • Reduced Dependencies

cryptotest Updates

  • Added Chukwa testing
  • Added Chukwa benchmarking (single-core)

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v1.1.8

03 Sep 21:23
v1.1.8
707eaf5
Compare
Choose a tag to compare

2ACoin - Production Release.

v1.1.8

Build Status Build status

Special Notes

Network Soft Fork
Please update your software before block 390,000 to ensure you remain synced with the network (see details below).

Pools, miners, and services can do their part by upgrading their daemons as soon as possible.

Release Notes

General Updates

  • Project now builds under MSVC 2019
  • Project not linked statically against OpenSSL for zedwallet-beta and wallet-api to facilitate encrypted communication with a node
  • Enabled 32-bit builds
  • Upgraded MiniUPNP dependency from v1.9 to v2.1
  • Upgraded Crypto++ dependency to v8.2
  • Added SQLite3 support into the project
  • Reorganized source code structure for better modularization of core librariesUpdate Crypto Library to Crypto++ Library 8.2
  • Resolved issue whereby Release builds enabled assert() usage
  • Resolved an issue in the CMake build directions that were causing issues in a rare number of circumstances.

2ACoind Updates

  • BugFix: Block Transactions Blob Shuffle
    • Implemented in scheduled network upgrade at block 390,000
  • BugFix: Timestamp Locked Input Transactions
    • Implemented in scheduled network upgrade at block 391,000
  • BugFix: Fusions being prioritized over regular transactions
  • Enhancement: Added --resync CLI argument that makes it easier to perform a full resync than searching for and deleting the data directory
  • Enhancement: Added --rewind-to-height # CLI argument to allow for rewinding the local blockchain to a specific height thereby allowing us to overcome DB corruption errors
  • Enhancement: Added --p2p-reset-peerstate CLI argument to allow for clearing the p2p state information
  • Enhancement: Added support for lz4 compression in RocksDB backend
    • To use, specify --db-enable-compression as a CLI argument.
  • Enhancement: Added experimental feature to allow the use of RocksDB for the local blockchain cache that replaces the .bin files
    • To use, specify --rocksdb as a CLI argument. Requires full resync.
  • Enhancement: Added experimental feature to allow the use of SQLite3 for the local blockchain cache that replaces the .bin files.
    • To use, specify --sqlite as a CLI argument. Requires full resync.
      -Updated JSON serialization methods

zedwallet Updates

  • N/A

zedwallet-beta Updates

  • BugFix: Rare Transaction Double Add Bug in WalletBackend
  • BugFix: WalletBackend syncing doesn't remain On (1) when increasing the number of wallets
  • BugFix: Small bug in getFusionTransactionInputs()
  • BugFix: fix issue of node fee was not being detected correctly on swap of node
  • Enhancement: Prune spent inputs after some period of time from WalletBackend
  • Enhancement: Aligned backup keys prompts to match current zedwallet order
  • Enhancement: Added wallet synchronization backoff mechanism in the event that there is trouble retrieving blocks from the node.
  • Enhancement: Allow node to return earlier blocks during initial sync when scan height is specified
  • Enhancement: Refactored common utilities
  • Enhancement: Updated JSON serialization methods
  • Enhancement: Better daemon address parsing
  • Enhancement: Support Blockchain cache API in Nigel
  • Enhancement: Added SSL support for talking to remote node(s). Activate it with a node via the --ssl CLI argument.

2acoin-service Updates

  • Updated JSON serialization methods

wallet-api Updates

  • BugFix: fix issue of node fee was not being detected correctly on swap of node
  • BugFix: Rare Transaction Double Add Bug in WalletBackend
  • BugFix: WalletBackend syncing doesn't remain On (1) when increasing the number of wallets
  • BugFix: Small bug in getFusionTransactionInputs()
  • Enhancement: Prune spent inputs after some period of time from WalletBackend
  • Enhancement: Added wallet synchronization backoff mechanism in the event that there is trouble retrieving blocks from the node.
  • Enhancement: Support Blockchain cache API in Nigel
  • Enhancement: Allow node to return earlier blocks during initial sync when scan height is specified
  • Enhancement: Added SSL support for talking to remote node(s). Activate it with a node via the --ssl CLI argument.

miner Updates

  • N/A

cryptotest Updates

  • N/A

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v1.1.7

05 Aug 21:42
v1.1.7
eee7a32
Compare
Choose a tag to compare

2ACoin - Production Release.

v1.1.7

Build Status Build status

Special Notes

Network Soft Fork
Upgrade to this release is Mandatory by block 365,000!
Please update your software before block 365,000 to ensure you remain synced with the network (see details below).

Features/Enhancements
2ACoin v1.1.7 release of the core 2ACoin software suite activates a network upgrade at block 365,000 that restricts transaction extra to a maximum of 5,120 bytes to prevent chain storage bloat. This release also activates logic immediately that stops transactions exceeding this size limit from entering the transaction pool or being selected during the getblocktemplate calls; however, until block 365,000 transactions included in a block may still have transaction extra data exceeding the 5,120 byte limit.

This release also includes a network upgrade at block 365,500 that forces the verification of the signature counts on transactions sent throughout the network. This upgrade helps reduce the risk of blockchain bloat from malformed transactions.

Pools, miners, and services can do their part by upgrading their daemons as soon as possible.

Release Notes

General Updates

  • Resolved a few edge case bugs whereby block synchronization may fall-through to different code paths.
  • Resolved issue in AARCH64 builds that prevent the daemon from syncing to 100% height
  • Resolved issue in some OSX build environments where building with the latest Xcode failed
  • Resolved locale specific issue in Windows error messages
  • Improved Mnemonics compilation speed
  • Updated to use platform independent randomness sources
  • Limits TX_EXTRA data field on transactions to <= 5,120 bytes
  • Implements fork at 365,000 to reject new transactions with TX_EXTRA data > 5,120 bytes
  • Implements fork at 365,500 to reject new transactions where the signature count is incorrect for the number of inputs in the transaction.
  • CN Soft Shell algorithm altered (still unused by 2ACoin) to allow for the user of CPU/GPU mining software
  • Removed all references to LWMA3 from the codebase to avoid further confusion
  • Renamed PAGE_SIZE parameter in slow-hash functions that was causing errors when building for some users.
  • Activated compiler cache for AppVeyor CI builds

2ACoind Updates

  • Added optional blockCount parameter to getwalletsyncdata method
  • Addition of Lite Blocks to speed up block propagation
  • Resolved imprecision in fork countdown in status command
  • Increased the log level of the daemon, when existing, to provide insight and better error reporting when the daemon appears to hang while exiting.

zedwallet Updates

  • N/A

zedwallet-beta Updates

  • Add ability to return the transaction private key of a transaction you have sent. If you reset or rebuild your wallet, this option will not work.
  • Added additional logging facilities
  • Replaced wallet saving/loading with rapidjson library.
  • Optimized synchronization flow logic
  • Resolved edge case crashing when using a view wallet
  • Resolved future unlock time is displayed in in the UI if the input is locked as it comes in.

2acoin-service Updates

  • Restored -l CLI argument for the --log-file option

wallet-api Updates

  • Added /balances endpoint
  • Added optional unlock time parameter to /send/advanced endpoint
  • Added new /address/validate endpoint
  • Added additional logging facilities
  • Added publicSpendKey to /addresses/create
  • Replaced wallet saving/loading with rapidjson library.
  • Optimized synchronization flow logic
  • Various bug fixes to improve stability and overall experience
  • Resolved edge case crashed when using a view wallet
  • Enhanced endpoints to allow the wallet to be open or closed depending on the endpoint used
  • Now performs additional validation of parameters on numerous endpoint calls
  • Now returns the privateSpendKey when creating a new address
  • Resolved error whereby two wallet-api instances attempted to share the same bind port and address
  • Resolved edge case crashed when using a view wallet

miner Updates

  • N/A

cryptotest Updates

  • Added benchmarks for underivePublicKey and generateKeyDerivation
  • Cleaned up and optimized duplicated code

How To Sync Quickly

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

Compile / Installation##

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Please see the How To Compile section of the project README for instructions on how to compile this release on your system.

Changelog

See the 2ACoin Release page for the full change history.

Kudo's and Acknowledgements

2ACoin Developers, TurtleCoin Developers, Cryptonote Developers, Bytecoin Developers, Forknote Project, and the 2ACoin Community.

2ACoin - v1.1.6

06 May 18:13
v1.1.6
dce783b
Compare
Choose a tag to compare

2ACoin - Production Release.


Special Notes

Features/Enhancements
This is a maintenance release. The most important part of this release is the streamlining and efficiency modifications that are introduced in this release (details listed below).

The release of CN_ARMOR has been postponed indefinitely. While 90% of the code for CN_ARMOR is contained within this release, we made a conscious decision to not include this new algorithm in the code at this time. See Discord Announcement https://discordapp.com/channels/467074474110484490/492059875187097610

Take the time to read through the following release notes to understand how you may be impacted by this release.

Release Notes

General Updates

  • Revamped/improved CI builds for Travis and Appveyor
  • Updated CMake rules for compiler compatibility with project
  • MacOS build options for clang compiled binaries
  • Removal of dead code paths
  • Postponed release of CN_ARMOR for later release
  • Addition of new libraries
    • WalletBackend - replacement for WalletGreen
    • Nigel - The JSON package that replaces NodeRPCProxy between WalletBackend, zedwallet-beta and wallet-api
  • Addition of new binaries
    • zedwallet-beta - Upgraded zedwallet using the new WalletBackend
    • wallet-api - Upgraded 2acoin-service using the new WalletBackend now with RESTful API calls

2ACoind Updates

  • Addition of Lite Blocks to speed up block propagation
  • New /queryblocksdetailed RPC method
  • Permit the use of HTTP keep-alive headers for connection stability
  • Reduced some logging for performance
  • Includes CN_ARMOR components for later release
  • Identified/Resolved various issues

zedwallet Updates

  • Resolved issue where some transfers would fail between addresses in the same container

zedwallet-beta Updates

  • New in 2019!

2acoin-service Updates

  • Resolved edge cases where segfaults may occur during service initialization
  • Resolved issue where some transfers would fail between addresses in the same container

wallet-api Updates

  • New in 2019!

miner Updates

  • Usability improvements that prompt users for information instead of relying solely on the CLI arguments
  • Implement the use of the HTTP keep-alive header to re-use the connection the daemon to allow for faster blocktemplate updates

cryptotest Updates

  • Added additional tests for other algorithms included in the core (CN_ARMOR)

How To Sync Quickly

In 2ACoin v1.1.0 we introduced the ability to sync a fresh chain from block 0 much quicker by loading "checkpoints" with your 2ACoind daemon.

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

How To Upgrade from an Older Version

(windows, mac, linux)

  1. Run the old 2ACoind to fully sync your chain
  2. with the old 2ACoind fully synced, open zedwallet
  3. With zedwallet open, export_keys your SPEND and VIEW keys, this is important.
    • If you are in windows, right click the titlebar of the CMD window and select EDIT then MARK so be able to copy and paste your keys.
  4. Unzip the new 2acoin files into a NEW FOLDER outside of the old version folder
  5. Close the old version folder 2ACoind and zedwallet by typing exit into each window
  6. Run the new 2ACoind
  7. Run the new zedwallet
  8. Press I for IMPORT in zedwallet
  9. Enter your spend_key and your view_key from step 3
  10. Use any filename for the wallet name, it does not have to be the same
  11. Use any password for wallet password, it does not have to be the same as the last
  12. Your wallet is now updated

RPC API Changes

Developers seeking to integrate the 2acoin-service daemon into their applications should note this crucial change.

Mandatory authentication has been added to the JSON RPC API interface for 2acoin-service. To maintain backwards compatibility with old services, the --rpc-legacy-security flag has been introduced to allow password-less access to the RPC.

However, all new applications going forward should make use of the --rpc-password flag to enable authentication of JSON RPC queries.

To pass the password to the RPC interface, add an additional field password to the JSON object:

{
	"jsonrpc": "2.0",
	"method": "transfer",
	"params": {},
	"password": "<the password>"
}

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Linux

Prerequisites

You will need the following packages: boost, cmake (3.8 or higher), make, and git.

You will also need either GCC/G++, or Clang.

If you are using GCC, you will need GCC-6.0 or higher.

If you are using Clang, you will need Clang 5.0 or higher. You will also need libstdc++-6.0 or higher.

GCC setup, on Ubuntu
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update
sudo apt-get install aptitude -y
sudo aptitude install -y build-essential g++-8 gcc-8 git libboost-all-dev python-pip
sudo pip install cmake
export CC=gcc-8
export CXX=g++-8
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version
Clang setup, on Ubuntu
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -

You need to modify the below command for your version of ubuntu - see https://apt.llvm.org/

  • Ubuntu 14.04 (Trusty)
    sudo add-apt-repository "deb https://apt.llvm.org/trusty/ llvm-toolchain-trusty 6.0 main"

  • Ubuntu 16.04 (Xenial)
    sudo add-apt-repository "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial 6.0 main"

  • Ubuntu 18.04 (Bionic)
    sudo add-apt-repository "deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic 6.0 main"

Then perform the following;

sudo apt-get update
sudo apt-get install aptitude -y
sudo aptitude install -y -o Aptitude::ProblemResolver::SolutionCost='100*canceled-actions,200*removals' build-essential clang-6.0 libstdc++-7-dev git libboost-all-dev python-pip
sudo pip install cmake
export CC=clang-6.0
export CXX=clang++-6.0
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version
Generic Linux

Ensure you have the dependencies listed above.

If you want to use clang, ensure you set the environment variables CC and CXX.
See the Ubuntu instructions for an example.

git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version

Apple

Prerequisites
  • Install cmake. See here if you are unable to call cmake from the terminal after installing.
  • Install the boost libraries. Either compile boost manually or run brew install boost.
  • Install XCode and Developer Tools.
Building
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build && cd $_
cmake ..
# or 
cmake -DBOOST_ROOT=<path_to_boost_install> .. 
# when building from a specific boost install. 
# If you used brew to install boost, your path is most likely /usr/local/include/boost.
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version

If your version of gcc is too old, you may need to run:

brew install gcc@8
export CC=gcc-8
export CXX=g++-8

Windows

Prerequisites
Building
  • From the start menu, open 'x64 Native Tools Command Prompt for vs2017'.

``

cd <your_2acoin_folder>
mkdir build  
cd build  
set PATH="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin";%PATH%  
cmake -G "Visual Studio 15 2017 Win64" .. -DBOOST_ROOT=C:/local/boost_1_68_0  #(Or your boost installed dir.)  
MSBuild 2ACoin.sln /p:Configuration=Release /m  

The binaries will be in the src/Release folder when you are complete.

cd src
cd Release
2ACoind.exe --version

Raspberry Pi 3 B+

Th...

Read more

2ACoin - v1.1.5

29 Jan 14:15
2b09b70
Compare
Choose a tag to compare

2ACoin - Production Release.


Special Notes

Network Fork
Upgrade to this release is Mandatory by block 200,000!
Please update your software before block 200,000 to ensure you remain synced with the network.

Legacy Wallet Support
The ability to open pre-v1.1.1 wallets has been removed with this release. If you have opened pre-v1.1.1 wallets with software between v1.1.1 and v1.1.4 your wallet has already been upgraded to the newer format and will remain unaffected.

If you have not opened your wallet since before the v1.1.1 release, you will need to upgrade your wallet using v1.1.4 or reimport your keys into a new wallet using this release.

Features/Enhancements
We have postponed the release of LWMA-3 Difficulty Algorithm with this release. This decision was made in part based on the discussions of the community in the ZAWY Discord Channels and their findings. Those discussions have been summarized here - zawy12/difficulty-algorithms#3

Take the time to read through the following release notes to understand how you may be impacted by this release.

Release Notes

General Updates

  • Removed support for LWMA-3 (see
  • Removed legacy code that is not used anymore
  • Added CN Soft Shell support (coming soon)
  • Updated the CLI & Config file parsing in all binaries to remove Boost dependency
    • Revamped the CLI --help options and made sure all binaries have them
    • Added the ASCII Art to the --help screens
  • Added a Project header that displays not only the ASCII Art but also relevant version, license, and copyright information when launching all binaries
  • Upgraded the entire project based on the C++17 standards

2ACoind Updates

  • Removed Boost dependency in Mnemonics
  • Config files, where used, now use JSON formatted files instead of INI
  • Config files will be automatically upgraded to JSON and overwritten on first use
  • Updated to support height 200,000 in the status command

zedwallet Updates

  • Removed all legacy wallet files

2acoin-service Updates

  • Config files, where used, now use JSON formatted files instead of INI
    • Config files will be automatically upgraded to JSON and overwritten on first use

How To Sync Quickly

In 2ACoin v1.1.0 we introduced the ability to sync a fresh chain from block 0 much quicker by loading "checkpoints" with your 2ACoind daemon.

Here are the steps to sync via checkpoints;

  • download the latest checkpoints.csv (https://github.com/2acoin/2acoin-checkpoints)
  • place checkpoints.csv in the same folder as your 2ACoind daemon
  • run 2ACoind with checkpoints added like this:
    Linux, Apple ./2ACoind --load-checkpoints checkpoints.csv
    Windows 2ACoind.exe --load-checkpoints checkpoints.csv

How To Upgrade from an Older Version

(windows, mac, linux)

  1. Run the old 2ACoind to fully sync your chain
  2. with the old 2ACoind fully synced, open zedwallet
  3. With zedwallet open, export_keys your SPEND and VIEW keys, this is important.
    • If you are in windows, right click the titlebar of the CMD window and select EDIT then MARK so be able to copy and paste your keys.
  4. Unzip the new 2acoin files into a NEW FOLDER outside of the old version folder
  5. Close the old version folder 2ACoind and zedwallet by typing exit into each window
  6. Run the new 2ACoind
  7. Run the new zedwallet
  8. Press I for IMPORT in zedwallet
  9. Enter your spend_key and your view_key from step 3
  10. Use any filename for the wallet name, it does not have to be the same
  11. Use any password for wallet password, it does not have to be the same as the last
  12. Your wallet is now updated

RPC API Changes

Developers seeking to integrate the 2acoin-service daemon into their applications should note this crucial change.

Mandatory authentication has been added to the JSON RPC API interface for 2acoin-service. To maintain backwards compatibility with old services, the --rpc-legacy-security flag has been introduced to allow password-less access to the RPC.

However, all new applications going forward should make use of the --rpc-password flag to enable authentication of JSON RPC queries.

To pass the password to the RPC interface, add an additional field password to the JSON object:

{
	"jsonrpc": "2.0",
	"method": "transfer",
	"params": {},
	"password": "<the password>"
}

Installing

We offer binary images of the latest releases here: https://github.com/2acoin/2acoin/releases/latest

If you would like to compile yourself, read on.

How To Compile

Linux

Prerequisites

You will need the following packages: boost, cmake (3.8 or higher), make, and git.

You will also need either GCC/G++, or Clang.

If you are using GCC, you will need GCC-6.0 or higher.

If you are using Clang, you will need Clang 5.0 or higher. You will also need libstdc++-6.0 or higher.

GCC setup, on Ubuntu
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update
sudo apt-get install aptitude -y
sudo aptitude install -y build-essential g++-8 gcc-8 git libboost-all-dev python-pip
sudo pip install cmake
export CC=gcc-8
export CXX=g++-8
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version
Clang setup, on Ubuntu
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -

You need to modify the below command for your version of ubuntu - see https://apt.llvm.org/

  • Ubuntu 14.04 (Trusty)
    sudo add-apt-repository "deb https://apt.llvm.org/trusty/ llvm-toolchain-trusty 6.0 main"

  • Ubuntu 16.04 (Xenial)
    sudo add-apt-repository "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial 6.0 main"

  • Ubuntu 18.04 (Bionic)
    sudo add-apt-repository "deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic 6.0 main"

Then perform the following;

sudo apt-get update
sudo apt-get install aptitude -y
sudo aptitude install -y -o Aptitude::ProblemResolver::SolutionCost='100*canceled-actions,200*removals' build-essential clang-6.0 libstdc++-7-dev git libboost-all-dev python-pip
sudo pip install cmake
export CC=clang-6.0
export CXX=clang++-6.0
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version
Generic Linux

Ensure you have the dependencies listed above.

If you want to use clang, ensure you set the environment variables CC and CXX.
See the Ubuntu instructions for an example.

git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build
cd build
cmake ..
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version

Apple

Prerequisites
  • Install cmake. See here if you are unable to call cmake from the terminal after installing.
  • Install the boost libraries. Either compile boost manually or run brew install boost.
  • Install XCode and Developer Tools.
Building
git clone -b master --single-branch https://github.com/2acoin/2acoin
cd 2acoin
mkdir build && cd $_
cmake ..
# or 
cmake -DBOOST_ROOT=<path_to_boost_install> .. 
# when building from a specific boost install. 
# If you used brew to install boost, your path is most likely /usr/local/include/boost.
make

The binaries will be in the src folder when you are complete.

cd src
./2ACoind --version

If your version of gcc is too old, you may need to run:

brew install gcc@8
export CC=gcc-8
export CXX=g++-8

Windows

Prerequisites
Building
  • From the start menu, open 'x64 Native Tools Command Prompt for vs2017'.

``

cd <your_2acoin_folder>
mkdir build  
cd build  
set PATH="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin";%PATH%  
cmake -G "Visual Studio 15 2017 Win64" .. -DBOOST_ROOT=C:/local/boost_1_68_0  #(Or your boost installed dir.)  
MSBuild 2ACoin.sln /p:Configuration=Release /m  

The binaries will be in the src/Release folder when you are complete.

cd src
cd Release
2ACoind.exe --version

Raspberry Pi 3 B+

The following images are known to work. Your operation system image MUST be 64 bit.

Known working images
Read more