Our development planning encourages a public release every three weeks on GitHub, improving efficiency and ensuring consistent updates to the community
Dusk Network employs a Release Cycle planning. At its core, this means that developmental updates are published every three weeks on GitHub. These publications detail the latest additions, changes, fixes, and assets added to the tech stack.
Published Release Cycles will often focus on a single GitHub repository for clarity, regardless of ongoing efforts in other areas. Release Cycle Updates such as this one aim to elucidate, and give proper coverage to, these GitHub releases.
Wallet-CLI | Release 0.7.0
This Release Cycle focuses predominantly on the wallet-cli repository, which has now advanced to version 0.7.0. This Command Line Interface iteration of Dusk Network's wallet is a building block towards a more extensive and user friendly (Web) Wallet and a key point of interaction for the community. The below noted additions/changes to the repository can be followed to GitHub for further details on their status and their function in the stack. Some highlights will be given, clarifying reasoning and benefits.
- Notes cache [dusk-network/rusk#650]
The foremost improvement of this Release Cycle. By saving notes locally in the cache, we remove the necessity of a re-synchronization from genesis, which improves the speed and overall performance of the wallet significantly.
- Settings can be loaded from a config file [dusk-network/rusk#637]
- Create config file if not exists [dusk-network/rusk#647]
- Notify user when defaulting configuration [dusk-network/rusk#655]
- Implementation for
The release of the notes cache mentioned above allows for wallets to be aware of the network's block height. Knowing the block height acts as a 'checkpoint' for future synchronizations of (for instance) wallet balances.
- Option to wait for transaction confirmation [dusk-network/rusk#680]
- Default to TCP/IP on Windows [#6]
An important step towards the release of a Windows Wallet CLI. At the moment, Mac & Linux are supported.
The following are primarily optimizations for speed and efficiency.
- Export consensus public key as binary
- Interactive mode allows for directory and wallet file overriding [dusk-network/rusk#630]
- Client errors implemented, Rusk error messages displayed without metadata [dusk-network/rusk#629]
- Transactions from wallets with no balance are halted immediately [dusk-network/rusk#631]
- Rusk and prover connections decoupled [dusk-network/rusk#659]
- Use upper-case DUSK for units of measure [dusk-network/rusk#672]
- Use DUSK as unit for stake and transfer [dusk-network/rusk#668]
data_dircan be properly overridden [dusk-network/rusk#656]
- Invalid configuration should not fallback into default [dusk-network/rusk#670]
- Prevent interactive process from quitting on wallet execution errors [#18]
The wallet-cli has been a focal point over these past three weeks, alongside the remediation of the Frozen Heart vulnerability, as it was dubbed by the Trail of Bits whitehat cybersecurity firm. More information on this process can be found in our article: PLONK Critical Vulnerability Successfully Remediated.
Immediate focus is on the release of the wallet CLI for Windows operating system. As mentioned, currently the wallet supports Linux & Mac operating systems. The Windows iteration is in its testing phase; this process can be followed on GitHub. Once properly tested, there will be a short phase of polishing before release.
The development team is also making progress in their attempts to optimize wallet memory through a method of continuous streaming of notes to reduce memory consumption. The next big focus will be on Virtual Machine 2, the importance of which cannot be overstated. VM2 is set to drastically reduce gas consumption for Zero-Knowledge contracts, allow for increased efficiency in the writing of smart contracts, and pave the way for Zelbet integration into DayBreak.
How Can You Get Involved?
Being considered a development worth of a 'release' status, as published on GitHub, does not mean immediate deployment on testnet. Assets and code are released to allow GitHub users the opportunity to install, interact, and test anything on the Dusk Network repositories. We highly encourage you to do so. Our community is vital to the network in many ways, and the ability of the public to provide feedback on releases is paramount.
We ask any users who have found an issue with any newly released features to contact us directly [email protected]. Provide your GitHub username so we can add you to our security advisory for further discussion. We always aim to respond as swiftly as possible.
About Dusk Network
Dusk Network is the privacy blockchain for financial applications. A new standard for compliance, control, and collaboration. Our mission is to enable any size enterprise to collaborate at scale, meet compliance requirements and ensure that personal and transaction data remains confidential.