Skip to content

Releases: input-output-hk/lace-sdk

@laceio/sdk@0.1.2-canary.1

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 25 Oct 04:20
Immutable release. Only release title and notes can be modified.

@laceio/sdk@0.1.2-canary.1

A canary release, previewing the next stable version: install it as @canary or @0.1.2-canary.1.

What's new

Added

  • Password-based secret encryption gains a validated adapter for asynchronous native Argon2id implementations. Existing EMIP-003 encrypted secrets remain readable.

Fixed

  • Cardano transaction building can use the same output for funding and collateral, so a UTxO passed to both setUnspentOutputs and setCollateralUtxos may be spent. Without an execution-unit estimate, ADA-only collateral is accepted even when its remainder is too small for a return output.
  • Cardano script transactions avoid excess fees when reducing the execution budget changes the size of the change or collateral return output.

API

The canary build, compared with @laceio/sdk@0.1.2-canary.0's:

  • Added: none
  • Removed: none
  • Changed: none

It previews 0.1.2: the stable API takes a patch change since @laceio/sdk@0.1.1.

Packages

Docs: https://sdk.lace.io/canary/

@laceio/sdk@0.1.2-canary.0

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 24 Oct 04:12
Immutable release. Only release title and notes can be modified.

@laceio/sdk@0.1.2-canary.0

A canary release, previewing the next stable version: install it as @canary or @0.1.2-canary.0.

What's new

Added

  • Install the operations a Passport account lacks with passport.installOperations. It works on an account created with lockAccount: false, installs only operations the SDK deploys, skips those already installed so an interrupted install can run again, and refuses with operation-not-installable, authority-retired, maintenance-update-refused or maintenance-authority-mismatch.
  • Passport agents can build each grant spend from their exported policy with preparePassportGrantSpend. It checks the spend against the grant and returns the withdrawal circuit, its arguments and the challenge to sign, for JubJub and secp256k1 grantees. grantSpendAuthorisationArgs turns the signature into the last arguments, and loadPassportGrantSpendChallenges exposes the challenge builders of every grant withdrawal.

Changed

  • A Passport account created with lockAccount: false hands its maintenance authority to the account's devices instead of leaving it with a key nobody keeps. Every device holding the account keys can upgrade the account, grants never can, and removing a device takes the authority away from it.

Fixed

  • If a Cardano wallet starts without cached protocol parameters and the provider is temporarily unavailable, transaction building resumes automatically when the provider recovers.
  • Proving a Passport account circuit that calls another contract now fails with a clear error naming the contract address, circuit and verifier key hash, with the code unresolved-contract-circuit, instead of a bare 400 from the proof server.
  • Creating a Passport account no longer fails with an expired transaction while the fee sponsor is still syncing its wallet. A FeeSponsor may implement an optional ready(), which the creation awaits before building each transaction, and createDevSponsor implements it, so calling ready() when the app loads starts its sync early.
  • passport.readShieldedHoldings leaves out shielded coins the account has already spent, so selectShieldedHoldings$ lists only coins it can still spend.

API

The canary build, compared with @laceio/sdk@0.1.1-canary.3's:

  • Added: experimental:GrantShieldedWithdrawal, experimental:GrantSpend, experimental:GrantSpendCall, experimental:GrantSpendChallenges, experimental:GrantSpendCoin, experimental:GrantSpendContext, experimental:GrantSpendJubjubChallenge, experimental:GrantSpendRefusedError, experimental:GrantSpendSignature, experimental:GrantUnshieldedWithdrawal, experimental:InstallOperationsPayload, experimental:MaintenanceAuthorityMismatchError, experimental:MaintenanceChanges, experimental:MaintenanceSignature, experimental:MaintenanceSignatureKind, experimental:MaintenanceUpdateRefusedError, experimental:MaintenanceUpdateRequest, experimental:MaintenanceVerifierKey, experimental:MaintenanceVerifyingKey, experimental:OperationNotInstallableError, experimental:SignedMaintenanceUpdate, experimental:grantSpendAuthorisationArgs, experimental:loadPassportGrantSpendChallenges, experimental:preparePassportGrantSpend
  • Removed: none
  • Changed: cardano:SignerClient, experimental:AccountKeys, experimental:Contract, experimental:FeeSponsor, experimental:KeySessionFlow, experimental:LaceModule, experimental:LaceSideEffect, experimental:LaceWallet, experimental:PassportEncryptionKey, experimental:RemotePassportSeams, experimental:SignerClient, experimental:WalletWithCardanoSigning, experimental:m, experimental:passportActions, experimental:passportStoreContract, index:SignerClient

