Status Update

May 8, 2020

Status Updates (May, 2020) > May 8, 2020

WEEKLY DEVELOPMENT REPORT

Daedalus

Wallet

This week the Daedalus team worked on preparing the first Daedalus Flight candidate for the 1.1.0 release, which adds a wallet recovery phrase verification feature and support for Ubuntu 20.04 LTS. It also prevents Daedalus from being installed on unsupported versions of Windows, improves networking reliability and overall performance, and fixes numerous smaller issues, as well as making multiple user experience improvements.

App Platform

There is no update from the application platform team this week. They’ve been helping out the main Daedalus team with the upcoming release.

Cardano Explorer

This week the team finished fixing the last of the issues that arose as part of final QA. The new Cardano explorer is now ready to be released.

Wallet backend

This week the team worked on a number of issues. They removed the force-resync endpoint, which had originally been introduced as a way to recover from an invalid state, but ultimately caused more problems than it solved. They also fixed some caching issues with the CI benchmarks, added command-line support for bech32 input and output encoding, and started the initial implementation of the new metadata aggregation server. The team continued to work on integrating with the Ouroboros mini-protocols, as well as changing some compilation flags in the backend to make compilation during development easier.

Work was also done on the Cardano GraphQL implementation, including integrating Prometheus monitoring metrics into Grafana, as well as improving the initial getting started experience.

Finally, the team worked on polishing documentation ahead of the 1.0.0 release of the Cardano coin selection library, and fixed a few issues that were caused by changes to the compilation flags.

Networking

This week the networking team has been working on the Shelley node. A reference implementation of key-evolving signatures (KES) was finished, and the team also completed a systemd integration, as well as continuing to work on the connection manager.

DevOps

The DevOps team has been working hard this week. They’ve been scale testing Praos block production and improving the CI notification statuses from Hydra, as well as beginning work on Rust cross-compilation support for Naersk, a Nix/Rust build tool.

The team has also been working on fixes to the Cardano GraphQL deployment and general integration in preparation for the new Byron explorer. Some improvements were also made to Docker image pushing this week so that new images will be automatically pushed when new releases are published.

Finally, the team has also been providing continuous support to the Daedalus team as they prepare for a new Daedalus Flight candidate. Work has also been done to plan for a Shelley, Praos-supported faucet, as well as documenting processes surrounding the Shelley self-node.

Cardano Decentralization

This week the team has been preparing for the upcoming Shelley Haskell testnet, including undertaking a code audit and contributing to user-facing documentation.

Work has also continued on implementing annotated decoders, which now cover scripts and metadata as well, although the team plans on running some checks and tests to ensure that all aspects have been covered. The team continued to struggle with heap exhaustion problems in the property tests this week, although progress was made by looking at some trace generation from a different perspective.

Finally, the team is almost done with work on the new binary address format, and hopes to have a pull request ready soon.

Goguen

This week the Plutus team performed some refactoring work in the smart contract backend (SCB). This work included fixing a problem with the chain index startup sequence, changing the all-servers startup order, making some minor code changes, improving the display name of local transactions, adding some missing CLI help strings, as well as removing a redundant definition. They also updated the ContractCLI wrapper to allow a contract to export its schema and added a writeup on builtins. Finally, they reorganized some of the generated Nix files to improve the overall performance of the Nix commands.

The Marlowe team worked on updates to the If expressions within the language syntax, and made some more updates to Blockly.