v2.0.0-rc.0
Pre-releaseMajor Changes
-
d8561fe: Modified the
OutputValidityProof
struct:- Collapsed the
vouchersEpochRootHash
andnoticesEpochRootHash
fields into a singleoutputsEpochRootHash
field - Added an
inputRange
field
- Collapsed the
-
d8561fe: Modified the ERC-20 deposit input:
- Removed the
success
field, because the ERC-20 portal now only adds inputs for successful deposits.
- Removed the
-
d8561fe: Modified the
CanonicalMachine
library:- Collapsed the
VOUCHER_METADATA_LOG2_SIZE
andNOTICE_METADATA_LOG2_SIZE
constants into a singleOUTPUT_METADATA_LOG2_SIZE
constant (with the same value). - Collapsed the
EPOCH_VOUCHER_LOG2_SIZE
andEPOCH_NOTICE_LOG2_SIZE
constants into a singleEPOCH_OUTPUT_LOG2_SIZE
constant (with the same value). - Updated the value of the
INPUT_MAX_SIZE
constant to reflect a change in the off-chain machine.
- Collapsed the
-
d8561fe: Modified the
EtherPortal
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
IEtherPortal
-
-
d8561fe: Modified the
AbstractConsensus
contract:- Removed the
join
function - Implemented the
getEpochHash
function - Added an internal
_acceptClaim
function
- Removed the
-
13eb18a: Inputs are now blockchain-agnostic and self-contained blobs.
-
4e2533e: Include application address in
EvmAdvance
input. -
d8561fe: Modified the
IInputRelay
interface:- Made it inherit from
IERC165
- Made it inherit from
-
d8561fe: Modified the
ERC1155BatchPortal
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
IERC1155BatchPortal
-
-
d8561fe: Modified the
IEtherPortal
interface:- Added an
EtherTransferFailed
error.
- Added an
-
d8561fe: Bumped
@openzeppelin/contracts
from4.9.2
to5.0.0
. -
d8561fe: Moved
Proof
to a dedicated file in thecommon
directory. -
f39e4ef: Added a
value
field to vouchers. -
d8561fe: Moved
OutputValidityProof
to a dedicated file in thecommon
directory. -
d8561fe: Modified the
ICartesiDAppFactory
interface:-
Renamed it as
IApplicationFactory
. -
Added the following parameters to its functions and events:
inputBox
inputRelays
-
-
d8561fe: Modified the
CartesiDApp
contract:-
Renamed it as
Application
. -
Added the following parameters to its constructor:
inputBox
inputRelays
-
Made it support the following interfaces (as in EIP-165):
IApplication
IERC721Receiver
-
Removed the
withdrawEther
function. -
Removed the
OnlyApplication
error. -
Removed the
EtherTransferFailed
error.
-
-
d8561fe: Modified the
ERC1155SinglePortal
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
IERC1155SinglePortal
-
-
d8561fe: 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
ApplicationAddressRelay
contract. - the
IApplicationAddressRelay
interface.
- the
-
8892a88: Include chain ID in
EvmAdvance
input. -
d8561fe: Modified the
ICartesiDApp
interface:-
Renamed it as
IApplication
. -
Made it inherit from:
IERC721Receiver
.IERC1155Receiver
(which inherits fromIERC165
).
-
Modified the
executeVoucher
function:- Renamed it as
executeOutput
. - Errors raised by low-level calls are bubbled up.
- Changed the type of the
proof
parameter toOutputValidityProof
. - Removed the boolean return value.
- Renamed it as
-
Modified the
validateNotice
function:- Renamed it as
validateOutput
. - Changed type of the
proof
parameter toOutputValidityProof
. - Removed the boolean return value.
- Renamed it as
-
Modified the
VoucherExecuted
event:- Renamed it as
OutputExecuted
. - Split the
voucherId
parameter intoinputIndex
andoutputIndexWithinInput
parameters. - Added an
output
parameter.
- Renamed it as
-
Modified the
wasVoucherExecuted
function:- Renamed it as
wasOutputExecuted
.
- Renamed it as
-
Added a
getInputBox
function. -
Added a
getInputRelays
function. -
Added an
InputIndexOutOfRange
error. -
Added an
OutputNotExecutable
error. -
Added an
OutputNotReexecutable
error. -
Added an
IncorrectEpochHash
error. -
Added an
IncorrectOutputsEpochRootHash
error. -
Added an
IncorrectOutputHashesRootHash
error.
-
-
13eb18a: Modified the
IInputBox
interface:-
Modified the
InputAdded
event:- Removed the
sender
parameter. - Changed the semantics of the
input
parameter.
- Removed the
-
Added an
InputTooLarge
error.
-
-
d8561fe: Modified the
CartesiDAppFactory
contract:- Renamed it as
ApplicationFactory
.
- Renamed it as
-
d8561fe: Modified the
InputRelay
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
-
-
d8561fe: 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,(uint64,uint64),bytes32)
function
- Removed the
-
d8561fe: Completely modified the
IConsensus
interface:- Removed the
join
function - Removed the
getClaim
function - Removed the
ApplicationJoined
event - Added a
submitClaim
function - Added a
getEpochHash
function - Added a
ClaimSubmission
event - Added a
ClaimAcceptance
event
- Removed the
-
d8561fe: Bumped the Solidity compiler from
0.8.19
to0.8.23
. -
d8561fe: Modified the
IERC20Portal
interface:- Added an
ERC20TransferFailed
error.
- Added an
-
d8561fe: Modified the
ERC20Portal
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
IERC20Portal
-
-
d8561fe: Removed deployments to Goerli testnets (L1 and L2s).
-
d8561fe: Modified the
ERC721Portal
contract:-
Made it support the following interfaces (as in EIP-165):
IERC165
IInputRelay
IERC721Portal
-
Minor Changes
-
d8561fe: Added:
- an
Outputs
interface - an
InputRange
struct - a
LibInputRange
library - a
Quorum
contract (which implements theIConsensus
interface) - a
QuorumFactory
contract - an
IQuorumFactory
interface
- an