Releases: OpenZeppelin/rust-contracts-stylus
Releases · OpenZeppelin/rust-contracts-stylus
v0.2.0-alpha.3
Summary
Added
- Optimised implementation of bigintegers
Uint<_>
for finite fields. #495 Erc4626
"Tokenized Vault Standard". #465- Implement
mul_div
forU256
. #465 - Implement
AddAssignChecked
forStorageUint
. #474 Erc20FlashMint
extension. #407
Changed
- Keccak constants
PERMIT_TYPEHASH
inErc20Permit
, andTYPE_HASH
inErc712
are now statically computed. #478 - Use
AddAssignChecked
inVestingWallet
,Erc1155Supply
,Erc1155
,Erc20
,Nonces
. #474 - Use
AddAssignUnchecked
andSubAssignUnchecked
inerc20::_update
. #467
Changed (Breaking)
- Bump cargo-stylus to v0.5.8. #493
- Constants
TYPE_HASH
,FIELDS
,SALT
andTYPED_DATA_PREFIX
, and typeDomainSeparatorTuple
are no longer exported fromutils::cryptography::eip712
. #478 - Bump Stylus SDK to v0.7.0. #433
- Bump
alloy
dependencies to v0.8.14. #433 - Add full support for reentrancy (changed
VestingWallet
signature for some functions). #407 Nonce::use_nonce
panics on exceedingU256::MAX
. #467
Full Changes List
- Remove motsu from the repo and just import from crates.io by @ggonzalez94 in #456
- build(deps): bump crate-ci/typos from 1.28.2 to 1.28.4 by @dependabot in #460
- ref: Add/Sub Assignment Operations + e2e-tests.sh by @0xNeshi in #467
- feat: add ERC20FlashMint extension by @Ifechukwudaniel in #407
- build(deps): bump crate-ci/typos from 1.28.4 to 1.29.4 by @dependabot in #475
- feat: implement trait AddAssignChecked for StorageUint by @bidzyyys in #474
- docs: add README for openzeppelin-stylus-proc by @0xNeshi in #471
- build: bump Stylus SDK to v0.7.0 and alloy to v0.8.14 by @bidzyyys in #433
- feat: stylus poseidon hash benchmark against solidity by @qalisander in #463
- ref: Revamp e2e's error-checking mechanism by @0xNeshi in #479
- ref: Use Static Keccak Calculation Instead of Magic Values by @0xNeshi in #478
- test: change Panic error's arg name to 'code' by @0xNeshi in #485
- build: bump cargo-stylus to v0.5.7 by @bidzyyys in #484
- docs: use fixed versions in solidity docs URLs by @0xNeshi in #486
- test: add missing E2E tests for Erc721 by @DarkLord017 in #489
- ref: Remove
rand
Dev Dependency from ./contracts/* by @0xNeshi in #490 - build: cargo stylus v0.5.8 by @bidzyyys in #493
- Update LICENSE by @ericglau in #496
- ref: improve Erc1155Receiver and Erc721Receiver by @Ifechukwudaniel in #509
- feat: ERC-4626 extension by @Ifechukwudaniel in #465
- feat: Big Integer Implementation for Cryptographic Applications by @qalisander in #495
- build: bump to v0.2.0 alpha.3 by @0xNeshi in #512
Full Changelog: v0.2.0-alpha.2...v0.2.0-alpha.3
v0.2.0-alpha.2
Summary
Added
- Erc1155Supply extension. #418
- Erc1155Pausable extension. #432
- Erc1155UriStorage extension. #431
- VestingWallet contract. #402
- Erc1155Burnable extension. #417
- Erc1155MetadataUri extension. #416
- Poseidon2 sponge hash function. #388
Changed
- Update "magic values" to explicit calculations in
Erc721Metadata::supports_interface
andErc721::_check_on_erc721_received
. #442 - Implement
AddAssignUnchecked
andSubAssignUnchecked
forStorageUint
. #418 - Implement
MethodError
forsafe_erc20::Error
. #402 - Use
function_selector!
to calculate transfer type selector inErc1155
. #417
Changed (Breaking)
- Update internal functions of
Erc721
andErc721Consecutive
to accept a reference toBytes
. #437
Full Changes List
- feat: add ERC1155Supply extension by @0xNeshi and @bidzyyys in #418
- feat: add ERC1155 Pausable Extension by @0xNeshi and @bidzyyys in #432
- feat: ERC1155 URIStorage Extension by @0xNeshi in #431
- feat: Add VestingWallet by @0xNeshi, @bidzyyys and @qalisander in #402
- feat: ERC1155Burnable extension by @0xNeshi, @bidzyyys and @qalisander in #417
- feat:
Erc1155MetadataUri
extension @0xNeshi and @qalisander in #416 - feat: Poseidon2 sponge hash function by @qalisander and @bidzyyys in #388
Full Changelog: v0.2.0-alpha.1...v0.2.0-alpha.2
v0.2.0-alpha.1
Summary
Added
- ERC-1155 Multi Token Standard. #275
SafeErc20
Utility. #289- Finite Fields arithmetics. #376
Ownable2Step
contract. #352IOwnable
trait. #352
Changed(breaking)
- Removed
only_owner
from the public interface of Ownable. #352
Full Changes List
- feat: Ownable2Step by @ggonzalez94, and @bidzyyys in #352
- feat: ERC1155 by @programskillforverification, @bidzyyys, @qalisander, and @0xNeshi in #275
- feat: SafeErc20 utility by @0xNeshi, @bidzyyys and @qalisander in #289
- feat: finite fields by @qalisander in #376
- fix: contract caching for benchmarks by @qalisander in #387
Full Changelog: v0.1.1...v0.2.0-alpha.1
v0.1.1
Summary
Changed
- Mini alloc is now used by default via the stylus-sdk. This avoids conflicts with duplicate
#[global_allocator]
definitions. #373 - Removed the panic handler from the library, making it easier for
std
andno_std
projects to use the library. #373
Full Changes List
- fix: reference-types error on nightly version by @qalisander in #375
- fix: use mini-alloc by default and remove panic handler by @qalisander and @ggonzalez94 in #373
- build: bump v0.1.1 by @bidzyyys in #382
Full Changelog: v0.1.0...v0.1.1