07b1b472c0
Improve wording consistency in code/doc ( #3365 )
2022-05-04 18:20:59 -03:00
a035b235b4
Release v4.6 ( #3358 )
...
* 4.6.0-rc.0
* Fix release script to only release @openzeppelin/contracts
(cherry picked from commit 2bd75a44bb )
* make ERC2981:royaltyInfo public (#3305 )
(cherry picked from commit d2832ca7a9 )
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com >
* add transpilation guards to the crosschain mocks (#3306 )
(cherry picked from commit 9af5af8fff )
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com >
* Fix tests on upgradeable contracts after transpilation
(cherry picked from commit 0762479dd5 )
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com >
* Remove unused constructor argument
(cherry picked from commit 69c3781043 )
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com >
* Bump minimum Solidity version for Initializable.sol to 0.8.2 (#3328 )
(cherry picked from commit cb14ea3c5c )
* Fix update-comment script to ignore invalid tags
(cherry picked from commit 848fef5b6c )
Signed-off-by: Hadrien Croubois <hadrien.croubois@gmail.com >
* 4.6.0
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2022-04-27 09:34:09 +02:00
742e85be7c
Change zero address revert message in the balanceOf function of ERC721 and ERC1155 ( #3314 )
2022-04-02 12:13:33 +02:00
62eb4568be
Optimize ERC721 _isApprovedOrOwner function ( #3248 )
2022-03-08 18:18:56 -03:00
afb20119b3
Release v4.5
2022-02-09 18:16:53 -03:00
8f70c8867e
Fix typo in ERC721.sol ( #3127 )
2022-01-23 11:05:41 +01: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
4961a51cc7
4.4.0
2021-11-25 16:35:37 -03:00
65ef662a2b
4.4.0-rc.1
2021-11-16 10:23:53 -03:00
0a87a4e75b
4.4.0-rc.0
2021-10-20 17:21:04 -03: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
4e2641a915
Simplify selector access ( #2766 )
2021-07-13 01:23:14 +02: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
8ad458e955
Explain how baseURI is used for building the tokenURI ( #2679 )
2021-05-19 16:07:56 -03:00
08ba72afa2
Fix ERC721._beforeTokenTransfer docs ( #2653 )
2021-05-04 11:10:24 -03:00
74e03de760
removes unused dependency ( #2603 )
2021-03-21 19:22:45 +01:00
3dc374ddcf
Make overide of ERC721.isApprovedForAll affect the ERC721 logic ( #2597 )
2021-03-16 15:32:22 -03:00
fc004c0ad2
removes invalid character in comments ( #2571 )
2021-03-08 13:42:35 +01:00
24a0bc23cf
Reorganize the repo structure ( #2503 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-22 16:44:16 +00:00
09734e8028
Remove enumerable from ERC721 and add an ERC721Enumerable extension ( #2511 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-19 13:24:39 -03:00
e733b24dfe
Refactor ERC165 to use function overriding instead of storage ( #2505 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-18 19:02:28 +00:00
60205944bb
Adopt new Solidity features interfaceId, try/catch, keccak constants ( #2487 )
...
* Clean code
- using type().interfaceId to improve readeability of ERC165 registration
- hardcoding some keccak256 that are otherwise computed at construction.
* hardcode keccak256 result
* Improve code readeability using try/catch
* Remove hardcoded hash
tests show that solc 0.8.0 does the optimization as expected
* Use try/catch to improve readability
* ERC165Checker: Do not revert when returndata is empty + new test
* Address PR comments
* improve testing of ERC721Receiver errors
* put back comment about invalid interface id
* coverage does not support 0.8.1. Reverting back to 0.8.0
* bubble all data with length > 0 if onERC721Receive fails.
* Fix test: revert without message trigger is bubble with the default message
* using enum object to improve readability
2021-01-29 22:20:49 +01:00
0db76e98f9
Merge branch 'solc-0.7' into solc-0.8
2021-01-27 11:28:23 +01:00
6d202894b6
Merge branch 'master'
2021-01-26 18:58:15 +01:00
18c7efe800
Make view and pure functions virtual ( #2473 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-01-26 13:23:23 -03:00
974c534210
Update contracts to support Solidity 0.8.x ( #2442 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-01-14 19:38:53 -03:00
318c4b44ea
Move Context from GSN to utils directory ( #2453 )
...
Co-authored-by: Hadrien Croubois <hadrien@openzeppelin.com >
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-01-07 13:04:13 -03:00
90ed1af972
Support compiling with solc 0.7 ( #2408 )
2020-11-17 21:29:39 -03:00
0f55c18595
Fix/solc 0.7.4 warnings #2391 ( #2396 )
...
* Fix unnamed return variable warning
This commit fixes warnings thrown by the solc 0.7.4 compiler:
"Warning: Unnamed return variable can remain unassigned. Add an explicit
return with value to all non-reverting code paths or name the variable."
* Fix function state mutability warning
This commit fixes warnings thrown by the solc 0.7.4 compiler:
"Warning: Function state mutability can be restricted to pure"
* Fix shadows an existing declaration warning
This commit fixes warnings thrown by the solc 0.7.4 compiler:
"Warning: This declaration shadows an existing declaration."
1. Arguments by default are not underscored.
2. If the name isn't available due to shadowing, use prefix underscore.
3. If prefix underscore isn't available due to shadowing, use suffix underscore.
2020-10-28 13:42:38 -03:00
22de765f3c
Merge branch 'release-v3.2.0' into release-v3.2.0-solc-0.7
2020-09-08 20:14:42 -03:00
aaa5ef81cf
Fix typos ( #2343 )
2020-09-01 14:57:40 -03:00
04fc35707d
Migrate contracts to Solidity 0.7 ( #2319 )
...
* Update contract pragmas to solidity 0.7
* Remove internal declaration on constructors
* Reference SafeMath explicitely
* Remove public constructor declaration from abstract contracts
* Remove public constructor declaration from non-abstract contracts
2020-07-29 18:11:32 -03:00
7c4a2a0a29
Fix comment reference for function hash ( #2307 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-07-21 17:06:36 -03:00
3f4420527b
Separate mapping keyword by whitespace ( #2287 )
...
Co-authored-by: pm_468 <oleg.kuzmenko@lindenvalley.de >
2020-06-19 11:00:05 -03:00
e2876b947d
Fix docs link
2020-06-11 16:49:14 -03:00
ed3a513f86
Fix broken links
2020-06-11 16:48:00 -03:00
8b58fc7191
feat: add wrapper function for low level calls ( #2264 )
...
* feat: add wrapper function for low level calls
* add error message parameter
* adding unit tests and required mocks
* implement error message on SafeERC20
* fixed variable name in tests
* Add missing tests
* Improve docs.
* Add functionCallWithValue
* Add functionCallWithValue
* Skip balance check on non-value functionCall variants
* Increase out of gas test timeout
* Fix compile errors
* Apply suggestions from code review
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
* Add missing tests
* Add changelog entry
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-06-11 16:25:46 -03:00
ecf0725dd1
Documentation/erc721 contracts ( #2218 )
...
* Adds / Updates documentation of ERC721 contract
* Improve ERC721Burnable documentation
* Fix typo
* Revert changes on ERC721 private functions
* Add documentation to the ERC721 contract's constructor
* Add IERC721Receiver & ERC721Holder documentations
* Add references to IERC721 functions
* Add references to IERC721Metadata/Receiver
* PR fixes
* Fixes to ERC721 documentation
* Add missing fixes
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
2020-06-05 14:29:06 -03:00
56de324afe
Add SPX license identifier ( #2235 )
2020-05-14 21:58:11 -03:00
715ec806f0
ERC721 deploy ready fixes ( #2192 )
...
* Add baseURI to ERC721MinterPauser constructor
* Add tokenURI to mint
* Remove tokenId and tokenURI from ERC721 deploy ready
* Rename ERC721MinterPauser to ERC721MinterAutoID, remove Pausable mechanisms
* Restore pausing to ERC721
* Rename deploy ready to presets
* Rename ERC721 preset
2020-04-20 20:05:48 -03:00
5bb8d0245b
Improve Hooks documentation ( #2199 )
...
* Improve Hooks docs
* Improve Utils docs
* Apply suggestions from code review
Co-Authored-By: Francisco Giordano <frangio.1@gmail.com >
* Add enumerable code samples
* Remove import statement from example
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-04-20 16:43:05 -03:00
13e113df81
Improve usage of toString
2020-04-17 11:37:58 -03:00
8b10cb38d8
Rename Strings.fromUint256 to Strings.toString ( #2188 )
...
* rename Strings.fromUint256 to Strings.toString
* add changelog entry
* fix conflict with js toString method
2020-04-15 18:04:00 -03:00
b6513f6ad7
provide 'automatic' token URI by appending the token ID to the base URI ( #2174 )
...
* provide 'automatic' token URI by appending the token ID to the base URI, if a base is set but no token-specific URI is available
* make the three cases more explicit, avoid else after return
* adjust comments to reflect reality
2020-04-15 15:39:33 -03:00
885378e421
Fix some of the code formatting in docs
2020-04-03 21:13:55 -03:00
bd0778461d
Add EnumerableMap, refactor ERC721 ( #2160 )
...
* Implement AddressSet in terms of a generic Set
* Add Uint256Set
* Add EnumerableMap
* Fix wording on EnumerableSet docs and tests
* Refactor ERC721 using EnumerableSet and EnumerableMap
* Fix tests
* Fix linter error
* Gas optimization for EnumerableMap
* Gas optimization for EnumerableSet
* Remove often not-taken if from Enumerable data structures
* Fix failing test
* Gas optimization for EnumerableMap
* Fix linter errors
* Add comment for clarification
* Improve test naming
* Rename EnumerableMap.add to set
* Add overload for EnumerableMap.get with custom error message
* Improve Enumerable docs
* Rename Uint256Set to UintSet
* Add changelog entry
2020-04-02 15:43:06 -03:00