From e34bc77157205cb2d29f65b707f720eab79bc460 Mon Sep 17 00:00:00 2001 From: HenryNguyen5 <6404866+HenryNguyen5@users.noreply.github.com> Date: Tue, 22 Sep 2020 16:47:54 -0400 Subject: [PATCH 1/5] Support solidity v0.7.x --- packages/sol-compiler/src/compiler.ts | 4 ++ packages/sol-compiler/src/solc_wrapper_v07.ts | 3 ++ packages/sol-compiler/test/compiler_test.ts | 26 ++++++++++++- .../test/fixtures/contracts/V7Contract.sol | 37 +++++++++++++++++++ .../test/fixtures/v7_contract_bin.ts | 2 + 5 files changed, 70 insertions(+), 2 deletions(-) create mode 100644 packages/sol-compiler/src/solc_wrapper_v07.ts create mode 100644 packages/sol-compiler/test/fixtures/contracts/V7Contract.sol create mode 100644 packages/sol-compiler/test/fixtures/v7_contract_bin.ts diff --git a/packages/sol-compiler/src/compiler.ts b/packages/sol-compiler/src/compiler.ts index 20dc38b182..b345fc69aa 100644 --- a/packages/sol-compiler/src/compiler.ts +++ b/packages/sol-compiler/src/compiler.ts @@ -42,6 +42,7 @@ import { ContractContentsByPath, ImportPrefixRemappings, SolcWrapper } from './s import { SolcWrapperV04 } from './solc_wrapper_v04'; import { SolcWrapperV05 } from './solc_wrapper_v05'; import { SolcWrapperV06 } from './solc_wrapper_v06'; +import { SolcWrapperV07 } from './solc_wrapper_v07'; export type TYPE_ALL_FILES_IDENTIFIER = '*'; export const ALL_CONTRACTS_IDENTIFIER = '*'; @@ -366,6 +367,9 @@ export class Compiler { if (solcVersion.startsWith('0.6')) { return new SolcWrapperV06(solcVersion, this._opts); } + if (solcVersion.startsWith('0.7')) { + return new SolcWrapperV07(solcVersion, this._opts); + } throw new Error(`Missing Solc wrapper implementation for version ${solcVersion}`); } diff --git a/packages/sol-compiler/src/solc_wrapper_v07.ts b/packages/sol-compiler/src/solc_wrapper_v07.ts new file mode 100644 index 0000000000..4acdc9b587 --- /dev/null +++ b/packages/sol-compiler/src/solc_wrapper_v07.ts @@ -0,0 +1,3 @@ +import { SolcWrapperV06 } from './solc_wrapper_v06'; + +export const SolcWrapperV07 = SolcWrapperV06; diff --git a/packages/sol-compiler/test/compiler_test.ts b/packages/sol-compiler/test/compiler_test.ts index 83fd3ad4c9..3b39c85485 100644 --- a/packages/sol-compiler/test/compiler_test.ts +++ b/packages/sol-compiler/test/compiler_test.ts @@ -3,12 +3,11 @@ import * as chai from 'chai'; import { CompilerOptions, ContractArtifact } from 'ethereum-types'; import 'mocha'; import { join } from 'path'; - import { Compiler } from '../src/compiler'; import { fsWrapper } from '../src/utils/fs_wrapper'; - import { exchange_binary } from './fixtures/exchange_bin'; import { v6_contract_binary } from './fixtures/v6_contract_bin'; +import { v7_contract_binary } from './fixtures/v7_contract_bin'; import { chaiSetup } from './util/chai_setup'; import { constants } from './util/constants'; @@ -138,4 +137,27 @@ describe('#Compiler', function(): void { const expectedBinaryWithoutMetadata = hexUtils.slice(v6_contract_binary, 0, -METADATA_SIZE); expect(actualBinaryWithoutMetadata).to.eq(expectedBinaryWithoutMetadata); }); + it('should compile a V0.7 contract', async () => { + compilerOpts.contracts = ['V7Contract']; + + const artifactPath = `${artifactsDir}/V7Contract.json`; + if (fsWrapper.doesPathExistSync(artifactPath)) { + await fsWrapper.removeFileAsync(artifactPath); + } + + await new Compiler(compilerOpts).compileAsync(); + + const opts = { + encoding: 'utf8', + }; + const exchangeArtifactString = await fsWrapper.readFileAsync(artifactPath, opts); + const exchangeArtifact: ContractArtifact = JSON.parse(exchangeArtifactString); + const actualBinaryWithoutMetadata = hexUtils.slice( + exchangeArtifact.compilerOutput.evm.bytecode.object, + 0, + -METADATA_SIZE, + ); + const expectedBinaryWithoutMetadata = hexUtils.slice(v7_contract_binary, 0, -METADATA_SIZE); + expect(actualBinaryWithoutMetadata).to.eq(expectedBinaryWithoutMetadata); + }); }); diff --git a/packages/sol-compiler/test/fixtures/contracts/V7Contract.sol b/packages/sol-compiler/test/fixtures/contracts/V7Contract.sol new file mode 100644 index 0000000000..cb8561c3cf --- /dev/null +++ b/packages/sol-compiler/test/fixtures/contracts/V7Contract.sol @@ -0,0 +1,37 @@ +/* + + Copyright 2020 ZeroEx Intl. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +*/ + +pragma solidity 0.7.0; + + +contract V7Contract { + + uint256 private _privateNumber; + + constructor(uint256 privateNumber) public { + _privateNumber = privateNumber; + } + + fallback() external { + revert('nope'); + } + + receive() payable external { + // no-op + } +} diff --git a/packages/sol-compiler/test/fixtures/v7_contract_bin.ts b/packages/sol-compiler/test/fixtures/v7_contract_bin.ts new file mode 100644 index 0000000000..abb3b6a407 --- /dev/null +++ b/packages/sol-compiler/test/fixtures/v7_contract_bin.ts @@ -0,0 +1,2 @@ +export const v7_contract_binary = + '0x6080604052348015600f57600080fd5b5060405161011238038061011283398181016040526020811015603157600080fd5b8101908080519060200190929190505050806000819055505060ba806100586000396000f3fe608060405236600a57005b348015601557600080fd5b506040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f6e6f70650000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fdfea2646970667358221220d498aaab2683da1af2092969c6d8a0c3d992a9a9a0a5d19b54b5e704ab8fd5e364736f6c63430007000033'; From db98ff8cb7d6fdb3f7f43fbb062ccb58eda32a4b Mon Sep 17 00:00:00 2001 From: Lawrence Forman Date: Mon, 19 Oct 2020 12:04:38 -0400 Subject: [PATCH 2/5] fix sol-compiler linter error pin `@types/node` to appease publish job --- contracts/asset-proxy/package.json | 2 +- contracts/broker/package.json | 2 +- contracts/coordinator/package.json | 2 +- contracts/dev-utils/package.json | 2 +- contracts/erc1155/package.json | 2 +- contracts/erc20/package.json | 2 +- contracts/erc721/package.json | 2 +- contracts/exchange-forwarder/package.json | 2 +- contracts/exchange-libs/package.json | 2 +- contracts/exchange/package.json | 2 +- contracts/extensions/package.json | 2 +- contracts/integrations/package.json | 2 +- contracts/multisig/package.json | 2 +- contracts/staking/package.json | 2 +- contracts/test-utils/package.json | 2 +- contracts/utils/package.json | 2 +- packages/0x.js/package.json | 2 +- packages/abi-gen/package.json | 2 +- packages/asset-swapper/package.json | 2 +- packages/contracts-gen/package.json | 2 +- packages/ethereum-types/package.json | 2 +- packages/instant/package.json | 2 +- packages/json-schemas/package.json | 2 +- packages/monorepo-scripts/package.json | 2 +- packages/order-utils/package.json | 2 +- packages/sol-compiler/test/compiler_test.ts | 2 ++ packages/sol-coverage/package.json | 2 +- packages/sol-profiler/package.json | 2 +- packages/sol-trace/package.json | 2 +- packages/sol-tracing-utils/package.json | 2 +- packages/sra-spec/package.json | 2 +- packages/subproviders/package.json | 2 +- packages/types/package.json | 2 +- packages/utils/package.json | 2 +- 34 files changed, 35 insertions(+), 33 deletions(-) diff --git a/contracts/asset-proxy/package.json b/contracts/asset-proxy/package.json index 0f8b6adff2..7f2147267c 100644 --- a/contracts/asset-proxy/package.json +++ b/contracts/asset-proxy/package.json @@ -62,7 +62,7 @@ "@0x/tslint-config": "^4.1.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/broker/package.json b/contracts/broker/package.json index 78f2180835..19e837a608 100644 --- a/contracts/broker/package.json +++ b/contracts/broker/package.json @@ -67,7 +67,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/coordinator/package.json b/contracts/coordinator/package.json index 999223cc5f..098e8c85f8 100644 --- a/contracts/coordinator/package.json +++ b/contracts/coordinator/package.json @@ -67,7 +67,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/dev-utils/package.json b/contracts/dev-utils/package.json index 45ea524cdb..533abf2f03 100644 --- a/contracts/dev-utils/package.json +++ b/contracts/dev-utils/package.json @@ -52,7 +52,7 @@ "@0x/tslint-config": "^4.1.0", "@0x/types": "^3.2.0", "@0x/utils": "^5.5.1", - "@types/node": "*", + "@types/node": "12.12.54", "ethereum-types": "^3.2.0", "ethers": "~4.0.4", "npm-run-all": "^4.1.2", diff --git a/contracts/erc1155/package.json b/contracts/erc1155/package.json index 0b9783985e..50d18d69ee 100644 --- a/contracts/erc1155/package.json +++ b/contracts/erc1155/package.json @@ -63,7 +63,7 @@ "@0x/typescript-typings": "^5.1.1", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/erc20/package.json b/contracts/erc20/package.json index 17c9a41bf6..3e1de8ac55 100644 --- a/contracts/erc20/package.json +++ b/contracts/erc20/package.json @@ -65,7 +65,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/erc721/package.json b/contracts/erc721/package.json index ef3417ce30..2133f3cdad 100644 --- a/contracts/erc721/package.json +++ b/contracts/erc721/package.json @@ -66,7 +66,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/exchange-forwarder/package.json b/contracts/exchange-forwarder/package.json index 6948fc47d4..f12f37cb98 100644 --- a/contracts/exchange-forwarder/package.json +++ b/contracts/exchange-forwarder/package.json @@ -73,7 +73,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/exchange-libs/package.json b/contracts/exchange-libs/package.json index d64a9a738a..04be891c01 100644 --- a/contracts/exchange-libs/package.json +++ b/contracts/exchange-libs/package.json @@ -62,7 +62,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/exchange/package.json b/contracts/exchange/package.json index 125f4e3768..047bc45322 100644 --- a/contracts/exchange/package.json +++ b/contracts/exchange/package.json @@ -69,7 +69,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/extensions/package.json b/contracts/extensions/package.json index 802e5f7022..36dec11536 100644 --- a/contracts/extensions/package.json +++ b/contracts/extensions/package.json @@ -72,7 +72,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/integrations/package.json b/contracts/integrations/package.json index 1065d09871..23e04c34fb 100644 --- a/contracts/integrations/package.json +++ b/contracts/integrations/package.json @@ -72,7 +72,7 @@ "@azure/core-asynciterator-polyfill": "^1.0.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/seedrandom": "^2.4.28", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", diff --git a/contracts/multisig/package.json b/contracts/multisig/package.json index 3b73a523ac..c7d644c9ce 100644 --- a/contracts/multisig/package.json +++ b/contracts/multisig/package.json @@ -63,7 +63,7 @@ "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/staking/package.json b/contracts/staking/package.json index a2df3e7ab0..7b5e3335d8 100644 --- a/contracts/staking/package.json +++ b/contracts/staking/package.json @@ -68,7 +68,7 @@ "@0x/types": "^3.2.0", "@0x/web3-wrapper": "^7.2.0", "@types/lodash": "4.14.104", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/contracts/test-utils/package.json b/contracts/test-utils/package.json index 76c8f29cfa..26c1ded5bc 100644 --- a/contracts/test-utils/package.json +++ b/contracts/test-utils/package.json @@ -60,7 +60,7 @@ "@types/js-combinatorics": "^0.5.29", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "bn.js": "^4.11.8", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", diff --git a/contracts/utils/package.json b/contracts/utils/package.json index 855e65a45d..9ac65cbcce 100644 --- a/contracts/utils/package.json +++ b/contracts/utils/package.json @@ -62,7 +62,7 @@ "@types/bn.js": "^4.11.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/packages/0x.js/package.json b/packages/0x.js/package.json index 76bd1d66d7..436e0ff243 100644 --- a/packages/0x.js/package.json +++ b/packages/0x.js/package.json @@ -53,7 +53,7 @@ "@0x/tslint-config": "^4.1.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/sinon": "^2.2.2", "awesome-typescript-loader": "^5.2.1", "chai": "^4.0.1", diff --git a/packages/abi-gen/package.json b/packages/abi-gen/package.json index f82a85a937..100470720a 100644 --- a/packages/abi-gen/package.json +++ b/packages/abi-gen/package.json @@ -92,7 +92,7 @@ "@types/glob": "5.0.35", "@types/mkdirp": "^0.5.2", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/tmp": "^0.0.33", "@types/yargs": "^11.0.0", "chai": "^4.0.1", diff --git a/packages/asset-swapper/package.json b/packages/asset-swapper/package.json index bce6d04b7f..71da2f0983 100644 --- a/packages/asset-swapper/package.json +++ b/packages/asset-swapper/package.json @@ -103,7 +103,7 @@ "@0x/types": "^3.2.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", "chai-bignumber": "^3.0.0", diff --git a/packages/contracts-gen/package.json b/packages/contracts-gen/package.json index fb5e365d5e..4cb72a740a 100644 --- a/packages/contracts-gen/package.json +++ b/packages/contracts-gen/package.json @@ -41,7 +41,7 @@ "devDependencies": { "@0x/tslint-config": "^4.1.0", "@types/mkdirp": "^0.5.2", - "@types/node": "*", + "@types/node": "12.12.54", "@types/prettier": "^1.15.2", "shx": "^0.2.2", "tslint": "5.11.0", diff --git a/packages/ethereum-types/package.json b/packages/ethereum-types/package.json index f4042e79d8..05b45622fb 100644 --- a/packages/ethereum-types/package.json +++ b/packages/ethereum-types/package.json @@ -41,7 +41,7 @@ "typescript": "3.0.1" }, "dependencies": { - "@types/node": "*", + "@types/node": "12.12.54", "bignumber.js": "~9.0.0" }, "publishConfig": { diff --git a/packages/instant/package.json b/packages/instant/package.json index 93289ca8a5..a95c48c655 100644 --- a/packages/instant/package.json +++ b/packages/instant/package.json @@ -74,7 +74,7 @@ "@types/enzyme-adapter-react-16": "^1.0.3", "@types/jest": "^23.3.5", "@types/lodash": "4.14.104", - "@types/node": "*", + "@types/node": "12.12.54", "@types/react": "16.4.16", "@types/react-dom": "16.0.6", "@types/react-redux": "^6.0.9", diff --git a/packages/json-schemas/package.json b/packages/json-schemas/package.json index 18a01df339..7a5b1b6c60 100644 --- a/packages/json-schemas/package.json +++ b/packages/json-schemas/package.json @@ -44,7 +44,7 @@ "homepage": "https://github.com/0xProject/0x-monorepo/packages/json-schemas/README.md", "dependencies": { "@0x/typescript-typings": "^5.1.1", - "@types/node": "*", + "@types/node": "12.12.54", "jsonschema": "^1.2.0", "lodash.values": "^4.3.0" }, diff --git a/packages/monorepo-scripts/package.json b/packages/monorepo-scripts/package.json index 675937c1e6..e24803d7ba 100644 --- a/packages/monorepo-scripts/package.json +++ b/packages/monorepo-scripts/package.json @@ -35,7 +35,7 @@ "devDependencies": { "@types/glob": "5.0.35", "@types/mkdirp": "^0.5.2", - "@types/node": "*", + "@types/node": "12.12.54", "@types/rimraf": "^2.0.2", "@types/semver": "5.5.0", "@types/yargs": "^11.0.0", diff --git a/packages/order-utils/package.json b/packages/order-utils/package.json index 744c67dffb..7a32de24d1 100644 --- a/packages/order-utils/package.json +++ b/packages/order-utils/package.json @@ -52,7 +52,7 @@ "@types/bn.js": "^4.11.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/web3-provider-engine": "^14.0.0", "chai": "^4.0.1", "ethereum-types": "^3.2.0", diff --git a/packages/sol-compiler/test/compiler_test.ts b/packages/sol-compiler/test/compiler_test.ts index 3b39c85485..f7086649c5 100644 --- a/packages/sol-compiler/test/compiler_test.ts +++ b/packages/sol-compiler/test/compiler_test.ts @@ -3,8 +3,10 @@ import * as chai from 'chai'; import { CompilerOptions, ContractArtifact } from 'ethereum-types'; import 'mocha'; import { join } from 'path'; + import { Compiler } from '../src/compiler'; import { fsWrapper } from '../src/utils/fs_wrapper'; + import { exchange_binary } from './fixtures/exchange_bin'; import { v6_contract_binary } from './fixtures/v6_contract_bin'; import { v7_contract_binary } from './fixtures/v7_contract_bin'; diff --git a/packages/sol-coverage/package.json b/packages/sol-coverage/package.json index 34c9d5dbe1..53e3513af6 100644 --- a/packages/sol-coverage/package.json +++ b/packages/sol-coverage/package.json @@ -45,7 +45,7 @@ "devDependencies": { "@0x/ts-doc-gen": "^0.0.22", "@0x/tslint-config": "^4.1.0", - "@types/node": "*", + "@types/node": "12.12.54", "@types/web3-provider-engine": "^14.0.0", "npm-run-all": "^4.1.2", "nyc": "^11.0.1", diff --git a/packages/sol-profiler/package.json b/packages/sol-profiler/package.json index e13c34a314..1ad58399b3 100644 --- a/packages/sol-profiler/package.json +++ b/packages/sol-profiler/package.json @@ -45,7 +45,7 @@ "devDependencies": { "@0x/ts-doc-gen": "^0.0.22", "@0x/tslint-config": "^4.1.0", - "@types/node": "*", + "@types/node": "12.12.54", "@types/web3-provider-engine": "^14.0.0", "npm-run-all": "^4.1.2", "shx": "^0.2.2", diff --git a/packages/sol-trace/package.json b/packages/sol-trace/package.json index 81ac78805d..3c88e9b460 100644 --- a/packages/sol-trace/package.json +++ b/packages/sol-trace/package.json @@ -47,7 +47,7 @@ "@0x/ts-doc-gen": "^0.0.22", "@0x/tslint-config": "^4.1.0", "@types/loglevel": "^1.5.3", - "@types/node": "*", + "@types/node": "12.12.54", "@types/web3-provider-engine": "^14.0.0", "npm-run-all": "^4.1.2", "shx": "^0.2.2", diff --git a/packages/sol-tracing-utils/package.json b/packages/sol-tracing-utils/package.json index fe525ca953..e927fa82ec 100644 --- a/packages/sol-tracing-utils/package.json +++ b/packages/sol-tracing-utils/package.json @@ -66,7 +66,7 @@ "@types/loglevel": "^1.5.3", "@types/mkdirp": "^0.5.2", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/rimraf": "^2.0.2", "chai": "^4.0.1", "copyfiles": "^2.0.0", diff --git a/packages/sra-spec/package.json b/packages/sra-spec/package.json index 877dd00c3d..0548ae38d9 100644 --- a/packages/sra-spec/package.json +++ b/packages/sra-spec/package.json @@ -41,7 +41,7 @@ "devDependencies": { "@0x/tslint-config": "^4.1.0", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "chai": "^4.0.1", "chokidar-cli": "^1.2.0", "copyfiles": "^2.0.0", diff --git a/packages/subproviders/package.json b/packages/subproviders/package.json index 54b47d85f6..e294c79be7 100644 --- a/packages/subproviders/package.json +++ b/packages/subproviders/package.json @@ -64,7 +64,7 @@ "@types/hdkey": "^0.7.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "*", + "@types/node": "12.12.54", "@types/sinon": "^2.2.2", "chai": "^4.0.1", "chai-as-promised": "^7.1.0", diff --git a/packages/types/package.json b/packages/types/package.json index 5d7151c5ef..6a06115fc7 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -30,7 +30,7 @@ "typescript": "3.0.1" }, "dependencies": { - "@types/node": "*", + "@types/node": "12.12.54", "bignumber.js": "~9.0.0", "ethereum-types": "^3.2.0" }, diff --git a/packages/utils/package.json b/packages/utils/package.json index 76b9c50ffe..ffbd8d7327 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -47,7 +47,7 @@ "dependencies": { "@0x/types": "^3.2.0", "@0x/typescript-typings": "^5.1.1", - "@types/node": "*", + "@types/node": "12.12.54", "abortcontroller-polyfill": "^1.1.9", "bignumber.js": "~9.0.0", "chalk": "^2.3.0", From 52cbddf054c877db79e6f93a08cc2df5b5e479d5 Mon Sep 17 00:00:00 2001 From: Lawrence Forman Date: Mon, 19 Oct 2020 12:25:01 -0400 Subject: [PATCH 3/5] `@0x/sol-compiler`: fix build error with new node types --- packages/sol-compiler/src/utils/compiler.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sol-compiler/src/utils/compiler.ts b/packages/sol-compiler/src/utils/compiler.ts index 7040427c8f..317a520fe0 100644 --- a/packages/sol-compiler/src/utils/compiler.ts +++ b/packages/sol-compiler/src/utils/compiler.ts @@ -172,7 +172,7 @@ export async function compileDockerAsync( 'solc', '--standard-json', ]; return new Promise((accept, reject) => { - const p = spawn('docker', dockerArgs, { shell: true, stdio: ['pipe', 'inherit', 'inherit'] }); + const p = spawn('docker', dockerArgs, { shell: true, stdio: ['pipe', 'pipe', 'inherit'] }); p.stdin.write(standardInputStr); p.stdin.end(); let fullOutput = ''; From ab90e150151d2104c4e47861e0ca6eeb40dec400 Mon Sep 17 00:00:00 2001 From: Lawrence Forman Date: Mon, 19 Oct 2020 13:03:48 -0400 Subject: [PATCH 4/5] `@0x.js`: add pinned node types to 0x.js --- packages/0x.js/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/0x.js/package.json b/packages/0x.js/package.json index 436e0ff243..33b3a51e9a 100644 --- a/packages/0x.js/package.json +++ b/packages/0x.js/package.json @@ -53,7 +53,6 @@ "@0x/tslint-config": "^4.1.0", "@types/lodash": "4.14.104", "@types/mocha": "^5.2.7", - "@types/node": "12.12.54", "@types/sinon": "^2.2.2", "awesome-typescript-loader": "^5.2.1", "chai": "^4.0.1", @@ -88,6 +87,7 @@ "@0x/typescript-typings": "^5.1.1", "@0x/utils": "^5.5.1", "@0x/web3-wrapper": "^7.2.0", + "@types/node": "12.12.54", "@types/web3-provider-engine": "^14.0.0", "ethereum-types": "^3.2.0", "ethers": "~4.0.4", From a0cd727832df9e46cd75504f194f7772ff6f9abe Mon Sep 17 00:00:00 2001 From: Lawrence Forman Date: Mon, 19 Oct 2020 13:39:48 -0400 Subject: [PATCH 5/5] `@0x/sol-compiler`: Update changelog --- packages/sol-compiler/CHANGELOG.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/sol-compiler/CHANGELOG.json b/packages/sol-compiler/CHANGELOG.json index 99b4e76a34..934f64ff98 100644 --- a/packages/sol-compiler/CHANGELOG.json +++ b/packages/sol-compiler/CHANGELOG.json @@ -1,4 +1,13 @@ [ + { + "version": "4.2.0", + "changes": [ + { + "note": "Add solidity 0.7.x suppoert", + "pr": 2710 + } + ] + }, { "timestamp": 1594788383, "version": "4.1.1",