Status Updates

September, 2020

Jump to

September 25, 2020

DAEDALUS

Last week, the Daedalus team completed the automatic update system, which will be released in the next Daedalus Flight. Work is almost complete on third-party dependency updates, and the Shelley hardware wallet support frontend is also nearing completion, pending inputs from the cardano-wallet side.

ADRESTIA

Last week, the team announced that a new release of the wallet backend will be available soon. The new release includes a substantial improvement on wallet checkpointing, which will be particularly beneficial for larger wallets. Additional performance improvements are scheduled for the next release.

The team also selected the schema for multisig in cardano-addresses, and a draft CIP will be published soon. The team plans to enhance the process of choosing your own SMASH server, in terms of speed and ease.

Additionally, a new release (2.2.0) for the Graphql API is now available. The new release includes a feature update that enables to naturally access withdrawals from the context of a transaction, rather than performing two separate queries and combining the result sets. The total output for a transaction can now be accounted for using Transaction.withdrawals and Transaction.inputs. A combined schema is also now included in the TypeScript client package, to simplify IDE configuration and code generation operations.

Finally, the team is working on an endpoint improvement for the final stage of rosetta before version 1.0.0 is released, and work continues on the Bittrex integration, which has so far caused a number of issues. We delivered a new build to the Bittrex team today, which we hope will bring us closer to a successful resolution.

NETWORKING

Last week, the networking team continued working on the early integration of the P2P governor and the connection manager with a node. Also, they tested different formats for converting node-CLI metadata, made some improvements to the cardano-API, and fixed some bugs in the tx-submission generator.

DEVOPS

Last week, the DevOps team deployed version 1.20.0 of the cardano-node. They hotfixed 5.0.1 cardano-db-sync and wrote a script to automate node-db snapshots and restoration, enabling quicker migrations to reduce downtime. The team also tested multisig and tx metadata functionality with community members on the public testnet.

CARDANO DECENTRALIZATION

Last week, the team completed RTview documentation, investigated and fixed communication issues between tx-gen and the networking layer of the node, and agreed on the development plan for the multi-era ledger functionality.

GOGUEN

Last week, the Plutus team updated the smart contract backend (SCB) to improve the display of wallet IDs in the blockchain, and also added the SlotRange value to the StateMachine transition function so it can be used as user input. They also updated the Haskell compiler to version GHC 8.10 and worked on fixes for cabal-install and GHC 8.10 to build all subprojects. Finally, they updated the JSON serialization and deserialization on the Haskell side to use numbers in JSON.

The Marlowe team concentrated on Javascript embedding for the Marlowe Playground and also continued work on the proof of concept for a foreign function interface (FFI).

September 18, 2020

DAEDALUS

Last week, the team made good progress on the Shelley hardware wallet support -which is being finalized for Trezor devices-, and the automatic update system, which is now in testing and final review phase. Also, the team continued working on third-party dependency updates.

ADRESTIA

Last week, the Adrestia team released a new version of the wallet, which now includes metadata and performance improvements on fee estimation and address listing.

The team is now working on improving the performance of checkpointing, finishing the draft CIP on multisig, and a number of endpoints needed for Hardware wallet integration into Daedalus.

In relation to APIs, there is a new release of Graphql (2.1.0), which includes improvements on the presentation layer side and addresses a number of user-flagged bugs.

Finally, the team are now working on upgrading cardano-rosetta for the 1.4.4 release, after which the team are planning on doing an official release of the cardano-rosetta solution.

NETWORKING

The networking team continued testing an early integration of the P2P governor and connection manager with cardano-node. Early integration includes simple P2P governor policies, which will be later replaced with more advanced ones. The team is cooperating with network researchers to define the right set of policies for implementation. They are also working on necessary consensus changes and extending the testing infrastructure for better performance checks, including a range of common scenarios in P2P governor functionality.

DEVOPS

Last week, the DevOps team were busy deploying cardano-graphql and cardano-db-sync preparing for the new release, and also worked on the 1.20.0 version of the node to be deployed the following week.

CARDANO DECENTRALIZATION