It previews 0.1.2: the stable API takes a patch change since @laceio/sdk@0.1.1.

Packages

Docs: https://sdk.lace.io/canary/

@laceio/sdk@0.1.1

Choose a tag to compare

@lace-releases lace-releases released this 23 Oct 07:29
Immutable release. Only release title and notes can be modified.

@laceio/sdk@0.1.1

A stable release.

What's new

Changed

  • @laceio/sdk depends on @laceio/cardano and takes its Cardano code and types from it, instead of carrying its own copy of the Cardano JS SDK packages. An app that depends on @laceio/cardano at the version the SDK names shares one copy of its classes and types with the SDK; types from @cardano-sdk/core are a separate copy, so pass transactions between them as CBOR.
  • Each package of the SDK, @laceio/sdk, @laceio/cardano, @laceio/cardano-ledger and @laceio/cardano-trezor, releases on its own version line, tagged with its name and version, and a release publishes only the packages that changed. A stable release depends on another package of the SDK by a caret range, so an app that also depends on it shares one copy within that range.

Fixed

  • Cardano token balances exclude rewards already withdrawn by pending transactions, and applications can observe pending withdrawals separately from on-chain reward balances.

API

Compared with @laceio/sdk@0.1.0 (released as lace-sdk@0.1.0): a patch change.

  • Added: none
  • Removed: none
  • Changed: cardano:CardanoContextObservables, cardano:CardanoRemoteSignerFactory, cardano:CreateLaceWalletProps, cardano:LaceWallet, cardano:WalletWithCardanoContext, cardano:WalletWithCardanoSigning, cardano:createLaceWallet, cardano:createLazyInMemoryVaultModule, cardano:createPasskeyVaultModule, cardano:createRemoteCardanoVaultModule, cardano:createTxBuilder, cardano:m, index:BlockchainSpecificActivityMetadata, index:CardanoContextObservables, index:CardanoRemoteSignerFactory, index:LaceAddons, index:PlutusContext, index:SideEffectDependencies, index:WalletWithCardanoSigning, index:m
  • Declared compatible: cardano:CardanoContextObservables, cardano:CardanoRemoteSignerFactory, cardano:CreateLaceWalletProps, cardano:LaceWallet, cardano:WalletWithCardanoContext, cardano:WalletWithCardanoSigning, cardano:createLaceWallet, cardano:createLazyInMemoryVaultModule, cardano:createPasskeyVaultModule, cardano:createRemoteCardanoVaultModule, cardano:createTxBuilder, cardano:m, index:BlockchainSpecificActivityMetadata, index:CardanoContextObservables, index:CardanoRemoteSignerFactory, index:LaceAddons, index:PlutusContext, index:SideEffectDependencies, index:WalletWithCardanoSigning, index:m

Packages

Docs: https://sdk.lace.io/v/0.1.1/

@laceio/cardano@0.1.1

Choose a tag to compare

@lace-releases lace-releases released this 23 Oct 01:56
Immutable release. Only release title and notes can be modified.

@laceio/cardano@0.1.1

A stable release.

What's new

Changed

  • Each package of the SDK, @laceio/sdk, @laceio/cardano, @laceio/cardano-ledger and @laceio/cardano-trezor, releases on its own version line, tagged with its name and version, and a release publishes only the packages that changed. A stable release depends on another package of the SDK by a caret range, so an app that also depends on it shares one copy within that range.

Fixed

  • @laceio/cardano imports Buffer from the buffer package where it uses it, so it loads in a browser that defines no Buffer global.

Security

  • @laceio/cardano depends on ip-address 10.7.4 and pbkdf2 3.1.7, past their published advisories, so an app installing it or @laceio/sdk gets the fixed releases.

API

Compared with @laceio/cardano@0.1.0 (released as lace-sdk@0.1.0): a patch change; no export changed.

Packages

Docs: https://sdk.lace.io/

@laceio/cardano-trezor@0.1.1

Choose a tag to compare

@lace-releases lace-releases released this 23 Oct 06:50
Immutable release. Only release title and notes can be modified.

@laceio/cardano-trezor@0.1.1

A stable release.

What's new

Changed

  • Each package of the SDK, @laceio/sdk, @laceio/cardano, @laceio/cardano-ledger and @laceio/cardano-trezor, releases on its own version line, tagged with its name and version, and a release publishes only the packages that changed. A stable release depends on another package of the SDK by a caret range, so an app that also depends on it shares one copy within that range.

API

