Skip to content

Releases: decred/decred-binaries

v1.7.5

14 Oct 13:06
5f74230
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run
Decrediton Linux AppImage or Decrediton Linux tar or Decrediton macOS amd64 or Decrediton macOS arm64 or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.5-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.5

This is a patch release of dcrd that updates the utxo cache to improve its robustness, optimize it, and correct some hard to hit corner cases that involve a mix of manual block invalidation, conditional flushing, and successive unclean shutdowns.

Changelog

This patch release consists of 19 commits from 1 contributor which total to 13 files changed, 1118 additional lines of code, and 484 deleted lines of code.

All commits since the last release may be viewed on GitHub here.

Developer-related package and module changes:

Testing and Quality Assurance:

Misc:

Code Contributors (alphabetical order):

  • Dave Collins

dcrwallet v1.7.5

This release includes minor fixes and improvements for the wallet.

In addition to the fixes and new features listed below, the wallet has also been updated to follow the TestNet3 hard fork which throttles the difficulty changes allowed as hashpower is quickly increased on the network. This was an unvoted hard fork that only affects the test network, and all users of the test network must upgrade.

Bug fixes

  • The SFNodeCF service flag was removed from the required services of nodes connected to in SPV mode. Version 2 compact filters are now required by consensus rules and there is no service flag to identify their support.

  • An issue preventing the signrawtransaction JSON-RPC method from using private keys in the request parameters was corrected.

  • The automated ticket buyer no longer attempts to mix change if the StakeShuffle server is not specified in the application config
    (--csppserver) or the gRPC requests that started the buyer.

New features

  • The gRPC methods VotingService.TreasuryPolicies and VotingService.SetTreasuryPolicies were added for gRPC clients to be able to view and set the treasury voting policies of a ticket with VSPs.

  • An importpubkey JSON-RPC method was introduced to import raw secp256k1 public keys and their derived P2PKH address to the imported account. This method is only usable on watching-only wallets.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • bgptr
  • Dave Collins
  • David Hill
  • Josh Rickmar
  • Matheus Degiovani

Decrediton v1.7.5

This release is mainly due to a critical fix that was included in DEX 0.5.4.

There are other small bug fixes and improvements included as well.

Bug fixes

  • Fix never ending loading button on Treasury Spending tab.

  • Add Ticket Spent entry to the Revocation tx details page.

  • Fix placeholder size in TextInput

  • Rename cspp to StakeShuffle throughout.

  • Refresh DEX window with F5 key now working as expected.

  • Add testnet PiKeys on testnet for treasury spending tab.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt

v1.7.3

18 May 18:57
d7537d8
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux AppImage or Decrediton Linux tar or Decrediton macOS amd64 or Decrediton macOS arm64 or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.2-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

Decrediton v1.7.3

This is a small patch release that fixes an issue with macOS 10.15 (Catalina) not being able to launch dcrd and dcrwallet properly.

We also fixed an issue with updating Treasury Spending choices failing due to dcrwallet not having an rpc implemented.

A couple other minor styling issues that were found in v1.7.2 were fixed as well.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • bgptr

v1.7.2

11 May 16:09
c55b87a
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux AppImage or Decrediton Linux tar or Decrediton macOS amd64 or Decrediton macOS arm64 or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.2-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.2

This is a patch release of dcrd to resolve a rare and hard to hit case when optional indexing is enabled.

Changelog

This patch release consists of 4 commits from 2 contributors which total to 11 files changed, 158 additional lines of code, and 15 deleted lines of code.

All commits since the last release may be viewed on GitHub here and here.

Protocol and network:

Developer-related package and module changes:

Misc:

Code Contributors (alphabetical order):

  • Dave Collins
  • Donald Adu-Poku

dcrwallet v1.7.2

This release updates the wallet in light of the activation of DCP0009 on all Decred networks, as well as providing various other fixes.

