To install the command line tools, please see
See manifest-v1.1.0.txt, and the package specific manifest files for sha256 sums and the associated .asc files to confirm those shas.
See README.md for more info on verifying the files.
This release of dcrd primarily introduces a new consensus vote agenda which
allows the stakeholders to decide whether or not to activate the features needed
for providing full support for Lightning Network. For those unfamiliar with the
voting process in Decred, this means that all code in order to support these
features is already included in this release, however its enforcement will
remain dormant until the stakeholders vote to activate it.
The following Decred Change Proposals (DCPs) describe the proposed changes in detail:
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.
Lightning Network Features Vote
In order to fully support many of the benefits that the Lightning Network will
bring, there are some primitives that involve changes to the current consensus
that need to be enabled. A new vote with the id
lnfeatures is now available
as of this release. After upgrading, stakeholders may set their preferences
through their wallet or stake pool's website.
Transaction Finality Policy
The standard policy for transaction relay has been changed to use the median
time of the past several blocks instead of the current network adjusted time
when examining lock times to determine if a transaction is final. This provides
a more deterministic check across all peers and prevents the possibility of
miners attempting to game the timestamps in order to include more transactions.
Consensus enforcement of this change relies on the result of the aforementioned
Relative Time Locks Policy
The standard policy for transaction relay has been modified to enforce relative
lock times for version 2 transactions via their sequence numbers and a new
Consensus enforcement of this change relies on the result of the aforementioned
In order to better support cross-chain interoperability, a new opcode to compute
the SHA-256 hash is being proposed. Since this opcode is implemented as a hard
fork, it will not be available for use in scripts unless the aforementioned
lnfeatures vote passes.
All commits since the last release may be viewed on GitHub here.
Protocol and network:
- chaincfg: update checkpoints for 1.1.0 release decred/dcrd#850
- chaincfg: Introduce agenda for v5 lnfeatures vote decred/dcrd#848
- txscript: Introduce OP_SHA256 decred/dcrd#851
- wire: Decrease num allocs when decoding headers decred/dcrd#861
- blockchain: Implement enforced relative seq locks decred/dcrd#864
- txscript: Implement CheckSequenceVerify decred/dcrd#864
- multi: Enable vote for DCP0002 and DCP0003 decred/dcrd#855
Transaction relay (memory pool):
- mempool: Use median time for tx finality checks decred/dcrd#860
- mempool: Enforce relative sequence locks decred/dcrd#864
- policy/mempool: Enforce CheckSequenceVerify opcode decred/dcrd#864
- rpcserver: check whether ticketUtx was found decred/dcrd#824
- rpcserver: return rule error on rejected raw tx decred/dcrd#808
dcrd command-line flags:
- config: Extend --profile cmd line option to allow interface to be specified decred/dcrd#838
- docs: rpcapi format update decred/dcrd#807
- config: export sampleconfig for use by dcrinstall decred/dcrd#834
- sampleconfig: Add package README and doc.go decred/dcrd#835
- docs: create entry for getstakeversions in rpcapi decred/dcrd#819
- docs: crosscheck and update all rpc doc entries decred/dcrd#847
- docs: update git commit messages section heading decred/dcrd#863
Developer-related package changes:
- Fix and regenerate precomputed secp256k1 curve decred/dcrd#823
- dcrec: use hardcoded datasets in tests decred/dcrd#822
- Use dchest/blake256 decred/dcrd#827
- glide: use jessevdk/go-flags for consistency decred/dcrd#833
- multi: Error descriptions are in lower case decred/dcrd#842
- txscript: Rename OP_SHA256 to OP_BLAKE256 decred/dcrd#840
- multi: Abstract standard verification flags decred/dcrd#852
- chain: Remove memory block node pruning decred/dcrd#858
- txscript: Add API to parse atomic swap contracts decred/dcrd#862
Testing and Quality Assurance:
- Test against go 1.9 decred/dcrd#836
- dcrec: remove testify dependency decred/dcrd#829
- mining_test: add edge conditions from btcd decred/dcrd#831
- stake: Modify ticket tests to use chaincfg params decred/dcrd#844
- blockchain: Modify tests to use chaincfg params decred/dcrd#845
- blockchain: Cleanup various tests decred/dcrd#843
- Ensure run_tests.sh local fails correctly when gometalinter errors decred/dcrd#846
- peer: fix logic race in peer connection test decred/dcrd#865
- glide: sync deps decred/dcrd#837
- Update decred deps for v1.1.0 decred/dcrd#868
- Bump for v1.1.0 decred/dcrd#867
Code Contributors (alphabetical order):
- Alex Yocom-Piatt
- Dave Collins
- David Hill
- Donald Adu-Poku
- Jason Zavaglia
- Jean-Christophe Mincke
- Jolan Luff
- Josh Rickmar
Revocations can now be created which double spend an unmined vote, as long as
the vote is not voting on the most recent block. This allows revocations to
be created for votes that were made but not included in the block by miners.
Tickets manually added through the
addticketJSON-RPC method are now
included in the
getticketsresults. This is required for correct stakepool
An off-by-one was fixed when logging the number of watched addresses at wallet
A divide-by-zero error has been fixed when attempting to use the integrated
ticket buyer starting from the genesis block on simnet.
A new gRPC method
WalletService.CreateSignaturehas been added to create a
raw transaction input signature. This is useful for clients that need to
include signatures in non-standard scripts without resorting to dumping a
private key and signing in the client.
WalletService.Balanceresult has been updated to include the
unconfirmed balance. This unconfirmed balance has the same semantics as the
unconfirmed field from the
The help text for the
addticketJSON-RPC method has been updated to reflect
that fact that manually added tickets are not reported in the statistics
returned by the
Added support for Go 1.9. Release binaries are now created using this Go
The sample config has been updated for the current configuration defaults.
This sample config had not been updated in the past when default config
options were changed.
All commits since the last release may be viewed on GitHub
This release decrediton is significant for a few newly added features and
improvements. With the help of jrick, we are now able to control child
processes properly in Windows and are now able to add Windows support.
The entire startup process has been refined to help users understand what is
happening behind the scenes. Now it should be clear to users when the
blockchain is downloading and what the consequences are for skipping intial
We have also completed work on the initial phases of the React/Redux refactor.
All inline styles have been replaced with Less styling and all components
have been broken up into logic and presentation portions. The next step will
be to audit and refactor the Redux state and ensure that everything is
immutable and recording proper state.
The following release will include a completely redesigned UX for staking. We
hope that this will make staking more approachable to new users. We will also
be adding complete ticket status information and basic graphs for users to
visualize their accumulated returns from staking.
An "About" window now shows current decrediton version, plus versions of
packaged dcrd and dcrwallet binaries. This should help debug users' issues
New startup procedure. We now wait for dcrd's rpc connection to be available
and subsequently check block count. We can now show users an estimated time
for full blockchain download. This done by using a best guess according to
5 minutes per block and when the chain launched. We plan on using more
intelligent methods of checking current block height in the future.
Send all. Users can now construct transactions that will completely drain an
account. Simply select the account you would like to send from, click "Send
All" then enter you destination address. You will then be shown the
amount to be sent and the estimated fee. Click send and enter your
private passphrase to complete the transaction.
Show rescan progress in sidebar. This should help users avoid confusion
after linking ApiKeys or importing scripts.
Allow for basic resizing of the application window. We are currently
designing fully implemented media size break points. But in the meantime
this fix should allow users with low PPI screens to see the entire
Clear stakepool configurations when creating a new wallet. Otherwise, users
could get into unintended situations with stakepool settings from one wallet
being attempted on another. Other checks were still in place to avoid major
issues, but this led to undesirable UX.
Show pending transactions of all types in the overview and the history page.
Fix erroneous reloads and form submission in get started pages.
Settings were being saved on field change instead of Save Setting submit.
When using testnet, use different background color in SideBar to accentuate
that is is a different network.
This release is likely to be the last, or one of the last, Paymetheus releases.
We have decided to unifiy efforts into development of our cross-platform GUI,
decrediton. We will continue to search for interested WPF/xaml developers
that would like to continue development of this native Windows GUI. Users are
encouraged to migrate to the Windows release of Decrediton by importing your
Paymetheus seed. In the meantime, this release of Paymetheus contains the
updates for voting on DCP0002 and DCP0003 and is intended as an interim release
to smooth the migration process.