-
Dobbscoin Core v0.14.0 Stable
released this
2026-09-26 13:51:52 +00:00 | 1 commits to main since this releaseThe big change in this release is the wallet file. Read the first section before you upgrade.
Your wallet is converted to a new format on first start
Until now
wallet.datwas a Berkeley DB file. From v0.14.0 it is an SQLite file. The records inside (keys, labels, watch-only addresses, transactions) are the same; only the file format around them changes.What happens the first time v0.14.0 starts with an old wallet:
- It reads your old
wallet.datwithout changing it. - It writes every record into a new SQLite file, reads the new file back, and checks it against the original, byte for byte.
- It keeps your original file, unchanged, as
wallet.dat.bdb-<number>in the same folder (the number is the time of the conversion). - Only then does the new file take the name
wallet.dat.
The log says so in one line:
Migrated wallet.dat to SQLite: 25 records written and verified byte for byte in 10ms; the Berkeley DB original is kept as wallet.dat.bdb-1790342535If any step fails, the node stops with an error and your original
wallet.datis left exactly as it was. Nothing is ever deleted. An encrypted wallet converts without asking for your passphrase, and the same passphrase unlocks it afterwards.Older versions cannot open a converted wallet. If you start v0.13.8 or earlier on it, it stops with
wallet.dat corrupt, salvage failed. The file is not damaged and is not changed by that; the old version simply cannot read the new format.If you need to go back to an older version, you have two ways:
- The kept original. Stop the node, move the new
wallet.dataside, and renamewallet.dat.bdb-<number>back towallet.dat. Anything that happened in the wallet after the upgrade (new addresses, labels) is not in that file, although transactions to old addresses show up again after a rescan. - Export and import. On v0.14.0,
dobbscoin-cli dumpwallet <file>writes every key and label to a text file. On the older version, start with a fresh wallet and rundobbscoin-cli importwallet <file>. That file holds your private keys in plain text: keep it somewhere safe and delete it when you are done.
Back up before you upgrade anyway. The conversion keeps your original, but a backup on another disk is still the only thing that survives a lost disk. Wallets you back up with
backupwalletfrom now on are SQLite files too.Other wallet changes
- A damaged wallet stops the node instead of being quietly rewritten. The old version, on finding a damaged wallet file, salvaged whatever it could read and carried on. v0.14.0 stops and says so, and
-salvagewalletis there when you choose to use it.-salvagewalletnow keeps redeem scripts, watch-only addresses, labels and key metadata, not only keys, and a single bad record no longer costs every record stored beside it. - A write-protected
wallet.datis refused at startup with a message that says it cannot be written, instead of starting and failing at the first new address. - A symlinked
wallet.datstays where it is. If yourwallet.datis a link to another disk, the conversion andencryptwalletnow work on the real file there, instead of replacing the link with a plain file in the data folder. - Every write is safe against a power cut. Each change is flushed to disk, including the folder entry, before it counts as done.
- Refilling the keypool is fast. 1000 new keys went from about 6 seconds to a third of a second.
- The wallet file code was checked with fuzzing (random and damaged files fed to it for hours) and a code review. Those found and fixed several problems before release, the worst being a damaged wallet that could load with an encrypted key missing and no error. None of these problems ever existed in a released version; they were all in the new code.
Mining
The built-in miner is much faster, solo and pool. It now hashes several nonces at once using the SIMD instructions of your processor: about 5 to 6 times faster on processors with AVX2, and 2 to 3 times faster on older ones that have only SSE2. It picks the fastest method your processor supports by itself, and the log says which one (
Scrypt miner: using AVX2 (6-way)). To force one, start with-minerscrypt=generic,sse2,avxoravx2. Only the miner changed: block validation still uses the original scrypt code, and the miner checks every block it finds with that code before sending it.Network
DNS seeds on a second domain. v0.13.8 added ten spare seed names, all on
dobbscoin.info, so they shared one registrar and one renewal date. Five more now ship on23skidoo.info, behind the same nodes:jhvh1.23skidoo.info dobbs.23skidoo.info eris.23skidoo.info connie.23skidoo.info nheeghee.23skidoo.infoA new node has two independent ways to find the network by name. Seeds are not consensus.
Fallback addresses that work. When no DNS seed answers, a node falls back to a built-in list of addresses. That list was still Bitcoin's from 2015 and reached no (BOB) node at all. It now holds the six public (BOB) nodes behind the DNS seeds.
Downloads and installing
The Linux builds no longer need
libnatpmporlibminiupnpc(#45). Every Linux build since v0.13.5 failed on a system without those two packages, witherror while loading shared libraries: libnatpmp.so.1. Both libraries are now built into the binaries. Port mapping (-mapport) works as before.Both Linux tarballs include
dobbscoin-cli. The v0.13.8 daemon tarball shippeddobbscoindalone.A Windows installer. This release ships a
setup.exealongside the zip. It installs toProgram Files\Dobbscoin: the wallet, a short readme and a plain-words license summary in that folder, the daemon anddobbscoin-cliindaemon, and two documents (files.md,tor.md) indoc. Its uninstaller removes everything it added to the registry. The installer shows "Bob" and the Dobbscoin coin; its images and icons had been Bitcoin's since an old code import. The zip is still there for people who would rather not install anything.The installer waits for a running wallet. If Dobbscoin is still running, the installer now says so before it copies anything and offers Retry and Cancel, instead of failing halfway with "Error opening file for writing". A silent install (
/S) stops with an error code instead.License notices.
COPYINGnow ends with a Third-party notices section for the code bundled into the programs. Every download carries it, the AppImage included.Updated Windows libraries: OpenSSL 3.5.8, Boost 1.83, Qt 5.15.19. The Windows programs need nothing but Windows itself. Every Windows program now reports its real version in its file properties (it used to say 0.13.0.0).
For people who build from source
- Berkeley DB is gone as a build dependency. The wallet needs SQLite (
libsqlite3-dev) instead. Nobody has to build Berkeley DB 4.8 by hand anymore. - CMake builds the whole tree (#43), beside Autotools for this one release. Both produce the same code; Autotools is removed in the next release.
BUILDING.mdhas copy-and-paste steps for Linux and for the Windows installer, anddoc/build-cmake.mdhas every option. qa/run-all.shruns every test suite in one command: 26 suites, 0 failures.- The wallet file readers have libFuzzer harnesses; see
doc/fuzzing.md.
No consensus rules change in this release.
Should you upgrade?
Everyone, eventually. Future releases build on the new wallet format. Read the first section, make a backup, and upgrade when it suits you.
Miners and pool operators: be on v0.13.8 or later before block 2,000,000 (roughly 2027-01-24), when CHECKLOCKTIMEVERIFY activates by height. There is no version signaling to warn anyone first. v0.14.0 satisfies that; so does v0.13.8. If you run a pool, test the wallet conversion on a copy of your pool wallet first, and don't leave the upgrade to the last week.
What the Linux builds need
The daemon tarball (
dobbscoind,dobbscoin-cli) is dynamically linked against these, which most Debian and Ubuntu systems already have:sudo apt install libsqlite3-0 libssl3 \ libboost-chrono1.74.0 libboost-filesystem1.74.0 \ libboost-program-options1.74.0 libboost-thread1.74.0libsqlite3-0is new in this release.libnatpmp1andlibminiupnpc17are no longer needed. The binaries are built on Ubuntu 22.04 and need glibc 2.34 or newer.The Qt tarball also needs the system Qt 5 libraries (
libqt5core5a libqt5gui5 libqt5widgets5 libqt5network5 libqt5dbus5),libqrencode4andlibprotobuf23.libprotobuf23is not packaged on some newer systems (Debian 12 shipslibprotobuf32). If the Qt tarball will not start, use the AppImage.The AppImage bundles its libraries and needs none of this.
Verification
All of this was run on the release files themselves, the Linux ones on a machine that did not build them:
- Version: every program reports
v0.14.0.0-ee534b0f;getinforeports"version" : 140000. - Linux, with
libnatpmpandlibminiupnpchidden from the loader: the daemon starts, mines on regtest, sends and confirms a payment, andbackupwalletwrites a valid SQLite copy. The v0.13.8 daemon, under the same conditions, fails in the loader. - Wallet conversion, Linux and Windows: wallets written by an unmodified v0.13.8, one plain and one encrypted, convert on first start. The kept
.bdb-file is byte-identical to the original. Labels and the watch-only address are present. The encrypted wallet refuses a wrong passphrase, unlocks with the right one, signs a message and spends. - The way back: v0.13.8 refuses a converted wallet and leaves it unchanged; a
dumpwalletfile from v0.14.0 imports into v0.13.8 with its labels. - Mining: 60 seconds of solo mining on testnet, 8 threads on an AVX2 processor: about 97,000 hashes per second on Linux and 94,000 on Windows. 4 threads on an SSE2-only processor: about 38,000. Each time the log named the method it chose. The new code matches the original scrypt on 3,072 random inputs and 128 real mainnet block headers for every method the processor supports.
- Windows: the unit tests pass (177 cases); the installer installs silently, the installed programs are identical to the ones in the zip and carry version 0.14.0.0, and the uninstaller leaves no registry key and no folder behind.
- Test suites: consensus and scrypt suites 37 cases, no errors;
qa/run-all.sh:passed 26 failed 0 known failures 0.
Checksums
c5e5caed803991825f87d776feb411a90a5a7bb07bd40982b2f0967591b58588 dobbscoin-v0.14.0-linux-daemon.tar.gz d2a1245a34cfcc947c3f1fb22ed4c2daf8957e327aea4402c9b19df456f2b64c dobbscoin-v0.14.0-linux-qt.tar.gz f111d52ce5e13b825a6e38613b88b24af522b235c481fd5b66d71c70b1b8e5c2 dobbscoin-v0.14.0-win64-setup.exe 56d271d65ef67d058b1e2a71182441b1ba77f95a517cebac77e7609ea20937d7 dobbscoin-v0.14.0-win64.zip df3b57a23b747742b2edaf17ff9f825204fe094b3591c728a96ef67c640df79e dobbscoin-v0.14.0-x86_64.AppImageThe zip also carries
SHA256SUMS-windows.txtfor the three programs inside it. To check a download on Linux:sha256sum -c SHA256SUMS.txt. On Windows:certutil -hashfile <file> SHA256.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- It reads your old