Decred Journal – August 2022
Decred is in full build mode but where to start! An overhaul of the decred.org website? Politeia new release? A massive upgrade for DCRDEX? Or the many fixes and improvements …
Image: "Inspired" by @saender's new decred.org design.
Highlights of August:
- An overhaul of the decred.org website has been proposed, passed and deployed.
- Politeia v1.4.0 has been released, new features include a 5 minute window to edit one's comments.
- DCRDEX v0.5.2 is out and can be run already by impatient traders who don't want to wait for the Decrediton integration update which is in the works.
- v1.7.4 of core Decred software was released as source code only to fix a testnet which has been stalled by ASIC miners.
Contents:
- Politeia v1.4.0 Released
- Development
- People
- Governance
- Network
- Ecosystem
- Outreach
- Media
- Discussions
- Markets
- Relevant External
Politeia v1.4.0 Released
New Politeia release is live after 8 months of development! Highlights include:
- Importing legacy proposals was the biggest chunk of work for this release. Now all proposals are available at proposals.decred.org and there is no separate archive website.
- Comments can be edited in the 5 minutes immediately after posting.
- Censorship reason and moderator is shown for censored proposals.
- Improved drafts UX.
- Initial work for the new architecture for building Politeia-like apps.
See full release notes in politeia and politeiagui repositories.
Development
The work reported below has the "merged to master" status unless noted otherwise. It means that the work is completed, reviewed, and integrated into the source code that advanced users can build and run, but is not yet available in release binaries for regular users.
dcrd
dcrd is a full node implementation that powers Decred's peer-to-peer network around the world.
dcrd v1.7.4 was released to fix testnet mining algorithm as detailed below. It was a source code only release as it is primarily intended for developers.
Merged in master
and backported to v1.7.4 release:
- Enforced difficulty throttling on testnet. Normally ASICs are not expected on testnet and blocks are mined with "slow" CPU mining, since it's not reasonable to require high-powered hardware to run testnet. There is no financial incentive either because testnet coins have no value and ASIC miners have a better choice to mine mainnet coins for profit. Despite that, an unusual hashrate of ~78 Th/s (equivalent of 2 Antminer DR5) joined Decred testnet and mined for ~5 hours, which ramped up the difficulty and effectively stalled the network. To limit the type of games that ASICs can play on testnet two new rules are introduced: a limit on maximum allowed difficulty and a limit on block production rate once maximum difficulty is reached. This should keep CPU mining feasible even in the presence of GPUs and ASICs. It should be noted that this solution is only suitable on a test network where no real monetary value is in play and thus the typical game theory mechanics do not apply.
- Optimized handling of blocks with too few ticket votes to also copy the regular transactions into an alternative block template in addition to the stake transactions. This makes template creation more robust in the case of duplicate spends and helps ensure that all transactions in an invalidated (under-voted) block are added to alternative block templates. Previously all transactions were copied too but only in the next block, so this change removes an unnecessary delay.
Merged in master
towards v1.8:
- Made longer running
blockchain
tests run in parallel to reduce the overall testing time roughly in half. - Removed all code related to previous script snapshots now that address index has been removed and there are no other indexers that require access to previous scripts.
- Maintenance and smaller fixes.
dcrwallet
dcrwallet is a wallet server used by command-line and graphical wallet apps.
Merged in master
and backported to v1.7.4 source-only release:
- Implemented method for importing arbitrary public keys and their derived addresses. It is only supported for watching-only wallets.
- Added checkpoints to hard-fork testnet3 to new rules implemented in dcrd. Checkpointing is used to push the wallet onto the intended unvoted chain due to it having significantly less total work than the chain being reorged.
Merged in master
:
- Updated difficulty checks to the new throttling rules on testnet3.
dcrctl
dcrctl is a command-line client for dcrd and dcrwallet.
- Updated to latest Go modules and GitHub action versions.
Decrediton
Decrediton is a full-featured desktop wallet app with integrated voting, StakeShuffle mixing, Lightning Network, DEX trading, and more. It runs with or without a full blockchain (SPV mode).
- Added the ability to refresh the DEX window with F5 key.
- Treasury spending page now uses testnet Pi keys on testnet and has proper links to verify them in dcrd's source code.
- Corrected "Stakeshuffle++" to "StakeShuffle" in Privacy tab.
- ~4 fixes and other internal updates.
Politeia
Politeia is Decred's proposal system. It is used to request funding from the Decred treasury.
Backend:
- Optimized and improved validation in
dbutil -migrate
command (used to migrate from one user database to another). - Store app version as a single string to simplify the release process.
- Various updates for Go 1.19 (CI configuration, GitHub Actions, linter, and code formatting).
- Delete expired user sessions on startup. Tests for the session database have been rewritten to fix numerous issues.
- Updated
dbutil -dump
command to work with all of the user database implementations. - Freeze Trillian trees that correspond to Politeia records that no longer allow updates (such as Censored or Archived). Politeia's use of Trillian is quite different from its intended use case and it results in high CPU load. Freezing some trees should reduce it.
Current GUI:
- Keep quorum label for Approved and Rejected proposals.
- Fixed common invalid signature error for new keys that were used before getting registered on the server.
- Fixed 2 bugs with legacy RFP proposals and ~6 bugs with legacy proposal comments.
GUI remake on the new plugin architecture:
- Deduplicated common Babel and Jest configuration.
- Added various information to the
pi
plugin: proposal status, vote duration, quorum, billing status changes, and error messages. - Added end-to-end tests based on Cypress.
- Implemented RFP proposals and submissions.
- Reuse view breakpoints from pi-ui. Breakpoints control which layout is used to match the user's screen size.
- ~5 fixes
- Code refactoring and cleanup
pi-ui shared library:
- Custom breakpoints made reusable internally and by apps that consume
pi-ui
. Wired up PostCSS for CSS processing.
Image: Updated RFP proposal view in Politeia.
Lightning Network
dcrlnd is Decred's Lightning Network node software. LN enables instant and low-cost transactions.
LN Daemon:
- Add
EnforcePing
RPC call. This allows callers to direct dcrlnd to ping the specified peer and wait for the response. If the response fails to be received, then the peer is disconnected. - Added stall detection and disconnection for peers. This is needed to handle situations where the computer running dcrlnd is suspended and then resumes after enough time has passed for the remote peer to have disconnected.
- Reduce peer idle timeout to 1 minute and 30 seconds, down from 5 minutes. A 5 minute idle timeout is excessive and prevents correct early detection of stalled peers.
- Configured GitHub Actions for automated builds.
- Documented how the software takes control of outbound channels.
- Added TLS encryption support.
DCRDEX
DCRDEX is a non-custodial, privacy-respecting exchange for trustless trading, powered by atomic swaps.
DCRDEX v0.5.2 has been released! Check the v0.5.0 release first for a long list of features, fixes and instructions to upgrade from v0.4. Starting with the v0.5.2 release DCRDEX now publishes its own binaries. As always, verifying them is strongly recommended.
Note that there has been no announcement yet because DCRDEX is coordinating with the other components (such as Decrediton).
August changes included in the v0.5 release:
- Moved wiki contents to docs/wiki in the main repo. Now all docs are in one place and can be updated and reviewed by more contributors via the pull request workflow.
- Rewritten much of README for the v0.5 release.
- Updated to use the new testnet3 rules and switched LTC block explorer from bitaps.com to sochain.com.
- Embeded site resources using
go:embed
. - Updated German translation.
- Code maintenance.
August fixes included in v0.5:
- Fixed several client wallet hanging issues.
- Fixed a deadlock in BTC SPV wallet.
- Fixed switching wallet type to SPV.
- Fixed several deadlock and lock contention issues in the trade engine.
- Fixed having to refresh Wallets page manually after creating a wallet.
- Fixed match status display for revoked matches.
- ~10 other client fixes and ~2 backend/internal fixes.
User-facing changes towards the next v0.6 release:
- End user (trader) documentation moved to its own document.
- Improved candlestick chart accuracy by using epoch's first and last match price for candle's start and end rate.
- Restyled the Wallets page. The new style is responsive and adjusts to desktop, tablet and mobile screen sizes.
- Adjusted order cancellation policy to penalize too fast cancellations. If the order sits for at least one full epoch it can still be cancelled for "free" (without hurting user's reputation score). This should improve trading experience for humans.
- Implemented live wallet reconfiguration for DCR and ETH. It allows to correctly track locked coins across changes to wallet configuration.
Backend and developer changes towards the next v0.6 release:
- Server installation guide moved to its own document.
- Updated dependencies to latest btcsuite, go-ethereum, go-bip39 and minimum Go 1.18.
- Added a guide to get started with writing fuzzing tests.
- Automated Markdown linting to ensure consistent formatting.
- Transaction wait time made configurable by server operator. It is the maximum time server will search for client-reported transactions before erroring.
- Updated Node.js dependencies for the v0.6 dev cycle.
- Translated page templates are now generated at runtime. It removes the need to re-generate them manually and simplifies updating translations or adding new languages.
- Support both released v1.7 and in-development v1.8 versions of dcrd and dcrwallet.
- Code maintenance.
- ~11 client fixes and ~2 backend/internal fixes.
Ethereum support:
- Enabled token trading on the UI with new wallet creation flow for token wallets that includes a step to sync the parent chain (such as Ethereum).
Image: DCRDEX layout for tablet devices.
GoDCR
GoDCR is a lightweight desktop GUI wallet with integrated staking, privacy, Politeia voting, consensus voting, and more.
- Disabled Receive, Send and Mixer pages for watch-only wallets.
- Updated wallet Settings page to v2 UI design.
- Updated top-level Settings page to v2 UI design.
- Implemented layout for treasury spending.
- Updated color and icon on the top bar.
- Fixed crash in proposal details when parsing a specific bit of Markdown.
- Fixed app crash after wallet restore is complete.
- Fixed top bar text color in dark mode.
dcrlibwallet shared library:
- Added function to save TSpend voting policy locally and in VSPs managing the tickets.
- Updated dcrwallet dependency.
- Extracted Politeia into a standalone package.
- Implemented API for fetching data from external services such as the dcrdata block explorer and exchanges.
Image: New Settings design in GoDCR.
dcrdata
dcrdata is an explorer for Decred blockchain and off-chain data like Politeia proposals, markets, and more.
- Dependency and toolchain updates.
- Fixed treasury transaction pagination.
- Fixed incorrect treasury balance on home page.
- ~3 smaller fixes.
decred.org
dcrweb is the source code for the decred.org website.
Decred.org has been completely overhauled as approved by stakeholders in the D.R.E.A.M. 2: Dream Harder proposal. New messaging is "Decred - Money Evovled".
Summary of site changes:
- Complete overhaul of theme and style.
- Updated messaging using strong words and simple language.
- Support and Publications sections added to Community page.
- Removed
/chat
subpage (it redirected to chat.decred.org). - Removed
/brief
,/sustainable
,/adaptable
,/security
, and/history
subpages. - Removed legacy stakepools from the VSP list.
Technical details:
- Site is implemented as much as possible without JavaScript. JS is used for: top navigation bar on mobile, loading VSP table, OS-specific download links on the home page.
- Previous site was built on drag-and-drop editor Webflow. The Webflow CSS has been replaced with Bootstrap.
- All site CSS (including Bootstrap) is compiled from SCSS source.
- New site does not contain any videos or Lottie animations, so all CSS/JS for those has been removed.
- Data files (
apps.yml
,current_release.yml
andlinks.yml
) consolidated to remove duplcation. All wallet links and versions now reside in one filewallets.yml
. - SourceSansPro font replaced with a mixture of Poppins and Inter. SourceCodePro remains the monospace font.
Other site changes:
- Updated Matrix support link. Now decred.org/matrix-support redirects to #support chat room in our self-hosted Element server.
- Removed 7 defunct exchanges and wallets. Updated links.
Image: New decred.org design.
Other
- Updated to Go 1.19 and dropped support for 1.17 in various repos.
- Android and iOS mobile wallets have been removed from the Bug Bounty program's scope due to lack of supporting developers.
People
Welcome to new first-time contributors with code merged to master:
- Abirdcfly (dcrd)
- herculesbrito (Decrediton)
- norwnd (dcrd)
Decred community members João Paulo Sant'Anna (curator of @DecredBR) and Philemon (developer in DCRDEX, dcrdata, and other projects) were interviewed by @phoenixgreen on Decred Magazine.
Community stats as of Sep 1 (compared to Aug 1):
- Twitter followers: 54,751 (+445)
- Reddit subscribers: 12,647 (+14)
- Matrix #general users: 714 (+7)
- Discord users: 1,796 (+31)
- Telegram users: 2,884 (+111)
- YouTube subscribers: 4,640 (+10), views: 214K (+2K)
Governance
In August the new treasury received 9,219 DCR worth $294K at August's average rate of $31.93. 3,788 DCR was spent to pay contractors, worth $121K at August's rate, or $91K at July's billing rate of $23.93.
The treasury spend transaction was mined on August 27, it had 23 outputs ranging from 0.7 DCR to 1,168 DCR. The transaction was approved with 6,795 Yes votes and 0 No votes.
As of Sep 3, combined balance of legacy and new treasury is 810,984 DCR (24.3 million USD at $29.95).
One proposal was published and approved in August. D.R.E.A.M. 2: Dream Harder was submitted by @jy-p working with @jholdstock, @jz, and @saender to produce a revised decred.org prototype site along the lines of the D.R.E.A.M. proposalwhich had the best voting response (48% approval) but did not pass for the decred.org messaging RFP which was decided in September 2020. The present proposal to deploy the new design/messaging at a cost of $7,660 ($3K of which is reserved for translations) was approved with 97% Yes votes and 59% turnout.
See Politeia Digest issue 53 for more detail on the month's proposal.
Network
Hashrate: August's hashrate opened at ~44 Ph/s and closed ~70 Ph/s, bottoming at 38 Ph/s and peaking at 84 Ph/s throughout the month.
Image: Hashrate recovering from the lows.
Distribution of 75 Ph/s hashrate reported by the pools on Sep 1: Poolin 65%, F2Pool 26%, BTC.com 5.5%, AntPool 3.5%, CoinMine 0.6%.
Distribution of 1,000 blocks actually mined by Sep 1: Poolin 61%, BTC.com 5%, CoinMine 0.7%, unknown 33%.
Image: Pool hashrate distribution.
Staking: Ticket price varied between 220-239 DCR, with 30-day average at 230.2 DCR (+3.4).
The locked amount was 9.22-9.39 million DCR, meaning that 63.9-65.0% of the circulating supply participated in Proof of Stake. This is a new all-time high for stake participation and ticket pool value.
VSP: On Sep 1, ~7,050 (-120) live tickets were managed by listed vspd servers. Collectively the 18 VSPs managed 17.3% of the ticket pool (-0.1%).
Image: Distribution of tickets managed by VSPs.
Nodes: Node versions captured by Decred Mapper on Sep 1 (176 total, dcrd only): v1.7.1 - 31%, v1.7.2 - 29%, v1.7.4 - 18%, v1.7.0 - 8.5%, v1.8.0 dev builds - 3%, v1.7.0 dev builds - 1%, other - 10%.
Image: dcrd node version distribution.
The share of mixed coins varied between 60.8-60.9%. Daily mixed amount varied between 233-546K DCR.
Decred's Lightning Network has seen 42 nodes (-3), 68 channels (-10) with a total capacity of 35.4 DCR (-1.5), as of Sep 1.
Ecosystem
VSP synergy-crypto.net announced on its website that it is closing and is not accepting new tickets. Tickets with already paid fees will be voted as usual (180 tickets as of Sep 1).
ViaBTC announced on Aug 5 that they will shut down their DCR mining pool on Aug 10. Users were asked to withdraw or convert their DCR by Aug 17, and any DCR remaining by that deadline will be automatically converted to USDT.
A total of 7 defunct services have been removed from decred.org Exchanges page (CoinSwitch, Sequoir (ex Vertbase), Evercoin, Bitcoin.com) and Wallets page (Ownbit, AnyBit, Atomic Wallet, Evercoin). As of Sep 12, 22 third-party exchanges and 6 third-party wallets remain listed.
Warning: the authors of the Decred Journal have no idea about the trustworthiness of any of the services above. Please do your own research before trusting your personal information or assets to any entity.
Join our #ecosystem chat to follow Decred ecosystem updates.
Outreach
Monde PR's achievements:
- Pitched Decred to 2 PR opportunities.
- Responded to 3 requests for comments.
Secured the following news articles:
- An article in Forbes Advisor featuring commentary from @jz on the merit of meme coins. The piece was syndicated to 3 publications including Nasdaq.
- An article in Cointelegraph featuring commentary from @jy-p on how Bitcoin's Lightning Network stacks up against Solana and Visa. The piece was syndicated to 30 publications including Bitcoin Insider and Crypto News Canada.
- The Cointelegraph piece also appeared in Portuguese on Cointelegraph Brazil.
Media
Decred Magazine engagement stats for August:
- Total number of articles on DM: 305
- Newsletter subscribers: 55
- New posts and newsletters sent: 13
- Active social media campaigns: 5
- Social media posts: 75
- Post clicks: 224
- Likes: 412
- Re-tweets: 73
- Social media followers across all platforms and accounts: 927
Twitter users are more than welcome to support @Decredmagazine with follows, likes and retweets to help spread the message.
Selected articles:
- Introducing Decred community member João Paulo Sant'Anna by @phoenixgreen
- Introducing Decred developer Philemon by @phoenixgreen
- How Decred contributed to a more transparent election in Brazil by @João
- Peer-to-peer electronic corporation by @Tivra
- Inflection points technical analysis by @Applesaucesome
Videos:
- Decentralised treasury spending - Decred Fundamentals by @phoenixgreen
- DCRDATA Decred's treasury - Decred Fundamentals by @phoenixgreen
- Why Decred will explode! $DCR crypto price prediction! by Minted Max - better than a typical price talk video
- Decred and the future of web3 - State of the Market with BlockchainBuck by @phoenixgreen and @Exitus
- Decred News Update - Development work surging across many repos - LN, DCRDEX, Politeia, DAO & more by @Exitus
Art and fun:
- New Website TikTok by @DCRDajana
- Decred Heartbeat by @OfficialCryptos
Translations:
- Decred Journal April-July 2022 got a total of 6 new translations. Thanks to @arij (Arabic), @Dominic (Chinese), and @kozel (Polish)!
Non-English content:
- What is the Decred digital token project? by Be Coin (Arabic)
- DCR DecreD Explose j'achete ou pas? by Crypto for EveryOne (French, "Decred exploding, buy or not?")
Discussions
Selected Reddit posts:
Selected Twitter discussions:
- @elima_iii has a draft of his research paper, which focuses on Decred and the proposed Responsible Financial Innovation Act.
- @phoenixgreen has a thread on his experiences using the DCRDEX to sell DCR for BTC using the platform's atomic-swap technology.
Markets
In August DCR was trading between USD 25.60-70.40 / BTC 0.00114-0.00306. The average daily rate was $31.93.
Another review of crypto and stock markets by @Applesaucesome mentions unusual numbers in August's DCR pump:
The volume of that candle was massive. And I mean MASSIVE. Just on the DCR/USDT pairing there was nearly 2 million DCR traded back and forth. That's 14% of the entire supply. Note: This doesn't mean that much was bought or sold but the total combined amount bought + sold.
The following quote is not financial advice:
In conclusion, the markets are likely going to pull back but if you're a bull then it could present one last solid buying opportunity. If you're a bear then this would be the time to sell more. Crypto still looks terrible right now but I'm not selling.
Image: DCRDEX monthly volume in USD.
Relevant External
Tornado Cash, an Ethereum mixing service, was added to the OFAC sanctions list by the US Treasury, for its role in facilitating the laundering of proceeds of hacks by North Korea. The sanctions cover a set of Ethereum addresses associated with the mixer, and in the immediate aftermath of the sanctions being unveiled some trolls were sending small amounts of mixed ETH from Tornado to the wallets of celebrities to taint their funds. Circle quickly blacklisted $75K of USDC belonging to Tornado users. GitHub removed the repositories for Tornado Cash and also the accounts of at least 3 developers who worked on it.
Two days later a developer who worked on Tornado Cash, Alexey Pertsev, was arrested in Amsterdam by the Dutch Fiscal Information and Investigation Service, on suspicion of helping to facilitate money laundering. The Dutch authorities are holding Pertsev for 3 months until a trial can be arranged, but so far they have not been charged with a specific crime, and their wife has denied links to Russian espionage.
A whole DeFi ecosystem on Solana (Saber protocol) was revealed to be the work of two brothers, a lot of fake developer accounts, and some techniques for double or triple counting the assets locked into the protocol.
Maker DAO has been supporting the DAI stablecoin since launch in 2019 and its governance serves to determine how the MKR ecosystem develops. Most participants in Maker DAO governance seem to agree that it is not going well and needs to change, but there are disagreements about how it should change. In a recent podcast debade MKR founder Rune Christensen made a case that people working for the DAO were getting too comfortable and trying to expand the organisation in ways which suited themselves. Hasu (pseudonymous crypto researcher, MKR governance delegate) represented the side of DAO contributors who could see that MKR holders were being presented with sub-optimal proposal decisions which they were not always well suited to answer - but several proposals to create new core groups which would provide a certain kind of intelligence to the token holders were recently rejected. One Twitter thread on the subject adds a 3rd faction, decentralization maximalists who want to see the smart contracts locked down or "ossified" so that they cannot be changed in response to changing regulation. Rune is however the main character whose return from semi-retirement heralded a change in direction away from what the DAO's contributors and in some cases VC backers were planning. Rune has provided an epic "End Game" plan but it is extremely long and complex, split into several long forum posts, so it's not clear how many people support that.
Leaked videos have been circulated of lawyer Kyle Roche bragging about their work with Ava Labs (of Avalanche network), which included tying other competing projects up with frivolous lawsuits. Ava labs have denied the sensational account of their arrangement with the firm which Crypto Leaks published, and Kyle Roche has withdrawn from a number of the aforementioned class action lawsuits.
That's all for August. Share your updates for the next issue in our #journal chat room.
About
This is issue 50 of Decred Journal. Index of all issues, mirrors, and translations is available here.
Most information from third parties is relayed directly from the source after a minimal sanity check. The authors of the Decred Journal cannot verify all claims. Please beware of scams and do your own research.
Credits (alphabetical order):
- writing, editing, publishing: bee, bochinchero, Exitus, jz, l1ndseymm, phoenixgreen, richardred
- reviews and feedback: davecgh
- funding: Decred stakeholders
Comments ()