Skip to content

Releases: IntersectMBO/plutus-apps

Plutus Application Framework v1.2.0 Release

06 Mar 14:55
68efca7
Compare
Choose a tag to compare

What's Changed

The most important changes of this release are the removal of Tx type and related functions, switching to cardano-api library for transaction manipulation and new a nix flake-based infrastructure.

๐Ÿ“ฆ cardano-node-emulator

Removed

  • Removed OpenApi.ToSchema instance for SlotConfig.
  • Remove estimateTransactionFee, signTx, fromPlutusTx, fromPlutusTxSigned, fromPlutusTxSigned' as the Tx was removed from plutus-ledger.

Changed

  • The default utxo provider for balancing now selects bigger inputs first when adding new inputs, to reduce the number of inputs.
    This was in particular a problem for collateral inputs, of which there can only be 3.

๐Ÿ“ฆ cardano-streaming

Added

  • Fold blocks into ledger state at client side using local chainsync protocol, both pipelined and non-pipelined versions are provided.

๐Ÿ“ฆ freer-extras

Removed

  • Removed OpenApi.ToSchema instance for PageQuery a, PageSize, and Page a.

๐Ÿ“ฆ plutus-chain-index-core

Added

  • Added missing orphan OpenApi.ToSchema instances.

Changed

  • Moved to using the Value type from cardano-api instead of the one from plutus-core.

๐Ÿ“ฆ plutus-contract

Removed

  • The Plutus.Contract.Wallet module has benn moved to the plutus-pab package
    under the Cardano.Wallet.LocalClient.ExportTx.
  • EmulatorAssertionContractError and TxConstraintResolutionContractError
    were removed from ContractError.
  • Removed OpenApi.ToSchema instance for PABReq, ChainIndexQuery, ActiveEndpoint, RequestID, IterationID, Request a, ThreadToken, Wallet, WalletId, TxKey, SequenceId, DereferencedInput, BeneficialOwner, AnnotatedTx, ContractInstanceId, ContractActivityStatus, EndpointDescription.

Added

  • A set of functions were added to submit a cardano Tx from a a set of
    constraints: subCardanoTx, subCardanoTxConstraints,
    subCardanoTxConstraintsPending, subCardanoTxConstraintsWith,
    and mkCardanoTxConstraints.
  • walletFundsChangePlutus: A version of walletFundsChange that works with plutus-core Values.
  • plutusValueAtAddress: A version of valueAtAddress that works with plutus-core Values.

Changed

  • The getUnspentOutput function that was in the Plutus.Contract.Wallet
    module is now in Plutus.Contract.Request.
  • Moved to using the Value type from cardano-api instead of the one from plutus-core.
  • plutus-ledger-constraints was replaced with plutus-tx-constraints.

๐Ÿ“ฆ plutus-ledger

Removed

  • Removed OpenApi.ToSchema instance for a lot of ledger, plutus and cardano types.
  • Moved Ledger.Value to Plutus.Scripts.Utils.Value
  • Moved Ledger.Ada to Plutus.Scripts.Utils.Ada
  • Remove unspentOutputsTx and spentOutputs.
  • Remove cardanoApiTx, emulatorTx, onCardanoTx, cardanoTxMap, addSignature, addSignature', txOutRefs, unspentOutputsTx, txId.
  • Remove CardanoTx(EmulatorTx, CardanoApiTx).
  • Remove toCardanoTxBody, toCardanoTxBodyContent, toCardanoTxInWitness, toCardanoMintValue.
  • Remove Tx and TxStripped types and all related functions.

Added

  • Added Ledger.Value.CardanoAPI for working with the Value type from cardano-api.

Changed

  • Moved to using the Value type from cardano-api instead of the one from plutus-core.
  • Renamed SomeCardanoApiTx(SomeTx) to CardanoTx(CardanoTx).
  • Renamed CardanoApiEmulatorEraTx to CardanoEmulatorEraTx.

๐Ÿ“ฆ plutus-pab-executables

Removed

  • Removed dependency on playground-common and everything that depended on it
  • Removed Plutus.PAB.Run.PSGenerator

Changed

  • plutus-ledger-constraints was replaced with plutus-tx-constraints.

๐Ÿ“ฆ plutus-pab

Removed

  • Removed dependency on playground-common and everything that depended on it.
  • Plutus.PAB.Effects.Contract: removed exportSchema and endpointsToSchemas

Added

  • The Cardano.Wallet.LocalClient.ExportTx module (previously
    Plutus.Contract.Wallet in plutus-contract) was added.

  • Added a lot of missing OpenApi.ToSchema instances.

Changed

  • plutus-ledger-constraints was replaced with plutus-tx-constraints.

๐Ÿ“ฆ plutus-script-utils

Added

  • Moved Ledger.Value to Plutus.Scripts.Utils.Value
  • Moved Ledger.Ada to Plutus.Scripts.Utils.Ada

๐Ÿ“ฆ plutus-tx-constraints

