Weekly musing #14 - Preparations for the fork

bitcoinforks.org DNS seeds for ABC

Bitcoinforks.org has set up DNS seeds for ABC on

seed-abc.bitcoinforks.org
testnet-seed-abc.bitcoinforks.org

A simple Python-based seeder software for this is being developed. The coming weeks will show if this is adequate, and can be released, or if we have to revert to a modified version of the popular seeder code by Pieter Wuille.

Investigations on moving ABC to C++14

An interesting suggestion was made in ABC the development forum, to move to C++14 as minimum required language standard.

This has some wide-reaching implications which we still need to research a bit (some Travis tests have already been conducted on a dedicated branch).

Despite being 3 years old, C++14 has only recently seen built-in support by major distributions. For example, you would need Debian 9 or Ubuntu 16.10 (Yakkety) or later for compilation to work out of the box.

On older releases, you may need to obtain packages from channels other than the stable release one.

It is possible to get the Linux build working with C++ on Travis Trusty by providing the right incantations to install an extra gcc6 package built for this purpose.

However, the cross-compilation builds for other platforms make use of other compiler packages which do not support C++14 in their present form, and will need to be updated too. More research is needed to see if Travis provides suitable packages, or if one would have to build them oneself.

Unfortunately Travis does not support Ubuntu Yakkety yet (not even Xenial is formally supported, with no firm roadmap). Maybe ABC has to move to a different system for its CI, if it wants recent compilers.

The gitian build, which uses Ubuntu Trusty, will also be affected by a move to C++14. Some major adaptations will likely be necessary to get a Yakkety or Debian 9 gitian build environment working right.