Skip to content

Commit

Permalink
bumped version to 0.4.0-beta
Browse files Browse the repository at this point in the history
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
  • Loading branch information
nhenin and coderabbitai[bot] committed May 11, 2024
1 parent 2ef0439 commit dcdca30
Show file tree
Hide file tree
Showing 33 changed files with 235 additions and 250 deletions.
82 changes: 82 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,85 @@

# 0.4.0-beta - 11th May 2024

## General

- Feat: Created a new experimental package `@marlowe.io/marlowe-template` that helps to share the parameters used in the creation of a Marlowe contract. ([PR-184](https://github.com/input-output-hk/marlowe-ts-sdk/pull/184))

- Feat: **Initial Account Deposits Feature Integration (Runtime v1.0.0):**

- **Purpose:** This update introduces the capability for users to make initial deposits into their accounts upon creation. This feature aims to streamline the account setup process and enhance user experience.
- **Benefits:** This feature squashes the Contract Creation and Initial Input Deposits into 1 transaction instead of multiple ones.

- Feat: **Introduction of a New Contract API in the Runtime Lifecycle API:**
- **Purpose:** The addition of a new Contract API is designed to provide developers with more flexibility and control (contract instance concept) over smart contract management within the runtime environment.
- **Benefits:** Developers can now leverage enhanced functionalities for deploying, updating, and interacting with smart contracts. This API simplifies complex contract operations and supports more robust smart contract development.

## @marlowe.io/wallet

- Feat: Added a `@marlowe.io/wallet/peer-connect` module to enable mobile support by adapting to the [cardano-peer-connect](https://github.com/fabianbormann/cardano-peer-connect) library. ([PR-179](https://github.com/input-output-hk/marlowe-ts-sdk/pull/179))

## @marlowe.io/language-examples

- Feat: `Atomic swap v2` : Simplified version using the new runtime `v1.0.0` feature (`initial account deposits`)
- see end-to-end tests for examples (e.g : `swap.ada.token.e2e.spec.ts`)

## @marlowe.io/runtime-rest-client

- `mkRestClient` provides optional `strict` parameter for performing dynamic type checking in `RestClient` methods. ([PR-180](https://github.com/input-output-hk/marlowe-ts-sdk/pull/180))
- **BREAKING CHANGE** The following `RestClient` methods use a keyword argument object instead of positional arguments. ([PR-180](https://github.com/input-output-hk/marlowe-ts-sdk/pull/180))
- `createContractSources`
- `getContractById`
- `submitContract`
- `getTransactionsForContract`
- `submitContractTransaction`
- `getContractTransactionById`
- `getWithdrawalById`
- `submitWithdrawal`

- Feat: `initial account deposits` (runtime v1.0.0) for Contract Creation (`BuildCreateContractTxRequest` via `buildCreateContractTx`):([PR-188](https://github.com/input-output-hk/marlowe-ts-sdk/pull/188))

## @marlowe.io/runtime-core

- Feat: Added AddressBech32 validation using the lucid library ([PR-184](https://github.com/input-output-hk/marlowe-ts-sdk/pull/184))
- Fix: Added proper type guards to Metadata ([PR-184](https://github.com/input-output-hk/marlowe-ts-sdk/pull/184))

- Fix: Branding of ContractId and TxId ([PR-185](https://github.com/input-output-hk/marlowe-ts-sdk/pull/185))

- Feat: `initial account deposits` (runtime v1.0.0) for Contract Creation ([PR-188](https://github.com/input-output-hk/marlowe-ts-sdk/pull/188)):
- Added `export type AccountDeposits = { [key in AddressOrRole]: AssetsMap };` and associated utility functions.

## @marlowe.io/runtime-lifecycle

- Feat (PLT-9089): Added support for contract bundles in the `lifecycle.contracts.createContract` function. ([PR-167](https://github.com/input-output-hk/marlowe-ts-sdk/pull/167))

- `mkRuntimeLifecycle` provides optional `strict` parameter for performing dynamic type checking in `RestClient` methods. ([PR-180](https://github.com/input-output-hk/marlowe-ts-sdk/pull/180))

- Fix: Temporal fix for converting the cardano time interval to the Marlowe time interval in getInputHistory ([PR-181](https://github.com/input-output-hk/marlowe-ts-sdk/pull/181))

- Feat: Added a new experimental API for computing, simulating and applying the next applicable Actions/Inputs. ([PR-187](https://github.com/input-output-hk/marlowe-ts-sdk/pull/187))
- Doc: Improved package main documentation ([PR-187](https://github.com/input-output-hk/marlowe-ts-sdk/pull/187))

- Feat: New Contract API `packages/runtime/lifecycle/src/generic/new-contract-api.ts` ([PR-188](https://github.com/input-output-hk/marlowe-ts-sdk/pull/188)):
- Generic `waitConfirmation()` : same for contract creation and apply inputs
- Seamless Integration of Applicable Actions API
- simplfied interface (`create` and `load` with a concept of `ContractInstance` object)
- see end-to-end tests for examples (e.g : `swap.ada.token.e2e.spec.ts`)
- Feat: `initial account deposits` feature (runtime v1.0.0) for Contract Creation ([PR-188](https://github.com/input-output-hk/marlowe-ts-sdk/pull/188)):
- new parameter field `accountDeposits` in
- e.g.

```ts
const sellerContractInstance = await sellerLifecycle.newContractAPI.create({
contract: swapContract,
roles: { [scheme.ask.buyer.role_token]: mintRole("OpenRole") },
accountDeposits: mkaccountDeposits([[scheme.offer.seller, seller.assetsProvisioned]]),
});
```

## @marlowe.io/marlowe-object

- **BREAKING CHANGE** Feat: Added Annotations to the contract type. ([PR-181](https://github.com/input-output-hk/marlowe-ts-sdk/pull/181))
- Experimental Feat: Added a sourceMap API to match the annotated marlowe-object source with the ContractClosure. ([PR-181](https://github.com/input-output-hk/marlowe-ts-sdk/pull/181))
# 0.3.0-beta - 18 Jan 2024

The Marlowe team is happy to announce the 0.3.0 release with the following Milestones completed:
Expand Down
9 changes: 5 additions & 4 deletions Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,11 @@ It is composed of several npm packages documented in the [API reference](https:/

In order to interact with Marlowe contracts, the **TS-SDK** needs a Runtime instance. The following table shows the compatibility between the SDK and the Runtime versions:

| | runtime v0.0.5 | runtime v0.0.6 |
| ------------------------------------------------------------------------------------------- | :------------: | :------------: |
| [SDK 0.2.0-beta](https://github.com/input-output-hk/marlowe-ts-sdk/releases/tag/0.2.0-beta) || x |
| [SDK 0.3.0-beta](https://github.com/input-output-hk/marlowe-ts-sdk/releases/tag/0.3.0-beta) |||
| | runtime v0.0.5 | runtime v0.0.6 | runtime v1.0.0 |
| ------------------------------------------------------------------------------------------- | :------------: | :------------: | :------------: |
| [SDK 0.2.0-beta](https://github.com/input-output-hk/marlowe-ts-sdk/releases/tag/0.2.0-beta) || x | x |
| [SDK 0.3.0-beta](https://github.com/input-output-hk/marlowe-ts-sdk/releases/tag/0.3.0-beta) ||| x |
| [SDK 0.4.0-beta](https://github.com/input-output-hk/marlowe-ts-sdk/releases/tag/0.4.0-beta) ||||

To get a running instance of the Runtime, it is recommended to check out the instructions on the [Marlowe Starter Kit](https://github.com/input-output-hk/marlowe-starter-kit)

Expand Down

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20240122_133315_hrajchert_cip45.md

This file was deleted.

16 changes: 0 additions & 16 deletions changelog.d/20240126_162752_bjorn.wilhelm.kihlberg_PLT_9368.md

This file was deleted.

8 changes: 0 additions & 8 deletions changelog.d/20240201_155716_hrajchert_annotations.md

This file was deleted.

8 changes: 0 additions & 8 deletions changelog.d/20240214_142506_hrajchert_marlowe_template.md

This file was deleted.

3 changes: 0 additions & 3 deletions changelog.d/20240222_130945_hrajchert_fix_branded_output.md

This file was deleted.

This file was deleted.

This file was deleted.

14 changes: 7 additions & 7 deletions doc/howToDevelop.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,13 +206,13 @@ And in a separate project you can install the tarballs using a file url when dec
```json
{
"dependencies": {
"@marlowe.io/runtime-lifecycle": "file:<path-to-dist>/marlowe.io-runtime-lifecycle-0.4.0-beta-rc1.tgz",
"@marlowe.io/runtime-rest-client": "file:<path-to-dist>/marlowe.io-runtime-rest-client-0.4.0-beta-rc1.tgz",
"@marlowe.io/adapter": "file:<path-to-dist>/marlowe.io-adapter-0.4.0-beta-rc1.tgz",
"@marlowe.io/runtime-core": "file:<path-to-dist>/marlowe.io-runtime-core-0.4.0-beta-rc1.tgz",
"@marlowe.io/language-core-v1": "file:<path-to-dist>/marlowe.io-language-core-v1-0.4.0-beta-rc1.tgz",
"@marlowe.io/language-examples": "file:<path-to-dist>/marlowe.io-language-examples-0.4.0-beta-rc1.tgz",
"@marlowe.io/wallet": "file:<path-to-dist>/marlowe.io-wallet-0.4.0-beta-rc1.tgz"
"@marlowe.io/runtime-lifecycle": "file:<path-to-dist>/marlowe.io-runtime-lifecycle-0.4.0-beta.tgz",
"@marlowe.io/runtime-rest-client": "file:<path-to-dist>/marlowe.io-runtime-rest-client-0.4.0-beta.tgz",
"@marlowe.io/adapter": "file:<path-to-dist>/marlowe.io-adapter-0.4.0-beta.tgz",
"@marlowe.io/runtime-core": "file:<path-to-dist>/marlowe.io-runtime-core-0.4.0-beta.tgz",
"@marlowe.io/language-core-v1": "file:<path-to-dist>/marlowe.io-language-core-v1-0.4.0-beta.tgz",
"@marlowe.io/language-examples": "file:<path-to-dist>/marlowe.io-language-examples-0.4.0-beta.tgz",
"@marlowe.io/wallet": "file:<path-to-dist>/marlowe.io-wallet-0.4.0-beta.tgz"
}
}
```
Expand Down
2 changes: 1 addition & 1 deletion doc/modules-system.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The Marlowe SDK is built using ESM modules but one of its dependencies (fp-ts) d
In most packages documentation you'll find something like:

```html
<script src="https://cdn.jsdelivr.net/gh/input-output-hk/marlowe-ts-sdk@0.4.0-beta-rc1/jsdelivr-npm-importmap.js"></script>
<script src="https://cdn.jsdelivr.net/gh/input-output-hk/marlowe-ts-sdk@0.4.0-beta/jsdelivr-npm-importmap.js"></script>
<script type="module">
import * as wallet from "@marlowe.io/wallet";
// ...
Expand Down
4 changes: 2 additions & 2 deletions doc/versioning-and-releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The TS-SDK follows a versioning system where, after version 1, it aligns with se

Before version 1, the TS-SDK adheres to beta rules:

- **Beta Versions:** While in the 0.x.x versions, if a breaking change is introduced, the Major version is not incremented; instead, the Minor version is increased. Additionally, these versions will end with the `-beta` suffix, for example `0.4.0-beta-rc1`.
- **Beta Versions:** While in the 0.x.x versions, if a breaking change is introduced, the Major version is not incremented; instead, the Minor version is increased. Additionally, these versions will end with the `-beta` suffix, for example `0.4.0-beta`.

## Release Checklist

Expand Down Expand Up @@ -42,7 +42,7 @@ Before version 1, the TS-SDK adheres to beta rules:
2. **Release Tag:**

- Use git to create and push a release tag.
- `git tag -a 0.4.0-beta-rc1 -m "Release v0.4.0-beta-rc1"`
- `git tag -a 0.4.0-beta -m "Release v0.4.0-beta"`
- `git push --tags`

3. **Packages Build and Publish:**
Expand Down
Loading

0 comments on commit dcdca30

Please sign in to comment.