Removed

  • Remove UnbalancedEmulatorTx and unBalancedTxTx as the Tx was removed from plutus-ledger.

Added

  • Added the lacking types and functions from plutus-ledger-constraints including following modules:
    • Ledger.Tx.Constraints.OnChain.V1
    • Ledger.Tx.Constraints.OnChain.V2
    • Ledger.Tx.Constraints.TxConstraints

New Contributors

  • @RubensGitHub made their first contribution in #912

Full Changelog: v1.1.0...v1.2.0

Plutus Application Framework v1.1.0 Release

12 Jan 18:38
e32722a
Compare
Choose a tag to compare

What's Changed

๐Ÿ“ฆ plutus-contract

Added

  • Added 'Ledger.Value.currencyValueOf' function.

  • Added the Plutus.Trace.Emulator.runEmulatorTraceIOWithConfig function

  • Creation of an 'assertEvaluationError' Contract.Test to ease verification of
    invalid transactions.

Changed

  • Changed Plutus.Trace.Emulator.TraceConfig data contructor to work with LogMessage EmulatorEvent
    instead of EmulatorEvent', added a parameter to configure the LogLevel of log messages,
    renamed the field showEvent to traceConfigShowEvent and renamed the field outputHandle to
    traceConfigOutputHandle.

  • Changed the signature of Plutus.Trace.Emulator.runEmulatorTrace by additing a TraceConfig
    parameter which is used to filter the log messages by their LogLevel, and returns LogMessage EmulatorEvent instead of EmulatorEvent'.

  • Changed the signature of Plutus.Trace.Emulator.evalEmulatorTrace by additing a TraceConfig
    parameter which is used to filter the log messages by their LogLevel.

  • Change the output format of log messages printed by Plutus.Trace.Emulator.runEmulatorTrace by
    changing the Default instance of TraceConfig.

  • Renamed Plutus.Trace.Emulator.currentSlot to Plutus.Trace.Emulator.chainCurrentSlot.

  • We now use cardano-api AddressInEra (through the alias
    Ledger.Address.CardanoAddress) in the emulator instead of plutus
    addresses.

  • DoubleSatisfaction is now using cardano-api Tx instead of the emulator
    one.

Deprecated

  • Deprecated Plutus.Trace.Emulator.runEmulatorTraceIO' in favor of Plutus.Trace.Emulator.runEmulatorTraceIOWithConfig

Security

๐Ÿ“ฆ plutus-pab-executables

Changed

  • tx-inject now uses Tx from cardano-node

๐Ÿ“ฆ plutus-tx-constraints

Added

  • Add support for the MustMint constraint.
  • Added mustProduceAtLeast and mustSpendAtLeast constraints.
  • Added checkValueSpent in processLookupsAndConstraints to validate spend inputs and outputs.

๐Ÿ“ฆ cardano-node-emulator

Added

  • Moved from plutus-ledger package:
    • Ledger.TimeSlot to Cardano.Node.Emulator.TimeSlot
    • Ledger.Params to Cardano.Node.Emulator.Params
    • Ledger.Generators to Cardano.Node.Emulator.Generators
    • Ledger.Fee to Cardano.Node.Emulator.Fee
    • Ledger.Validation to Cardano.Node.Emulator.Validation
    • Wallet.Emulator.Chain to Cardano.Node.Emulator.Chain

๐Ÿ“ฆ plutus-chain-index-core

Changed

  • We now use cardano-node Tx type instead of the one of plutus-ledger.

๐Ÿ“ฆ plutus-script-utils

Removed

  • mkUntypedMintingPolicyV1 replaced by a version agnostic function
  • mkUntypedMintingPolicyV2 replaced by a version agnostic function
  • mkUntypedStakeValidatorV1 replaced by a version agnostic function
  • mkUntypedStakeValidatorV2 replaced by a version agnostic function
  • mkUntypedValidatorV1 replaced by a version agnostic function
  • mkUntypedValidatorV2 replaced by a version agnostic function

Added

  • Plutus.Script.Utils.Typed.ScriptContext a type class that allow the creation
    of an untyped minting policy, stake validator or validator.
  • an instance of Plutus.Script.Utils.Typed.ScriptContext for Plutus. ledger.V1.Ledger.Context.ScriptContext
  • an instance of Plutus.Script.Utils.Typed.ScriptContext for Plutus. ledger.V2.Ledger.Context.ScriptContext

Changed

  • The default implementation of functions in the IsScriptContext typeclass now
    log which data they are trying to decode, to ease debugging when an invalid
    binary representation of a redeemer / value or script context is sent.

๐Ÿ“ฆ plutus-ledger-constraints

Added

  • ValidityInterval is a type of interval โ€” where the lower bound is closed and the upper bound is open โ€” to provide a correct by construction tool for constraints.
  • Functions to construct ValidityInterval and to convert it to the plutus Interval and backwards.
  • mustValidateInTimeRange constraint as an alternative to mustValidateIn but it takes ValidityInterval POSIXTime instead.
  • mustValidateInSlotRange constraint.

