It’s available here:

Linux: https://bitbucket.org/JordanLeePeershares/nubit/downloads/nu-2.1.0-linux-gitian.zip

Windows: https://bitbucket.org/JordanLeePeershares/nubit/downloads/nu-2.1.0-win-gitian.zip

OS X: coming soon

(sha256sums are below)

Known issues

If you have an existing wallet with past transactions the client will hang during the initial block index conversion.

Connecting to the network with Tor doesn’t work. If you need Tor you must not upgrade yet and wait for a new release.

Using a large time in the walletpassphrase RPC makes the client crash. 999999999 seems to be the maximum.

This is not a mandatory upgrade. You can keep using version 2.0.3.

Upgrade instructions

There are important changes in this release that will update most of your files in your Nu data directory, including the block database. The new datadir will not be compatible with older versions of Nu. So before upgrading you should probably backup your whole data directory to easily revert to an older version in case the new version doesn’t work. In any case you must backup at least your wallet files. This document explains how to do backups.

When you first run the 2.1 version it will start converting your block index. This process will take a long time (probably several hours depending on your hardware). You won’t be able to use the client during that time.

If the conversion process doesn’t work for some reason, you can restart with a bootstrap file. The internal process is actually the same so it should take the same time (after download).

You should also use a bootstrap file if you start from scratch because the initial download process is very long. Note that it still takes a lot of time to process the bootstrap file.

Bootstrap file

You can download the Bootstrap file:

from Google Drive: https://docs.google.com/uc?id=0B96pmq-lU9NQTUlqYjY5S2xNNzQ&export=download

with this torrent: https://bitbucket.org/JordanLeePeershares/nubit/downloads/NuBootstrap012616.torrent

from this link: http://212.129.19.120/bootstrap.dat

Then:

close your Nu client,

go to your data directory (see this doc),

remove all the files except the wallets and the configuration,

put the bootstrap.dat file inside your data directory,

file inside your data directory, and run the Nu client.

On the first start it will read the bootstrap file and rebuild the block index from it. This will take a long time.

See also this doc.

Changes

The major change in this release is the merge of the Peercoin develop branch which merges Bitcoin 0.8.6. Before that the latest Bitcoin merge was 0.6.3. You can see the list of Bitcoin changes between these versions here: https://bitcoin.org/en/version-history (although some of them may not apply to Nu, and some others had already been imported).

The most important part of these changes is the way the block index database is stored and loaded. The switch to leveldb and other changes made the initial load time much faster.

Note that the wallet database is not changed: it sill uses the same Berkeley DB.

One of the Bitcoin 0.8 changes was to “no longer maintain a full index of historical transaction ids by default”, but Nu still does because it needs the full index to validate Proof of Stake.

In addition to this merge we also made Nu specific changes:

The most important one is the introduction of the BlockMap which loads block indexes on demand instead of keeping them constantly in memory. This reduces the overall memory usage, and makes it no longer grow continuously when new blocks are added to the chain. It makes the client use more I/O though, especially during the initial download.

The other changes are:

use less CPU in the Proof of Stake process when no valid kernel is found

a new -debugmint configuration to ease minting problems troubleshooting by logging the reasons why no kernel was found during the Proof of Stake process

configuration to ease minting problems troubleshooting by logging the reasons why no kernel was found during the Proof of Stake process the RPC command getpremium accepts a hash parameter to get the parking premium at a particular block (contributed by dc-tcs)

accepts a hash parameter to get the parking premium at a particular block (contributed by dc-tcs) a new getprotocolinfo RPC to get the protocol version and votes at a specific block

RPC to get the protocol version and votes at a specific block a new getfee RPC to get the fee that must be included in a transaction, given a size and an amount

sha256sums