Dev utils to be shared across 0x projects and packages
Some env variables might be set to change the behaviour of created web3 providers/instances.
VERBOSE_GANACHE: boolean. Enables verbose Ganache logging. Every request/response payload. Slightly slower, but useful for testing.
SOLIDITY_COVERAGE: boolean. If set - adds coverage subprovider which intercepts all calls/transactions and can be later used to compute code coverage.
Boolean env variables should be either true
or false
. Defaults to false
if not set.
yarn add @0x/dev-utils
If your project is in TypeScript, add the following to your tsconfig.json
:
"compilerOptions": {
"typeRoots": ["node_modules/@dexon-foundation/typescript-typings/types", "node_modules/@types"],
}
If you are still seeing TS type errors complaining about missing DOM types such as Response
:
error TS2304: Cannot find name 'Response'.
Then you need to explicitly add the dom
lib to your compiler options in tsconfig.json
. The dom
library is included by default, but customizing the lib
option can cause it to be dropped.
"compilerOptions": {
"lib": [..., "dom"],
We welcome improvements and fixes from the wider community! To report bugs within this package, please create an issue in this repository.
Please read our contribution guidelines before getting started.
If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
yarn config set workspaces-experimental true
Then install dependencies
yarn install
To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:
PKG=@0x/dev-utils yarn build
Or continuously rebuild on change:
PKG=@0x/dev-utils yarn watch
yarn clean
yarn lint
yarn test