Commit Graph

534 Commits

Author SHA1 Message Date
3dfc0a44f8 ERC1155 after token transfer hook (#3166)
* add Hooks _afterTokenTransfer

* avoid duplicate call to _asSingleton

* add changelog entry

* update changelog link to PR

* Update CHANGELOG.md

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

Co-authored-by: CryptoV8 <91189073+CryptoV8@users.noreply.github.com>
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-02-14 16:55:43 +01:00
be3c5ca504 clarify _spendAllowance natspec (#3188) 2022-02-13 14:48:45 +01:00
4cb0926f11 Fix grammar typo in doc (#3186)
Add missing verb "are".
2022-02-11 15:41:22 +01:00
afb20119b3 Release v4.5 2022-02-09 18:16:53 -03:00
c5a6cae898 Add a _spendAllowance function to ERC20 & ERC777 (#3170) 2022-02-09 12:26:53 -03:00
63b466901f Rename some ERC20 parameters to match the standard document. (#3167)
* Renames `sender` to `source`.

The naming variable was incorrect.  The source of the funds is *not* necessarily (and in most cases isn't) the sender of the transaction.  Also, this code has a `msgSender` which further adds confusion.

* Changes to `from/to` instead of `source`.

* Function documentation matches new names

* Changed other instances of sender/recipient to from/to.

Also changed `msgSender` to `owner` in the approval related methods.

* apply changes to IERC20.sol + minor renaming in ERC20.sol

Co-authored-by: Daniel Von Fange <daniel@leancoder.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2022-02-08 00:05:29 +01:00
574f3b89e1 Add proper revert message on overflow of totalSupply during burn (#3144) 2022-02-01 19:10:11 -03:00
a81b07ce91 Fix typo in retrieval of onERC721Received selector (#3151) 2022-01-31 10:47:56 +01:00
6fb1e843cf Make royaltyInfo(uint256 _tokenId, uint256 _salePrice) virtual (#3133)
* Make royaltyInfo(uint256 _tokenId, uint256 _salePrice) virtual

Should be cherrypicked in release 4.5

* fix lint
2022-01-26 17:35:05 +01:00
e298476a90 Simplification of ERC777's transfer & transferFrom by using _send (#3128)
* Update ERC777.sol

* Update ERC777.sol

* Update ERC777.sol

* Update ERC777.sol

* fix revert reasons

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
2022-01-25 14:56:13 +01:00
8f70c8867e Fix typo in ERC721.sol (#3127) 2022-01-23 11:05:41 +01:00
b3b83b558e Add Slither reentrancy check in CI (#3047)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-01-21 00:15:54 +00:00
ecae978cb5 Make more functions virtual (#3078)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2022-01-13 18:56:36 +00:00
dee772a55f Add documentation to TokenTimelock 2022-01-12 11:51:09 -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
828fe365ee Normalize return variable names in IERC721Enumerable (#3079)
* Name missing return variable in IERC721Enumerable

For consistency among all functions.

* remove return variable names
2022-01-07 15:39:46 +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
1e815f3308 Restructure intro to ERC721 contract docs 2022-01-06 17:45:21 -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
a0a8bbb57f Remove note about enabling self-delegation 2021-12-27 12:24:37 -03:00
4a9cc8b491 Merge branch 'release-v4.4' 2021-12-14 13:34:03 -03:00
6bd6b76d11 4.4.1 2021-12-14 13:14:39 -03:00
b42b05311b Add ERC721Votes for NFT-based governance (#2944)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien@openzeppelin.com>
2021-12-10 18:58:45 -03:00
0c858e2071 Improve revert reason in ERC721 (#2975)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-12-09 23:42:18 +00:00
7d17acfb2f Merge branch 'release-v4.4' 2021-11-25 16:56:07 -03:00
4961a51cc7 4.4.0 2021-11-25 16:35:37 -03:00
2f2604d673 Deprecate presets in favor of Wizard (#2986) 2021-11-24 10:14:14 +01:00
65ef662a2b 4.4.0-rc.1 2021-11-16 10:23:53 -03:00
70138680cf Fix ERC1155 supply tracking (#2956)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
(cherry picked from commit 4088540aef)
2021-11-15 18:07:21 -03:00
4088540aef Fix ERC1155 supply tracking (#2956)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-11-08 18:47:21 -03:00
fbfe19d6db Improve documentation around ERC1155 2021-11-03 10:35:42 -03:00
0a87a4e75b 4.4.0-rc.0 2021-10-20 17:21:04 -03:00
9e13852135 Fix typo (#2919) 2021-10-20 08:33:08 +02:00
c9bdb1f0ae Add a comment documenting the package version being used (#2918) 2021-10-19 19:18:19 -03:00
caba6b93ef Add an internal _setApprovalForAll function (721 & 1155) (#2834)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-10-06 13:48:18 +00:00
e2fa301bfb Improve parameters naming and remove unecessary returns (#2891) 2021-10-06 10:34:27 -03:00
0500c9e53e Use "OpenZeppelin Contracts" where appropriate (#2778) 2021-07-20 10:35:58 -03:00
7e41bf2259 Remove ERC20FlashMint from drafts section in docs 2021-07-16 19:44:40 -03:00
6c1a634053 Add Governor contracts (#2672)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-07-16 12:44:01 -03:00
4e2641a915 Simplify selector access (#2766) 2021-07-13 01:23:14 +02:00
973b0f883a fix typo in erc20 docs (#2764) 2021-07-12 16:45:39 +02:00
9eba3ef29a fix two minor typos (#2755) 2021-07-08 17:23:13 +02:00
922058dbc8 Change comma to decimal point in comment (#2742) 2021-07-05 12:20:27 -03:00
1db3037808 Fix misleading comments (#2737)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-06-24 10:37:20 -03:00
6842518b1b Wrapper extension for ERC20 token (#2633)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-06-22 19:27:33 -03:00
8a775cd8d4 Emit DelegateVotesChanged events after Transfer (#2733) 2021-06-22 19:14:40 -03:00
f710bafae8 Fix typos (#2723) 2021-06-14 18:51:56 -03:00
b0cf6fbb7a Add Prettier for linting and fix Solhint config (#2697)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-06-07 12:33:03 -03:00
e3661abe84 Split ERC20Votes and ERC20VotesComp (#2706)
Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
2021-06-04 12:52:19 -03:00
adc50d465c Tweak ERC20Votes revert reasons and documentation (#2696)
* adapt revert reason convention

* add whitespace

* tweak documentation

* fix tests
2021-05-27 18:16:37 +02:00