Commit Graph

208 Commits

Author SHA1 Message Date
e58c6d8ff4 Fix linter error 2023-03-02 19:47:41 -03:00
8ba26f388f Merge pull request from GHSA-878m-3g6q-594q
* Test batch minting of 1

* Fix balance tracking

* fix lint

* add changeset

* rename UNSAFE -> unsafe

* fix docs

* fix changeset

* grammar

* add explanation of preserved invariant

* add fuzz tests

* rename variable

* improve property definition

* add burn

* add test ownership multiple batches

* refactor fuzz tests

* change ownership test for better probability

* typo

* reorder comment

* update changelog notes

* edit changelog

* lint

* Update CHANGELOG.md

---------

Co-authored-by: Francisco Giordano <fg@frang.io>
2023-03-02 19:41:28 -03:00
8b47e96af1 Add SafeERC20.forceApprove() (#4067) 2023-02-24 20:29:49 +00:00
d5581531de Add a "fees" section to the ERC4626 guide (#4054)
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-02-24 11:49:10 -03:00
a6b8366980 Improve ERC4626 event coverage (#4072) 2023-02-23 17:06:47 -03:00
7b3e7b7055 Re-enable ERC4626 property test on empty vaults (#4068) 2023-02-22 15:23:06 -03:00
08d085f2c9 Fix ERC4906 compliance of ERC721URIStorage (#4055)
Co-authored-by: Francisco <fg@frang.io>
2023-02-17 13:43:23 -03:00
96a2297e15 Add IERC4906 interface and use in ERC721 (#4012)
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-02-17 09:26:10 +00:00
d64d7aa5d1 ERC4626 inflation attack mitigation (#3979)
Co-authored-by: Francisco <fg@frang.io>
2023-02-17 10:08:31 +01:00
d5d9d4bd3d Simplify ERC721Wrapper.depositFor to save gas (#4048) 2023-02-16 23:35:43 -03:00
2c711d0b05 Restrict ERC721Wrapper wrap by direct transfer (#4043)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2023-02-14 17:47:07 -03:00
6259e13a0c Improve ERC721 Wrapper tests (#4039) 2023-02-09 22:36:14 +01:00
790cc5b65a Add timestamp based governor with EIP-6372 and EIP-5805 (#3934)
Co-authored-by: Francisco Giordano <fg@frang.io>
Co-authored-by: Ernesto García <ernestognw@gmail.com>
Co-authored-by: Francisco <frangio.1@gmail.com>
2023-02-09 22:33:55 +01:00
94cd8ef12e Add ERC721 Wrapper (#3863)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2023-02-09 13:43:34 -06:00
5b027e517e Add missing await in tests (#4037) 2023-02-08 21:03:27 +00:00
d625cb45ea Include EIP-5267 discovery in EIP-712 (#3969)
Co-authored-by: Francisco <frangio.1@gmail.com>
Co-authored-by: Francisco <fg@frang.io>
2023-02-08 15:53:57 +01:00
a28aafdc85 Use Prettier for JS files (#3913)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2023-01-04 15:03:40 +01:00
c1d9da4052 Use hardhat-exposed to reduce the need for mocks (#3666)
Co-authored-by: Francisco <fg@frang.io>
2023-01-03 14:38:13 +00:00
2336bd3e8e Simplify ESLint config (#3903) 2022-12-29 17:08:12 -03:00
206a239448 Remove unused variables in tests (#3852) 2022-12-05 17:25:53 -03:00
4e8b2fa659 Add additional conditions when testing ERC4626 roundtrip (#3839) 2022-11-30 15:44:38 -03:00
99589794db Add forgotten await to ERC1155URIStorage beforeEach block. (#3807) 2022-11-16 11:15:58 -03:00
c7315e8779 Add ERC4626 standard property tests (#3792)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2022-11-04 17:56:32 +01:00
c22db8104e Recommended improvement to ERC721Consecutive (#3712)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-09-27 16:13:15 -03:00
171fa40bc8 ERC721 extension for efficient batch minting (#3311)
Co-authored-by: Francisco <frangio.1@gmail.com>
2022-09-05 23:09:30 +02:00
e09ccd1449 Optimize votes lookups for recent checkpoints (#3673) 2022-09-04 22:48:26 +02:00
141130db27 Inherit asset decimals in ERC4626 (#3639) 2022-08-26 09:53:53 +02:00
24fc709533 Set up codespell (#3643) 2022-08-23 12:43:03 -03:00
fbf235661e Improve grammar in transfer error messages (#3542) 2022-07-25 17:01:14 -03:00
d1b1e17d23 Add internal overrideable _flashFee in ERC20FlashMint (#3551)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Francisco <frangio.1@gmail.com>
2022-07-22 14:44:58 -03:00
e0149921b8 Update solmate repo link (#3563) 2022-07-19 10:09:02 -03:00
96163c87e3 Implicitly clear ERC721 approval on burn (#3538) 2022-07-09 10:25:45 +02:00
e02c378745 Implicitly clear ERC721 approval on transfers (#3481)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-07-04 15:29:15 -03:00
a55b7d1372 Rename ERC20TokenizedVault to ERC4626 (#3467) 2022-06-14 11:39:01 +02:00
7c75b8aa89 Add a SafeERC20:safePermit function (#3280) 2022-06-07 15:17:02 +00:00
35090c1bf1 Add tests for improved coverage (#3448)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-06-02 23:01:55 +00:00
5e00787199 ERC4626 (#3171) 2022-06-02 10:03:03 +02:00
62f2c0531b Simplify ERC721 revert reasons (#3438) 2022-06-01 18:22:13 -03:00
82a63f6389 Remove redundant require in ERC721 (#3434)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-05-26 22:22:35 -03:00
488dd562fb Improve error messages for ERC721 and 1155 (#3254)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-05-27 00:52:43 +00:00
3b9381dfb1 Add customizable fee receiver to ERC20FlashMint (#3327)
Co-authored-by: Mazen Khalil <mazen@immunityledger.org>
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-05-06 18:46:23 -03:00
d4e6236b2b Fix deprecated expectEvent.inLogs #3332 (#3333) 2022-04-23 10:20:55 -03:00
742e85be7c Change zero address revert message in the balanceOf function of ERC721 and ERC1155 (#3314) 2022-04-02 12:13:33 +02:00
02fcc75bb7 Add ERC1155URIStorage (#3210)
* Add ERC721URIStorage-like extension for ERC1155

* Add tests for ERC1155URIStorage extension

* add changelog entry for ERC721URIStorage

* Fix linting errors

* Emit URI event in ERC1155URIStorage

* Remove exists check and ERC1155Supply dependency

* Fix lint error

* Overwrite ERC1155 uri method

* Update ERC1155URIStorage specs

* Fix ERC1155URIStorageMock

* Rename _setTokenURI => _setURI in ERC1155URIStorage

* Add baseURI to ERC1155URIStorage

* Move super.uri call in ERC1155URIStorage

* Clearify ERC1155URIStorage description in change log

* reorder changelog & add documentation

* improve documentation

* fix typo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2022-03-29 09:15:43 +00:00
98716177ae Inherit ERC20Wrapper decimals from the underlying (#3259) 2022-03-22 09:55:49 +01:00
f8bfa560e9 Use _spendAllowance in ERC20FlashMint (#3226)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-03-08 19:34:24 +00:00
c5a6cae898 Add a _spendAllowance function to ERC20 & ERC777 (#3170) 2022-02-09 12:26:53 -03:00
80d8da0564 Do not reduce approval on transferFrom if current allowance is type(uint256).max (#3085)
* add feature request #3084

* Update contracts/token/ERC20/ERC20.sol

Co-authored-by: Francisco Giordano <frangio.1@gmail.com>

* Add changelog note

* add documentation

* test unlimitted allowance and add ERC777 unlimitted allowance

* reference PR in changelog

* documentation IERC20 -> ERC20

* use asciidoc note syntax

* use asciidoc note syntax

* typo

* typos

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-01-11 00:08:33 +01:00
a65c03bc0d Implement Non Fungible Token Royalty (EIP2981) (#3012)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2022-01-06 19:34:57 -03:00
a9f994f063 Reduce ERC20 allowance before triggering transfer (#3056)
* Reduce ERC20 allowance before triggering transfer

* adapt ERC777 to reduce allowance before transfer

* fix test for ERC777

* use smaller number to reduce balance

* simplify test description

* don't use deprecated expectEvents.inLogs

* fix test

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2021-12-31 09:17:12 +00:00