v0.5.0
github-actions
released this
24 Feb 09:39
·
1257 commits
to develop
since this release
Features
- 🔑 ➕ Add a new type of permissions
AllowedERC725YKeys
in the KeyManager. Enables to restrict anaddress
that has permissionSETDATA
to set only a specific set ofbytes32
keys.
This includes partial keys, which can be useful for keys that derive from the Mapping or Array key types defined in LSP2 - ERC725Y JSON Schema
-
🧬 added interface ids of ERC tokens standards in the file
constants.ts
. This includesERC20
,ERC721
,ERC223
,ERC777
andERC1155
. -
added proxy versions of
LSP7CompatibilityForERC20
andLSP8CompatibilityForERC721
Deprecated
- ➖ remove + drop support for
dataKeys[]
andallDataKeys()
function in Universal Profile contracts.
Bug fixes
ILSP8CompatabilityForERC721
isApprovedForAll(...)
params matchIERC721
⚠️ fix medium security vulnerability inLSP1UniversalReceiverUP
contract
A new security check has been added to this contract to that the profile(msg.sender) making the call to the Universal Receiver is the same profile than the one extracted from the Key Manager read from the owner()
function
Commits references
Features
- add check for multiple
ERC725Y
keys (5ee41c7) - add check for partial keys + test for Mapping keys (57923ca)
- add custom error log for AllowedERC725YKey (dcefa95)
- allow whitelisting any ERC725Y key if nothing set (41dd20f)
- create LSP7CompatabilityForERC20InitAbstract (516d195)
- create LSP8CompatabilityForERC721InitAbstract (1ded846)
- first draft implementation of
AllowedERC725YKeys
, with only one key check (ac567c3) - LSP7CompatibilityForERC20 proxy and constructor version (131eed0)
- LSP8CompatibilityForERC721 proxy and constructor version (ffccc4b)