Compared with @laceio/cardano-trezor@0.1.0 (released as lace-sdk@0.1.0): a patch change; no export changed.

Packages

Docs: https://sdk.lace.io/

@laceio/cardano-ledger@0.1.1

Choose a tag to compare

@lace-releases lace-releases released this 23 Oct 06:42
Immutable release. Only release title and notes can be modified.

@laceio/cardano-ledger@0.1.1

A stable release.

What's new

Changed

  • Each package of the SDK, @laceio/sdk, @laceio/cardano, @laceio/cardano-ledger and @laceio/cardano-trezor, releases on its own version line, tagged with its name and version, and a release publishes only the packages that changed. A stable release depends on another package of the SDK by a caret range, so an app that also depends on it shares one copy within that range.

API

Compared with @laceio/cardano-ledger@0.1.0 (released as lace-sdk@0.1.0): a patch change; no export changed.

Packages

Docs: https://sdk.lace.io/

@laceio/sdk@0.1.1-canary.3

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 23 Oct 04:25
Immutable release. Only release title and notes can be modified.

@laceio/sdk@0.1.1-canary.3

A canary release, previewing the next stable version: install it as @canary or @0.1.1-canary.3.

What's new

Added

  • Added support for locally supplied Midnight proof generation, enabling WASM prover integrations.
  • Added optional cancellation signals to Midnight attestation and proof requests.

Changed

  • Each package of the SDK, @laceio/sdk, @laceio/cardano, @laceio/cardano-ledger and @laceio/cardano-trezor, releases on its own version line, tagged with its name and version, and a release publishes only the packages that changed. A stable release depends on another package of the SDK by a caret range, so an app that also depends on it shares one copy within that range.

Fixed

  • Cardano token balances exclude rewards already withdrawn by pending transactions, and applications can observe pending withdrawals separately from on-chain reward balances.

API

The canary build, compared with @laceio/sdk@0.1.1-canary.2 (released as lace-sdk@0.1.1-canary.2)'s:

  • Added: none
  • Removed: none
  • Changed: bitcoin:CreateLaceWalletProps, bitcoin:LaceWallet, bitcoin:WalletWithBitcoinSigning, bitcoin:WalletWithBitcoinSubmit, bitcoin:WalletWithBitcoinTxBuilding, bitcoin:createBitcoinLazyInMemoryVaultModule, bitcoin:createLaceWallet, bitcoin:m, cardano:CardanoContextObservables, cardano:CreateLaceWalletProps, cardano:LaceWallet, cardano:SwapFee, cardano:WalletWithCardanoContext, cardano:WalletWithCardanoSigning, cardano:createLaceWallet, cardano:createLazyInMemoryVaultModule, cardano:createPasskeyVaultModule, cardano:createRemoteCardanoVaultModule, cardano:m, experimental:ActivitiesObservables, experimental:CardanoContextActionObservables, experimental:CardanoContextObservables, experimental:CardanoCustodyObservables, experimental:Contract, experimental:LaceModule, experimental:LaceSideEffect, experimental:LaceWallet, experimental:StateObservables, experimental:SwapFee, experimental:WalletWithCardanoContext, experimental:WalletWithCardanoSigning, experimental:WalletsObservables, experimental:createLaceWallet, experimental:m, index:BlockchainSpecificActivityMetadata, index:CardanoContextObservables, index:LaceAddons, index:SideEffectDependencies, index:State, index:SwapFee, index:WalletWithBitcoinSigning, index:WalletWithBitcoinSubmit, index:WalletWithBitcoinTxBuilding, index:WalletWithCardanoSigning, index:m, midnight:AttestedProverProvider, midnight:AttestedProvingSession, midnight:CreateLaceWalletProps, midnight:LaceWallet, midnight:TemenosVerifier, midnight:WalletWithMidnight, midnight:WalletWithMidnightNetwork, midnight:createLaceWallet, midnight:createMidnightModule, midnight:m

It previews 0.1.1: the stable API takes a patch change since @laceio/sdk@0.1.0 (released as lace-sdk@0.1.0).

Packages

Docs: https://sdk.lace.io/canary/

lace-sdk@0.1.1-canary.2

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 22 Oct 04:05
Immutable release. Only release title and notes can be modified.

lace-sdk@0.1.1-canary.2

A canary release, previewing the next stable version: install it as @canary or @0.1.1-canary.2.

What's new

