Skip to content

Releases: dcSpark/cardano-multiplatform-lib

4.0.1

23 Dec 17:21
8ff0b6d

Choose a tag to compare

The new v4 of CML contains a lot more code generated using cddl-codegen

Major features

  • New native rust interface! No more need to use an ugly WASM interface when writing a Rust-native library. You can find the crates for all our packages at the bottom of this post
  • Conway era support! Conway is the next era of Cardano. Learn more about the specification changes here
  • Fixed memory leaks! Previously when using CML with JS, you had to manually manage memory or you would get memory leakage. This is no longer necessary.

Minor features

  • CIP25 and CIP36 support are now packaged as part of CML. This is enabled since these specifications have a CDDL specification (so we can easily codegen them) and thanks to our native Rust interface support, composing different specs like this becomes much easier in Rust
  • New multi-era crate for projects that want more explicit multi-era support instead of just the latest version of Cardano (note: the library size for this package is larger)

Bug fixes

There are a few bug fixes that come with the new codegen tool as well as some manual patches to part of the code where cardano-node deviated from the specification temporarily.

Packages

Native Rust crates

https://crates.io/crates/cml-core
https://crates.io/crates/cml-crypto
https://crates.io/crates/cml-chain
https://crates.io/crates/cml-cip25
https://crates.io/crates/cml-cip36
https://crates.io/crates/cml-multi-era

WASM crates

https://crates.io/crates/cml-core-wasm
https://crates.io/crates/cml-crypto-wasm
https://crates.io/crates/cml-chain-wasm
https://crates.io/crates/cml-cip25-wasm
https://crates.io/crates/cml-cip36-wasm
https://crates.io/crates/cml-multi-era-wasm

Wrapper crate providing the old CML interface for the new libraries

https://crates.io/crates/cardano-multiplatform-lib

NPM

NodeJS: https://www.npmjs.com/package/@dcspark/cardano-multiplatform-lib-nodejs
Browser: https://www.npmjs.com/package/@dcspark/cardano-multiplatform-lib-browser

Note: asmjs is not updated yet (but we discourage asmjs usage anyway)

3.1.2

09 Dec 18:18
3dd2769

Choose a tag to compare

this release is for WASM/JS only to fix a bug in the serialization.

The Rust release that includes this fix will come in a later release

Bug fixes

  • Use custom format to serialize the json by @gostkin in #156

New Contributors

Full Changelog: 3.1.1...3.1.2

3.1.1

16 Nov 20:52
22380da

Choose a tag to compare

Bug fixes

Chore

3.1.0

28 Sep 15:58

Choose a tag to compare

What's Changed

Full Changelog: 3.0.1...3.1.0

3.0.1

09 Sep 19:32
3fff412

Choose a tag to compare

What's Changed

  • feat: add reference inputs used lang to script hash calc by @joacohoyos in #127

Full Changelog: 3.0.0...3.0.1

3.0.0

07 Sep 10:59

Choose a tag to compare

Breaking Changes

  • The tx redeemer builder is no longer required. You can skip the step entirely if your transaction doesn't need to add Plutus scripts

Features

  • Inputs added via add_input can now reference scripts added in the reference inputs

Bug fixes

  • Fixed ordering of withdrawal & input redeemers sometimes being incorrect

2.0.1

25 Aug 13:32
34610bc

Choose a tag to compare

Bug Fixes

  • Fixed JSON type for ByronAddress

2.0.0

25 Aug 05:18
16dd9e6

Choose a tag to compare

New features

Breaking changes

  • Add support for communication datums in outputs. The breaking change should be fairly simple: just wrap the TransactionOutput type with a SingleOutputBuilderResult where needed.
  • The tx redeemer builder no longer required temporary signers

1.0.2

23 Aug 18:05
7e8c1b2

Choose a tag to compare

What's Changed

Full Changelog: 1.0.1...1.0.2

1.0.1

22 Aug 15:52
6b419b3

Choose a tag to compare

Bug Fixes

  • Fixed tx builder failure on dummy Plutus input exunits