Bug fixes

  • All ticket revoking functionality has been removed or disabled due to the activation of DCP0009 which modified consensus rules to require miners to include revocations for new expired or missed tickets. The wallet will no longer log warnings and errors due to revocations being created in response to missed tickets, and all RPCs which manually revoked tickets have been deprecated and no longer perform any action. Old unspent tickets will be revoked by project members, eliminating the need for the wallet to ever create a revocation of its own.

  • The verifymessage JSON-RPC method and MessageVerificationService.VerifyMessage gRPC method were corrected to return success when the message is validly signed by the keys associated with a P2PKH address. P2PK addresses are no longer valid inputs and an appropriate error will be returned if one is used.

  • The walletpubpassphrasechange JSON-RPC method was enabled. This method was already implemented but the method was not exposed in the RPC API.

  • Some options in the sample configuration were rewritten to move comments that described various options to their own lines. This prevents parsing and/or runtime errors if an option was uncommented due to the configuration not ignoring comments that do not begin at the start of a line.

New features

  • The WalletService.GetTicket gRPC method now provides the VSP host associated with a ticket.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • bgptr
  • Dave Collins
  • Josh Rickmar

Decrediton v1.7.2

This Decrediton release includes various bug fixes for issues found during v1.7.1 usage. DCRDEX has been updated to 0.4.3. We have also added a few new features that should improve usage before the next big release.

Bug fixes

  • Fix 'account not found' error when registering for DCRDEX. There was a corner case that could be triggered due to using an incorrect password when creating a DEX account.

  • Launcher now allows for completion of wallets that had not completed their creation steps.

  • Improved performance of Transaction/Ticket history pages. Better scroll and saving previous place where they were viewing.

  • Automatically set the 'per-account encryption' during wallet creation since the passphrase is available.

New features

  • Ticket transaction details now show their associated VSP Host and a button that allows for the user to check the tickets' status at that VSP.

  • Due to the recent network upgrade, we've removed all of the Revoke buttons.

  • We've removed DEX login step once the user has successfully launched the DEX window for the first time.

  • Add Treasury Spending tab on the Governance Page. This allows for stakeholders to approve or deny the public keys that sign the tspends.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • Amir Massarwa
  • bgptr
  • Jonathan Chappelow

v1.7.1

17 Feb 15:50
6e0878a
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux AppImage or Decrediton Linux tar or Decrediton macOS amd64 or Decrediton macOS arm64 or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.1-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.1

This is a patch release of dcrd which includes the following changes:

  • Resolve an issue related to RPC authentication of limited users

Changelog

This patch release consists of 2 commits from 2 contributors which total to 3 files changed, 170 additional lines of code, and 35 deleted lines of code.

All commits since the last release may be viewed on GitHub here.

RPC:

Misc:

Code Contributors (alphabetical order):

  • Dave Collins
  • 刘昆

dcrwallet v1.7.1

This release includes vote policy bug fixes for VSP users.

Bug fixes

  • The setvotechoice JSON-RPC method, when setting a vote choice for a particular ticket, will use the VSP recorded with the ticket from the database rather than using the VSP in the current application configuration.

  • An issue where vote choices were sometimes not communicated with the VSP for all unexpired tickets was corrected.

  • The settreasurypolicy and settspendpolicy JSON-RPC methods now validate that the length of a ticket hash is exactly 32 bytes.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • Jamie Holdstock

Decrediton v1.7.1

This patch release fixes a few outstanding issues found after the initial release of v1.7.0. We have also included the new design for the Settings page and LN wallet creation.

Bug Fixes

  • Live tickets were not showing fee status.

  • Autobuyer wasn't working due to minimum ticketbuyer limit being 0.

  • Update treasury balance to combine legacy and new treasury balances.

  • Fix issue when creating DEX account that allowed for users to proceed on bad passphrase entry.

  • Update menu items when changing from SPV mode for DEX access.

  • Various styling issue.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • bgptr
  • Jamie Holdstock
  • Jonathan Chappelow
  • Matheus Degiovani

v1.7.0

24 Jan 15:59
11a4fb4
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux AppImage or Decrediton Linux tar or Decrediton macOS amd64 or Decrediton macOS arm64 or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.0-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.0

