Dogecoin Core Changelog

What's new in Dogecoin Core 1.14.7

Feb 29, 2024
  • Security Updates:
  • Disable BIP-70 payment server by default
  • Reduce the build scope of the Qt dependency
  • Backport patches for all Qt versions until 5.15.12 + community patches to the pinned Qt 5.7.1
  • Added security guidance to INSTALL.md
  • Updated the rpcuser.py script to improve the password and salt generation methods it uses
  • Enhancements:
  • estimatefee and estimatesmartfee are now maintained and tuned to Dogecoin parametrization
  • Added fully verbose transaction decoding to getblock
  • Added a height parameter to -walletnotify
  • Added the getblockstats RPC method
  • RPC Changes:
  • verbosity parameter to getblock now accepts both integers and booleans
  • Added a height parameter to importpubkey and importaddress
  • Translation Updates:
  • Chinese
  • Dutch
  • French
  • French-Canadian
  • Italian
  • Korean
  • Polish
  • Updates to pinned dependencies and subtrees:
  • Updated the depends, CI and build system to Ubuntu Focal
  • Updated expat to version 2.5.0
  • Updated the secp256k1 subtree to 44c2452
  • Updated zlib to version 1.3
  • Updated protobuf to version 3.6.1
  • Updated fontconfig to version 2.12.6
  • Removed dependency on libx11

New in Dogecoin Core 1.14.6 (Jul 21, 2022)

  • Security-related fixes:
  • This release contains multiple security related fixes:
  • The alert system has been removed and processing of alert messages has been disabled
  • The transaction download system has been made more reliable
  • The protocol implementation has been amended to reject buggy or malformed messages
  • Memory management in events of high network traffic or when connected to extremely slow peers has been improved
  • Fee Recommendation:
  • This release changes the recommended dust limit for all participants on the Dogecoin network from 1 DOGE to 0.01 DOGE. The full recommendation can be found in the documentation.
  • Breaking changes:
  • The behavior of the dumpwallet and backupwallet RPC methods, to exclusively write to the directory specified by -backupdir and no longer overwrite files
  • The maximum number of addnode records that a node will track has been limited to 800
  • New features:
  • A new RPC method, liststucktransactions has been added to help wallet operators identify if any transactions are stuck (have not been mined and are not in the mempool) and enable resolution. This helps in cases where node-local fee or dust policies change, to prevent the node from sending out old transactions that got lost.
  • Pruning configuration has been added to the UI, to make it easier to save diskspace for users of graphical (wallet) installations.
  • A new RPC method, setmaxconnections, has been introduced that enables wallet and node operators to change the maximum number of connections their node allows without needing to restart allowing for more fine-grained control of the node's network capacities.
  • The graph in the UI's traffic monitor has been significantly improved by keeping track of the traffic we see in the background and then rendering it on demand, at any desired scale.
  • A new RPC method, rescan, has been added to allow node operators to rescan the chain for wallet transactions from a certain height. This can help speed up the rescan process for keys that are known to be generated after a certain date or block height.
  • A new endpoint has been added to the REST server to find the current best known block at a certain height, without having to do RPC calls. This is useful for service implementations that need to track or query blocks.
  • Translation updates:
  • Bulgarian
  • Dutch
  • French
  • Italian
  • Korean
  • Persian
  • Portuguese (pt_PT)
  • Tamil
  • RPC API Changes:
  • The verifychain RPC command no longer accepts negative values
  • addnode will now return error -32 when the address provided is too long
  • getpeerinfo provides 2 new fields per peer, addr_processed and addr_rate_limited
  • Dependency updates:
  • Updated zlib to 1.2.12.
  • Updated libevent to 2.1.12-stable.
  • Update the LevelDB subtree to use the same version as Bitcoin 22.0, from the bitcoin-core maintained fork.