Changed

Deprecated

๐Ÿ“ฆ plutus-ledger

Removed

  • Moved to cardano-node-emulator package:
    • Ledger.TimeSlot to Cardano.Node.Emulator.TimeSlot
    • Ledger.Params to Cardano.Node.Emulator.Params
    • Ledger.Generators to Cardano.Node.Emulator.Generators
    • Ledger.Fee to Cardano.Node.Emulator.Fee
    • Ledger.Validation to Cardano.Node.Emulator.Validation
    • Wallet.Emulator.Chain to Cardano.Node.Emulator.Chain

Added

  • minAdaTxOut, computes the minimum amount of Ada required for a TxOut more
    precisely, by taking the params and the TxOut.

  • Added makeAutoBalancedTransactionWithUtxoProvider and related functions to Ledger.Fee.

  • Ledger.Address.CardanoAddress an alias to address in the latest era

  • Ledger.Address.cardanoAddressCredential to retrieve plutus credentials
    from a Cardano address

  • Ledger.Address.cardanoStakingCredential to retrieve plutus staking credentials
    from a Cardano address

  • Ledger.Address.cardanoStakingCredential to retrieve plutus PubKeyHash
    from a Cardano address

  • Ledger.Address.toPlutusAddress to get a plutus address from a Cardano one
    (it replaces Ledger.Tx.CardanoAPI.fromCardanoAddressInEra)

Changed

  • minAdaTxOut is now renamed minAdaTxOutEstimated.

  • Moved adjustTxOut into Ledger.Index

  • Balancing no longer logs if and which inputs and outputs were added.

  • Moved to Ledger.Tx.CardanoAPI:

    • Ledger.Validation.getRequiredSigners
    • Ledger.Validation.fromPlutusIndex
    • Ledger.Validation.fromPlutusTxOut
    • Ledger.Validation.fromPlutusTxOutRef
  • Ledger.Address now priviledges cardano-api addresses instead of plutus-api addresses.

Deprecated

  • fromCardanoAddressInEra, fromCardanoAddress, fromCardanoPaymentCredential,
    fromCardanoPaymentKeyHash, fromCardanoScriptHash,
    fromCardanoStakeAddressReferenceand fromCardanoStakeCredential from Ledger.Tx.CardanoAPI
    that shouldn't be used now that we use cardano-api adress in the emulator.

New Contributors

Full Changelog: v1.0.0...v1.1.0

Plutus Application Framework v1.0.0 Release

25 Nov 14:29
7952b9d
Compare
Choose a tag to compare

Release notes

This release targets a Cardano Network with the Vasil HF (node v1.35.4) and supports the Babbage era features.

What follows is a general picture of what Babbage era features we currently support:

  • plutus-contract emulator has been updated to work with Babbage era types.
  • plutus-contract emulator uses the Babbage era validation rules from cardano-ledger.
  • plutus-ledger-constraints and plutus-tx-constraints has been updated to build transactions with reference inputs, inline datums and reference scripts.
  • plutus-chain-index has been updated to read blocks from Babbage era, and supports storing reference scripts and inline datums from transactions. However, the stored UTxO does not include collateral output from transactions.

Important changes:

  • Added 'currentChainIndexSlot' in Contract API.
  • Changed the tx output representation of EmulatorTx to use Cardano.Api.TxOut
  • Removed the TotalFunds effect of WalletEffect.
  • Change behavior of MustPayToPubKeyAddress and MustPayToOtherScript in #705
  • Renamed currentTime to currentNodeClientTimeRange and renamed currentPABSlot to currentNodeClientSlot in #772
  • Remove offchain logic for MustProduceAtLeast and MustSpendAtLeast in #817
  • Use Cardano Haskell package repository ("CHaP") in #797
  • Removed plutus-playground in #821

