v0.3.0-rc.1
Pre-release
Pre-release
Summary
Added
- Add UUPS Proxy:
UUPSUpgradeablecontract andIErc1822Proxiabletrait. #752 - Add
EnumerableSetgeneric type. #733 - Add
EnumerableSetimplementation for:Address,B256,U8,U16,U32,U64,U128,U256. #733 - Add
IErc1155Receivertrait. #747 - Add
Erc1155Holdercontract. #747 - Add
IErc721Receivertrait. #743 - Add
Erc721Holdercontract. #743 - Add
Precompiles::p256_verifywrapper function. #754 - The
Precompiles::ec_recoveris now callable on&self. #754 - The
ecdsa::recoverfunction now acceptsimpl StaticCallContextinstead of&mut impl TopLevelStorage. #754 SafeErc20now implements:try_safe_transfer,try_safe_transfer_from,transfer_and_call_relaxed,transfer_from_and_call_relaxedandapprove_and_call_relaxed. #765- Add bidirectional conversions between
ruint::Uintand crypto libraryUinttypes behindruintfeature toggle. #758 - Add bidirectional conversions between
Uintandu8,u16,u32,u64,u128types. #764 - Add EDDSA (Ed25519) signature scheme. #757
Changed (Breaking)
- Remove initial
EnumerableAddressSetimplementation. #733 - Rename
IERC721ReceiverSolidity Interface toIErc721ReceiverInterface. #743 - Change
RECEIVER_FN_SELECTORtype toFixedBytes<4>. #743 - Rename
IERC1155ReceiverSolidity Interface toIErc1155ReceiverInterface. #747 - Change
Erc1155ReceiverconstantsSINGLE_TRANSFER_FN_SELECTORandBATCH_TRANSFER_FN_SELECTORto typeB32. #747 - Change
Erc721ReceiverconstantRECEIVER_FN_SELECTORto typeB32. #747 - Rename
Precompiles::ecrecoverwrapper function toPrecompiles::ec_recover. #754 - Replace associated error type with
Vec<u8>inIErc1155ReceiverandIErc721Receivertraits. #770 - Add
IErc721Receivertrait bound to theIErc721Wrappertrait. #770
Changed
- Rename
FixedBytes<4>toB32andFixedBytes<32>toB256andStorageFixedBytes<32>toStorageB256. #747 - Replace
SafeErc20::encodes_truewithBool::abi_decodeinSafeErc20when decoding the bytes result. #754 - Simplify Pedersen hash API to accept any type that implements
Into<P::BaseField>. #758
Fixed
- Fix
export-abibug forreentrantfeature. #753
Full Changes List
- feat: add
Erc721Holdercontract by @bidzyyys in #743. - feat: add
Erc1155Holdercontract + use type aliases forFixedBytes<N>by @bidzyyys in #747. - fix:
export-abibug for reentrant feature by @bidzyyys in #753. - ref: Replace
SafeErc20::encodes_truewithBool::abi_decodeinSafeErc20when decoding the bytes result by @0xNeshi in #754. - feat:
secp256r1precompile wrapper by @0xNeshi in #755. - feat:
EnumerableSetTrait and Implementations by @davebryson & @qalisander in #733. - feat: implement conversions
ruint::Uint<->openzeppelin_crypto::Uintby @bidzyyys & @qalisander in #758. - feat: UUPS Proxy by @bidzyyys in #752.
- feat: update
SafeErc20to match the new Solidity version of the Contract by @0xNeshi in #765. - feat: add
Erc1155Holder&Erc721Holderexamples by @bidzyyys in #770. - feat: conversion between
Uintand primitive integers by @qalisander in #764. - feat: Ed25519 signature (EDDSA) by @qalisander in #757.
Full Changelog: v0.3.0-alpha.1...v0.3.0-rc.1