This is a new major release of dcrd. Some of the key highlights are:

  • Four new consensus vote agendas which allow stakeholders to decide whether or not to activate support for the following:
    • Reverting the Treasury maximum expenditure policy
    • Enforcing explicit version upgrades
    • Support for automatic ticket revocations for missed votes
    • Changing the Proof-of-Work and Proof-of-Stake subsidy split from 60%/30% to 10%/80%
  • Substantially reduced initial sync time
  • Major performance enhancements to unspent transaction output handling
  • Faster cryptographic signature validation
  • Significant improvements to network synchronization
  • Support for a configurable assumed valid block
  • Block index memory usage reduction
  • Asynchronous indexing
  • Version 1 block filters removal
  • Various updates to the RPC server:
    • Additional per-connection read limits
    • A more strict cross origin request policy
    • A new alternative client authentication mechanism based on TLS certificates
    • Availability of the scripting language version for transaction outputs
    • Several other notable updates, additions, and removals related to the JSON-RPC API
  • New developer modules:
    • Age-Partitioned Bloom Filters
    • Fixed-Precision Unsigned 256-bit Integers
    • Standard Scripts
    • Standard Addresses
  • Infrastructure improvements
  • Quality assurance changes

For those unfamiliar with the voting process in Decred, all code needed in order to support each of the aforementioned consensus changes is already included in this release, however it will remain dormant until the stakeholders vote to activate it.

For reference, the consensus change work for each of the four changes was originally proposed and approved for initial implementation via the following Politeia proposals:

The following Decred Change Proposals (DCPs) describe the proposed changes in detail and provide full technical specifications:

It is important for everyone to upgrade their software to this latest release even if you don't intend to vote in favor of the agenda.

Upgrade Required

It is extremely important for everyone to upgrade their software to this latest release even if you don't intend to vote in favor of the agenda. This particularly applies to PoW miners as failure to upgrade will result in lost rewards after block height 635775. That is estimated to be around Feb 21st, 2022.

Downgrade Warning

The database format in v1.7.0 is not compatible with previous versions of the software. This only affects downgrades as users upgrading from previous versions will see a one time database migration.

Once this migration has been completed, it will no longer be possible to downgrade to a previous version of the software without having to delete the database and redownload the chain.

The database migration typically takes around 40-50 minutes on HDDs and 20-30 minutes on SSDs.

Notable Changes

Four New Consensus Change Votes

Four new consensus change votes are now available as of this release. After upgrading, stakeholders may set their preferences through their wallet.

Revert Treasury Maximum Expenditure Policy Vote

The first new vote available as of this release has the id reverttreasurypolicy.

The primary goal of this change is to revert the currently active maximum expenditure policy of the decentralized Treasury to the one specified in the original Politeia proposal.

See DCP0007 for the full technical specification.

Explicit Version Upgrades Vote

The second new vote available as of this release has the id explicitverupgrades.

The primary goals of this change are to:

  • Provide an easy, reliable, and efficient method for software and hardware to determine exactly which rules should be applied to transaction and script versions
  • Further embrace the increased security and other desirable properties that hard forks provide over soft forks

See the following for more details:

Automatic Ticket Revocations Vote

The third new vote available as of this release has the id autorevocations.

The primary goals of this change are to:

  • Improve the Decred stakeholder user experience by removing the requirement for stakeholders to manually revoke missed and expired tickets
  • Enable the recovery of funds for users who lost their redeem script for the legacy VSP system (before the release of vspd, which removed the need for the redeem script)

See the following for more details:

Change PoW/PoS Subsidy Split to 10/80 Vote

The fourth new vote available as of this release has the id changesubsidysplit.

The proposed modification to the subsidy split is intended to substantially diminish the ability to attack Decred's markets with mined coins and improve decentralization of the issuance process.

See the following for more details:

Substantially Reduced Initial Sync Time

The amount of time it takes to complete the initial chain synchronization process has been substantially reduced. With default settings, it is around 48% faster versus the previous release.

Unspent Transaction Output Overhaul

