Copy and populate an .env
file according to the .env.template file.
- Install dependencies
yarn
- Clean packages
yarn clean
- Build packages
yarn build
- Compile contracts (optional)
Contracts are automatically compiled when running
yarn build
but can also be compiled separately
yarn compile
Running a local node & deploying the system to a locally running node
- Running a local node
yarn dev
- Deploying the system to your local node
yarn deploy:dev
- Run all tests in the monorepo
yarn test
- Run all unit tests in the monorepo
yarn test:unit
- Run all e2e tests in the monorepo
yarn test:e2e
- Run a specific test in the specific package (example) Command should be run from a respective package folder
yarn clean & yarn hardhat test <path-to-test>
- TS files and all folders are named using kebab-case
- -Solidity files (interfaces, contracts etc) are named using Pascal case
- Create multiply positions on a network of your choosing
cd packages/dma-contracts && yarn hardhat createMultiplyPositions --serviceregistry <service-registry-address> --accountfactory <account-factory-address> --network <insert-network>
Note: There's an issue with circular dependencies between packages. You'll need to ensure that tasks which causes circular dependencies are not included in the hardhat.config.ts file in @oasisdex/dma-contracts. For more info see the readme in the packages/dma-contracts folder
Please see the readme in the packages/dma-contracts folder for more information
From package folder:
- checkout dev
- rum
yarn publish
Prepublish will clean cache and build pkg, yarn will ask for a new version and create a new commit with a tag.