Support ERC173
Perhaps it is a bit premature to open this, but it felt easier to discuss it this way and not in an issue. The last discussion took place on #987. Opened a question I have here: https://github.com/ethereum/EIPs/issues/173#issuecomment-924097327
PR Checklist
- [ ] Tests
- [ ] Documentation
- [ ] Changelog entry
Hello @axic
This is something I considered during the recent introduction of the interfaces folder. This was ruled out because ERC173 is not final, hence its message asking about the status.
When the ERC moves to final we will do this change (but with the IERC173.sol file in the interfaces folder)
I'm skeptical about the usefulness of ERC165 in this context. Will reconsider the PR if ERC173 moves forward.
On July 9 2022 ERC173 has finally moved to final status (see commit https://github.com/ethereum/EIPs/commit/110aff008b86bcc905998df9cb9bfd5a7efa666a )
I think it's time to reopen discussion about this, and imho make oz adhere to the new standard
There are two things:
- ERC173 doesn't include the renounceOwnership function, and instead accepts transferring to 0. It be a breaking change on our end to comply with that.
- Adding ERC165 would cause a lot of inheritance conflicts around the
supportInterfacefunction. This could be painful to devs.
Therefore, I would suggest that if we include that in our codebase, it is seen as a breaking change and is scheduled for v5.0.0
This needs to get integrated in open-zeppelin as now, opensea will only support royalty for contracts that has implemented EIP-173
should we keep renounceOwnership for backward compatibility (in addition to transfer to 0 being authorized) ?