The way unspent transaction outputs (UTXOs) are handled has been significantly reworked to provide major performance enhancements to both steady-state operation as well as the initial chain sync process as follows:

  • Each UTXO is now tracked independently on a per-output basis
  • The UTXOs now reside in a dedicated database
  • All UTXO reads and writes now make use of a cache

Unspent Transaction Output Cache

All reads and writes of unspent transaction outputs (utxos) now go through a cache that sits on top of the utxo set database which drastically reduces the amount of reading and writing to disk, especially during the initial sync process when a very large number of blocks are being processed in quick succession.

This utxo cache provides significant runtime performance benefits at the cost of some additional memory usage. The maximum size of the cache can be configured with the new --utxocachemaxsize command-line configuration option. The default value is 150 MiB, the minimum value is 25 MiB, and the maximum value is 32768 MiB (32 GiB).

Some key properties of the cache are as follows:

  • For reads, the UTXO cache acts as a read-through cache
    • All UTXO reads go through the cache
    • Cache misses load the missing data from the disk and cache it for future lookups
  • For writes, the UTXO cache acts as a write-back cache
    • Writes to the cache are acknowledged by the cache immediately, but are only periodically flushed to disk
  • Allows intermediate steps to effectively be skipped thereby avoiding the need to write millions of entries to disk
  • On average, recent UTXOs are much more likely to be spent in upcoming blocks than older UTXOs, so only the oldest UTXOs are evicted as needed in order to maximize the hit ratio of the cache
  • The cache is periodically flushed with conditional eviction:
    • When the cache is NOT full, nothing is evicted, but the changes are still written to the disk set to allow for a quicker reconciliation in the case of an unclean shutdown
    • When the cache is full, 15% of the oldest UTXOs are evicted

Faster Cryptographic Signature Validation

Some ...

Read more

v1.7.0-rc3

19 Jan 18:35
11a4fb4
Compare
Choose a tag to compare
v1.7.0-rc3 Pre-release
Pre-release

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux or Decrediton macOS or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.0-rc3-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrwallet v1.7.0-rc3

This release includes bug fixes and improvements from v1.7.0-rc2.

Bug fixes

  • The mixing protocol was fixed to operate properly on both 32 and 64-bit hardware. This fix necessitated a breaking protocol change. All users of v1.7.0-rc1 and v1.7.0-rc2 must upgrade to continue mixing.
  • DCP0010 activation is detected when running in RPC syncing mode and will produce votes with the proper subsidy value.
  • The walletinfo JSON-RPC method now produces more reliable results when neither the SPV nor RPC syncers have been associated with the wallet.
  • A received verack message is no longer required in SPV mode. This fixes several P2P connection issues caused by dcrd sometimes sending other messages before the verack.

Changelog

All commits since the last release may be viewed on GitHub
here.

Code Contributors (alphabetical order)

  • Jonathan Chappelow
  • Josh Rickmar

Decrediton v1.7.0-rc3

This release includes bug fixes and improvements from v1.7.0-rc2.

Bug fixes

  • Fix proper on-chain agendas being shown in Governance.
  • Improve dex page styling
  • Add Italian translations
  • Improve Dex Window functionality
  • Fix a possible cause of mixing wallet slowness.
  • Add dcrd upgrade check

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom Piatt
  • bgptr
  • Matheus Degiovani

v1.7.0-rc2

12 Jan 21:10
11a4fb4
Compare
Choose a tag to compare
v1.7.0-rc2 Pre-release
Pre-release

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux or Decrediton macOS or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.0-rc2-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.0-rc2

This is an updated release candidate of dcrd to introduce a minor quality of life change to help prevent WebSocket client disconnections in cases where there is extremely high contention and multi-continent communication.

Changelog

This updated release candidate consists of 1 commit from 1 contributor which total to 2 files changed, 14 additional lines of code, and 7 deleted lines of code.

All commits since the last release candidate may be viewed on GitHub here.

RPC:

Code Contributors (alphabetical order):

  • Dave Collins

dcrwallet v1.7.0-rc2

This release includes bug fixes and improvements from v1.7.0-rc1.