New in Dogecoin Core 1.14.5 (Nov 8, 2021)

  • Important Security Updates:
  • This release contains fixes for 2 high severity vulnerabilities that affect most Dogecoin Core users.
  • Remote Code Execution in Dogecoin QT (CVE-2021-3401):
  • This release addresses CVE-2021-3401 that opened potential remote code execution on QT (graphical user interface) wallets through malicious use of dogecoin: URIs.
  • Dogecoin QT users are urged to please update their installations to this version immediately, to prevent malicious actors from exploiting this vulnerability.
  • Sensitive Information Exposure on Unix platforms (CVE-2019-15947):
  • A fix for CVE-2019-15947 was back-ported from Bitcoin Core to prevent potential leakage of sensitive information when Dogecoin Core crashes on Unix platforms. The vulnerability is patched for systems that run a Linux kernel equal to or higher than 3.4.
  • Dogecoin Core wallet users on Linux platforms are urged to please update to this version.
  • Fee Reductions:
  • This release finalizes a new minimum fee recommendation for all participants on the Dogecoin network, following the reduction of relay and mining defaults in 1.14.4. The recommendation has been documented and can be found here. With this release, the minimum fees when creating transactions are recommended to be as follows:
  • the recommended minimum transaction fee is 0.01 DOGE/kb, and
  • the recommended dust limit is 1 DOGE, and
  • the recommended RBF increment is 0.001 DOGE.
  • Wallet/UI Changes:
  • The user interface for selecting fees when transacting DOGE has been updated to give an idea of how much is being spent, rather than a block target. As Dogecoin blocks are not full, typically all transactions are mined in the next block, and therefore the target estimation does not makes sense for Dogecoin.
  • Transaction sizes are no longer rounded up to the nearest kilobyte before calculating fees, which significantly simplifies fee calculation logic and makes it more similar to Bitcoin and Litecoin.
  • The default minimum transaction fee is now 0.01 DOGE per kilobyte. Note that you may see transactions take longer to be confirmed while using these lower fees, until all miners have updated. The new fee slider can help with getting fast-confirming transactions by sliding it all the way to the maximum, or for both CLI and GUI wallet users, this can be made the default by setting -paytxfee=5.21.
  • Introduce -discardthreshold, a wallet-specific, configurable dust limit that enables gradual implementation of the dust limit on the network side. Each transaction created with the wallet will adhere to this threshold rather than the dust limits used for relay, preventing stuck transactions. The wallet will discard any change to fee and reject output amounts that are lower than this limit. Until this release sees significant network adoption, the default dust limit is recommended to stay at 1 DOGE, as versions 1.14.2 until 1.14.4 have a bug that rejects any transaction with an output under 1 DOGE.
  • Derive minimum change from configurable wallet parameters -discardthreshold and -mintxfee: minimum change = discard threshold + 2 * minimum fee.
  • Relay changes:
  • Split the dust limit into a hard and soft threshold, to reintroduce the economic disincentive for dust, rather than rejection introduced since 1.14.2
  • -harddustlimit is by default set at 0.001 DOGE and sets the value under which transactions will be rejected by nodes.
  • The dust limit parameter introduced with 1.14.4 (-dustlimit) is now the soft dust limit, enforcing the economic disincentive. Each output under this threshold will be accepted as long as the entire limit is added to fee.
  • Change the default incremental fee used for RBF and mempool limiting to 0.0001 DOGE.
  • BDB Updated to 5.3:
  • The Berkley DB version used by Dogecoin Core has been updated to 5.3 (from 5.1) as 5.3 is now standard on many Linux distributions. 5.1 and 5.3 wallet files have been tested to be interchangeable.
  • Version display:
  • The version displayed on QT's overview page has been changed to display the full version rather than just the major version part, because this was confusing wallet users.
  • Key Derivation:
  • The BIP32 hierarchical deterministic key derivation path contained the wrong chain ID. Previously the chain ID 0 was used, it's now correctly set to 3 as per SLIP44.
  • The wallet.dat files stay fully interoperable between versions. Wallets created with 1.14.5 will benefit from greater interoperability with hardware wallets in the future.
  • Namecoin-compatibile AuxPoW mining:
  • The createauxblock and submitauxblock commands have been reintroduced, mimicking the same commands from Namecoin 0.17, allowing miners to separate wallets from block producing nodes by specifying the address for their coinbase transactions.
  • Two additional features on top of the Namecoin 0.17 API have been added:
  • The block caching mechanism has been enhanced to enable mining pools to use multiple wallet addresses if desired.
  • By default the AuxPoW API methods provide the difficulty target in a field named target, however this can now be configured to be fully compatible with the Namecoin API (_target) by setting the -rpcnamecoinapi argument.
  • RPC API Changes:
  • Added softdustlimit and harddustlimit fields to getnetworkinfo to enable operators and third party scripts to query this information without having to search configuration files or hardcode defaults.
  • Added createauxblock and submitauxblock methods
  • Added -rpcnamecoinapi that allows miners to use Namecoin-compatible AuxPoW APIs, for both getauxblock and createauxblock methods.
  • Build System and CI Changes:
  • The build system for dependencies, continuous integration and binary releases has been upgraded from Ubuntu Trusty to Ubuntu Bionic, because the former was fully end-of-life. Ubuntu Bionic extends the useful life of the 1.14 build system to April 2023, by which time we expect to have switched to 1.21 as the main version. With this change, the default gcc used for testing and releases has been updated from version 4.8 to 7.
  • The CI environment has been extended to build and test aarch64 binaries, and to perform additional checks that allow us to catch more potential issues early and automatically.
  • Additionally, an experimental CI build environment has been introduced to enable ongoing testing and maintenance of incubating features that are not yet ready for release. Currently this contains the AVX2 features that aim to increase the performance of cryptographic routines within Dogecoin Core.
  • Minor Changes:
  • Fix compilation on FreeBSD, which was failing to compile the Scrypt code.
  • Update the FreeBSD build docs, see doc/build-freebsd.md.
  • Update default dependencies to OpenSSL 1.0.2u.
  • Refresh translation files to simplify volunteer contributions to translations.
  • Add xkbcommon 0.8.4 as a separate dependency to fix keyboard compatibility issues and resolve issues with inadvertently used build system libraries.
  • Harden and expand the recommended systemd unit files in contrib/init.
  • Make the Freetype dependency compile independent from build system libraries.
  • Update the Univalue library to use the latest version maintained by the Bitcoin Core developers.
  • Fix the pruning test suite.
  • Correct the block download timeout for the regtest chain.
  • Shut down when trying to use a corrupted block from disk.
  • Add experimental AVX2 support, to improve the performance of SHA operations.
  • Add a getting started guide

