diff options
17 files changed, 153 insertions, 89 deletions
diff --git a/packages/dev-tools-pages/assets/crawl.html b/packages/dev-tools-pages/assets/crawl.html index 9135c3ede..352300d73 100644 --- a/packages/dev-tools-pages/assets/crawl.html +++ b/packages/dev-tools-pages/assets/crawl.html @@ -1,20 +1,17 @@ <!DOCTYPE html> <html lang="en"> -<head> - <meta charset="UTF-8"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <meta http-equiv="X-UA-Compatible" content="ie=edge"> - <title>Document</title> -</head> -<body> - -<ul> -<li><a href="/compiler">Compiler</a></li> -<li><a href="/cov">Cov</a></li> -<li><a href="/profiler">Profiler</a></li> -<li><a href="/trace">Trace</a></li> - -</ul> - -</body> -</html>
\ No newline at end of file + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta http-equiv="X-UA-Compatible" content="ie=edge" /> + <title>Test</title> + </head> + <body> + <ul> + <li><a href="/compiler">Compiler</a></li> + <li><a href="/coverage">Coverage</a></li> + <li><a href="/profiler">Profiler</a></li> + <li><a href="/trace">Trace</a></li> + </ul> + </body> +</html> diff --git a/packages/dev-tools-pages/package.json b/packages/dev-tools-pages/package.json index db927849e..bb8da7fe9 100644 --- a/packages/dev-tools-pages/package.json +++ b/packages/dev-tools-pages/package.json @@ -12,7 +12,17 @@ "build:dev": "../../node_modules/.bin/webpack --mode development", "clean": "shx rm -f public/bundle*", "lint": "tslint --format stylish --project . 'ts/**/*.ts' 'ts/**/*.tsx'", - "dev": "webpack-dev-server --mode development --content-base public" + "dev": "webpack-dev-server --mode development --content-base public", + "deploy:all": "npm run build; npm run deploy:compiler; npm run deploy:compiler:index; npm run deploy:coverage; npm run deploy:coverage:index; npm run deploy:profiler; npm run deploy:profiler:index; npm run deploy:trace; npm run deploy:trace:index;", + "deploy:compiler": "DIR_NAME=./public/. BUCKET=s3://sol-compiler.com yarn s3:sync --exclude 'bundle-cov*' --exclude 'bundle-trace*' --exclude 'bundle-profiler*'", + "deploy:coverage": "DIR_NAME=./public/. BUCKET=s3://sol-coverage.com yarn s3:sync --exclude 'bundle-compiler*' --exclude 'bundle-trace*' --exclude 'bundle-profiler*'", + "deploy:profiler": "DIR_NAME=./public/. BUCKET=s3://sol-profiler.com yarn s3:sync --exclude 'bundle-cov*' --exclude 'bundle-trace*' --exclude 'bundle-compiler*'", + "deploy:trace": "DIR_NAME=./public/. BUCKET=s3://sol-trace.com yarn s3:sync --exclude 'bundle-cov*' --exclude 'bundle-compiler*' --exclude 'bundle-profiler*'", + "deploy:compiler:index": "DIR_NAME=./public/compiler/. BUCKET=s3://sol-compiler.com yarn s3:sync", + "deploy:coverage:index": "DIR_NAME=./public/coverage/. BUCKET=s3://sol-coverage.com yarn s3:sync", + "deploy:profiler:index": "DIR_NAME=./public/profiler/. BUCKET=s3://sol-profiler.com yarn s3:sync", + "deploy:trace:index": "DIR_NAME=./public/trace/. BUCKET=s3://sol-trace.com yarn s3:sync", + "s3:sync": "aws s3 sync $DIR_NAME $BUCKET --profile 0xproject --region us-east-1 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers --exclude *.map.js --exclude 'profiler/*' --exclude 'trace/*' --exclude 'coverage/*' --exclude 'compiler/*'" }, "license": "Apache-2.0", "dependencies": { diff --git a/packages/dev-tools-pages/pages.js b/packages/dev-tools-pages/pages.js index 7609a07e9..0f19f4744 100644 --- a/packages/dev-tools-pages/pages.js +++ b/packages/dev-tools-pages/pages.js @@ -17,15 +17,15 @@ const pages = [ }, }, { - title: 'sol-cov', - filename: 'cov/index.html', + title: 'sol-coverage', + filename: 'coverage/index.html', template: 'assets/index.html', - chunks: ['cov'], + chunks: ['coverage'], favicon: 'assets/favicons/cov.ico', minify: true, meta: { description: 'Solidity code coverage', - 'og-title': { property: 'og:title', content: 'sol-cov' }, + 'og-title': { property: 'og:title', content: 'sol-coverage' }, 'og-description': { property: 'og:description', content: 'Solidity code coverage' }, 'og-type': { property: 'og:type', content: 'website' }, 'og-image': { property: 'og:image', content: '/images/og-cov' }, diff --git a/packages/dev-tools-pages/ts/components/compiler.tsx b/packages/dev-tools-pages/ts/components/compiler.tsx index 694a535dd..c00e3a2b9 100644 --- a/packages/dev-tools-pages/ts/components/compiler.tsx +++ b/packages/dev-tools-pages/ts/components/compiler.tsx @@ -45,7 +45,7 @@ const Dd = styled.dd` const cards = [ { - title: 'A Project-centric', + title: 'Project-centric', body: ( <React.Fragment> Compiles an entire project instead of only individual <InlineCode isAlt={true}>.sol</InlineCode> files. @@ -54,7 +54,7 @@ const cards = [ }, { title: 'Incremental builds', - body: 'Recompiles your smart contracts after they have changed', + body: 'Only recompiles smart contracts that have been modified.', }, { title: 'Customizable artifacts', @@ -63,12 +63,16 @@ const cards = [ }, { title: 'Seamless', - body: 'Fetches and caches the required compiler binaries.', + body: 'Fetches and caches the required compiler binaries for the Solidity versions you use.', }, { title: 'Versioning', body: - 'Compiles each contract with the version specified at the top of its file (sol-compiler even supports version ranges!).', + 'Compiles each contract with the Solidity version specified at the top of its file (it even supports version ranges!).', + }, + { + title: 'Watch mode', + body: 'Have your contracts instantly recompile on file save.', }, ]; diff --git a/packages/dev-tools-pages/ts/components/footer.tsx b/packages/dev-tools-pages/ts/components/footer.tsx index 04fd9b88e..d568a86fc 100644 --- a/packages/dev-tools-pages/ts/components/footer.tsx +++ b/packages/dev-tools-pages/ts/components/footer.tsx @@ -3,7 +3,7 @@ import * as React from 'react'; import styled from 'styled-components'; import { context as compiler } from 'ts/context/compiler'; -import { context as cov } from 'ts/context/cov'; +import { context as coverage } from 'ts/context/coverage'; import { context as profiler } from 'ts/context/profiler'; import { context as trace } from 'ts/context/trace'; import MainIcon from 'ts/icons/logos/0x.svg'; @@ -12,7 +12,7 @@ import { media } from 'ts/variables'; import { Container } from './container'; import { Alpha, Beta } from './typography'; -const tools = [trace, cov, compiler, profiler]; +const tools = [trace, coverage, compiler, profiler]; const Footer: React.StatelessComponent<{}> = () => ( <StyledFooter> @@ -20,9 +20,9 @@ const Footer: React.StatelessComponent<{}> = () => ( <Top> <Alpha>Other tools by 0x</Alpha> <List> - {_.map(tools, ({ title, subtitle, icon }) => ( + {_.map(tools, ({ title, subtitle, icon, name }) => ( <ListItem key={title}> - <ListLink href="#"> + <ListLink href={`http://sol-${name}.com`}> <Icon as={icon as 'svg'} /> <div> <Beta>{title}</Beta> diff --git a/packages/dev-tools-pages/ts/components/hero.tsx b/packages/dev-tools-pages/ts/components/hero.tsx index cdcad6982..a024a49dc 100644 --- a/packages/dev-tools-pages/ts/components/hero.tsx +++ b/packages/dev-tools-pages/ts/components/hero.tsx @@ -9,12 +9,12 @@ import { Beta } from './typography'; const Hero: React.StatelessComponent<ContextInterface> = ({ children }) => ( <ThemeContext.Consumer> - {({ subtitle, tagline }: ContextInterface) => ( + {({ subtitle, tagline, docLink }: ContextInterface) => ( <StyledHero> <HeroContainer> <Subtitle>{subtitle}</Subtitle> <Tagline as="p">{tagline}</Tagline> - <Button as="a" href="#" large={true}> + <Button as="a" href={docLink} target="_blank" large={true}> Read the Docs </Button> </HeroContainer> diff --git a/packages/dev-tools-pages/ts/components/trace.tsx b/packages/dev-tools-pages/ts/components/trace.tsx index f41dac9b7..81f6db0ab 100644 --- a/packages/dev-tools-pages/ts/components/trace.tsx +++ b/packages/dev-tools-pages/ts/components/trace.tsx @@ -25,7 +25,7 @@ const Trace: React.StatelessComponent<{}> = () => ( troublemaking line of code. The only hint you'll get is a generic error. </MainCopy> <Breakout> - <Code isLight={true}>Error: VM Exception while processing transaction: rever</Code> + <Code isLight={true}>Error: VM Exception while processing transaction: revert</Code> </Breakout> <List> @@ -44,8 +44,8 @@ const Trace: React.StatelessComponent<{}> = () => ( <Copy dark={true}> <Gamma as="h3">Time-consuming</Gamma> <p> - Working with a large code-base that contains hundreds of smart contracts, - finding the failing line of code quickly becomes a daunting task. + Working within a large code-base that contains many smart contracts, finding the + failing line of code quickly becomes a daunting task. </p> </Copy> <Icon as={TimeConsuming} /> @@ -78,8 +78,8 @@ const Trace: React.StatelessComponent<{}> = () => ( <Copy> <Gamma as="h3">Exact location</Gamma> <p> - It shows you the exact location of the specific code linen and where it was - called from. + It shows you the exact location of the offending line and where it was called + from. </p> </Copy> <Icon as={ExactLocation} /> @@ -90,8 +90,7 @@ const Trace: React.StatelessComponent<{}> = () => ( <Gamma as="h3">Time-saving</Gamma> <p> Turning "Your code failed somewhere, good luck debugging it" into "Your code - failed on line X of contract Y", it drastically improves the developer - experience. + failed on line X of contract Y", drastically improves the developer experience. </p> </Copy> <Icon as={TimeSaving} /> diff --git a/packages/dev-tools-pages/ts/context/compiler.tsx b/packages/dev-tools-pages/ts/context/compiler.tsx index 177e265e5..e4642c826 100644 --- a/packages/dev-tools-pages/ts/context/compiler.tsx +++ b/packages/dev-tools-pages/ts/context/compiler.tsx @@ -5,6 +5,7 @@ import { ContextInterface } from './index'; export const context: ContextInterface = { title: 'sol-compiler', name: 'compiler', + docLink: 'https://0x.org/docs/sol-compiler', subtitle: 'Solidity compilation that just works', tagline: 'Seamlessly compile an entire solidity project and generate customisable artifacts', icon: Icon, diff --git a/packages/dev-tools-pages/ts/context/cov.tsx b/packages/dev-tools-pages/ts/context/coverage.tsx index 1ade45e9d..3e44b6ec2 100644 --- a/packages/dev-tools-pages/ts/context/cov.tsx +++ b/packages/dev-tools-pages/ts/context/coverage.tsx @@ -3,9 +3,10 @@ import Icon from 'ts/icons/logos/cov.svg'; import { ContextInterface } from './index'; export const context: ContextInterface = { - title: 'sol-cov', - name: 'cov', + title: 'sol-coverage', + name: 'coverage', subtitle: 'Solidity code coverage', + docLink: 'https://0x.org/docs/sol-coverage', tagline: 'Measure Solidity code coverage', icon: Icon, colors: { diff --git a/packages/dev-tools-pages/ts/context/index.tsx b/packages/dev-tools-pages/ts/context/index.tsx index 35c647ad6..97ccf5c16 100644 --- a/packages/dev-tools-pages/ts/context/index.tsx +++ b/packages/dev-tools-pages/ts/context/index.tsx @@ -3,6 +3,7 @@ import { createContext } from 'react'; interface ContextInterface { title?: string; name?: string; + docLink?: string; subtitle?: string; tagline?: string; icon?: React.ReactNode; diff --git a/packages/dev-tools-pages/ts/context/profiler.tsx b/packages/dev-tools-pages/ts/context/profiler.tsx index 5ccfa5b4c..e2ddcb230 100644 --- a/packages/dev-tools-pages/ts/context/profiler.tsx +++ b/packages/dev-tools-pages/ts/context/profiler.tsx @@ -5,6 +5,7 @@ import { ContextInterface } from './index'; export const context: ContextInterface = { title: 'sol-profiler', name: 'profiler', + docLink: 'https://0x.org/docs/sol-profiler', subtitle: 'Gas profiling for Solidity', tagline: "Implement data-guided optimizations by profiling your contract's gas usage", icon: Icon, diff --git a/packages/dev-tools-pages/ts/context/trace.tsx b/packages/dev-tools-pages/ts/context/trace.tsx index 9627cc0a4..3c19661f2 100644 --- a/packages/dev-tools-pages/ts/context/trace.tsx +++ b/packages/dev-tools-pages/ts/context/trace.tsx @@ -6,6 +6,7 @@ export const context: ContextInterface = { title: 'sol-trace', name: 'trace', subtitle: 'Human-readable stack traces', + docLink: 'https://0x.org/docs/sol-trace', tagline: 'Immediately locate Solidity errors and rapidly debug failed transactions', icon: Icon, colors: { diff --git a/packages/dev-tools-pages/ts/pages/compiler.tsx b/packages/dev-tools-pages/ts/pages/compiler.tsx index 93a667562..0468fd84f 100644 --- a/packages/dev-tools-pages/ts/pages/compiler.tsx +++ b/packages/dev-tools-pages/ts/pages/compiler.tsx @@ -24,6 +24,9 @@ const Animation = Loadable({ }, }); +const SOLIDITY_INPUT_FORMAT_DOCS = + 'https://solidity.readthedocs.io/en/v0.4.24/using-the-compiler.html#compiler-input-and-output-json-description'; + const Compiler: React.StatelessComponent<{}> = () => ( <Base context={context}> <Hero> @@ -74,15 +77,19 @@ const Compiler: React.StatelessComponent<{}> = () => ( <Content dark={true}> <ContentBlock main={true} title="Artifacts"> <Lead> - Sol compiler uses solidity standard JSON output format for the artifacts. This way, you can define - which parts of the artifact you need. + Sol compiler uses{' '} + <a href={SOLIDITY_INPUT_FORMAT_DOCS} target="_blank"> + Solidity standard JSON input format + </a>{' '} + to specify what to include in the generated artifacts. This way, you have complete flexibility on + what is included. </Lead> </ContentBlock> <ContentBlock title="Production"> <p> - Sol compiler uses solidity standard JSON output format for the artifacts. This way, you can define - which parts of the artifact you need. + In production, you want to optimize for a small bundle size, so your compiler.json config would + instruct sol-compiler to only output the contract ABI. </p> <Breakout> <Code isLight={true} language="json" isEtc={true}> @@ -109,8 +116,9 @@ const Compiler: React.StatelessComponent<{}> = () => ( </ContentBlock> <ContentBlock title="Development"> <p> - Sometimes you need to use some debuggers or other dev tools and you’ll need more info in the - artifact. + In development, you need to use profiler and other dev tools that require more information from the + artifact. To do this, you can specify that the artifact also contain the bytecode, deployed bytecode + and source maps. </p> <Breakout> <Code isLight={true} language="json" isEtc={true}> diff --git a/packages/dev-tools-pages/ts/pages/cov.tsx b/packages/dev-tools-pages/ts/pages/coverage.tsx index 85487248a..de03d3a9c 100644 --- a/packages/dev-tools-pages/ts/pages/cov.tsx +++ b/packages/dev-tools-pages/ts/pages/coverage.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { hydrate, render } from 'react-dom'; import * as Loadable from 'react-loadable'; -import { context } from 'ts/context/cov'; +import { context } from 'ts/context/coverage'; import { Base } from 'ts/components/base'; import { Breakout } from 'ts/components/breakout'; @@ -25,7 +25,7 @@ const Animation = Loadable({ }, }); -const Cov: React.StatelessComponent<{}> = () => ( +const Coverage: React.StatelessComponent<{}> = () => ( <Base context={context}> <Hero> <Animation /> @@ -33,9 +33,9 @@ const Cov: React.StatelessComponent<{}> = () => ( <Intro> <IntroLead title="Measure your tests"> <p> - When it comes to writing smart contracts, testing is one of the most important steps of the process. - In order to quantify the robustness of your Solidity testing suite, you need to measure its code - coverage. + When it comes to writing secure smart contracts, testing is one of the most important steps in the + process. In order to quantify the robustness of your Solidity testing suite, you need to measure its + code coverage. </p> </IntroLead> <IntroAside> @@ -69,10 +69,17 @@ const Cov: React.StatelessComponent<{}> = () => ( <ContentBlock title="Prerequisites"> <List> <ListItem> - Use <a href="#">ganache-cli</a> as a backing node. + Use{' '} + <a href="https://www.npmjs.com/package/ganache-cli" target="_blank"> + ganache-cli + </a>{' '} + as a backing node. </ListItem> <ListItem> - Understand and use <a href="#">web3-provider-engine</a>. + Understand and use{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + web3-provider-engine + </a>. </ListItem> </List> </ContentBlock> @@ -82,11 +89,18 @@ const Cov: React.StatelessComponent<{}> = () => ( </Breakout> <p> - Sol-cov is a subprovider that needs to be prepended to your <a href="#">provider engine</a>. - Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-cov ships with - the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with <a href="#">Sol-compiler</a>{' '} + Sol-coverage is a subprovider that needs to be prepended to your{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + provider engine + </a>. Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-coverage + ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with{' '} + <a href="http://sol-compiler.com" target="_blank"> + Sol-compiler + </a>{' '} and <InlineCode>TruffleArtifactAdapter</InlineCode> for use with the{' '} - <a href="#">Truffle framework</a>. You can also write your own and support any artifact format. + <a href="https://truffleframework.com/truffle" target="_blank"> + Truffle framework + </a>. You can also write your own and support any artifact format. </p> <Tabs> @@ -118,19 +132,19 @@ const artifactAdapter = new YourCustomArtifactsAdapter(...);`} </Tabs> <p> Now that we have an <InlineCode>artifactAdapter</InlineCode>, we can create a{' '} - <InlineCode>RevertTraceSubprovider</InlineCode> and append it to our provider engine. + <InlineCode>CoverageSubprovider</InlineCode> and append it to our provider engine. </p> <Breakout> <Code language="javascript"> {`import { ProviderEngine, RpcSubprovider } from 'web3-provider-engine'; -import { RevertTraceSubprovider } from '@0x/sol-coverage'; +import { CoverageSubprovider } from '@0x/sol-coverage'; const defaultFromAddress = "..."; // Some ethereum address with test funds -const revertTraceSubprovider = new RevertTraceSubprovider(artifactAdapter, defaultFromAddress); +const coverageSubprovider = new CoverageSubprovider(artifactAdapter, defaultFromAddress); const providerEngine = new ProviderEngine(); -providerEngine.addProvider(revertTraceSubprovider); +providerEngine.addProvider(coverageSubprovider); providerEngine.addProvider(new RpcSubprovider({rpcUrl: 'http://localhost:8545'})); providerEngine.start();`} </Code> @@ -143,7 +157,7 @@ providerEngine.start();`} const root = document.getElementById('app'); if (root.hasChildNodes()) { - hydrate(<Cov />, root); + hydrate(<Coverage />, root); } else { - render(<Cov />, root); + render(<Coverage />, root); } diff --git a/packages/dev-tools-pages/ts/pages/profiler.tsx b/packages/dev-tools-pages/ts/pages/profiler.tsx index 16ac9088e..feca368ba 100644 --- a/packages/dev-tools-pages/ts/pages/profiler.tsx +++ b/packages/dev-tools-pages/ts/pages/profiler.tsx @@ -66,10 +66,17 @@ const Profiler: React.StatelessComponent<{}> = () => ( <ContentBlock title="Prerequisites"> <List> <ListItem> - Use <a href="#">ganache-cli</a> as a backing node. + Use{' '} + <a href="https://www.npmjs.com/package/ganache-cli" target="_blank"> + ganache-cli + </a>{' '} + as a backing node. </ListItem> <ListItem> - Understand and use <a href="#">web3-provider-engine</a>. + Understand and use{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + web3-provider-engine + </a>. </ListItem> </List> </ContentBlock> @@ -79,11 +86,18 @@ const Profiler: React.StatelessComponent<{}> = () => ( </Breakout> <p> - Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>. - Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace ships - with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with{' '} - <a href="#">Sol-compiler</a> and <InlineCode>TruffleArtifactAdapter</InlineCode> for use with the{' '} - <a href="#">Truffle framework</a>. You can also write your own and support any artifact format. + Sol-trace is a subprovider that needs to be prepended to your{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + provider engine + </a>. Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace + ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with{' '} + <a href="http://sol-compiler.com" target="_blank"> + Sol-compiler + </a>{' '} + and <InlineCode>TruffleArtifactAdapter</InlineCode> for use with the{' '} + <a href="https://truffleframework.com/truffle" target="_blank"> + Truffle framework + </a>. You can also write your own and support any artifact format. </p> <Tabs> @@ -115,19 +129,19 @@ const artifactAdapter = new YourCustomArtifactsAdapter(...);`} </Tabs> <p> Now that we have an <InlineCode>artifactAdapter</InlineCode>, we can create a{' '} - <InlineCode>RevertTraceSubprovider</InlineCode> and append it to our provider engine. + <InlineCode>ProfilerSubprovider</InlineCode> and append it to our provider engine. </p> <Breakout> <Code language="javascript"> {`import { ProviderEngine, RpcSubprovider } from 'web3-provider-engine'; -import { RevertTraceSubprovider } from '@0x/sol-coverage'; +import { ProfilerSubprovider } from '@0x/sol-coverage'; const defaultFromAddress = "..."; // Some ethereum address with test funds -const revertTraceSubprovider = new RevertTraceSubprovider(artifactAdapter, defaultFromAddress); +const profilerSubprovider = new ProfilerSubprovider(artifactAdapter, defaultFromAddress); const providerEngine = new ProviderEngine(); -providerEngine.addProvider(revertTraceSubprovider); +providerEngine.addProvider(profilerSubprovider); providerEngine.addProvider(new RpcSubprovider({rpcUrl: 'http://localhost:8545'})); providerEngine.start();`} </Code> diff --git a/packages/dev-tools-pages/ts/pages/trace.tsx b/packages/dev-tools-pages/ts/pages/trace.tsx index cc34e0fbe..1fa159461 100644 --- a/packages/dev-tools-pages/ts/pages/trace.tsx +++ b/packages/dev-tools-pages/ts/pages/trace.tsx @@ -36,10 +36,17 @@ const Trace: React.StatelessComponent<{}> = () => ( <ContentBlock title="Prerequisites"> <List> <ListItem> - Use <a href="#">ganache-cli</a> as a backing node. + Use{' '} + <a href="https://www.npmjs.com/package/ganache-cli" target="_blank"> + ganache-cli + </a>{' '} + as a backing node. </ListItem> <ListItem> - Understand and use <a href="#">web3-provider-engine</a>. + Understand and use{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + web3-provider-engine + </a>. </ListItem> </List> </ContentBlock> @@ -49,11 +56,18 @@ const Trace: React.StatelessComponent<{}> = () => ( </Breakout> <p> - Sol-trace is a subprovider that needs to be prepended to your <a href="#">provider engine</a>. - Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace ships - with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with{' '} - <a href="#">Sol-compiler</a> and <InlineCode>TruffleArtifactAdapter</InlineCode> for use with the{' '} - <a href="#">Truffle framework</a>. You can also write your own and support any artifact format. + Sol-trace is a subprovider that needs to be prepended to your{' '} + <a href="https://github.com/MetaMask/provider-engine" target="_blank"> + provider engine + </a>. Depending on your project setup, you will need to use a specific ArtifactAdapter. Sol-trace + ships with the <InlineCode>SolCompilerArtifactAdapter</InlineCode> for use with{' '} + <a href="http://sol-compiler.com" target="_blank"> + Sol-compiler + </a>{' '} + and <InlineCode>TruffleArtifactAdapter</InlineCode> for use with the{' '} + <a href="https://truffleframework.com/truffle" target="_blank"> + Truffle framework + </a>. You can also write your own and support any artifact format. </p> <Tabs> @@ -85,19 +99,19 @@ const artifactAdapter = new YourCustomArtifactsAdapter(...);`} </Tabs> <p> Now that we have an <InlineCode>artifactAdapter</InlineCode>, we can create a{' '} - <InlineCode>RevertTraceSubprovider</InlineCode> and append it to our provider engine. + <InlineCode>TraceSubprovider</InlineCode> and append it to our provider engine. </p> <Breakout> <Code language="javascript"> {`import { ProviderEngine, RpcSubprovider } from 'web3-provider-engine'; -import { RevertTraceSubprovider } from '@0x/sol-coverage'; +import { TraceSubprovider } from '@0x/sol-coverage'; const defaultFromAddress = "..."; // Some ethereum address with test funds -const revertTraceSubprovider = new RevertTraceSubprovider(artifactAdapter, defaultFromAddress); +const traceSubprovider = new TraceSubprovider(artifactAdapter, defaultFromAddress); const providerEngine = new ProviderEngine(); -providerEngine.addProvider(revertTraceSubprovider); +providerEngine.addProvider(traceSubprovider); providerEngine.addProvider(new RpcSubprovider({rpcUrl: 'http://localhost:8545'})); providerEngine.start();`} </Code> diff --git a/packages/dev-tools-pages/webpack.config.js b/packages/dev-tools-pages/webpack.config.js index 640297770..ef2f98cf2 100644 --- a/packages/dev-tools-pages/webpack.config.js +++ b/packages/dev-tools-pages/webpack.config.js @@ -3,7 +3,6 @@ const webpack = require('webpack'); const TerserPlugin = require('terser-webpack-plugin'); const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; const HtmlWebpackPlugin = require('html-webpack-plugin'); -const childProcess = require('child_process'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const CleanWebpackPlugin = require('clean-webpack-plugin'); @@ -12,7 +11,7 @@ const pages = require('./pages'); const config = { entry: { compiler: './ts/pages/compiler.tsx', - cov: './ts/pages/cov.tsx', + coverage: './ts/pages/coverage.tsx', profiler: './ts/pages/profiler.tsx', trace: './ts/pages/trace.tsx', }, |