Releases: dcSpark/cardano-multiplatform-lib
6.0.1
6.0.0
What's Changed
- feat: add native-script verify function by @hadelive in #332
- Cost models update conway by @rooooooooob in #336
- wasm-bindgen: upgrade to 0.2.87 and remove serde-deserialize feature by @ecioppettini in #335
- Add WASM getters to TransactionUnspentOutput by @rooooooooob in #341
- Add documentation + fix acronym names by @rooooooooob in #339
- Move RawBytesEncoding and standardize use by @rooooooooob in #340
- add serde::Serialize/Deserialize to NetworkInfo by @rooooooooob in #342
- Governance Builders by @rooooooooob in #333
- Fix for coin/deposit merge issue by @rooooooooob in #344
- Remove wasm-bindgen deps from rust by @rooooooooob in #343
- Add support for parsing Shelley genesis blocks by @SebastienGllmt in #331
- Plutus datum CDDL codegen tool by @rooooooooob in #325
- Clarify where data is used in a redeemer by @rooooooooob in #347
- fix: add existing plutus datums and v3 script by @hadelive in #350
- Docs update without plutus by @rooooooooob in #345
- [WIP] Ref script size fee calculation + Ref input support (tx builder) by @rooooooooob in #349
New Contributors
- @hadelive made their first contribution in #332
- @ecioppettini made their first contribution in #335
Full Changelog: 5.3.1...6.0.0
5.3.1
5.3.0
Conway breaking changes
These are breaking changes for Conway (which is not part of Cardano mainnet yet) to update CML to the latest Conway specs
- New Conway.cddl updates by @rooooooooob in #324
Bug fixes
- Babbage Mint handle duplicate format by @rooooooooob in #327
5.2.0
New features
- Replace the auto-generated plutus datum JSON format (generated from cddl-codegen) with a standardized format used by cardano-node (even when used from within other structures)
- Add
preview
,preprod
, andsancho
to theNetworkInfo
utility type
Bug fixes
- Fix Byron block hashes
- Fix parsing of Byron-era Epoch Boundary Blocks
- Fix potential errors when deserialization enums (see dcSpark/cddl-codegen#217)
- Fix string formatting of ipv6 text
- Fix the standalone
hash_transaction
utility function to return the right result (the.hash()
function on theTransactionBody
itself always worked)
Structure changes
- (rust)
TransactionMetadatum
moved fromcml_core::metadata
tocml_chain::auxdata::metadata
- (rust) return type of
TransactionBody::hash()
change from[u8; 32]
toTransactionHash
struct
Full Changelog: 5.1.0...5.2.0
5.1.0
What's Changed
- Missing PlutusScript / PlutusScriptWitness API by @rooooooooob in #305
Full Changelog: 5.0.0...5.1.0
5.0.0
Breaking Changes
Renamed BigInt
to BigInteger
to avoid collisions with the built-in JS type called BigInt
by @rooooooooob #302
New features
Bug fixes
- Update ugly JSON schemas for types with non-trivial JS serialization by @rooooooooob in #300
Full Changelog: 4.0.2...5.0.0
4.0.2
What's Changed
- Into bytes instance for const size array-based wrapper types. by @oskin1 in #288
- Lint fixes for new lints in cargo 1.75 by @rooooooooob in #293
- Base/Enterprise/PointerAddress WASM bindings by @rooooooooob in #291
- Missing crypto wasm api by @rooooooooob in #292
- Misc wasm bindings by @rooooooooob in #295
Full Changelog: 4.0.1...4.0.2
4.0.1
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
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
New Contributors
Full Changelog: 3.1.1...3.1.2