Skip to content

Animecointeam/Animecoin

Repository files navigation

Animecoin 0.10.0 beta

Animecoin

Master branch is there for testers and developers. Check out the Releases section for the current and stable source.

Intro

Animecoin is a free open source peer-to-peer electronic cash system that is completely decentralized, without the need for a central server or trusted parties. Users hold the crypto keys to their own money and transact directly with each other, with the help of a P2P network to check for double-spending.

Coin features

  • Unique algo (derived from quark).
  • Fast, cheap transactions, blocks generated every 30s on average.
  • No premine.

Upgrading

0.10 changes the block index database format. Upgrading from 0.9 will require a -reindex (or syncing from scratch). Chainstate database format is also changed. Normally it will be detected and upgraded as needed. If you run an SPV node built from trunk, chainstate database is mostly empty and may not be auto-upgraded in some cases. If you have issues with transactions being stuck after an upgrade, remove the chainstate directory before starting the software.

Downgrading

0.10 brings a BIP-65 soft fork support. Once the majority of miners migrate to 0.10, the soft fork will be activated and blocks generated by older versions will not be accepted. Until then, downgrading is possible. Since 0.10 uses a new parallelized sync mode, the block database assembled by 0.10 client is not guaranteed to be backwards compatible, even through -reindex! In case of a downgrade, you'll likely have to sync from scratch, or have a backup available. The wallet format has also been updated. Downgrading will automatically perform -rescan, which may take a long time. 0.10 also includes support for HD wallets. Newly created wallets and wallets upgraded through -upgradewallet will not be backwards compatible.

New 0.10 sync modes

0.10 brings SPV and pruning support with the following options:

  • Full mode: the entire blockchain is downloaded as usual.
  • Pruned mode: the entire blockchain is downloaded, old blocks exceeding the user-defined disk space amount are pruned. Switching back from this mode requires -reindex.
  • SPV mode: only block headers and blocks younger than your wallet keys are downloaded. Blockchain validation is entrusted to network. This reduces the amount of data required to sync by about 70%.
  • Hybrid mode: downloads the full blockchain, but allows sending and receiving transactions as soon as block headers and recent blocks are downloaded, before the complete sync is finalized. You can switch between hybrid and full mode on the fly.

Current light mode limitations:

  • Mining RPC interface is disabled in SPV mode (planned to be re-enabled once soft fork activates).
  • Signing raw transactions is unavalable in SPV mode (there's no chainstate data to scan for inputs).
  • Operations implying rescan (such as importing keys) cannot be done in pruned and SPV modes (SPV improvements in development).

0.10.0 release notes

  • Faster block syncing and compact blocks support.
  • Wallet startup time reduced significantly by caching the block hashes on disk; transaction table updating is also much faster now.
  • Fee Control Features available.
  • Running wallet in SPV mode is possible now, pruned mode is available as well, more options in development.
  • A soft fork akin to BIP-0065 is prepared. Blocks of the new version are not yet generated.
  • Initial support for the user interface to multisig capabilities.
  • Improved application design, including animecoin-tx and consensus library.
  • Tor hidden service setup automated.
  • Deprecated option -tor removed, use -onion instead.
  • libsecp256k1 integration.
  • getwork RPC removed following bitcoin upstream, this may break certain solo mining setups.
  • SOCKS4 support removed.
  • RPC over SSL removed (was never good, kindly use tunneling if needed).
  • Qt4 support removed (years since EOL).
  • OpenSSL dependency is gone thanks to built-in random number generator and BIP70 deprecation.

0.9.2 release notes

  • Default fee policy has been adjusted to ensure relaying of huge transactions.
  • Paper wallet generation and printing support.
  • DNS seed is online.

0.9.1 release notes

  • The client is now OpenSSL-1.1 compatible (included in win32 build). Also compatible with the newer Boost and miniupnpc releases!
  • Coin Control Features available.
  • Lots of modern RPC commands available, including getnetworkhashps.
  • A commandline executable split into the separate animecoind and animecoin-cli.
  • Updated the database code.
  • The transaction creation is no longer limited to 159 inputs (should resolve the 1272 coin sending limit for solominers).
  • Improved wallet loading and rescanning time.
  • The client will now check for possible network forking at startup and issue a warning if needed.
  • Added BIP 0070 payment requests support, while keeping the old receiving addresses tab in place for convenience.
  • You may now choose the data directory on the first run or with -choosedatadir option.
  • Network traffic graph.
  • Fusion widget style enabled by default for Windows.
  • New options, make sure to review them!

Building from source

Using autotools for commandline (MSYS2 shell in Windows case):

  • ./autogen.sh
  • ./configure (with any options necessary)
  • make (use e.g. make -j8 for utilizing 8 CPU cores to speed up the build process)

You may want to use the strip utility to reduce the size of resulting executables.

Required libraries

  • Boost
  • Berkeley DB
  • libevent2 (since Animecoin 0.10 trunk)
  • Qt (optional if you don't need the GUI client)
  • miniupnpc (optional)
  • qrencode (optional)
  • ZeroMQ (optional)
  • univalue (optional, since 0.10; bundled version will be used unless --with-system-univalue specified)
  • protobuf (temporary, Animecoin 0.9 only)

OpenSSL is no longer needed since 0.10, however, depending on your distribution libraries like libevent may be still linked with libssl/libcrypto.

Berkeley DB notes

By default, cryptocurrency wallets use Berkeley DB 4.8 for portability. You may, however, use a more recent version (specifying the path and suffix in the .pro file, or passing --with-incompatible-bdb to ./configure).

IF YOU BUILD YOUR CLIENT WITH DB OTHER THAN 4.8 YOUR WALLET.DAT FILE WILL NOT BE PORTABLE.

If you wish to convert your wallet.dat between versions, you'll need the BerkDB tools for both versions available.

For example: db6.3_dump wallet.dat | db4.8_load wallet.dat.new

Other release notes

  • Animecoin operates on 5 decimals internally. For the software compatibility purposes, it still accepts extra decimals via RPC, those will be rounded-to-nearest. This case inevitably violates Bitcoin (and JSON) guidelines on precision, thus it's highly recommended to configure your software for using no more than 5 decimals in Animecoin amounts whenever possible.
  • Translations need people to work upon.

License

Copyright (c) 2009-2021 Bitcoin Developers Copyright (c) 2014-2021 Animecoin Developers

Distributed under the MIT/X11 software license, see the accompanying file COPYING. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com), UPnP software written by Thomas Bernard and sphlib 3.0 by Thomas Pornin.