Having just had to talk down extro24 off've the ceiling ...
What's in my repository
in the master branch is a straightforward clone of the foo1inge repos, with a few simple fixes so that it will compile on modern OSes. Any talk of a “new client” is misleading.
It's
not new, it's the old client that was working, is still working but which we can now compile fresh versions of, which we couldn't before because the codebase had aged in comparison to the OS that host it and the libraries which give it its functionality.
Those libraries have been developed further since Datacoin was launched but the codebase hasn't been kept up to date with those developments. In particular, an infelicity in the boost 1.68 library causes the compiler to reject a line of code in rpcrawtransaction.cpp, causing the compilation to fail.
Elsewhere, developments in C++ have obsoleted the old C99 PRI* macros used for marshalling data into print routines, depending which distro you're using, it's deprecated and results in a wall of compilation warnings that can dangerously obscure other, more important compilation warnings such as the deprecation of
auto_ptr, so it's worth a
s/"PRI/" PRI/g to get rid of them.
The “proper” fix is removing them entirely, C++ has acquired the ability to handle them directly so
strprintf("database.%" PRI64d ".bak", GetTime()); becomes just
strprintf("database.%d.bak", GetTime());. This work will take place in a separate branch, to be subsequently integrated into the master branch.
On OS X Sierra (or, more accurately XCode > 7 iirc) and very recent Linux distros, the C99 PRI macro and auto_ptr uses are no longer deprecated, they are now
compilation-stoppers.
Aaanyway, none of this is profound, afaik they're all trivial from a software engineering perspective and have all been addressed in a single commit, so that everyone can see what I done and, if they have objections, can voice them:
https://github.com/gjhiggins/datacoin/commit/1ff346f1d1dea96b3885063490c2d134889f045dor even clone the repos, make their own candidate changes (community acceptance is the final arbiter) and issue Pull Requests to have the changes integrated into the master branch (generally
the branch where all the agreed-as-successful development work ends up).
Periodically, when things are quiet and it's a suitable phase change point, a “release” can be cut, i.e. the current master branch gets copied into to a “release” branch and its availability advertised. Work on the “master” branch continues until the next phase change point is reached and another release cut,
Feel free to get a Github a/c so you can raise issues and have input into any strategic or tactical discussions that take place.
So, the code in the
“construction site” branch is in smithereens and is not the same as the code in the
master branch and, as it logically
has to be, the Windows binary is compiled from the master branch, as the code in the construction site branch will not yet compile at all.
With luck and a following wind (or more specifically, a re-install of brew) an OS X version of the not-new-at-all client will be available soon.
HTH
Cheers
Graham