New in Dogecoin Core 1.14.4 (Aug 22, 2021)

  • This is a new minor version release, including various bugfixes and performance improvements. It is a recommended update for all users.
  • This release can be installed over an existing 1.14 installation seamlessly, without the need for uninstallation, re-indexation or re-download. Simply shut down your running Dogecoin-QT or dogecoind, perform the installation and restart your node.
  • Enabling Future Fee Reductions:
  • Prepares the network for a reduction of the recommended fees by reducing the default fee requirement 1000x for transaction relay and 100x for mining. At the same time it increases freedom for miner, wallet and node operators to agree on fees regardless of defaults coded into the Dogecoin Core software by solidifying fine-grained controls for operators to deviate from built-in defaults.
  • This realizes the first part of a two-stage update to lower the fee recommendation - a followup release will implement the lower fee recommendation, once the network has adapted to the relay defaults introduced with this version of Dogecoin Core.
  • Synchronization Improvements:
  • Removes a bug in the network layer where a 1.14 node would open many parallel requests for headers to its peers, increasing the total data transferred during initial block download up to 50 times the required data, per peer, unnecessarily. As a result, synchronization time has been reduced by around 2.5 times.
  • RPC Improvements:
  • getpeerinfo now includes feefilter value for each peer, to be able to diagnose transaction relay issues.
  • Other notable changes:
  • Proactively disconnect peers sending block headers which would build on an invalid chain.
  • Improve handling and logging of invalid blocks and their descendants
  • Add menu option to import a private key
  • Add column to peers table showing bytes sent/received, accessible via "Debug Window" from the "Help" menu.
  • Add GUI for adding peers manually, accessible from the peers table of the Debug Window.
  • Regtest network can now generate AuxPoW blocks.
  • Corrections to French Canadian, Chinese, German, Indonesian, Korean, Polish and Portuguese translations

New in Dogecoin Core 1.14.3 (Mar 1, 2021)

  • Improve synchronization speed:
  • Significantly improves the speed at which a node can upload blocks, by removing expensive integrity checks that were performed each time a block is sent to another node. When a block is received and during rescans of the locally stored blockchain, the checks are still performed.
  • Reduce default mempool expiry time:
  • Reduces the default time that transactions are cached in the mempool from 336 hours to 24 hours. This default setting can be overridden with the -mempoolexpiry parameter by individual node operators to a value (expressed in hours) that makes the most sense for the use cases the node serves.
  • Other changes and improvements:
  • Increase block download timeouts
  • Add size_on_disk, prune_target_size, automatic_pruning to getblockchaininfo
  • Add query options to listunspent RPC call
  • Set BIP65 softfork heights in chainparams.cpp.
  • Update package links for OSX cross compilation.
  • Change IPC prefix from bitcoin: to dogecoin:.
  • Locale independent sorting.
  • Corrections to Italian translation.
  • Refresh main and test network checkpoints and seeds.
  • Do not print an error on connection timeouts through proxy.
  • Numerous fixes to automated tests.
  • Numerous fixes to documentation.

New in Dogecoin Core 1.14.2 (Feb 1, 2021)

  • Reverts a change of behaviour in the getauxblock command. The target field was renamed to _target in Namecoin and this change should not have appeared in Dogecoin, for compatibility with previous mining pool configurations. This has now been corrected.
  • Fix description of supermajority based forks in getblockchaininfo - the full block version number was used instead of just the last byte, which made it appear forks were triggered early.
  • Change references to "Bitcoin" to "Dogecoin" - these weren't user visible, but are done for consistency.
  • Corrects the handling of so-called dust outputs in regards to calculating fees. This fixes an issue where a change output smaller than 1 DOGE would create a transaction that was not going to be relayed.