Bug fixes

  • The subsidy split defined by DCP0010 is correctly used during voting if the consensus change is activated.
  • The listreceivedbyaccount JSON-RPC method will no longer panic if the wallet contains imported BIP0044 accounts.
  • The log level for cancelled streaming gRPC calls was reduced from error to debug to remain consistent with logging of the invocation.

Changelog

All commits since the last release may be viewed on GitHub here

Code Contributors (alphabetical order)

  • Matheus Degiovani
  • Josh Rickmar

Decrediton v1.7.0-rc2

We've fixed a few bugs as well as adding improvements to the DEX.

Bug fixes

  • Make mix.decred.org the new default csppserver.
  • Add DEX Seed confirmation page.
  • Allow users to select whether or not they would like to use the native DEX BTC wallet.
  • Various styling improvements.

Changelog

All commits since the last release may be viewed on GitHub here

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • bgptr

v1.7.0-rc1

05 Jan 17:57
11a4fb4
Compare
Choose a tag to compare
v1.7.0-rc1 Pre-release
Pre-release

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux or Decrediton macOS or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.7.0-rc1-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.7.0-rc1

This is a new major release of dcrd. Some of the key highlights are:

  • Four new consensus vote agendas which allow stakeholders to decide whether or not to activate support for the following:
    • Reverting the Treasury maximum expenditure policy
    • Enforcing explicit version upgrades
    • Support for automatic ticket revocations for missed votes
    • Changing the Proof-of-Work and Proof-of-Stake subsidy split from 60%/30% to 10%/80%
  • Substantially reduced initial sync time
  • Major performance enhancements to unspent transaction output handling
  • Faster cryptographic signature validation
  • Significant improvements to network synchronization
  • Support for a configurable assumed valid block
  • Block index memory usage reduction
  • Asynchronous indexing
  • Version 1 block filters removal
  • Various updates to the RPC server:
    • Additional per-connection read limits
    • A more strict cross origin request policy
    • A new alternative client authentication mechanism based on TLS certificates
    • Availability of the scripting language version for transaction outputs
    • Several other notable updates, additions, and removals related to the JSON-RPC API
  • New developer modules:
    • Age-Partitioned Bloom Filters
    • Fixed-Precision Unsigned 256-bit Integers
    • Standard Scripts
    • Standard Addresses
  • Infrastructure improvements
  • Quality assurance changes

For those unfamiliar with the voting process in Decred, all code needed in order to support each of the aforementioned consensus changes is already included in this release, however it will remain dormant until the stakeholders vote to activate it.

For reference, the consensus change work for each of the four changes was originally proposed and approved for initial implementation via the following Politeia proposals:

The following Decred Change Proposals (DCPs) describe the proposed changes in detail and provide full technical specifications:

It is important for everyone to upgrade their software to this latest release even if you don't intend to vote in favor of the agenda.

Downgrade Warning

The database format in v1.7.0 is not compatible with previous versions of the software. This only affects downgrades as users upgrading from previous versions will see a one time database migration.

Once this migration has been completed, it will no longer be possible to downgrade to a previous version of the software without having to delete the database and redownload the chain.

The database migration typically takes around 40-50 minutes on HDDs and 20-30 minutes on SSDs.

Notable Changes

Four New Consensus Change Votes

Four new consensus change votes are now available as of this release. After upgrading, stakeholders may set their preferences through their wallet.

Revert Treasury Maximum Expenditure Policy Vote

The first new vote available as of this release has the id reverttreasurypolicy.

The primary goal of this change is to revert the currently active maximum expenditure policy of the decentralized Treasury to the one specified in the original Politeia proposal.

See DCP0007 for the full technical specification.

Explicit Version Upgrades Vote

The second new vote available as of this release has the id explicitverupgrades.

The primary goals of this change are to:

  • Provide an easy, reliable, and efficient method for software and hardware to determine exactly which rules should be applied to transaction and script versions
  • Further embrace the increased security and other desirable properties that hard forks provide over soft forks

See the following for more details:

Automatic Ticket Revocations Vote