What's Changed

  • SCP-3855: update node dep by @ak3n in #449
  • Update next node branch with main branch by @koslambrou in #454
  • PLT-18: Create validator/minting policy/stake validator wrapper for Plutus V2 by @koslambrou in #461
  • [chain-index]: export all servant client functions by @ak3n in #492
  • [next-node]: merge updates from the main branch. by @ak3n in #507
  • Create separate directories for v1 and v2 plutus scripts by @Jimbo4350 in #486
  • Add PlutusV2 minting and staking scripts by @Jimbo4350 in #528
  • [chain-index]: add inline datums support by @ak3n in #488
  • PLT-484 Upgraded cardano-node version to the official 1.35.0 release.โ€ฆ by @koslambrou in #551
  • Backport changes from the main branch to the next-node branch by @koslambrou in #553
  • Updated version of plutus-apps components to 1.0.0 and cardano-node to 1.35 by @koslambrou in #560
  • Backport changes from main to next-node branch by @koslambrou in #576
  • Merge #574 and #575 from main into next-node by @koslambrou in #578
  • Update cardano-node dependency to 1.35.1 by @koslambrou in #584
  • Add build-and-serve-docs to CONTRIBUTING... by @james-iohk in #595
  • Replace Set TxIn with [TxIn] to fix StateMachine.getInput by @ak3n in #594
  • Require markdown 3.3.7 by @james-iohk in #601
  • Added precision on the meaning of the first-major version of plutus-apps by @koslambrou in #597
  • Add note to checkPredicateGenOptions by @FinleyMcIlwaine in #603
  • Add script equivalence context test for the V2 context. by @Jimbo4350 in #588
  • Fix the swagger with CardanoBuildTx's OpenApi stub schema by @ak3n in #599
  • Buildkite will now generate the docker devcontainer with the vX.Y.Z tag name by @koslambrou in #598
  • PLT-515 Improve DevX for plutus-playground-server/client and pab-nami users by @zeme-iohk in #559
  • Merge main branch into next-node by @koslambrou in #609
  • Remove withIsCardanoEra workaround by @andreabedini in #607
  • Increase the delay of awaiting in plutus-pab-executables tests by @ak3n in #565
  • Add zero ada to mint and fee fields to match cardano-ledger behaviour by @ak3n in #608
  • feat: replace allowBigTransactions function with increaseTransactionLโ€ฆ by @KristianBalaj in #606
  • Fix Plutus Plauground Nightly E2E Test by @zeme-iohk in #615
  • Fix a typo of PubKeyTxOut by @whs-dot-hk in #621
  • [PLT-81] plutus-chain-index: support inline scripts when querying TxOut of a TxOutRef by @andreabedini in #613
  • Merge subtree raduom/hysterical screams into plutus-hysterical-screams by @zeme-iohk in #620
  • Absorb hysterical-screams into plutus-apps by @zeme-iohk in #627
  • Moved datum and redeemer hash computation functions in plutus-script-utils by @koslambrou in #628
  • Raduom/marconi initiative by @raduom in #585
  • PLT-309: Rename 'currentSlot' to 'currentPABSlot' and add 'currentChainIndexSlot'. by @ak3n in #619
  • Replace #!/bin/bash with #!/usr/bin/env bash by @eyeinsky in #618
  • Fix typo In by @whs-dot-hk in #630
  • PLT-359 ADR regarding problem with PAB's integration with indexing solutions. by @koslambrou in #550
  • Add minting context equivalence test plutus script by @Jimbo4350 in #631
  • Add missing field by @eyeinsky in #617
  • PLT-568: Switch to Babbage era by @sjoerdvisscher in #614
  • Refactored the tx constraints library to prepare for PlutusV2 by @koslambrou in #625
  • Merge main in next-node branch by @koslambrou in #634
  • Remove old references to hysterical-screams by @zeme-iohk in #635
  • ADR-0004 Common PAB API document by @gege251 in #586
  • [next-node]: Bump wallet, plutus, ledger, node by @ak3n in #616
  • Use '[TxIn]' instead of 'Set TxIn' in 'data Tx' by @ak3n in #623
  • cardano-ledger validation rules are prioritized over custom validaton rules by @koslambrou in #639
  • PLT-80: Fix "Output doesn't have the minimum required Ada" error while balancing by @sjoerdvisscher in #600
  • PLT-445 Add mustReferencePubKeyOutput in constraints library by @koslambrou in #640
  • Fix static-site.nix formatting by @whs-dot-hk in #646
  • Fix onchain MustPayToPubKeyAddress check by @sjoerdvisscher in #648
  • Fix Ledger.Constraints.TxConstraints.collectFromPlutusV1ScriptFilter implementation by @koslambrou in #644
  • Update cardano-node to 1.35.3-rc1 with deps by @ak3n in #647
  • Add mustSpendAtLeast Constraint tests by @james-iohk in #641
  • Add plutus-contract tests for required signer and... by @james-iohk in #624
  • PLT-682 ADR for the constraint interface change following support for reference inputs by @koslambrou in #654
  • Merge main branch into next-node 2022-08-11 by @koslambrou in #658
  • Upgraded to a cardano-wallet version compatible with node 1.35.3-rc1 by @koslambrou in #657
  • Merge main into next-node (2022-08-12) by @koslambrou in #659
  • PLT-670: MustReferenceOutput by @sjoerdvisscher in #661
  • PLT-682 ADR for the constraint interface change following supporting inline datums by @koslambrou in #660
  • Replace LedgerPlutusVersion with Language type by @sjoerdvisscher in #662
  • Plt 684 adr interface changes to the transaction constraint library for working with reference scripts by @koslambrou in #663
  • PLT-494: PlutusV2 TypedValidators by @sjoerdvisscher in #666
  • SCP-4354...
Read more

Plutus Application Framework v1.0.0-alpha1 Release

12 Aug 23:46
19e1e6c
Compare
Choose a tag to compare

Release notes

