Example of external custom pool for Balancer V3. Extend it to create new pool types.
- Node.js v18.x (we recommend using nvm to install it)
- Yarn v4.x
- Foundry v1.0.0
If it's the first time running the project, run sh ./scripts/install-fresh.sh
to install the dependencies and build the project. It'll download and compile V3 monorepo, creating node_modules folders in the library (these folders will be needed to use monorepo as a submodule of the custom pool, so tests can use the base test files).
After installing the dependencies, run yarn test
to run forge and hardhat tests.
To run Slither static analyzer, Python 3.8+ is a requirement.
This step will create a Python virtual environment with Slither installed. It only needs to be executed once:
$ yarn slither-install
$ yarn slither
The analyzer's global settings can be found in .slither.config.json
.
Some of the analyzer's known findings are already filtered out using --triage-mode option; the results of the triage can be found in slither.db.json
files inside each individual workspace.
To run Slither in triage mode:
$ yarn slither:triage