From 38f36823102ea1b89906e9d08d0c8ccdb03b5a4d Mon Sep 17 00:00:00 2001 From: rollups-contracts-bot <153998668+rollups-contracts-bot@users.noreply.github.com> Date: Sun, 18 Aug 2024 02:52:05 +0000 Subject: [PATCH] chore: version packages --- .changeset/calm-panthers-retire.md | 11 - .changeset/chilly-cherries-join.md | 7 - .changeset/clean-gorillas-occur.md | 7 - .changeset/fuzzy-trainers-tan.md | 9 - .changeset/grumpy-coins-drop.md | 5 - .changeset/healthy-wasps-shout.md | 13 -- .changeset/hip-pans-travel.md | 9 - .changeset/lazy-gorillas-scream.md | 9 - .changeset/little-cheetahs-jump.md | 5 - .changeset/lovely-meals-wink.md | 7 - .changeset/lucky-elephants-play.md | 5 - .changeset/olive-steaks-explode.md | 5 - .changeset/pink-teachers-whisper.md | 5 - .changeset/popular-ghosts-fix.md | 9 - .changeset/purple-dolphins-nail.md | 5 - .changeset/purple-pots-attack.md | 5 - .changeset/quiet-guests-greet.md | 7 - .changeset/red-wasps-report.md | 13 -- .changeset/seven-teachers-behave.md | 16 -- .changeset/shy-dragons-smoke.md | 5 - .changeset/silly-islands-end.md | 48 ----- .changeset/six-doors-grow.md | 12 -- .changeset/six-schools-live.md | 5 - .changeset/slow-comics-fold.md | 7 - .changeset/smooth-ducks-trade.md | 9 - .changeset/spotty-peas-speak.md | 16 -- .changeset/strange-foxes-melt.md | 13 -- .changeset/strong-countries-check.md | 5 - .changeset/thirty-crews-fail.md | 5 - .changeset/tough-carrots-invent.md | 7 - .changeset/violet-laws-sin.md | 5 - CHANGELOG.md | 311 +++++++++++++++++++++------ package.json | 2 +- 33 files changed, 246 insertions(+), 356 deletions(-) delete mode 100644 .changeset/calm-panthers-retire.md delete mode 100644 .changeset/chilly-cherries-join.md delete mode 100644 .changeset/clean-gorillas-occur.md delete mode 100644 .changeset/fuzzy-trainers-tan.md delete mode 100644 .changeset/grumpy-coins-drop.md delete mode 100644 .changeset/healthy-wasps-shout.md delete mode 100644 .changeset/hip-pans-travel.md delete mode 100644 .changeset/lazy-gorillas-scream.md delete mode 100644 .changeset/little-cheetahs-jump.md delete mode 100644 .changeset/lovely-meals-wink.md delete mode 100644 .changeset/lucky-elephants-play.md delete mode 100644 .changeset/olive-steaks-explode.md delete mode 100644 .changeset/pink-teachers-whisper.md delete mode 100644 .changeset/popular-ghosts-fix.md delete mode 100644 .changeset/purple-dolphins-nail.md delete mode 100644 .changeset/purple-pots-attack.md delete mode 100644 .changeset/quiet-guests-greet.md delete mode 100644 .changeset/red-wasps-report.md delete mode 100644 .changeset/seven-teachers-behave.md delete mode 100644 .changeset/shy-dragons-smoke.md delete mode 100644 .changeset/silly-islands-end.md delete mode 100644 .changeset/six-doors-grow.md delete mode 100644 .changeset/six-schools-live.md delete mode 100644 .changeset/slow-comics-fold.md delete mode 100644 .changeset/smooth-ducks-trade.md delete mode 100644 .changeset/spotty-peas-speak.md delete mode 100644 .changeset/strange-foxes-melt.md delete mode 100644 .changeset/strong-countries-check.md delete mode 100644 .changeset/thirty-crews-fail.md delete mode 100644 .changeset/tough-carrots-invent.md delete mode 100644 .changeset/violet-laws-sin.md diff --git a/.changeset/calm-panthers-retire.md b/.changeset/calm-panthers-retire.md deleted file mode 100644 index 2f408f14..00000000 --- a/.changeset/calm-panthers-retire.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `OutputValidityProof` struct - -- Removed all fields - -- Added an `outputIndex` field - -- Added an `outputHashesSiblings` field diff --git a/.changeset/chilly-cherries-join.md b/.changeset/chilly-cherries-join.md deleted file mode 100644 index d042e40f..00000000 --- a/.changeset/chilly-cherries-join.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the ERC-20 deposit input: - -- Removed the `success` field, because the ERC-20 portal now only adds inputs for successful deposits. diff --git a/.changeset/clean-gorillas-occur.md b/.changeset/clean-gorillas-occur.md deleted file mode 100644 index 4c26d912..00000000 --- a/.changeset/clean-gorillas-occur.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `CanonicalMachine` library: - -- Updated the value of the `INPUT_MAX_SIZE` constant to reflect a change in the off-chain machine. diff --git a/.changeset/fuzzy-trainers-tan.md b/.changeset/fuzzy-trainers-tan.md deleted file mode 100644 index a904e270..00000000 --- a/.changeset/fuzzy-trainers-tan.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `AbstractConsensus` contract: - -- Removed the `join` function -- Implemented the `wasClaimAccepted` function -- Added an internal `_acceptClaim` function diff --git a/.changeset/grumpy-coins-drop.md b/.changeset/grumpy-coins-drop.md deleted file mode 100644 index 7b79c017..00000000 --- a/.changeset/grumpy-coins-drop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Inputs are now blockchain-agnostic and self-contained blobs. diff --git a/.changeset/healthy-wasps-shout.md b/.changeset/healthy-wasps-shout.md deleted file mode 100644 index 4cd39566..00000000 --- a/.changeset/healthy-wasps-shout.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"@cartesi/rollups": minor ---- - -Added: - -- an `Outputs` interface -- a `LibAddress` library -- a `LibError` library -- a `LibMerkle32` library -- a `Quorum` contract (which implements the `IConsensus` interface) -- a `QuorumFactory` contract -- an `IQuorumFactory` interface diff --git a/.changeset/hip-pans-travel.md b/.changeset/hip-pans-travel.md deleted file mode 100644 index 0c942ab4..00000000 --- a/.changeset/hip-pans-travel.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Add the following fields as the input metadata: - -- The application contract address -- The chain ID -- The latest RANDAO mix of the post beacon state of the previous block diff --git a/.changeset/lazy-gorillas-scream.md b/.changeset/lazy-gorillas-scream.md deleted file mode 100644 index 5e919848..00000000 --- a/.changeset/lazy-gorillas-scream.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `IInputRelay` interface: - -- Renamed it as `IPortal` - -- Moved it to `contracts/portals` diff --git a/.changeset/little-cheetahs-jump.md b/.changeset/little-cheetahs-jump.md deleted file mode 100644 index 55de232e..00000000 --- a/.changeset/little-cheetahs-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Added a `lastProcessedBlockNumber` parameter to `IConsensus` functions and events. diff --git a/.changeset/lovely-meals-wink.md b/.changeset/lovely-meals-wink.md deleted file mode 100644 index fbe2ab60..00000000 --- a/.changeset/lovely-meals-wink.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `IEtherPortal` interface: - -- Added an `EtherTransferFailed` error. diff --git a/.changeset/lucky-elephants-play.md b/.changeset/lucky-elephants-play.md deleted file mode 100644 index 6b5569ae..00000000 --- a/.changeset/lucky-elephants-play.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": minor ---- - -Add a contract for safe ERC20 transfers. This can be used by delegatecall vouchers. diff --git a/.changeset/olive-steaks-explode.md b/.changeset/olive-steaks-explode.md deleted file mode 100644 index 691d32e3..00000000 --- a/.changeset/olive-steaks-explode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Bumped `@openzeppelin/contracts` from `4.9.2` to `5.0.2`. diff --git a/.changeset/pink-teachers-whisper.md b/.changeset/pink-teachers-whisper.md deleted file mode 100644 index 0a72e8f8..00000000 --- a/.changeset/pink-teachers-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Removed `authorityOwner` parameter from `AuthorityCreated` event. diff --git a/.changeset/popular-ghosts-fix.md b/.changeset/popular-ghosts-fix.md deleted file mode 100644 index 0b0e6bd0..00000000 --- a/.changeset/popular-ghosts-fix.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Added an `epochLength` parameter to functions of: - -- `IAuthorityFactory` -- `ISelfHostedApplicationFactory` -- `IQuorumFactory` diff --git a/.changeset/purple-dolphins-nail.md b/.changeset/purple-dolphins-nail.md deleted file mode 100644 index 92a2899f..00000000 --- a/.changeset/purple-dolphins-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Added a `value` field to vouchers. diff --git a/.changeset/purple-pots-attack.md b/.changeset/purple-pots-attack.md deleted file mode 100644 index f1cf87c7..00000000 --- a/.changeset/purple-pots-attack.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Moved `OutputValidityProof` to a dedicated file in the `common` directory. diff --git a/.changeset/quiet-guests-greet.md b/.changeset/quiet-guests-greet.md deleted file mode 100644 index e706babe..00000000 --- a/.changeset/quiet-guests-greet.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `ICartesiDAppFactory` interface: - -- Renamed it as `IApplicationFactory`. diff --git a/.changeset/red-wasps-report.md b/.changeset/red-wasps-report.md deleted file mode 100644 index a63ca2aa..00000000 --- a/.changeset/red-wasps-report.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `CartesiDApp` contract: - -- Renamed it as `Application`. - -- Removed the `withdrawEther` function. - -- Removed the `OnlyApplication` error. - -- Removed the `EtherTransferFailed` error. diff --git a/.changeset/seven-teachers-behave.md b/.changeset/seven-teachers-behave.md deleted file mode 100644 index 4b81acf1..00000000 --- a/.changeset/seven-teachers-behave.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Removed: - -- the `History` contract. -- the `IHistory` interface. -- the `HistoryFactory` contract. -- the `IHistoryFactory` interface. -- the `AuthorityHistoryPairFactory` contract. -- the `IAuthorityHistoryPairFactory` interface. -- the `OutputEncoding` library. -- the `LibInput` library. -- the `DAppAddressRelay` contract. -- the `IDAppAddressRelay` interface. diff --git a/.changeset/shy-dragons-smoke.md b/.changeset/shy-dragons-smoke.md deleted file mode 100644 index 5ba18e7c..00000000 --- a/.changeset/shy-dragons-smoke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": minor ---- - -Add self-hosted application factory contract diff --git a/.changeset/silly-islands-end.md b/.changeset/silly-islands-end.md deleted file mode 100644 index c8515122..00000000 --- a/.changeset/silly-islands-end.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `ICartesiDApp` interface: - -- Renamed it as `IApplication`. - -- Made it inherit from: - - - `IERC721Receiver`. - - `IERC1155Receiver`. - -- Modified the `executeVoucher` function: - - - Renamed it as `executeOutput`. - - Errors raised by low-level calls are bubbled up. - - Changed the type of the `proof` parameter to `OutputValidityProof`. - - Removed the boolean return value. - -- Modified the `validateNotice` function: - - - Renamed it as `validateOutput`. - - Changed type of the `proof` parameter to `OutputValidityProof`. - - Removed the boolean return value. - -- Modified the `VoucherExecuted` event: - - - Renamed it as `OutputExecuted`. - - Removed `voucherId` parameters. - - Added an `outputIndex` parameter. - - Added an `output` parameter. - -- Modified the `wasVoucherExecuted` function: - - - Renamed it as `wasOutputExecuted`. - -- Added a `validateOutputHash` function. - -- Added an `InputIndexOutOfRange` error. - -- Added an `OutputNotExecutable` error. - -- Added an `OutputNotReexecutable` error. - -- Added an `InvalidOutputHashesSiblingsArrayLength` error. - -- Added an `ClaimNotAccepted` error. diff --git a/.changeset/six-doors-grow.md b/.changeset/six-doors-grow.md deleted file mode 100644 index 9f97aea5..00000000 --- a/.changeset/six-doors-grow.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `IInputBox` interface: - -- Modified the `InputAdded` event: - - - Removed the `sender` parameter. - - Changed the semantics of the `input` parameter. - -- Added an `InputTooLarge` error. diff --git a/.changeset/six-schools-live.md b/.changeset/six-schools-live.md deleted file mode 100644 index 1d452e53..00000000 --- a/.changeset/six-schools-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": minor ---- - -Added a `getEpochLength` function to `IConsensus` interface. diff --git a/.changeset/slow-comics-fold.md b/.changeset/slow-comics-fold.md deleted file mode 100644 index aa51e45f..00000000 --- a/.changeset/slow-comics-fold.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `CartesiDAppFactory` contract: - -- Renamed it as `ApplicationFactory`. diff --git a/.changeset/smooth-ducks-trade.md b/.changeset/smooth-ducks-trade.md deleted file mode 100644 index 17fcb371..00000000 --- a/.changeset/smooth-ducks-trade.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `InputRelay` contract: - -- Renamed it as `Portal` - -- Moved it to `contracts/portals` diff --git a/.changeset/spotty-peas-speak.md b/.changeset/spotty-peas-speak.md deleted file mode 100644 index 0b0447d1..00000000 --- a/.changeset/spotty-peas-speak.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `Authority` contract: - -- Removed the `AuthorityWithdrawalFailed` error -- Removed the `NewHistory` event -- Removed the `getClaim` function -- Removed the `getHistory` function -- Removed the `join` function -- Removed the `migrateHistoryToConsensus` function -- Removed the `setHistory` function -- Removed the `submitClaim(bytes)` function -- Removed the `withdrawERC20Tokens` function -- Implemented the `submitClaim(address,bytes32)` function diff --git a/.changeset/strange-foxes-melt.md b/.changeset/strange-foxes-melt.md deleted file mode 100644 index 1d4b63db..00000000 --- a/.changeset/strange-foxes-melt.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Completely modified the `IConsensus` interface: - -- Removed the `join` function -- Removed the `getClaim` function -- Removed the `ApplicationJoined` event -- Added a `submitClaim` function -- Added a `wasClaimAccepted` function -- Added a `ClaimSubmission` event -- Added a `ClaimAcceptance` event diff --git a/.changeset/strong-countries-check.md b/.changeset/strong-countries-check.md deleted file mode 100644 index 301fe2c7..00000000 --- a/.changeset/strong-countries-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Bumped the Solidity compiler from `0.8.19` to `0.8.23`. diff --git a/.changeset/thirty-crews-fail.md b/.changeset/thirty-crews-fail.md deleted file mode 100644 index bfa6f253..00000000 --- a/.changeset/thirty-crews-fail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": minor ---- - -Supported the execution of `DELEGATECALL` vouchers diff --git a/.changeset/tough-carrots-invent.md b/.changeset/tough-carrots-invent.md deleted file mode 100644 index 73ad5112..00000000 --- a/.changeset/tough-carrots-invent.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Modified the `IERC20Portal` interface: - -- Added an `ERC20TransferFailed` error. diff --git a/.changeset/violet-laws-sin.md b/.changeset/violet-laws-sin.md deleted file mode 100644 index 3ead9b27..00000000 --- a/.changeset/violet-laws-sin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cartesi/rollups": major ---- - -Removed deployments to Goerli testnets (L1 and L2s). diff --git a/CHANGELOG.md b/CHANGELOG.md index 11ac776c..754b7c3c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,133 +1,312 @@ # @cartesi/rollups +## 2.0.0 + +### Major Changes + +- 8ba37d2: Modified the `OutputValidityProof` struct + + - Removed all fields + - Added an `outputIndex` field + - Added an `outputHashesSiblings` field + +- 8ba37d2: Modified the ERC-20 deposit input: + + - Removed the `success` field, because the ERC-20 portal now only adds inputs for successful deposits. + +- 8ba37d2: Modified the `CanonicalMachine` library: + + - Updated the value of the `INPUT_MAX_SIZE` constant to reflect a change in the off-chain machine. + +- 8ba37d2: Modified the `AbstractConsensus` contract: + + - Removed the `join` function + - Implemented the `wasClaimAccepted` function + - Added an internal `_acceptClaim` function + +- 8ba37d2: Inputs are now blockchain-agnostic and self-contained blobs. +- 446d05a: Add the following fields as the input metadata: + + - The application contract address + - The chain ID + - The latest RANDAO mix of the post beacon state of the previous block + +- 8ba37d2: Modified the `IInputRelay` interface: + + - Renamed it as `IPortal` + - Moved it to `contracts/portals` + +- f8c25e9: Added a `lastProcessedBlockNumber` parameter to `IConsensus` functions and events. +- 8ba37d2: Modified the `IEtherPortal` interface: + + - Added an `EtherTransferFailed` error. + +- 8ba37d2: Bumped `@openzeppelin/contracts` from `4.9.2` to `5.0.2`. +- 3d40890: Removed `authorityOwner` parameter from `AuthorityCreated` event. +- 7f27379: Added an `epochLength` parameter to functions of: + + - `IAuthorityFactory` + - `ISelfHostedApplicationFactory` + - `IQuorumFactory` + +- 8ba37d2: Added a `value` field to vouchers. +- 8ba37d2: Moved `OutputValidityProof` to a dedicated file in the `common` directory. +- 8ba37d2: Modified the `ICartesiDAppFactory` interface: + + - Renamed it as `IApplicationFactory`. + +- 8ba37d2: Modified the `CartesiDApp` contract: + + - Renamed it as `Application`. + - Removed the `withdrawEther` function. + - Removed the `OnlyApplication` error. + - Removed the `EtherTransferFailed` error. + +- 8ba37d2: Removed: + + - the `History` contract. + - the `IHistory` interface. + - the `HistoryFactory` contract. + - the `IHistoryFactory` interface. + - the `AuthorityHistoryPairFactory` contract. + - the `IAuthorityHistoryPairFactory` interface. + - the `OutputEncoding` library. + - the `LibInput` library. + - the `DAppAddressRelay` contract. + - the `IDAppAddressRelay` interface. + +- 8ba37d2: Modified the `ICartesiDApp` interface: + + - Renamed it as `IApplication`. + - Made it inherit from: + + - `IERC721Receiver`. + - `IERC1155Receiver`. + + - Modified the `executeVoucher` function: + + - Renamed it as `executeOutput`. + - Errors raised by low-level calls are bubbled up. + - Changed the type of the `proof` parameter to `OutputValidityProof`. + - Removed the boolean return value. + + - Modified the `validateNotice` function: + + - Renamed it as `validateOutput`. + - Changed type of the `proof` parameter to `OutputValidityProof`. + - Removed the boolean return value. + + - Modified the `VoucherExecuted` event: + + - Renamed it as `OutputExecuted`. + - Removed `voucherId` parameters. + - Added an `outputIndex` parameter. + - Added an `output` parameter. + + - Modified the `wasVoucherExecuted` function: + + - Renamed it as `wasOutputExecuted`. + + - Added a `validateOutputHash` function. + - Added an `InputIndexOutOfRange` error. + - Added an `OutputNotExecutable` error. + - Added an `OutputNotReexecutable` error. + - Added an `InvalidOutputHashesSiblingsArrayLength` error. + - Added an `ClaimNotAccepted` error. + +- 8ba37d2: Modified the `IInputBox` interface: + + - Modified the `InputAdded` event: + + - Removed the `sender` parameter. + - Changed the semantics of the `input` parameter. + + - Added an `InputTooLarge` error. + +- 8ba37d2: Modified the `CartesiDAppFactory` contract: + + - Renamed it as `ApplicationFactory`. + +- 8ba37d2: Modified the `InputRelay` contract: + + - Renamed it as `Portal` + - Moved it to `contracts/portals` + +- 8ba37d2: Modified the `Authority` contract: + + - Removed the `AuthorityWithdrawalFailed` error + - Removed the `NewHistory` event + - Removed the `getClaim` function + - Removed the `getHistory` function + - Removed the `join` function + - Removed the `migrateHistoryToConsensus` function + - Removed the `setHistory` function + - Removed the `submitClaim(bytes)` function + - Removed the `withdrawERC20Tokens` function + - Implemented the `submitClaim(address,bytes32)` function + +- 8ba37d2: Completely modified the `IConsensus` interface: + + - Removed the `join` function + - Removed the `getClaim` function + - Removed the `ApplicationJoined` event + - Added a `submitClaim` function + - Added a `wasClaimAccepted` function + - Added a `ClaimSubmission` event + - Added a `ClaimAcceptance` event + +- 8ba37d2: Bumped the Solidity compiler from `0.8.19` to `0.8.23`. +- 8ba37d2: Modified the `IERC20Portal` interface: + + - Added an `ERC20TransferFailed` error. + +- 8ba37d2: Removed deployments to Goerli testnets (L1 and L2s). + +### Minor Changes + +- 8ba37d2: Added: + + - an `Outputs` interface + - a `LibAddress` library + - a `LibError` library + - a `LibMerkle32` library + - a `Quorum` contract (which implements the `IConsensus` interface) + - a `QuorumFactory` contract + - an `IQuorumFactory` interface + +- 5559379: Add a contract for safe ERC20 transfers. This can be used by delegatecall vouchers. +- d4c1164: Add self-hosted application factory contract +- 7f27379: Added a `getEpochLength` function to `IConsensus` interface. +- 8e958f2: Supported the execution of `DELEGATECALL` vouchers + ## 1.2.0 ### Minor Changes -- 321e29a: Support deployment to `arbitrum_sepolia` and `optimism_sepolia` networks. -- 618121e: Bumped `@cartesi/util` from 6.0.0 to 6.1.0. +- 321e29a: Support deployment to `arbitrum_sepolia` and `optimism_sepolia` networks. +- 618121e: Bumped `@cartesi/util` from 6.0.0 to 6.1.0. ## 1.1.0 ### Minor Changes -- `AuthorityFactory`: Allows anyone to deploy `Authority` contracts. Supports deterministic deployment. -- `HistoryFactory`: Allows anyone to deploy `History` contracts. Supports deterministic deployment. -- `AuthorityHistoryPairFactory`: Allows anyone to deploy `Authority` and `History` contract pairs (such that `History` is owned by `Authority`, and `Authority` stores/retrieves claims from `History`). Supports deterministic deployment. -- `Authority`: Removed deployment files and script. -- `History`: Removed deployment files and script. +- `AuthorityFactory`: Allows anyone to deploy `Authority` contracts. Supports deterministic deployment. +- `HistoryFactory`: Allows anyone to deploy `History` contracts. Supports deterministic deployment. +- `AuthorityHistoryPairFactory`: Allows anyone to deploy `Authority` and `History` contract pairs (such that `History` is owned by `Authority`, and `Authority` stores/retrieves claims from `History`). Supports deterministic deployment. +- `Authority`: Removed deployment files and script. +- `History`: Removed deployment files and script. ## 1.0.0 ### Major Changes -- Added `InvalidClaimIndex` error in `History` contract -- Made portals and relays inherit `InputRelay` -- Renamed `inboxInputIndex` to `inputIndex` in contracts -- Deployed contracts deterministically with `CREATE2` factory -- Renamed fields in `OutputValidityProof` structure -- Updated `@cartesi/util` to 6.0.0 -- Removed base portal and relay contracts and interfaces -- Removed `ConsensusCreated` event from `Authority` contract -- Removed `IInputBox` parameter from `Authority` constructor -- Fixed input size limit in `InputBox` contract +- Added `InvalidClaimIndex` error in `History` contract +- Made portals and relays inherit `InputRelay` +- Renamed `inboxInputIndex` to `inputIndex` in contracts +- Deployed contracts deterministically with `CREATE2` factory +- Renamed fields in `OutputValidityProof` structure +- Updated `@cartesi/util` to 6.0.0 +- Removed base portal and relay contracts and interfaces +- Removed `ConsensusCreated` event from `Authority` contract +- Removed `IInputBox` parameter from `Authority` constructor +- Fixed input size limit in `InputBox` contract ### Minor Changes -- Added input relay interface and base contract -- Deployed ERC-1155 portals -- Added `RPC_URL` environment variable during deployment -- Started using custom errors in contracts +- Added input relay interface and base contract +- Deployed ERC-1155 portals +- Added `RPC_URL` environment variable during deployment +- Started using custom errors in contracts ### Patch Changes -- Improved proof generation system for on-chain tests +- Improved proof generation system for on-chain tests ## 0.9.0 ### Major Changes -- Simplified the on-chain architecture (not backwards-compatible) -- `CartesiDApp` does not implement [EIP-2535](https://eips.ethereum.org/EIPS/eip-2535) anymore -- Made each Portal a contract of their own, and shared amongst all the DApps -- Made inputs added by Portals more compact by using the [packed ABI encoding](https://docs.soliditylang.org/en/latest/abi-spec.html#non-standard-packed-mode) instead of the standard one -- Made ERC-20 deposits more generic by allowing base layer transfers to fail, and adding a boolean field signaling whether it was successful or not -- Made ERC-721 deposits more generic by adding an arbitrary data field to be interpreted by the off-chain machine in the execution layer -- Moved the input boxes of every DApp into a single, permissionless contract -- Input boxes are now append-only—they are not cleared every new epoch (old Input Facet) -- Modularized the consensus layer (a DApp can now seamlessly change its consensus model) -- Modularized the claim storage layer (a consensus can now seamlessly change how it stores claims) -- Voucher bitmask position is now determined by the input index (in the input box) and output index -- Validators need now to specify the range of inputs of each claim they submit on-chain -- Removed Setup Input -- Removed Quorum consensus model implementation (up to 8 validators) -- Removed Bank contract -- Removed DApp configuration parameters related to the off-chain machine specs (now defined as constants) -- Removed `epochIndex` field from `OutputValidityProof` struct -- Removed headers from inputs added by trusted permissionless contracts like portals and relayers +- Simplified the on-chain architecture (not backwards-compatible) +- `CartesiDApp` does not implement [EIP-2535](https://eips.ethereum.org/EIPS/eip-2535) anymore +- Made each Portal a contract of their own, and shared amongst all the DApps +- Made inputs added by Portals more compact by using the [packed ABI encoding](https://docs.soliditylang.org/en/latest/abi-spec.html#non-standard-packed-mode) instead of the standard one +- Made ERC-20 deposits more generic by allowing base layer transfers to fail, and adding a boolean field signaling whether it was successful or not +- Made ERC-721 deposits more generic by adding an arbitrary data field to be interpreted by the off-chain machine in the execution layer +- Moved the input boxes of every DApp into a single, permissionless contract +- Input boxes are now append-only—they are not cleared every new epoch (old Input Facet) +- Modularized the consensus layer (a DApp can now seamlessly change its consensus model) +- Modularized the claim storage layer (a consensus can now seamlessly change how it stores claims) +- Voucher bitmask position is now determined by the input index (in the input box) and output index +- Validators need now to specify the range of inputs of each claim they submit on-chain +- Removed Setup Input +- Removed Quorum consensus model implementation (up to 8 validators) +- Removed Bank contract +- Removed DApp configuration parameters related to the off-chain machine specs (now defined as constants) +- Removed `epochIndex` field from `OutputValidityProof` struct +- Removed headers from inputs added by trusted permissionless contracts like portals and relayers ### Minor Changes -- Added Authority consensus model implementation (single validator) -- Added Simple claim storage implementation (one claim per DApp) -- Added Library that defines several constants related to the canonical off-chain machine -- DApp Address Relay contract (allows the off-chain machine to know the DApp's address) +- Added Authority consensus model implementation (single validator) +- Added Simple claim storage implementation (one claim per DApp) +- Added Library that defines several constants related to the canonical off-chain machine +- DApp Address Relay contract (allows the off-chain machine to know the DApp's address) ### Patch Changes -- Added script for updating proofs used in unit tests -- Adopted [Foundry](https://book.getfoundry.sh/) for contract testing (Hardhat is still being used for deployment) +- Added script for updating proofs used in unit tests +- Adopted [Foundry](https://book.getfoundry.sh/) for contract testing (Hardhat is still being used for deployment) ## 0.7.0 ### Major Changes -- Documentation updates +- Documentation updates ## 0.6.0 ### Minor Changes -- Deploy to Arbitrum Goerli and Optimism Goerli +- Deploy to Arbitrum Goerli and Optimism Goerli ## 0.5.0 ### Major Changes -- Add `validateNotice` function to OutputFacet +- Add `validateNotice` function to OutputFacet ## 0.3.0 ### Major Changes -- Moved logic from `erc721Deposit` function to `onERC721Received` -- Renamed `ERC721Deposited` event to `ERC721Received` and added `operator` field -- Validators who lost a dispute are removed from the validator set, and cannot redeem fees from previous claims -- Changed the visibility of `Bank`'s state variables to private -- Changed the visibility of `LibClaimsMask`'s functions to internal -- Removed `erc721Deposit` function (call `safeTransferFrom` from the ERC-721 contract instead) -- Removed `erc20Withdrawal` function call (vouchers now call `transfer` from the ERC-20 contract directly instead) -- Gas optimizations +- Moved logic from `erc721Deposit` function to `onERC721Received` +- Renamed `ERC721Deposited` event to `ERC721Received` and added `operator` field +- Validators who lost a dispute are removed from the validator set, and cannot redeem fees from previous claims +- Changed the visibility of `Bank`'s state variables to private +- Changed the visibility of `LibClaimsMask`'s functions to internal +- Removed `erc721Deposit` function (call `safeTransferFrom` from the ERC-721 contract instead) +- Removed `erc20Withdrawal` function call (vouchers now call `transfer` from the ERC-20 contract directly instead) +- Gas optimizations ### Minor Changes -- Add factory contract to deploy rollups diamond +- Add factory contract to deploy rollups diamond ### Patch Changes -- Mermaid diagram of the on-chain rollups on README +- Mermaid diagram of the on-chain rollups on README ## 0.2.0 ### Major Changes -- Bumped solc version to 0.8.13 -- Updated architecture to Diamonds design pattern -- Added `FeeManagerFacet` and `Bank` contracts -- Template Hash -- Setup Input -- NFT Portal -- Removed Specific ERC-20 Portal +- Bumped solc version to 0.8.13 +- Updated architecture to Diamonds design pattern +- Added `FeeManagerFacet` and `Bank` contracts +- Template Hash +- Setup Input +- NFT Portal +- Removed Specific ERC-20 Portal ## 0.1.0 diff --git a/package.json b/package.json index 9cce8af8..a37c4c3a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@cartesi/rollups", - "version": "1.2.0", + "version": "2.0.0", "scripts": { "build": "run-s compile export", "clean:ignored": "rimraf artifacts cache coverage deployments/localhost dist generated-src src/types/*",