This alpha release targets a Cardano Network with the Vasil HF (node v1.35.3). It will allow dApp developers to test their existing PlutusV1 application on a network which has been forked to support Babbage era features. Therefore, do not expect this release to work on Cardano mainnet until the Vasil HF, because our transaction library submits Babbage era transactions with PlutusV1 or PlutusV2 scripts.

The different packages have been updated to work during the Babbage era and partially support the new Babbage era features. We will continue releasing other alpha releases as we get feedback from the community.

What follows is a general picture of what Babbage era features we currently support:

  • plutus-chain-index has been updated to read blocks from Babbage era, and supports storing reference scripts and inline datums from transactions. However, the stored UTxO does not include collateral output from transactions.
  • plutus-contract emulator has been updated to work with Babbage era types. However, the UTxO index in the emulator does not support transaction outputs with reference scripts and inline datums.
  • plutus-contract emulator uses the Babbage era validation rules from cardano-ledger. However, we continue to use our old custom validation rules which we plan to remove in the next alpha release in order to fully commit with cardano-ledger 's validation rules.
  • plutus-ledger-constraints and plutus-tx-constraints has been updated only to build transactions with reference inputs, but does not yet support yet inline datums and reference scripts

If you find any issues, please submit a report here: https://github.com/input-output-hk/plutus-apps/issues

What's Changed

  • SCP-3855: update node dep by @ak3n in #449
  • Update next node branch with main branch by @koslambrou in #454
  • PLT-18: Create validator/minting policy/stake validator wrapper for Plutus V2 by @koslambrou in #461
  • [chain-index]: export all servant client functions by @ak3n in #492
  • [next-node]: merge updates from the main branch. by @ak3n in #507
  • Create separate directories for v1 and v2 plutus scripts by @Jimbo4350 in #486
  • Add PlutusV2 minting and staking scripts by @Jimbo4350 in #528
  • [chain-index]: add inline datums support by @ak3n in #488
  • PLT-484 Upgraded cardano-node version to the official 1.35.0 release.โ€ฆ by @koslambrou in #551
  • Backport changes from the main branch to the next-node branch by @koslambrou in #553
  • Updated version of plutus-apps components to 1.0.0 and cardano-node to 1.35 by @koslambrou in #560
  • Backport changes from main to next-node branch by @koslambrou in #576
  • Merge #574 and #575 from main into next-node by @koslambrou in #578
  • Update cardano-node dependency to 1.35.1 by @koslambrou in #584
  • Add build-and-serve-docs to CONTRIBUTING... by @james-iohk in #595
  • Replace Set TxIn with [TxIn] to fix StateMachine.getInput by @ak3n in #594
  • Require markdown 3.3.7 by @james-iohk in #601
  • Added precision on the meaning of the first-major version of plutus-apps by @koslambrou in #597
  • Add note to checkPredicateGenOptions by @FinleyMcIlwaine in #603
  • Add script equivalence context test for the V2 context. by @Jimbo4350 in #588
  • Fix the swagger with CardanoBuildTx's OpenApi stub schema by @ak3n in #599
  • Buildkite will now generate the docker devcontainer with the vX.Y.Z tag name by @koslambrou in #598
  • PLT-515 Improve DevX for plutus-playground-server/client and pab-nami users by @zeme-iohk in #559
  • Merge main branch into next-node by @koslambrou in #609
  • Remove withIsCardanoEra workaround by @andreabedini in #607
  • Increase the delay of awaiting in plutus-pab-executables tests by @ak3n in #565
  • Add zero ada to mint and fee fields to match cardano-ledger behaviour by @ak3n in #608
  • feat: replace allowBigTransactions function with increaseTransactionLโ€ฆ by @KristianBalaj in #606
  • Fix Plutus Plauground Nightly E2E Test by @zeme-iohk in #615
  • Fix a typo of PubKeyTxOut by @whs-dot-hk in #621
  • [PLT-81] plutus-chain-index: support inline scripts when querying TxOut of a TxOutRef by @andreabedini in #613
  • Merge subtree raduom/hysterical screams into plutus-hysterical-screams by @zeme-iohk in #620
  • Absorb hysterical-screams into plutus-apps by @zeme-iohk in #627
  • Moved datum and redeemer hash computation functions in plutus-script-utils by @koslambrou in #628
  • Raduom/marconi initiative by @raduom in #585
  • PLT-309: Rename 'currentSlot' to 'currentPABSlot' and add 'currentChainIndexSlot'. by @ak3n in #619
  • Replace #!/bin/bash with #!/usr/bin/env bash by @eyeinsky in #618
  • Fix typo In by @whs-dot-hk in #630
  • PLT-359 ADR regarding problem with PAB's integration with indexing solutions. by @koslambrou in #550
  • Add minting context equivalence test plutus script by @Jimbo4350 in #631
  • Add missing field by @eyeinsky in #617
  • PLT-568: Switch to Babbage era by @sjoerdvisscher in #614
  • Refactored the tx constraints library to prepare for PlutusV2 by @koslambrou in #625
  • Merge main in next-node branch by @koslambrou in #634
  • Remove old references to hysterical-screams by @zeme-iohk in #635
  • ADR-0004 Common PAB API document by @gege251 in #586
  • [next-node]: Bump wallet, plutus, ledger, node by @ak3n in #616
  • Use '[TxIn]' instead of 'Set TxIn' in 'data Tx' by @ak3n in #623
  • cardano-ledger validation rules are prioritized over custom validaton rules by @koslambrou in #639
  • PLT-80: Fix "Output doesn't have the minimum required Ada" error while balancing by @sjoerdvisscher in #600
  • PLT-445 Add mustReferencePubKeyOutput in constraints library by @koslambrou in #640
  • Fix static-site.nix formatting by @whs-dot-hk in #646
  • Fix onchain MustPayToPubKeyAddress check by @sjoerdvisscher in #648
  • Fix Ledger.Constraints.TxConstraints.collectFromPlutusV1ScriptFilter implementation by @koslambrou in #644
  • Update cardano-node to 1.35.3-rc1 with deps by @ak3n in #647
  • Add mustSpendAtLeast Constraint tests by @james-iohk in #641
  • Add plutus-contract tests for required signer and... by @james-iohk in #624
  • PLT-682 ADR for the constraint interface change following support for reference inputs by @koslambrou in #654
  • Merge main branch into next-node 2022-08-11 by @koslambrou in #658
  • Upgraded to a cardano-wallet version compatible with node 1.35.3-rc1 by @koslambrou in #657
  • Merge main into next-node (2022-08-12) by @koslambrou in #659

