·
36 commits
to main
since this release
Patch Changes
-
#101
aaf0882Thanks @solidsnakedev! - ### Core Module EnhancementsMint Module
- Added
Mint.getByHex()andMint.getAssetsByPolicyHex()utilities for hex-based lookups - Fixed
Mint.insert,removePolicy,removeAsset, andgetto use content-based equality (Equal.equals) instead of reference equality for PolicyId/AssetName lookups
Fee Calculation
- Fixed
calculateFeeIterativelyto include mint field in fee calculation via TxContext access - Removed unnecessary 5000n fee buffer that caused fee overpayment
Transaction Builder
- Added
.mint()method to TransactionBuilder for native token minting/burning .attachScript()now accepts{ script: CoreScript }parameter format- Improved type safety by using Core types directly instead of SDK wrappers
Devnet Package
Test Infrastructure
- Added
TxBuilder.Mint.test.tswith devnet submit tests for minting and burning - Updated
TxBuilder.Scripts.test.tsto use Core types (PlutusV2.PlutusV2) instead of SDK format - Refactored
createCoreTestUtxohelper to accept CoreScripttypes directly - Removed unused
createTestUtxo(SDK format) helper - Added
Genesis.calculateUtxosFromConfig()for retrieving initial UTxOs from genesis config - Replaced all
Buffer.from().toString("hex")withText.toHex()in tests
Breaking Changes
attachScript()now requires{ script: ... }object format instead of passing script directly- Test helpers now use Core types exclusively
- Added
-
#103
65b7259Thanks @solidsnakedev! - ### Remove Buffer Usage from Source CodeReplaced all
Buffer.from()usage withBytes.fromHex()andBytes.toHex()from the core module for better cross-platform compatibility.Files Updated:
TxBuilderImpl.ts- UseBytes.toHex()for key hash hex conversion inbuildFakeWitnessSetAssets/index.ts- UseBytes.fromHex()for policy ID and asset name decodingMaestroEffect.ts- UseBytes.fromHex()for transaction CBOR conversionOgmios.ts- UseBytes.toHex()for datum hash hex conversionKupmiosEffects.ts- UseBytes.fromHex()for datum hash and script bytes decoding
-
#104
c26391aThanks @solidsnakedev! - ### PlutusV3 Minting Support- Add PlutusV3 script minting with automatic script evaluation via Ogmios
- Add
mintAssetsbuilder method for Plutus script-based minting policies - Add
attachScriptbuilder method for attaching Plutus scripts to transactions - Support both minting (positive amounts) and burning (negative amounts)
Redeemer API Improvements
- Breaking: Change
redeemerparameter type fromstring(CBOR hex) toData.Data- Affects
collectFrom()andmintAssets()builder methods - Provides type-safe redeemer construction without manual CBOR encoding
- Example:
redeemer: Data.constr(0n, [Data.int(1n)])instead of hex strings
- Affects
Core Module Additions
- Add
Redeemersmodule with Conway CDDL-compliant encoding (array format) - Refactor
hashScriptDatato use proper module encoders for redeemers and datums - Add
Redeemers.toCBORBytes()for script data hash computation
Internal Improvements
- Store
PlutusData.Datadirectly in builder state instead of CBOR hex strings - Remove redundant CBOR hex encoding/decoding in transaction assembly
- Add PlutusV3 minting devnet tests with real script evaluation