The third new vote available as of this release has the id autorevocations.

The primary goals of this change are to:

  • Improve the Decred stakeholder user experience by removing the requirement for stakeholders to manually revoke missed and expired tickets
  • Enable the recovery of funds for users who lost their redeem script for the legacy VSP system (before the release of vspd, which removed the need for the redeem script)

See the following for more details:

Change PoW/PoS Subsidy Split to 10/80 Vote

The fourth new vote available as of this release has the id changesubsidysplit.

The proposed modification to the subsidy split is intended to substantially diminish the ability to attack Decred's markets with mined coins and improve decentralization of the issuance process.

See the following for more details:

Substantially Reduced Initial Sync Time

The amount of time it takes to complete the initial chain synchronization process has been substantially reduced. With default settings, it is around 48% faster versus the previous release.

Unspent Transaction Output Overhaul

The way unspent transaction outputs (UTXOs) are handled has been significantly reworked to provide major performance enhancements to both steady-state operation as well as the initial chain sync process as follows:

  • Each UTXO is now tracked independently on a per-output basis
  • The UTXOs now reside in a dedicated database
  • All UTXO reads and writes now make use of a cache

Unspent Transaction Output Cache

All reads and writes of unspent transaction outputs (utxos) now go through a cache that sits on top of the utxo set database which drastically reduces the amount of reading and writing to disk, especially during the initial sync process when a very large number of blocks are being processed in quick succession.

This utxo cache provides significant runtime performance benefits at the cost of some additional memory usage. The maximum size of the cache can be configured with the new --utxocachemaxsize command-line configuration option. The default value is 150 MiB, the minimum value is 25 MiB, and the maximum value is 32768 MiB (32 GiB).

Some key properties of the cache are as follows:

  • For reads, the UTXO cache acts as a read-through cache
    • All UTXO reads go through the cache
    • Cache misses load the missing data from the disk and cache it for future lookups
  • For writes, the UTXO cache acts as a write-back cache
    • Writes to the cache are acknowledged by the cache immediately, but are only periodically flushed to disk
  • Allows intermediate steps to effectively be skipped thereby avoiding the need to write millions of entries to disk
  • On average, recent UTXOs are much more likely to be spent in upcoming blocks than older UTXOs, so only the oldest UTXOs are evicted as needed in order to maximize the hit ratio of the cache
  • The cache is periodically flushed with conditional eviction:
    • When the cache is NOT full, nothing is evicted, but the changes are still written to the disk set to allow for a quicker reconciliation in the case of an unclean shutdown
    • When the cache is full, 15% of the oldest UTXOs are evicted

Faster Cryptographic Signature Validation

Some aspects of the underlying crypto code has been updated to further improve its execution speed and reduce the number of memory allocations resulting in about a 1% reduction to signature verification time.

The primary benefits are:

  • Improved vote times since blocks and transactions propagate more quickly throughout the network
  • Approximately a 2% reduction to the duration of the initial sync process

Significant Improvements to Network Synchronization

The method used to obtain blocks from other peers on the network is now guided en...

Read more

v1.6.3

12 May 20:19
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux or Decrediton macOS or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.6.3-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrwallet v1.6.3

This release focuses on bug fixes and feature improvements for VSP ticket buying.

New features

  • An AccountUnlocked gRPC method was added to query if an account is individually encrypted and its current locked state.

  • A GetTrackedVSPTickets gRPC method was added for clients to gain insight into what tickets and fees are currently being processed by the VSP client.

  • A syncstatus JSON-RPC method was added to query whether the wallet is known to be synchronized with the network or not, or whether it is still performing initial synchronization.

Bug Fixes

  • Additional situations which caused unexpected "low balance" bugs when purchasing tickets with a VSP have been fixed by attempting to create the additional split transaction.

  • Reliability improvements were made to ensuring that fees are correctly paid to the VSP. This will result in lower missed ticket rates.

  • A bug preventing correct key derivation for keys in a locked individually-encrypted account when all other wallet accounts were unlocked was fixed by deriving the pubkey, rather than erroring when attempting to derive the private key.

  • A data race dealing with the synchronization of managing locked outputs was fixed.

  • The automated ticketbuyer no longer errors for unlocking the wallet with an empty passphrase if the account is individually-encrypted and is unlocked by another method.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • David Hill
  • Jamie Holdstock
  • Josh Rickmar
  • Matheus Degiovani
  • Victor Oliveira
  • Wisdom Arerosuoghene