New Contributors

Read more

Plutus Application Framework v0.1.0 Release

18 Jul 17:38
4cc6c84
Compare
Choose a tag to compare

Release notes

  • The release target the current Cardano mainnet (node v1.34.1) NOT the Vasil HF
  • Updates to the ContractModel
  • Enhancements in the plutus-chain-index queries and syncing
  • Newly added packages plutus-script-utils and plutus-tx-constraints (very early alpha state which will eventually replace plutus-ledger-constraints)
  • Enhancements of the plutus-contract emulator
  • General refactoring and improvements
  • Fixed various bugs in the framework

What's Changed

Read more

2022-04-06 PAB Release

06 Apr 12:22
e4062bc
Compare
Choose a tag to compare

2022-04-06 PAB Release Notes

Includes a collection fixes for PAB; updated versions of plutus, haskell.nix, cardano-node; introduced plutus-contract-certification; many improvements for chain-index; general refactoring and improvements.

What's Changed

  • Allow playground to be visible on local network by @thakkery in #252
  • Bump plutus for important upstream changes by @kk-hainq in #254
  • Update instances while processing blocks from alonzo node (fix #206) by @ak3n in #260
  • QuickCheck ContractModel testing facilities to deal with dynamically created tokens by @MaximilianAlgehed in #194
  • Add links to Haddocks and the playground by @sjoerdvisscher in #261
  • Refine dependencies and remove unused packages by @kk-hainq in #214
  • SCP-3196: Added a new Game contract (simplified version of GameStateMachine) by @koslambrou in #256
  • Smart shrinking for state machine tests by @MaximilianAlgehed in #262
  • Remove note about Nix sandbox on Macos by @michaelpj in #266
  • Fix protocol version error messages happening during synchronisation. by @raduom in #243
  • s/msc/psc/g by @lemmon-714 in #270
  • Add ToArgument instance for Slot #271 by @ak3n in #272
  • Remove unused packages by @kk-hainq in #268
  • Fix a bug whereby Unilateral would be forgotten in the ContractModel tests by @MaximilianAlgehed in #273
  • PureScript Updates by @jhbertra in #238
  • Bump hackage-nix & cabal index by @kk-hainq in #269
  • Update pab-nami PAB config by @sorki in #277
  • Minting doesn't need special treatment after all by @sjoerdvisscher in #267
  • Make the PAB log ~1/10_000 messages. by @raduom in #281
  • ContractModel: simplify starting contracts with parameters by @MaximilianAlgehed in #278
  • SCP-3305 SCP-3263 fixed Ledger.Constraints.Offchain.updateUtxoIndex by @bwbush in #275
  • Bump haskell.nix. by @shlevy in #283
  • Allow to create a new wallet with the provided funds (#17). by @ak3n in #291
  • Use slotConfig from the config for awaitTime by @ak3n in #292
  • SCP-3367: PAB CLI for easing the starting of PAB + components by @koslambrou in #289
  • SCP-2985: Contract errors are now logged when running the PAB. by @koslambrou in #297
  • SCP-3116: Remove exitWithSuccess in PAB's runWithOpts by @koslambrou in #299
  • SCP-3435: Refactored error types in Wallet.Types by @koslambrou in #298
  • Update SlotConfig in UnbalancedTx in local wallet client #285 by @ak3n in #304
  • plutus-use-cases-uniswap : validateRemove doesn't check real outA and outB by @kindofdev in #300
  • pab-nami updates by @sorki in #303
  • Fix matchInputOutput's pubkey case with datum #295 by @ak3n in #308
  • SCP-3343 fixed intermittent rollback failures in PAB by @bwbush in #305
  • Removed pab-cli and plutus-chain-index from the shell. by @koslambrou in #313
  • ContractModel: Extend the Escrow contract model by @rjmh in #296
  • ContractModel: add assertSpec operation by @MaximilianAlgehed in #311
  • SCP-3431: Better syncing logging in the chain-index. by @koslambrou in #309
  • ContractModel: Add wiggle room options to NoLockedFunds by @MaximilianAlgehed in #314
  • Add missing plantuml executable when building docs with sphynx. by @koslambrou in #317
  • ContractModel: Improve error messages and statistics reporting by @MaximilianAlgehed in #316
  • SCP-3452 chain-index e2e tests by @james-iohk in #312
  • SCP-3501: Remove txs from chain index by @ak3n in #315
  • Playground E2E tests by @james-iohk in #279
  • Collect coverage information from on-chain code in unit tests by @MaximilianAlgehed in #321
  • Ledger Orphans: derive ToSchema for DiffMilliSeconds by @kk-hainq in #326
  • Print error message when passing a non-existant socket path in the PAB by @koslambrou in #323
  • ContractModel: Test that slot numbers line up between model and emulator by @MaximilianAlgehed in #327
  • Write validityTimeRange for exported transactions by @novadev94 in #329
  • chore(deps): bump actions/setup-node from 2 to 3 by @dependabot in #335
  • chore(deps): bump cachix/install-nix-action from 13 to 16 by @dependabot in #325
  • Move plutus-example from cardano-node to plutus-apps by @Jimbo4350 in #322
  • ContractModel: Improved error message when using an unregistered symbolic token (fix #337) by @MaximilianAlgehed in #341
  • Update pab-cli readme nix-shell cmd by @james-iohk in #343
  • SCP-3617: Added Haddock documentation to the constraints in plutus-ledger-constraints by @koslambrou in #344
  • ContractModel: wellformedness checks for Actions by @MaximilianAlgehed in #345
  • SCP-3073: emulated ledger by @sjoerdvisscher in #336
  • [chain-index]: fix the problem with not starting web server by @ak3n in #351
  • Make PAB log less in recent slots by @novadev94 in #355
  • SCP-3331 Fixed error handling for transaction balancing in PAB. by @bwbush in #360
  • Change enableExecutableProfiling to enableProfiling by @ak3n in #365
  • Edit PAB-Nami Demo README by @MitchTurner in #362
  • Added Dockerfile by @agocorona in #361
  • ContractModel: lazier precondition for ContractModel by @MaximilianAlgehed in #363
  • Bump cardano-node to 1.34 and update the rest of the dependencies by @koslambrou in #367
  • chore(deps): bump actions/checkout from 2 to 3 by @dependabot in #340
  • SCP-3502: Add AppendBlocks effect by @ak3n in #319
  • SCP-3631: Emulated ledger Phase2 validation by @sjoerdvisscher in #368
  • chore(deps): bump nixbuild/nix-quick-install-action from 9 to 12 by @dependabot in #354
  • SCP-3680: Use the number of transactions instead of number of blocks for queue. by @ak3n in #370
  • Certification framework by @UlfNorell in #369
  • [ChainIndex] Fix \unspent-tx-out query by @kikai-user in #377
  • When breaking off the calcFee recursion, pick the larger fee. by @sjoerdvisscher in #381
  • Enable build of CertifyingAndWithdrawingPlutus test by @newhoggy in #364
  • Reinstate the SigningProcess API by @sjoerdvisscher in #384
  • Fixed pab-nami demo README for setting up Nami wallet's lib by @koslambrou in #392
  • Enable tests by @newhoggy in #391
  • SCP-3445: fix chain index blocking by @ak3n in #386

New Contributors

Read more

2022-01-17 PAB Release

17 Jan 16:07
c330fc6
Compare
Choose a tag to compare

2022-01-17 PAB Release Notes

Includes a collection fixes and niceties; in particular some refactorings around the PSGenerator; hopefully reducing the dependency load; documentation around how the PAB deployment/wallet scenarios, and a fix for a bug around minimum fee calculations.

What's Changed

  • Add the rollback history command line option. by @raduom in #191
  • Raduom/pab resume by @raduom in #210
  • Refine executable dependencies by @kk-hainq in #213
  • SCP-2981: Delete Plutus.PAB.Monitoring.Util by @j-mueller in #221
  • SCP-3147: MkTx JSON logs by @j-mueller in #173
  • QuickCheck ContractModels that test what happens when a contract crashes by @MaximilianAlgehed in #118
  • Make plutus-pab's local cluster in it's own library by @koslambrou in #205
  • Move psgenerator out of plutus-pab by @ak3n in #216
  • Update examples.rst by @james-iohk in #226
  • repo name fixup by @silky in #227
  • SCP-3096 - Remove wallet proxy by @silky in #217
  • Fix errors introduced from previous refactor/reorganisation by @bjing in #228
  • Update plutus-contract README by @ak3n in #231
  • SCP-3129: Fix minAda related bugs by @sjoerdvisscher in #229
  • Bump hls to 1.5.1 #209 by @ak3n in #232
  • Fix synchronisation errors. by @raduom in #236
  • SCP-3216 psgenerator and PAB compatibility with Marlowe by @bwbush in #234
  • Fix the problem with pab-nami-demo psapigenerator #235 by @ak3n in #241
  • fix broken links by @silky in #245
  • Fix min Ada bug #237. by @sjoerdvisscher in #246
  • Update client deps to fix playground by @shlevy in #247
  • shell-nix: also fetch cardano-wallet with more comments by @kk-hainq in #255
  • Add github test to check for uncommitted updates by @shlevy in #250
  • SCP-3272: Additionnal documentation on different ways to setup the PAB. by @koslambrou in #253

New Contributors

Full Changelog: v2021-12-20...v2022-01-17

2021-12-20 PAB Release

20 Dec 15:34
d1b65be
Compare
Choose a tag to compare
Pre-release

2020-12-06 PAB Release Notes

New release! Mostly just a few tidyups and bugfixes; but we're working towards spinning out more of the functionality into independent libraries. Of particular interest is that the chain-index is now available as a library for easier customisability.

We've also included a "Hello world" integration with Nami wallet.

What's Changed

  • Update pab-config.yml to work with latest wallet config by @Yasuke in #165
  • Raduom/memory leaks by @raduom in #174
  • Add raiseMUnderN to freer-extras by @sjoerdvisscher in #175
  • Fix mustSatisfyAnyOf logic (fix #101). by @ak3n in #166
  • Update issue forms. Added security issue form. by @james-iohk in #183
  • [plutus-chain-index]: fix utxo-at-adress beam query (#124). by @ak3n in #185
  • SCP-3130: Tx constraint to specify stake stake key hash with payment by @koslambrou in #181
  • SCP-3081: chain-index query for transaction history at address by @bwbush in #182
  • Write arbitrary instance for data that uses sized by @Yasuke in #178
  • Fix some hsobj references by @sjoerdvisscher in #193
  • SCP-3127: Chain index as a library by @sjoerdvisscher in #186
  • Bump cardano-node and cardano-wallet to 1.32.1. by @ak3n in #202
  • Add passphrase to ledger signing api by @Yasuke in #177
  • SCP-3069: Hello world demo app integrating Nami wallet with the PAB by @koslambrou in #196
  • Update the commands in the plutus-pab README.md by @koslambrou in #203

New Contributors

Full Changelog: v2021-12-06...v2021-12-20

2021-12-06 PAB Release

06 Dec 14:53
63123ff
Compare
Choose a tag to compare
Pre-release

2020-12-06 PAB Release Notes

New release! Mostly just a few tidyups and bugfixes; but we're working towards spinning out more of the functionality into independent libraries. Of particular interest might be #138 TxConstraints as it's own library.

What's Changed

New Contributors

Full Changelog: v2021-11-22...v2021-12-06

2021-11-22 PAB Release

22 Nov 14:30
a6868cd
Compare
Choose a tag to compare
Pre-release

2020-11-22 PAB Release Notes

A handful of assorted fixes and cleanups, some niceties around the chain index (configuring how much it should save), and how data is stored. Some other changes and fixups around documentation, as well as a change to the outputs of unbalanced transactions.

What's Changed

  • PAB: More consistent slot configs by @kk-hainq in #77
  • Don't use default slotConfig where this was easily fixable. by @sjoerdvisscher in #89
  • chore(deps): bump nixbuild/nix-quick-install-action from 7 to 8 by @dependabot in #96
  • Export mustSatisfyAnyOf in Ledger.Constraints (fix #95). by @ak3n in #97
  • SCP-2880: Transaction outputs should contain a minimum of 2 Ada. by @koslambrou in #76
  • Plutus-use-cases QuickCheck models by @MaximilianAlgehed in #102
  • Upgrade node version by @raduom in #94
  • Chain Index: users can configure to only store txs from a block no onward by @kk-hainq in #72
  • Chain Index: separate scripts and redeemers tables by @kk-hainq in #71
  • Update order-book-pattern.rst by @AlexITC in #123
  • Add contributing section about working with local copies of deps by @michaelpj in #125
  • SCP-2622: Document deployment details. by @shlevy in #126
  • SCP-2945: Only script outputs in unbalanced transactions by @sjoerdvisscher in #57
  • Contract model sanity check property by @UlfNorell in #114

Full Changelog: v2021-11-05...v2021-11-22