Morpho Blue is a new lending primitive that offers better rates, high capital efficiency and extended flexibility to lenders & borrowers. morpho-blue-bundlers
hosts the logic that builds alongside the core protocol like MetaMorpho and bundlers.
Each Bundler is a domain-specific abstract layer of contract that implements some functions that can be bundled in a single call by EOAs to a single contract. They all inherit from BaseBundler
that enables bundling multiple function calls into a single multicall(bytes[] calldata data)
call to the end bundler contract. Each chain-specific bundler is available under their chain-specific folder (e.g. ethereum
).
Some chain-specific domains are also scoped to the chain-specific folder, because they are not expected to be used on any other chain (e.g. DAI and its specific permit
function is only available on Ethereum - see EthereumPermitBundler
).
User-end bundlers are provided in each chain-specific folder, instantiating all the intermediary domain-specific bundlers and associated parameters (such as chain-specific protocol addresses, e.g. EthereumBundlerV2
).
Install dependencies with yarn
.
Run tests with yarn test --chain <chainid>
(chainid can be 1 or 8453).
Note that the EthereumBundlerV2
has been deployed with 80 000 optimizer runs.
To compile contracts with the same configuration, run FOUNDRY_PROFILE=ethereumBundlerV2 forge b
.
All audits are stored in the audits' folder.
Bundlers are licensed under GPL-2.0-or-later
, see LICENSE
.