Release 0.80.0

CSL source files must be UTF-8

CSL source code must now be encoded using UTF-8. Previously, the locale settings of the computer on which CSL tools were run could affect the expected encoding. Errors related to file encoding or non-English characters in source files can be fixed by re-saving the file using UTF-8.

Removed the type parameter from RespondPolicy.Always

This type parameter was not useful and inhibited type inference. To migrate, simply remove any explicit type parameter given to RespondPolicy.Always. If you’ve not provided an explicit type parameter, then it should just work.

Moved package com.deondigital.cordapp.client to separate gradle artifact

To minimize the footprint of the CSL Cordapp, the client interfaces and classes have been moved to their own gradle artifact. This affects code that interacts with the CSL Cordapp using classes such as ContractHandler and CordaLedger. The package has been moved to csl-cordapp-client in group com.deondigital. Simply add this package to your gradle dependencies to migrate.

Removed the c property from com.deondigital.sic.CordaAgent

This referenced a value of type com.deondigital.cordapp.client.CordaAgent which is structurally equivalent to com.deondigital.sic.CordaAgent.

Removed the getInitialStates method from com.deondigital.cordapp.client.CordaLedger

If you want to list all contracts in your CordaLedger you should use CordaLedger.getAllContractIds() instead.

Introduced clj-api subpackage

Clojure code that references definitions from the clojure-api library will need to be updated to reference the new locations.

As an example, a ns-form reference such as:

(:require [com.deondigital.value-conversion-api :refer [keyword->qualified-name]]

Must be changed into:

(:require [com.deondigital.clj-api.value-conversion-api :refer [keyword->qualified-name]]