Status Update

December 13, 2018

Status Updates (December, 2018) > December 13, 2018

Weekly Development Report

DAEDALUS

Wallet

This week the team fixed all the issues found during the final QA phase of the upcoming Daedalus 0.12.0 with Cardano 2.0.0 release.

The fixes and improvements include:

  • improvements in the NTP time difference check logic which eliminate unnecessary NTP checks, as well as preventing an NTP error screen being shown after a machine comes out of hibernation

  • an improvement in Daedalus/Cardano IPC channel communication which stops Daedalus from losing the Cardano state after internet connection has been lost and restored

  • a minor fix for an issue which caused flickering of the blockchain height chart on the "Network status" screen

In the scope of regular maintenance tasks, the team is still working on dependencies updates, and has finished the implementation of the UX/UI fixes for the issues identified during the quarterly design implementation review.

App Platform

This week the team continued work on the remote server-based prototype, including simplifications in the domain model and infrastructure interactions, and improving the API request to perform authorization checks at a higher level. A new end-to-end test suite was developed to provide coverage over the application service access, which is a critical part of the system.

WALLET BACKEND

Last week the team spent time studying the node-to-node protocol for receiving blocks, documenting their findings in the wiki, and illustrating it with diagrams.

As part of the work to create wallet integration tests, the team needed to solve a circular dependency between the wallet and cluster packages. Previously, the cluster package was generating both a node cluster and a wallet backend, but now it only generates nodes - and now that the two packages are more clearly separated, the team can use the cluster library in their wallet integration tests.

NETWORKING

An engineer has been working on block download protocols that match block download logic requirements. Next steps are improving code documentation, refining the implementation, and adding tests.

A senior engineer has been working on block download logic, and the first running version has been completed.The next step is to include integration with the block download protocol.

DEVOPS

Last week DevOps helped with the public testnet launch and confirmed people are withdrawing test ada from the faucet. The team also prepared for PlutusFest by setting up a test production environment for Plutus Playground, and preparing Docker images for developers to use.

As part of the QA cycle for the upcoming Cardano 1.4: Daedalus 0.12.0 with Cardano SL 2.0.0 release of Cardano and Daedalus, DevOps created new release candidates and helped with testing and fixes. The team has also been reviewing and participating in developers' planning to prepare for upcoming OBFT integration into Cardano-SL.

Engineers continued working on tools and integration work for the new Cardano repositories. Progress has been made on Cardano cluster automation tooling, which can apply test operations at different points in the cluster's lifetime. Git submodule support has been added to CI systems. To help developers who sometimes need to build and test on Windows, an engineer created a single script which automatically prepares a developer set up. The team also worked more on the packet.net backend for nixops, so we can more easily provision clusters on bare metal hardware.

CARDANO DECENTRALIZATION

The team has been working on implementing an on-disk representation of the immutable tail of the blockchain and interaction with the volatile prefix. They’ve made a lot of progress, and a PR with a first version is currently being reviewed ahead of being merged.

A senior team member will work with a new developer this week to make sure they are up to speed on the project.

GOGUEN

Languages and Virtual Machines

Last week the team continued development of Plutus and Marlowe, as well as preparing for the inaugural PlutusFest.

Testnets

The team is still diagnosing performance and stability problems with IELE and the KEVM testnet, and building test automation for the Remix IDE. An implementation of IELE with an updated gas model is ready, but has no documentation at the moment. IELE/KEVM with LLVM is also now available, but spread across multiple repositories and will require some work to integrate.

ANNOUNCEMENTS

IOHK is currently looking for talented people to work with us as a Rust Software Engineer, Haskell Trainer as well as several others. Please see the IOHK Careers page for more details.