Decrediton v1.6.3

This release of Decrediton includes the initial DEX integration, as well as many other graphical improvements, security upgrades, and bug fixes.

New features

  • This release includes our first iteration of DCRDEX being available directly within Decrediton. There is a new page available, 'DEX' on the sidebar. Initially, users will be presented with the option to "enable" DEX on their wallet. Currently, we suggest using a separate wallet to use for DEX trading, instead of a users' main wallet. While we believe the wallet is still secure, the DEX integration has increased the attack surface of the wallet, so it is worth taking extra precaution while using this feature.

    Once enabled, users need to set a DEX passphrase. This passphrase is what they will use to Login and to submit orders etc. Next they need to select or create a new account for DEX. Theses funds are what will be accessible inside of the DCRDEX trading platform.

    Users must then connect their DCR and BTC wallets to DEX. Once connected, they will be guided to register their DEX account and pay the required fee.

    Once these steps are complete they will be able to launch the trading platform. Upon attempting to close Decrediton, there will be an attempt to logout of the DEX. If there are any open orders, Decrediton will not be allowed to close. This is to ensure that the swaps are able to complete successfully.

  • With the introduction of DEX and privacy into Decrediton, we've decided to upgrade some of the security features in the wallet. While most of this is invisible to the user (Electron/Webpack upgrades), we have added per-account locking. Previously, when any action occured the whole wallet was unlocked and then relocked upon completion. Now only the pertinent account for the transcation will be unlocked. This will protect other accounts for situations like DEX and mixing where accounts will be unlocked for long periods of time.

  • We have improved the new vspd ticket tracking so fees are now paid more frequently and process managed tickets is only shown when the user hasn't yet fully confirmed their tickets with the vspd.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • Amir Massarwa
  • bgptr
  • Guilherme Marques
  • Jamie Holdstock
  • Joe Gruffins
  • Matheus Degiovani
  • Scott Christian
  • Victor Oliveira

DCRDEX v0.2.0

This release includes a large number of improvements to the UI, the communications protocol, and software design.

The most notable new features are:

  • Numerous UI and usability enhancements including responsive design and depth chart interactivity
  • Support client control by the Decrediton GUI wallet and use of its accounts
  • Experimental Bitcoin Cash (BCH) support
  • Initial changes to support SPV (light) wallets in the next release
  • Account import/export

The latest 1.6 release of dcrd and dcrwallet is required for this release of DCRDEX. At the time of release, this corresponds to the v1.6.2 releases. Bitcoin Core 0.20 and 0.21 are both supported.

Important Notices

Although DCRDEX looks and feels like a regular exchange, the "decentralized" aspect brings an expanded role to the client. Please take the time to read and understand the following:

  • Ensure your nodes (and wallets) are fully synchronized with the blockchain network before placing orders.
  • Never shutdown your wallets with dexc running. When shutting down, always stop dexc before stopping your wallets.
  • If you have to restart dexc with active orders or swaps, you must immediately login again with your app password when dexc starts up.
  • There is an "inaction timeout" when it becomes your client's turn to broadcast a transaction, so be sure not to stop dexc or lose connectivity for longer than that or you risk having your active orders and swaps/matches revoked. If you do have to restart dexc, remember to login as soon as you start it up again.
  • Only one dexc (client) process should be running for a given user account at any time. For example, if you have identical dexc configurations on two computers and you run dexc and login on both, neither dexc instance will be adequately connected to successfully negotiate swaps. Also note that order history is not synchronized between different installations.
  • Your DEX server accounts exist inside the dexc.db file, the location of which depends on operating system, but is typically in ~/.dexc/mainnet/dexc.db or %HOMEPATH%\Local\Dexc\mainnet\dexc.db. Do not delete this file.
  • If you use a non-default bitcoin wallet name, don't forget to set it in bitcoin.conf with a wallet=wallet_name_here line so that bitcoind will load it each time it starts. Otherwise, dexc will give you a "wallet not found" error on startup and login.
  • bitcoind's "smart" fee estimation needs plenty of time to warm up or it is not so smart. When possible, keep your bitcoind running for at least 6 blocks, especially if had not been running for more than an hour, or ensure that the value returned from a bitcoin-cli call to estimatesmartfee 1 returns a "feerate" close to what https://mempool.space/ reports as "High priority".