Last week, the team worked on issue tracking, resolution, and code updates. They removed rewindChainDepState, simplified the HeaderState, and created a library for NoThunks, which can be used to examine values for unexpected thunks. This helps tracking down existing memory leaks and avoiding new ones.

GOGUEN

Last week, the Plutus team updated the implementation of smaller types in Plutus core and within the ledger. They also made changes to generalize an unnecessarily specific type signature and resolved a TypecheckError in the vesting example within the Plutus Playground.

The Marlowe team defined a schema for JSON representations of Marlowe contracts, which includes JSON serialization and deserialization instances both in Haskell and Purescript to match the new schema.

September 11, 2020

DAEDALUS

Last week, the team implemented a logarithmic scale feature to the stake pool screen, which now displays a delegating stake option. Also, the team improved performance rendering of large stake pool lists, fixed wallet address ordering on the receive screen, and continued working on the automatic update system and Shelley hardware wallet support. Work is also ongoing on third-party dependency updates.

ADRESTIA

The team worked hard on getting the Bittrex wallet back online. Numerous micro and macro benchmarks have been added to the wallet backend to find performance issues for large wallets, so the fees estimation time has been dramatically reduced. The next section up for performance improvement is listing address function. The team also continued working on the Rosetta integration, upgrading this week from version 1.4.1 to 1.4.2, which gives better fee estimation.

Finally, the team has included transaction metadata to the list of functionalities, and is making the address gap flexible for power users. Preparation for Multisig CIP has been made, and documentation has been started. They are also preparing a release for Graphql 2.1, which will resolve the presentation issue on the Cardano explorer app.

NETWORKING

Last week, the networking team continued working on the P2P-governor integration with a node, fixed some bugs and invariant violations, and extended P2P-governor tests to include asynchronous demotions. They also wrote a patch to io-sim to prepare its publication to Hackage, fixed CI - which builds Haddock documentation- and tested cardano-node in a range of network scenarios.

Finally, the team worked on cardano-cli interface using deliberate generalized algebraic data types (GADTs) to support use cases within blockchain modes and development eras.

CARDANO DECENTRALIZATION

Last week, the team were busy resolving issues within Cardano Shelley pools functionality, worked on the benchmarking metrics for the 1.19.1 release, prepared configuration packaging of RTview, and also worked on documentation updates.

GOGUEN

Last week, the Plutus team worked on implementing the Swagger API into the smart contract backend (SCB). They also resolved an issue with processContractOutboxes, which previously kept servicing the same requests for each contract instance. The team also added metadata queries to the SCB and made improvements to specific type signatures to make them more generic.

The Marlowe team started working on a proof of completeness of static analysis and were also busy with a proof of concept for a foreign function interface (FFI).

September 4, 2020

DAEDALUS

Last week, the team worked on Shelley hardware wallets support, implemented an automatic update system, finalized quarterly UI/UX polishing, and worked on a third-party dependencies update.

ADRESTIA

Last week, the team worked on improving the QA and CI environments. Also, there is ongoing work on metadata, which will be part of the next release.

NETWORKING

The networking team continued working on the p2p-governor integration with a cardano-node and discovered, debugged, and fixed a number of issues that occurred within a process.

DEVOPS

Last week, the DevOps team deployed version 1.19.1 of the node to staging and the testnet, and worked with Cardano Rosetta packaging for deployment to internal and testnet networks. The team continued resolving ongoing support issues and made some improvements to operations libraries and tooling.

CARDANO DECENTRALIZATION

Last week, the team worked to resolve some technical debt on the coin selection process in transaction generators. The team also planned the ledger maintenance process across multiple development eras (Shelley, Goguen, Basho, and others), and worked on documentation about stake pool ranking.

GOGUEN

Last week the Plutus team worked on the frontend infrastructure for metadata server queries to the smart contract backend (SCB). They also added a wallet tutorial and fixed choice names. The team made improvements to slot actions and updated the architecture documentation.

The Marlowe team were busy making some Marlowe Playground server-side updates and fixes. They also removed the use of websockets in the Marlowe Playground.