Changed

  • @laceio/sdk depends on @laceio/cardano and takes its Cardano code and types from it, instead of carrying its own copy of the Cardano JS SDK packages. An app that depends on @laceio/cardano at the version the SDK names shares one copy of its classes and types with the SDK; types from @cardano-sdk/core are a separate copy, so pass transactions between them as CBOR.
  • Cardano Shared Custody actions and state move from cardanoContext to cardanoCustody, and a wallet that uses the custody helpers loads m.blockchainCardanoCustody from @laceio/sdk/experimental. The root and ./cardano entries no longer carry custody.

Fixed

  • @laceio/cardano imports Buffer from the buffer package where it uses it, so it loads in a browser that defines no Buffer global.
  • The @laceio/sdk/experimental entry exports every type its Passport API names, such as HttpProverOptions, DevSponsorConfig, PasskeyAuthoriser and AccountRecordStore, so apps can name them in their own code.

Security

  • @laceio/cardano depends on ip-address 10.7.4 and pbkdf2 3.1.7, past their published advisories, so an app installing it or @laceio/sdk gets the fixed releases.

API

The canary build, compared with lace-sdk@0.1.1-canary.1's:

  • Added: experimental:AddDevicePayload, experimental:CardanoCustodyActionObservables, experimental:CardanoCustodyModuleNotLoadedError, experimental:CardanoCustodyObservables, experimental:Contract, experimental:ContractActionCreators, experimental:ContractSelectors, experimental:CreateAccountPayload, experimental:DevicePayload, experimental:LaceModule, experimental:LaceSideEffect, experimental:RevokeGrantPayload, experimental:StateObservables
  • Removed: none
  • Changed: bitcoin:CreateLaceWalletProps, bitcoin:LaceWallet, bitcoin:WalletWithBitcoinSigning, bitcoin:WalletWithBitcoinSubmit, bitcoin:WalletWithBitcoinTxBuilding, bitcoin:createBitcoinLazyInMemoryVaultModule, bitcoin:createLaceWallet, bitcoin:m, cardano:CardanoContextObservables, cardano:CardanoRemoteSignerFactory, cardano:CreateLaceWalletProps, cardano:LaceWallet, cardano:WalletWithCardanoContext, cardano:WalletWithCardanoSigning, cardano:createLaceWallet, cardano:createLazyInMemoryVaultModule, cardano:createPasskeyVaultModule, cardano:createRemoteCardanoVaultModule, cardano:createTxBuilder, cardano:m, experimental:ActionCreators, experimental:ActivitiesObservables, experimental:CardanoContextActionObservables, experimental:CardanoContextObservables, experimental:CardanoCustodyDispatch, experimental:CardanoRemoteSignerFactory, experimental:CreateLaceWalletProps, experimental:LaceWallet, experimental:RemotePassportSeams, experimental:Selectors, experimental:SideEffect, experimental:WalletWithCardanoContext, experimental:WalletWithCardanoCustody, experimental:WalletWithCardanoSigning, experimental:WalletWithPassport, experimental:WalletsObservables, experimental:createLaceWallet, experimental:createLazyInMemoryVaultModule, experimental:createPasskeyVaultModule, experimental:createRemoteCardanoVaultModule, experimental:createTxBuilder, experimental:m, experimental:passportActions, experimental:passportDependencyContract, experimental:passportStoreContract, index:CardanoContextObservables, index:CardanoRemoteSignerFactory, index:LaceAddons, index:PlutusContext, index:SideEffectDependencies, index:WalletWithCardanoSigning, index:m, midnight:CreateLaceWalletProps, midnight:LaceWallet, midnight:WalletWithMidnight, midnight:createLaceWallet, midnight:createMidnightModule, midnight:m

It previews 0.1.1: the stable API takes a patch change since lace-sdk@0.1.0.

Packages

Docs: https://sdk.lace.io/canary/

lace-sdk@0.1.1-canary.1

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 20 Oct 17:02
Immutable release. Only release title and notes can be modified.

lace-sdk@0.1.1-canary.1

A canary release, previewing the next stable version: install it as @canary or @0.1.1-canary.1.

API

Compared with lace-sdk@0.1.0: a patch change.

  • Added: none
  • Removed: none
  • Changed: none

Packages

Docs: https://sdk.lace.io/canary/

lace-sdk@0.1.1-canary.0

Pre-release

Choose a tag to compare

@lace-releases lace-releases released this 20 Oct 02:30
Immutable release. Only release title and notes can be modified.

lace-sdk@0.1.1-canary.0

A canary release, previewing the next stable version: install it as @canary or @0.1.1-canary.0.

API

Compared with lace-sdk@0.1.0: a patch change.

  • Added: none
  • Removed: none
  • Changed: none

Packages

Docs: https://sdk.lace.io/canary/