lambda-buffers
lambda-buffers copied to clipboard
Planning: LambdaBuffers Cardano Conway upgrades
Conway upgrade brings a lot of updates to plutus-ledger-api which means LambdaBuffers need to sync up, specifically of concern for us is https://github.com/IntersectMBO/plutus/tree/master/plutus-ledger-api/src/PlutusLedgerApi/V3
LB Schema
- [ ] Introduce all the PLA V3 types introduced by Conway and their PlutusData/Ord/Json instance declarations in libs/lbf-plutus/Plutus/V3.lbf
Haskell codegen
- [ ] Bump to latest plutus-ledger-api with Plutus.V3
- [ ] Update lambda-buffers-codegen/data/haskell-plutus.json with the new type mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-haskell
- [ ] Update and create new golden reference set
- [ ] Update generators
- [ ] Update internal roundtrip tests for Eq/Json/PlutusData
Plutarch codegen
- [ ] Bump everything to Plutarch 1.3.0 (has Plutus.V3 types)
- [ ] Update lambda-buffers-codegendata/plutarch-plutus.json with the new mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-plutarch
- [ ] Update PlutusData golden tests
- [ ] Update internal roundtrip tests for Eq/PlutusData
PlutusTx codegen
- [ ] Bump everything to latest rebranded PlutusTx
- [ ] Update lambda-buffers-codegendata/plutustx-plutus.json with the new mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-plutustx
- [ ] Update PlutusData golden tests
- [ ] Update internal roundtrip tests for Eq/PlutusData
Rust codegen
- [ ] Add new Plutus.V3 types to https://github.com/mlabs-haskell/plutus-ledger-api-rust/
- [ ] Bump everything to new pla-rust version with Plutus.V3 types
- [ ] Update lambda-buffers-codegendata/rust-plutus.json with the new mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-rust
- [ ] Update PlutusData/Json golden tests
- [ ] Update internal roundtrip tests for Eq/Json/PlutusData
Typescript codegen
- [ ] Add new Plutus.V3 types to https://github.com/mlabs-haskell/plutus-ledger-api-typescript/
- [ ] Bump everything to new pla-typescript version with Plutus.V3 types
- [ ] Update lambda-buffers-codegendata/typescript-plutus.json with the new mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-typescript
- [ ] Update PlutusData/Json golden tests
- [ ] Update internal roundtrip tests for Eq/Json/PlutusData
Purescript codegen
- [ ] Migrate everything to https://github.com/mlabs-haskell/purescript-cardano-types that has all the Plutus.V3 types and remove CTL as a dependency
- [ ] Implement LB Json instances for ALL Plutus types
- [ ] Update lambda-buffers-codegendata/purescript-plutus.json with the new mappings
- [ ] Update testing testsuites/lbt-plutus/lbt-plutus-purescript
- [ ] Update PlutusData/Json golden tests
- [ ] Update internal roundtrip tests for Eq/Json/PlutusData
Upgrade dependants
- [ ] Demo https://github.com/mlabs-haskell/lambda-buffers-for-cardano
- [ ] Client projects