Skip to content

v0.0.1

Compare
Choose a tag to compare
@nkrishang nkrishang released this 16 May 11:19
· 38 commits to main since this release
3989220
ModularCoreUpgradeable (#86)

* Update dependencies

* core benchmark

* Simplifies core and update coding style

* Benchmark core on function fallback overhead

* SupportedCallbackFunctions, simplifies installExtension

* Fix merge conflicts

* Update deps

* Updated extension contracts in /extension (#91)

* .vscode

* replace /hooks with /extension

* rename files

* reorg files

* Simplify and make uniform: LazyMint.sol -> BatchMetadata.sol

* Comments + simplify language

---------

Co-authored-by: Jake Loo <[email protected]>

* rename order, mode. support required mode

* update deps

* Remove CallbackOrder. Implement callback returns data

* Optimize installExtension struct packing

* Remove unused field in struct. Memory safe assembly

* Rename core, extension

* Update solady

* Move directory

* includes ERC165 interfaceId

* Implement ERC165 on core and extension check

* Init ExtensionProxy

* Sender in onInstall/Uninstall. ExtensionProxy

* registerInstallationCallback on Extension

* Latest updates to ModularCore (#93)

* Rename IModular -> IExtensionConfig

* Rename IModularExtensionCallback -> IInstallationCallback

* ModularCore inherits OwnableRoles; replace ExtensionFunction permissioned -> permissionBits

* Move InstalledExtensionFunction to ModularContract implementation

* rename extensionABI -> extensionFunctions

* remove unused isAuthorizedToCallExtensionFunctions

* Replace unused _isAuthorized checks with native roles

* only deploy extension proxy if undeployed

* calculate salt based on address(this) instead of msg.sender

* re-arrange imports

* Only use EnumerableSetLib for EnumerableSetLib.AddressSet

* Cleanup styles and add comments to ModularCore

* add comments to _installExtension

* Only install extension with all supported callback functions

* Delete ExtensionProxy and its usage

* add ExtensionProxyFactory

* Update token contracts getSupportedCallbackFunctions selectors

* Add ModularCoreTest

* Verify extension bytecodehash on every call to extension

* Cleanup ModularCore errors

* Fix initializeOwner

* Remove bytecode check in fallback

* Add Extension name and version

* ModularCore is naive implementation; ModularCoreUpgradeable handles upgradeability

* Rename extensionName -> extensionID

* Full ModularCoreUpgradeable implementation

* Remove unused error

* ModularCoreUpgradeable: add test and fix bugs

* Update interface comments

* Rename extensionFunctions to fallbackFunctions

* rename extensionFunction to fallbackFunction cont.

* Create and use CallbackFunction type which includes CallType

* Add top level readme

* Add readme assets

* Update sub header

* Update headings

* Add design doc inside /core readme

* Add installation and usage instructions

* Add comments to IExtensionCOnfig

* Add comments to IInstallationCallback

* Update interface comments

* Acceot factory address in constructor

* Delete onRoyaltyInfoCallback

* Remove onRoyalty callback from token Cores

* Update extensionProxySaltSeed generation

* fix github actions

* fix github test aciton + forge fmt in /extension

---------

Co-authored-by: nkrishang <[email protected]>
Co-authored-by: Krishang <[email protected]>