Skip to content
This repository has been archived by the owner on Aug 18, 2020. It is now read-only.

Cardano SL 1.3.0

Compare
Choose a tag to compare
@rvl rvl released this 09 Aug 09:55
· 2471 commits to develop since this release
1.3.0
0d22897

Cardano SL 1.3.0

Features

Cardano wallet API v1 for the exchanges

A subset of endpoints from the Cardano wallet API, used by cryptocurrency exchanges, was moved to the new Cardano REST API v1. The remaining endpoints will move from v0 to v1 in the next release. Cryptocurrency exchanges are encouraged to move to API v1 because the old API is now regarded as deprecated and will be removed in future versions (CBR-101).

Subscription status added to node information

The endpoint that provides information about the node (/api/v1/node-info) has been expanded to include information about the node subscription status, which can be used to check if the Cardano node is connected to the network or not.

Improved error message for missing charset in API calls

The generic message returned from Cardano node endpoint calls when the charset was not specified is replaced with a more descriptive error message to help users of the API troubleshoot the problem.

Support for sending raw data on the network

It is now possible to send raw, CBOR serialized data to the network using the diffusion layer. Previously, the data had to be serialized before sending it to the network, which slowed things down.

Specifications and documentation

Formal specification for new wallet backend

The formal specification of a wallet for Cardano (or any UTXO-based cryptocurrency) is available here: https://cardanodocs.com/technical/formal-specification-for-a-cardano-wallet/.

Bug fixes and improvements

Faster sending and receiving of blocks

Sending and receiving blocks on the network now works better. First, deserialization performance has been improved by optimizing memory use. Next, blocks are now downloaded concurrently without batching. Finally, block traversal is optimized by the introduction of 'forward links', which removes the need for header retrieval and serialization.

Optimised block storage

Block storage is now optimized by consolidating block and undo data in a single file. This change reduces disk use and improves performance when reading and writing blocks. In later Cardano versions, block storage will be improved even more, so this is only an interim solution.

High (and recurrent) I/O traffic in wallet reduced

I/O spikes in traffic were being caused by large logs being flushed. This issue has been fixed.
Failure to reconnect to the network
Improper handling of DNS failures would sometimes cause the Cardano node to fail to reconnect to the network after an internet connection was interrupted and would need to be restarted. This issue has been fixed.

Time error between user’s computer and the network

The endpoint (/api/settings/time/difference) for calculating the time difference between a user’s computer and Cardano network was returning an incorrect value in some cases. This was because the calculation was not properly handling the time needed to request the current time from NTP servers and to get the response. As a result, some Daedalus users were prevented from using their wallet because Daedalus cannot be used if there is a time difference of more than 15 seconds. This issue has been fixed.