Client (dexc)

Features and Improvements

  • Experimental support for Bitcoin Cash (BCH). (542ed9b)
  • Show confirmations for swaps transactions on the Order page when a swap has not yet reached the required number of confirmations. (ecbfebd)
  • Open dialogs can be closed by hitting the "Escape" key. (7c978cd)
  • Allow changing the dex client "application password". (8d7163c)
  • Responsive browser UI design. (c91bde4)
  • Differentiate between buy/sell orders in confirmation modal dialog. (2bdf81f)
  • Clearer revocation notifications. (c8c9729)
  • Raw transaction data is now transmitted to counterparties in the 'audit' and 'match_status' requests. This is a prerequisite for SPV clients. (3704513)
  • More chart interactivity. (a) Indicators on the depth chart for the user's orders. When the mouse hovers near the indicator, the order is highlighted in the "Your Orders" table. Conversely, when the mouse hovers over a row in the "Your Orders" table, the indicator is highlighted on the chart. (b) Move the legend and hover info to the top. (c) When a rate is entered in the order form for a limit order,...
Read more

v1.6.2

08 Apr 17:32
9c89290
Compare
Choose a tag to compare

Install

To install Decrediton desktop wallet, download, uncompress, and run Decrediton Linux or Decrediton macOS or Decrediton Windows.

To install the command-line tools, please see dcrinstall.

See decred-v1.6.2-manifest.txt and the other manifest files for SHA-256 hashes and the associated .asc signature files to confirm those hashes.

See README.md for more info on verifying the files.

Skip to downloads

Contents

dcrd v1.6.2

This is a patch release of dcrd to introduce a quality of life change for lightweight clients, such as SPV wallets, by not sending them a certain class of announcements that only full nodes are equiped to handle.

Changelog

This patch release consists of 2 commits from 1 contributor which total to 3 files changed, 55 additional lines of code, and 31 deleted lines of code.

All commits since the last release may be viewed on GitHub here.

Protocol and Network

Misc

Code Contributors (alphabetical order)

  • Dave Collins

dcrwallet v1.6.2

This release focuses on bug fixes and feature improvements for VSP ticketbuying and change mixing.

New Features

  • A accountunlocked JSON-RPC method was added, allowing clients to determine whether an account has been encrypted with a unique passphrase, and if it is currently unlocked if so.

  • The setvotechoices JSON-RPC method will now use the vspd client to set vote choices at the VSP, if any is configured in the application settings and the ticket was bought for the VSP.

Bug Fixes

  • A UTXO selection issue which caused "low balance" errors during the additional split transaction sometimes necessary when purchasing tickets with a VSP was fixed. Some UTXOs of the account were not always being considered during the creation of this transaction, which led to the balance errors.

  • A check for a too-low fee when mixing at the smallest common amount was added. This previously was causing "invalid submission" errors, as the server would reject the submission for not paying enough fee.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Jonathan Chappelow
  • Josh Rickmar

Decrediton v1.6.2

This patch release for Decrediton includes just a few small changes for copy and buttons missing text.

Bug Fixes

  • Missing Legacy Ticket purchase button text.

  • Incorrect copy on Governance for thresholds for upgrading the network.

Changelog

All commits since the last release may be viewed on GitHub here.

Code Contributors (alphabetical order)

  • Alex Yocom-Piatt
  • Amir Massarwa
  • bgptr
  • Matheus Degiovani