From ba81ed8f7ea206c6587d00a3f16a4338fdbff422 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 2 Aug 2021 18:20:14 -0400 Subject: [PATCH 001/124] Disallow absolute import paths not beginning with project root Note that the actual effect of this commit isn't to require things to be in the project directory (that was already typically the case), but rather to bar getting around it by starting your import path with "//" or the like. --- packages/compile-common/src/sources.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/compile-common/src/sources.ts b/packages/compile-common/src/sources.ts index 5cfa72dc9c5..173d009fbba 100644 --- a/packages/compile-common/src/sources.ts +++ b/packages/compile-common/src/sources.ts @@ -18,6 +18,10 @@ export function collectSources( replacement: string = "/" ): CollectedSources { const mappedResults = Object.entries(originalSources) + .filter(([originalSourcePath, _]) => + !path.isAbsolute(originalSourcePath) || + originalSourcePath.startsWith(baseDirectory) + ) .map(([originalSourcePath, contents]) => ({ originalSourcePath, contents, From bb5b277fc53f572c5dc390b7b81884ba8d1801e7 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 4 Aug 2021 18:44:52 -0400 Subject: [PATCH 002/124] Add test that double-slashed absolute paths are rejected --- .../compile-solidity/test/test_nonrelative.js | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/packages/compile-solidity/test/test_nonrelative.js b/packages/compile-solidity/test/test_nonrelative.js index 4550abff24b..9db39de5ecf 100644 --- a/packages/compile-solidity/test/test_nonrelative.js +++ b/packages/compile-solidity/test/test_nonrelative.js @@ -4,6 +4,9 @@ const { Compile } = require("@truffle/compile-solidity"); const assert = require("assert"); const Resolver = require("@truffle/resolver"); const process = require("process"); +const tmp = require("tmp"); +tmp.setGracefulCleanup(); +const fs = require("fs"); describe("Non-relative non-absolute file paths", function () { this.timeout(5000); // solc @@ -59,3 +62,58 @@ describe("Non-relative non-absolute file paths", function () { process.chdir(originalWorkingDirectory); }); }); + +describe("Non-canonical absolute file paths", function () { + this.timeout(5000); // solc + let tmpdir; + let options; + + before("Set up temporary directory and project", async function () { + tmpdir = tmp.dirSync({ unsafeCleanup: true }).name; //tmp uses callbacks, not promises, so using sync + await fs.promises.mkdir(path.join(tmpdir, "./contracts")); + const contracts_directory = path.join(tmpdir, "./contracts"); + options = { + working_directory: tmpdir, + contracts_directory, + contracts_build_directory: path.join(tmpdir, "./build/contracts"), //nothing is actually written, but resolver demands it + compilers: { + solc: { + version: "0.8.6", + settings: { + optimizer: { + enabled: false, + runs: 200 + } + } + } + }, + quiet: true + }; + options.resolver = new Resolver(options); + const importedPath = path.join(options.contracts_directory, "Imported.sol"); + const importerPath = path.join(options.contracts_directory, "DoubleSlash.sol"); + await fs.promises.copyFile( + path.join(__dirname, "./sources/badSources/Imported.sol"), + importedPath + ); + await fs.promises.writeFile( + importerPath, + `import "/${importedPath}";` //note the extra slash + ); + }); + + it("Refuses to compile non-canonical absolute paths", async function () { + this.timeout(150000); + + try { + await Compile.all(options); + assert.fail("Compilation should have failed"); + } catch (error) { + debug("error: %O", error); + if(!error.message.match(/Source "\/\/[^"]*" not found/)) { + throw error; //rethrow errors that aren't the one we expect + } + //otherwise, we're good + } + }); +}); From 3314407a8c12eed45196460a6199f8efec6f2990 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 12 Aug 2021 10:32:38 -0400 Subject: [PATCH 003/124] Correctly update events options when using with method --- packages/config/src/index.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index 7895a8110dc..5c105436e3d 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -40,9 +40,8 @@ class TruffleConfig { ); } - public eventManagerOptions(config: TruffleConfig): any { - let muteLogging; - const { quiet, logger, subscribers } = config; + public eventManagerOptions(options: any): any { + const { quiet, logger, subscribers } = options; return { logger, quiet, subscribers }; } @@ -102,8 +101,12 @@ class TruffleConfig { const current = this.normalize(this); const normalized = this.normalize(obj); - let eventsOptions = this.eventManagerOptions(this); - this.events.updateSubscriberOptions(eventsOptions); + const currentEventsOptions = this.eventManagerOptions(this); + const optionsToMerge = this.eventManagerOptions(obj); + this.events.updateSubscriberOptions({ + ...currentEventsOptions, + ...optionsToMerge + }); return assignIn( Object.create(TruffleConfig.prototype), From 48409f083a8964450609e2e4f4092d2f7af4f46d Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 13 Aug 2021 15:31:52 -0400 Subject: [PATCH 004/124] Correct the events parsing method in config and don't log when quiet is true from obtain subscriber --- packages/config/src/index.ts | 10 +++++++++- packages/events/defaultSubscribers/obtain.js | 7 ++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index 5c105436e3d..b4aefb5e4ec 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -42,7 +42,15 @@ class TruffleConfig { public eventManagerOptions(options: any): any { const { quiet, logger, subscribers } = options; - return { logger, quiet, subscribers }; + const eventManagerOptions: any = { quiet, logger, subscribers }; + // filter undefined values + return Object.keys(eventManagerOptions) + .reduce((a: any, key: string) => { + if (typeof eventManagerOptions[key] !== "undefined") { + a[key] = eventManagerOptions[key]; + } + return a; + }, {}); } public addProp(propertyName: string, descriptor: any): void { diff --git a/packages/events/defaultSubscribers/obtain.js b/packages/events/defaultSubscribers/obtain.js index a52bdc7b88a..924ef2e3bbf 100644 --- a/packages/events/defaultSubscribers/obtain.js +++ b/packages/events/defaultSubscribers/obtain.js @@ -9,12 +9,14 @@ module.exports = { handlers: { "obtain:start": [ function() { + if (this.quiet) return; this.logger.log(`${OS.EOL}Starting obtain...`); this.logger.log(`==================${OS.EOL}`); } ], "obtain:succeed": [ function({ compiler }) { + if (this.quiet) return; const { name, version } = compiler; this.logger.log( ` > successfully downloaded and cached version ${version} ` + @@ -24,6 +26,7 @@ module.exports = { ], "obtain:fail": [ function() { + if (this.quiet) return; if (this.spinner.isSpinning) this.spinner.fail(); this.logger.log("Unbox failed!"); } @@ -31,6 +34,7 @@ module.exports = { "downloadCompiler:start": [ function({ attemptNumber }) { + if (this.quiet) return; this.spinner = this.ora({ text: `Downloading compiler. Attempt #${attemptNumber}.`, color: "red" @@ -39,12 +43,13 @@ module.exports = { ], "downloadCompiler:succeed": [ function() { + if (this.quiet) return; this.spinner.succeed(); } ], - "fetchSolcList:start": [ function({ attemptNumber }) { + if (this.quiet) return; this.spinner = this.ora({ text: `Fetching solc version list from solc-bin. Attempt #${attemptNumber}`, color: "yellow" From 4890932eac53f72208b05111854db10862b1a39b Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 13 Aug 2021 15:44:20 -0400 Subject: [PATCH 005/124] Add more guards to obtain subscriber --- packages/events/defaultSubscribers/obtain.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/events/defaultSubscribers/obtain.js b/packages/events/defaultSubscribers/obtain.js index 924ef2e3bbf..f854d4c342c 100644 --- a/packages/events/defaultSubscribers/obtain.js +++ b/packages/events/defaultSubscribers/obtain.js @@ -58,11 +58,13 @@ module.exports = { ], "fetchSolcList:succeed": [ function() { + if (this.quiet) return; if (this.spinner.isSpinning) this.spinner.succeed(); } ], "fetchSolcList:fail": [ function() { + if (this.quiet) return; if (this.spinner.isSpinning) this.spinner.fail(); } ] From 7093dec8a2e424a3379f13cab3b591dfd7b9222f Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 16 Aug 2021 17:07:08 -0400 Subject: [PATCH 006/124] Add lodash.pick to config --- packages/config/package.json | 1 + yarn.lock | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/config/package.json b/packages/config/package.json index b47c807c54f..9aab5e6d63e 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -28,6 +28,7 @@ "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", "lodash.merge": "^4.6.2", + "lodash.pick": "^4.4.0", "module": "^1.2.5", "original-require": "^1.0.1" }, diff --git a/yarn.lock b/yarn.lock index 17220c2530f..81bd5f1f2fd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19530,7 +19530,7 @@ lodash.partition@^4.6.0: resolved "https://registry.yarnpkg.com/lodash.partition/-/lodash.partition-4.6.0.tgz#a38e46b73469e0420b0da1212e66d414be364ba4" integrity sha1-o45GtzRp4EILDaEhLmbUFL42S6Q= -lodash.pick@^4.2.1: +lodash.pick@^4.2.1, lodash.pick@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= From 14cf92038cd7ff337677c9575be415a863efebb6 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 16 Aug 2021 17:20:21 -0400 Subject: [PATCH 007/124] Add lodash.pick types to config --- packages/config/package.json | 1 + yarn.lock | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/packages/config/package.json b/packages/config/package.json index 9aab5e6d63e..94986b61333 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -37,6 +37,7 @@ "@types/find-up": "^2.1.0", "@types/lodash.assignin": "^4.2.6", "@types/lodash.merge": "^4.6.6", + "@types/lodash.pick": "^4.4.6", "@types/node": "12.12.21", "@types/sinon": "^9.0.10", "mocha": "8.1.2", diff --git a/yarn.lock b/yarn.lock index 81bd5f1f2fd..0c6ad84aadf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4324,6 +4324,13 @@ dependencies: "@types/lodash" "*" +"@types/lodash.pick@^4.4.6": + version "4.4.6" + resolved "https://registry.yarnpkg.com/@types/lodash.pick/-/lodash.pick-4.4.6.tgz#ae4e8f109e982786313bb6aac4b1a73aefa6e9be" + integrity sha512-u8bzA16qQ+8dY280z3aK7PoWb3fzX5ATJ0rJB6F+uqchOX2VYF02Aqa+8aYiHiHgPzQiITqCgeimlyKFy4OA6g== + dependencies: + "@types/lodash" "*" + "@types/lodash.sum@^4.0.6": version "4.0.6" resolved "https://registry.yarnpkg.com/@types/lodash.sum/-/lodash.sum-4.0.6.tgz#acae9c8b24390a974667565acf17288e98dcdb8e" From bb670968e9a2ff4ab38891d61951c975f6a81ad3 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 16 Aug 2021 17:20:41 -0400 Subject: [PATCH 008/124] Use lodash method to parse out event manager options --- packages/config/src/index.ts | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index b4aefb5e4ec..c014b89556f 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -1,6 +1,7 @@ import path from "path"; import assignIn from "lodash.assignin"; import merge from "lodash.merge"; +import pick from "lodash.pick"; import Module from "module"; import findUp from "find-up"; import Configstore from "configstore"; @@ -40,17 +41,11 @@ class TruffleConfig { ); } - public eventManagerOptions(options: any): any { - const { quiet, logger, subscribers } = options; - const eventManagerOptions: any = { quiet, logger, subscribers }; - // filter undefined values - return Object.keys(eventManagerOptions) - .reduce((a: any, key: string) => { - if (typeof eventManagerOptions[key] !== "undefined") { - a[key] = eventManagerOptions[key]; - } - return a; - }, {}); + private eventManagerOptions( + options: TruffleConfig | { quiet?: boolean, logger?: any, subscribers?: any[] } + ): any { + const optionsWhitelist = ["quiet", "logger", "subscribers"] as const; + return pick(options, optionsWhitelist); } public addProp(propertyName: string, descriptor: any): void { From 95fb61bf098ef2e7ea164d306633c32b46898766 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 16 Aug 2021 17:25:13 -0400 Subject: [PATCH 009/124] Remove unnecessary TS stuff --- packages/config/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index c014b89556f..d945977029b 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -44,7 +44,7 @@ class TruffleConfig { private eventManagerOptions( options: TruffleConfig | { quiet?: boolean, logger?: any, subscribers?: any[] } ): any { - const optionsWhitelist = ["quiet", "logger", "subscribers"] as const; + const optionsWhitelist = ["quiet", "logger", "subscribers"]; return pick(options, optionsWhitelist); } From 2314644ed255136089eed349523e673c57886b98 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 11:04:35 -0400 Subject: [PATCH 010/124] Adjust a type to make it prettier --- packages/config/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index d945977029b..9be51f888d4 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -42,7 +42,7 @@ class TruffleConfig { } private eventManagerOptions( - options: TruffleConfig | { quiet?: boolean, logger?: any, subscribers?: any[] } + options: TruffleConfig | Pick ): any { const optionsWhitelist = ["quiet", "logger", "subscribers"]; return pick(options, optionsWhitelist); From 33d69cfd4eb29cae95964640aa7c9b82971b4d2a Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 11:29:26 -0400 Subject: [PATCH 011/124] Adjust type one more time --- packages/config/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index 9be51f888d4..f47ffb93873 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -42,7 +42,7 @@ class TruffleConfig { } private eventManagerOptions( - options: TruffleConfig | Pick + options: TruffleConfig | Partial> ): any { const optionsWhitelist = ["quiet", "logger", "subscribers"]; return pick(options, optionsWhitelist); From 5c613bcfba62f64cea9afd2c7705d1696c350820 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 12:33:22 -0400 Subject: [PATCH 012/124] Add two tests for truffle obtain --- .../truffle/test/scenarios/commands/obtain.js | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 packages/truffle/test/scenarios/commands/obtain.js diff --git a/packages/truffle/test/scenarios/commands/obtain.js b/packages/truffle/test/scenarios/commands/obtain.js new file mode 100644 index 00000000000..284e1d1aefa --- /dev/null +++ b/packages/truffle/test/scenarios/commands/obtain.js @@ -0,0 +1,62 @@ +const MemoryLogger = require("../MemoryLogger"); +const CommandRunner = require("../commandRunner"); +const Config = require("@truffle/config"); +const fse = require("fs-extra"); +const path = require("path"); +const assert = require("assert"); +const sandbox = require("../sandbox"); + +let logger, config, project, expectedPath; + +describe("truffle obtain", function () { + project = path.join(__dirname, "../../sources/develop"); + + beforeEach(async function () { + expectedPath = path.join( + Config.getTruffleDataDirectory(), + "compilers", + "node_modules", + "soljson-v0.7.2+commit.51b20bc0.js" + ); + this.timeout(10000); + config = await sandbox.create(project); + logger = new MemoryLogger(); + config.logger = logger; + }); + + it("fetches the solc version specified", async function () { + this.timeout(70000); + // ensure the compiler does not yet exist + try { + fse.unlinkSync(expectedPath); + } catch (error) { + // unlink throws when file doesn't exist + if (error.code !== "ENOENT") { + throw error; + } + } + await CommandRunner.run("obtain --solc=0.7.2", config); + assert(fse.statSync(expectedPath), "The compiler was not obtained!"); + fse.unlinkSync(expectedPath); + }); + + it("respects the `quiet` option", async function () { + this.timeout(70000); + // ensure the compiler does not yet exist + try { + fse.unlinkSync(expectedPath); + } catch (error) { + // unlink throws when file doesn't exist + if (error.code !== "ENOENT") { + throw error; + } + } + await CommandRunner.run("obtain --solc=0.7.2 --quiet", config); + const output = logger.contents(); + assert( + !output.includes("successfully downloaded and cached"), + "The command logged to the console when it shouldn't have." + ); + fse.unlinkSync(expectedPath); + }); +}); From aa138d5a190eb40a8f3b98d072999815590da5c9 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 12:38:45 -0400 Subject: [PATCH 013/124] Add quiet as a global option --- packages/core/lib/command-options.js | 4 ++++ packages/core/lib/commands/compile.js | 6 +----- packages/core/lib/commands/obtain.js | 2 +- packages/core/lib/commands/unbox.js | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/core/lib/command-options.js b/packages/core/lib/command-options.js index ee810d9b5a5..40e5c3389f7 100644 --- a/packages/core/lib/command-options.js +++ b/packages/core/lib/command-options.js @@ -8,6 +8,10 @@ const options = { option: "--config ", description: "Specify configuration file to be used. The default is truffle-config.js" + }, + quiet: { + option: "--quiet", + description: "Suppress excess logging output." } }; module.exports = options; diff --git a/packages/core/lib/commands/compile.js b/packages/core/lib/commands/compile.js index e2eb1b1186a..7ae980d9e5b 100644 --- a/packages/core/lib/commands/compile.js +++ b/packages/core/lib/commands/compile.js @@ -38,10 +38,6 @@ const command = { "that\n type of release or docker tags. The filter parameter must be one of the following: " + "prereleases,\n releases, latestRelease or docker." }, - { - option: "--quiet", - description: "Suppress all compilation output." - }, { option: "--compiler ", description: @@ -54,7 +50,7 @@ const command = { "Save the raw compiler results into , overwriting any existing content." }, ], - allowedGlobalOptions: ["config"] + allowedGlobalOptions: ["config", "quiet"] }, run: async function (options) { const TruffleError = require("@truffle/error"); diff --git a/packages/core/lib/commands/obtain.js b/packages/core/lib/commands/obtain.js index 19c0ae5d17d..60910b90b92 100644 --- a/packages/core/lib/commands/obtain.js +++ b/packages/core/lib/commands/obtain.js @@ -9,7 +9,7 @@ module.exports = { description: `Download and cache a version of the solc compiler. (required)` } ], - allowedGlobalOptions: [] + allowedGlobalOptions: ["quiet"] }, run: async function (options) { const SUPPORTED_COMPILERS = ["--solc"]; diff --git a/packages/core/lib/commands/unbox.js b/packages/core/lib/commands/unbox.js index 13347e539ac..83f52e67aaa 100644 --- a/packages/core/lib/commands/unbox.js +++ b/packages/core/lib/commands/unbox.js @@ -35,7 +35,7 @@ const command = { "that exist in the directory.", }, ], - allowedGlobalOptions: [] + allowedGlobalOptions: ["quiet"] }, async run(options) { const Config = require("@truffle/config"); From b49260c7510975a94f6fdb67b09cfbecf6ae50ea Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 16:13:34 -0400 Subject: [PATCH 014/124] Update test and add comment --- packages/truffle/test/scenarios/commands/obtain.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/truffle/test/scenarios/commands/obtain.js b/packages/truffle/test/scenarios/commands/obtain.js index 284e1d1aefa..1e485d57c22 100644 --- a/packages/truffle/test/scenarios/commands/obtain.js +++ b/packages/truffle/test/scenarios/commands/obtain.js @@ -52,9 +52,10 @@ describe("truffle obtain", function () { } } await CommandRunner.run("obtain --solc=0.7.2 --quiet", config); - const output = logger.contents(); + // logger.contents() returns false as long as nothing is written to the + // stream that is used for logging in MemoryLogger assert( - !output.includes("successfully downloaded and cached"), + !logger.contents(), "The command logged to the console when it shouldn't have." ); fse.unlinkSync(expectedPath); From 889cc9da1aac84b78d7fdba3236fd85d2f763c65 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 17:10:18 -0400 Subject: [PATCH 015/124] Add fixture for obtain tests --- packages/truffle/test/scenarios/commands/obtain.js | 2 +- packages/truffle/test/sources/obtain/truffle-config.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 packages/truffle/test/sources/obtain/truffle-config.js diff --git a/packages/truffle/test/scenarios/commands/obtain.js b/packages/truffle/test/scenarios/commands/obtain.js index 1e485d57c22..058138fcaa8 100644 --- a/packages/truffle/test/scenarios/commands/obtain.js +++ b/packages/truffle/test/scenarios/commands/obtain.js @@ -9,7 +9,7 @@ const sandbox = require("../sandbox"); let logger, config, project, expectedPath; describe("truffle obtain", function () { - project = path.join(__dirname, "../../sources/develop"); + project = path.join(__dirname, "../../sources/obtain"); beforeEach(async function () { expectedPath = path.join( diff --git a/packages/truffle/test/sources/obtain/truffle-config.js b/packages/truffle/test/sources/obtain/truffle-config.js new file mode 100644 index 00000000000..f053ebf7976 --- /dev/null +++ b/packages/truffle/test/sources/obtain/truffle-config.js @@ -0,0 +1 @@ +module.exports = {}; From 799fd327f483512ff52f0b72c0021433425287a0 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Tue, 17 Aug 2021 17:33:18 -0400 Subject: [PATCH 016/124] Add return type --- packages/config/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index f47ffb93873..20193528343 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -43,7 +43,7 @@ class TruffleConfig { private eventManagerOptions( options: TruffleConfig | Partial> - ): any { + ): Partial { const optionsWhitelist = ["quiet", "logger", "subscribers"]; return pick(options, optionsWhitelist); } From db71945d753e5c5a38bebe0b8c060fad75adb0cd Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 18 Aug 2021 10:22:40 -0400 Subject: [PATCH 017/124] Adjust types for utility method --- packages/config/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index 20193528343..1b673de1c74 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -42,8 +42,8 @@ class TruffleConfig { } private eventManagerOptions( - options: TruffleConfig | Partial> - ): Partial { + options: Partial + ): Partial> { const optionsWhitelist = ["quiet", "logger", "subscribers"]; return pick(options, optionsWhitelist); } From 97e2378442da45508fe6823ff0da6fcd8d339f81 Mon Sep 17 00:00:00 2001 From: "g. nicholas d'andrea" Date: Sat, 21 Aug 2021 20:38:11 -0400 Subject: [PATCH 018/124] Publish - @truffle/artifactor@4.0.119 - @truffle/box@2.1.25 - @truffle/codec@0.11.11 - @truffle/compile-common@0.7.17 - @truffle/compile-solidity@5.3.18 - @truffle/compile-vyper@3.1.22 - @truffle/config@1.3.5 - @truffle/contract-tests@0.1.50 - @truffle/contract@4.3.31 - @truffle/core@5.4.7 - @truffle/db-kit@0.1.28 - @truffle/db-loader@0.0.6 - @truffle/db@0.5.27 - @truffle/debug-utils@5.1.11 - @truffle/debugger@9.1.12 - @truffle/decoder@5.0.3 - @truffle/deployer@3.2.40 - @truffle/environment@0.2.68 - @truffle/events@0.0.14 - @truffle/external-compile@2.0.22 - @truffle/fetch-and-compile@0.1.3 - @truffle/hdwallet-provider@1.5.0 - @truffle/interface-adapter@0.5.5 - @truffle/migrate@3.2.40 - @truffle/provider@0.2.38 - @truffle/provisioner@0.2.28 - @truffle/reporters@2.0.5 - @truffle/require@2.0.73 - @truffle/resolver@7.0.25 - @truffle/source-fetcher@0.5.7 - @truffle/source-map-utils@1.3.55 - truffle@5.4.7 - @truffle/workflow-compile@3.2.26 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/codec/package.json | 4 +-- packages/compile-common/package.json | 4 +-- packages/compile-solidity/package.json | 12 +++---- packages/compile-vyper/package.json | 8 ++--- packages/config/package.json | 6 ++-- packages/contract-tests/package.json | 6 ++-- packages/contract/package.json | 6 ++-- packages/core/package.json | 42 ++++++++++++------------- packages/db-kit/package.json | 18 +++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 8 ++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++----- packages/decoder/package.json | 16 +++++----- packages/deployer/package.json | 8 ++--- packages/environment/package.json | 8 ++--- packages/events/package.json | 2 +- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 12 +++---- packages/hdwallet-provider/package.json | 2 +- packages/interface-adapter/package.json | 2 +- packages/migrate/package.json | 14 ++++----- packages/provider/package.json | 4 +-- packages/provisioner/package.json | 4 +-- packages/reporters/package.json | 2 +- packages/require/package.json | 6 ++-- packages/resolver/package.json | 6 ++-- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 4 +-- packages/truffle/package.json | 18 +++++------ packages/workflow-compile/package.json | 18 +++++------ 33 files changed, 139 insertions(+), 139 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 015f3056775..458aa703be2 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.118", + "version": "4.0.119", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.30", + "@truffle/contract": "^4.3.31", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index 768a80158ca..33a435d1092 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -8,7 +8,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/box" }, - "version": "2.1.24", + "version": "2.1.25", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -17,7 +17,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.4", + "@truffle/config": "^1.3.5", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/codec/package.json b/packages/codec/package.json index 4a70571ce31..d7371ac40e6 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.10", + "version": "0.11.11", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.16", + "@truffle/compile-common": "^0.7.17", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 7c86ffa386d..4597d139be5 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.16", + "version": "0.7.17", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -17,7 +17,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.4", + "@truffle/config": "^1.3.5", "@truffle/contract-schema": "^3.4.3", "@types/fs-extra": "^8.1.0", "@types/mocha": "^5.2.7", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 1900bf73ce5..66f5fac9cc6 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,15 +12,15 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.17", + "version": "5.3.18", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.16", - "@truffle/config": "^1.3.4", + "@truffle/compile-common": "^0.7.17", + "@truffle/config": "^1.3.5", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "axios": "^0.21.1", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.118", - "@truffle/box": "^2.1.24", - "@truffle/resolver": "^7.0.24", + "@truffle/artifactor": "^4.0.119", + "@truffle/box": "^2.1.25", + "@truffle/resolver": "^7.0.25", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 915073dbeb7..ae78d06afd8 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,16 +8,16 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.21", + "version": "3.1.22", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.16", - "@truffle/config": "^1.3.4", - "@truffle/resolver": "^7.0.24", + "@truffle/compile-common": "^0.7.17", + "@truffle/config": "^1.3.5", + "@truffle/resolver": "^7.0.25", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/config/package.json b/packages/config/package.json index c3771c861bb..afb645e7441 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.4", + "version": "1.3.5", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -22,8 +22,8 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/events": "^0.0.13", - "@truffle/provider": "^0.2.37", + "@truffle/events": "^0.0.14", + "@truffle/provider": "^0.2.38", "configstore": "^4.0.0", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 2336c112693..c1f8a30ca73 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.49", + "version": "0.1.50", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.17", - "@truffle/contract": "^4.3.30", + "@truffle/compile-solidity": "^5.3.18", + "@truffle/contract": "^4.3.31", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index a828e562aa4..665cf4b8f75 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.30", + "version": "4.3.31", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,9 +24,9 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.10", + "@truffle/debug-utils": "^5.1.11", "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.4", + "@truffle/interface-adapter": "^0.5.5", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", "web3": "1.5.2", diff --git a/packages/core/package.json b/packages/core/package.json index 1df6260b264..18deb4d9c13 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.6", + "version": "5.4.7", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,34 +21,34 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.118", - "@truffle/box": "^2.1.24", - "@truffle/codec": "^0.11.10", - "@truffle/compile-solidity": "^5.3.17", - "@truffle/config": "^1.3.4", - "@truffle/contract": "^4.3.30", - "@truffle/debug-utils": "^5.1.10", - "@truffle/debugger": "^9.1.11", - "@truffle/decoder": "^5.0.2", - "@truffle/deployer": "^3.2.39", - "@truffle/environment": "^0.2.67", + "@truffle/artifactor": "^4.0.119", + "@truffle/box": "^2.1.25", + "@truffle/codec": "^0.11.11", + "@truffle/compile-solidity": "^5.3.18", + "@truffle/config": "^1.3.5", + "@truffle/contract": "^4.3.31", + "@truffle/debug-utils": "^5.1.11", + "@truffle/debugger": "^9.1.12", + "@truffle/decoder": "^5.0.3", + "@truffle/deployer": "^3.2.40", + "@truffle/environment": "^0.2.68", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.2", - "@truffle/interface-adapter": "^0.5.4", - "@truffle/migrate": "^3.2.39", + "@truffle/fetch-and-compile": "^0.1.3", + "@truffle/interface-adapter": "^0.5.5", + "@truffle/migrate": "^3.2.40", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", - "@truffle/provider": "^0.2.37", - "@truffle/provisioner": "^0.2.27", - "@truffle/require": "^2.0.72", - "@truffle/resolver": "^7.0.24", - "@truffle/source-fetcher": "^0.5.6", - "@truffle/workflow-compile": "^3.2.25", + "@truffle/provider": "^0.2.38", + "@truffle/provisioner": "^0.2.28", + "@truffle/require": "^2.0.73", + "@truffle/resolver": "^7.0.25", + "@truffle/source-fetcher": "^0.5.7", + "@truffle/workflow-compile": "^3.2.26", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 6f9d0cddbd8..6628139c863 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.27", + "version": "0.1.28", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.10", - "@truffle/compile-common": "^0.7.16", - "@truffle/compile-solidity": "^5.3.17", - "@truffle/config": "^1.3.4", - "@truffle/db": "^0.5.26", - "@truffle/decoder": "^5.0.2", - "@truffle/environment": "^0.2.67", - "@truffle/fetch-and-compile": "^0.1.2", + "@truffle/codec": "^0.11.11", + "@truffle/compile-common": "^0.7.17", + "@truffle/compile-solidity": "^5.3.18", + "@truffle/config": "^1.3.5", + "@truffle/db": "^0.5.27", + "@truffle/decoder": "^5.0.3", + "@truffle/environment": "^0.2.68", + "@truffle/fetch-and-compile": "^0.1.3", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 14fa19f3d83..b0c1a011792 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.5", + "version": "0.0.6", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.26" + "@truffle/db": "^0.5.27" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 1ba96cb5620..4156352cf94 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.26", + "version": "0.5.27", "main": "dist/src/index.js", "files": [ "dist", @@ -38,8 +38,8 @@ "dependencies": { "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", - "@truffle/config": "^1.3.4", - "@truffle/resolver": "^7.0.24", + "@truffle/config": "^1.3.5", + "@truffle/resolver": "^7.0.25", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.16", + "@truffle/compile-common": "^0.7.17", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index 5558c21c105..73b2bb36f49 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.10", + "version": "5.1.11", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.10", + "@truffle/codec": "^0.11.11", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 53db5b25ed0..a5ddc43fc10 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.11", + "version": "9.1.12", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.10", - "@truffle/source-map-utils": "^1.3.54", + "@truffle/codec": "^0.11.11", + "@truffle/source-map-utils": "^1.3.55", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.2" }, "devDependencies": { - "@truffle/artifactor": "^4.0.118", - "@truffle/box": "^2.1.24", - "@truffle/migrate": "^3.2.39", - "@truffle/resolver": "^7.0.24", - "@truffle/workflow-compile": "^3.2.25", + "@truffle/artifactor": "^4.0.119", + "@truffle/box": "^2.1.25", + "@truffle/migrate": "^3.2.40", + "@truffle/resolver": "^7.0.25", + "@truffle/workflow-compile": "^3.2.26", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 52a0658ba5d..644eafc1667 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.2", + "version": "5.0.3", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.10", - "@truffle/compile-common": "^0.7.16", - "@truffle/source-map-utils": "^1.3.54", + "@truffle/codec": "^0.11.11", + "@truffle/compile-common": "^0.7.17", + "@truffle/source-map-utils": "^1.3.55", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.2" }, "devDependencies": { - "@truffle/config": "^1.3.4", + "@truffle/config": "^1.3.5", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.39", - "@truffle/provider": "^0.2.37", - "@truffle/workflow-compile": "^3.2.25", + "@truffle/migrate": "^3.2.40", + "@truffle/provider": "^0.2.38", + "@truffle/workflow-compile": "^3.2.26", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index b7997a1b7aa..24e09ed4fd6 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.39", + "version": "3.2.40", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,15 +22,15 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.30", + "@truffle/contract": "^4.3.31", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", "web3-utils": "1.5.2" }, "devDependencies": { - "@truffle/reporters": "^2.0.4", - "@truffle/workflow-compile": "^3.2.25", + "@truffle/reporters": "^2.0.5", + "@truffle/workflow-compile": "^3.2.26", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 163c8d2b07c..66f6d769dd7 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.67", + "version": "0.2.68", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.118", + "@truffle/artifactor": "^4.0.119", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.4", - "@truffle/resolver": "^7.0.24", + "@truffle/interface-adapter": "^0.5.5", + "@truffle/resolver": "^7.0.25", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/events/package.json b/packages/events/package.json index 15929997a68..092592fa2d8 100644 --- a/packages/events/package.json +++ b/packages/events/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/events", - "version": "0.0.13", + "version": "0.0.14", "description": "Event system for Truffle", "main": "index.js", "keywords": [], diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index 7de525d931a..b1caf898239 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.21", + "version": "2.0.22", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.4", + "@truffle/config": "^1.3.5", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 57078dd4a47..7b53f212d2b 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.2", + "version": "0.1.3", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.10", - "@truffle/compile-solidity": "^5.3.17", - "@truffle/source-fetcher": "^0.5.6", + "@truffle/codec": "^0.11.11", + "@truffle/compile-solidity": "^5.3.18", + "@truffle/source-fetcher": "^0.5.7", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.16", - "@truffle/config": "^1.3.4", + "@truffle/compile-common": "^0.7.17", + "@truffle/config": "^1.3.5", "typescript": "^4.1.4" } } diff --git a/packages/hdwallet-provider/package.json b/packages/hdwallet-provider/package.json index 8482e6e7ffc..451212b85a6 100644 --- a/packages/hdwallet-provider/package.json +++ b/packages/hdwallet-provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.4.3", + "version": "1.5.0", "main": "dist/index.js", "scripts": { "build": "tsc", diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index 53db8df778b..8216cdf86a0 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.4", + "version": "0.5.5", "main": "dist/index.js", "directories": { "lib": "lib" diff --git a/packages/migrate/package.json b/packages/migrate/package.json index bc937b37a51..f36feeb2a5f 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.39", + "version": "3.2.40", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.4", - "@truffle/db-loader": "^0.0.5", - "@truffle/deployer": "^3.2.39", + "@truffle/config": "^1.3.5", + "@truffle/db-loader": "^0.0.6", + "@truffle/deployer": "^3.2.40", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.4", - "@truffle/reporters": "^2.0.4", - "@truffle/require": "^2.0.72", + "@truffle/interface-adapter": "^0.5.5", + "@truffle/reporters": "^2.0.5", + "@truffle/require": "^2.0.73", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/provider/package.json b/packages/provider/package.json index 4274d5cd4c1..6ba3a2541c8 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.37", + "version": "0.2.38", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -21,7 +21,7 @@ "types": "./typings/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.4", + "@truffle/interface-adapter": "^0.5.5", "web3": "1.5.2" }, "devDependencies": { diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index 070ba13e627..2fbf42e4014 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.27", + "version": "0.2.28", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.4" + "@truffle/config": "^1.3.5" } } diff --git a/packages/reporters/package.json b/packages/reporters/package.json index a15347f9327..46c59164df7 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.4", + "version": "2.0.5", "main": "index.js", "scripts": { "prepare": "exit 0" diff --git a/packages/require/package.json b/packages/require/package.json index 77667bb4fcb..caa554dc5bf 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,16 +12,16 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.72", + "version": "2.0.73", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.4", + "@truffle/config": "^1.3.5", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.4", + "@truffle/interface-adapter": "^0.5.5", "original-require": "^1.0.1" }, "devDependencies": { diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 0c9cb0f6a4e..f65fbf8dcef 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.24", + "version": "7.0.25", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.30", + "@truffle/contract": "^4.3.31", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.27", + "@truffle/provisioner": "^0.2.28", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 302fa033536..8e7c4c26a22 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.6", + "version": "0.5.7", "main": "dist/index.js", "files": [ "dist" diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index aef2c7c1a4a..d7d3d29161e 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.54", + "version": "1.3.55", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.10", + "@truffle/codec": "^0.11.11", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index ba3e6333c1d..134cd7a75a8 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.6", + "version": "5.4.7", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -32,25 +32,25 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.26", + "@truffle/db": "^0.5.27", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.5", - "@truffle/debugger": "^9.1.11", + "@truffle/db-loader": "^0.0.6", + "@truffle/debugger": "^9.1.12", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.24", - "@truffle/config": "^1.3.4", - "@truffle/contract": "^4.3.30", - "@truffle/core": "^5.4.6", - "@truffle/interface-adapter": "^0.5.4", + "@truffle/box": "^2.1.25", + "@truffle/config": "^1.3.5", + "@truffle/contract": "^4.3.31", + "@truffle/core": "^5.4.7", + "@truffle/interface-adapter": "^0.5.5", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", "eslint": "^5.7.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index c716cc773fb..2689cf96df2 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.25", + "version": "3.2.26", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.118", - "@truffle/compile-common": "^0.7.16", - "@truffle/compile-solidity": "^5.3.17", - "@truffle/compile-vyper": "^3.1.21", - "@truffle/config": "^1.3.4", - "@truffle/db-loader": "^0.0.5", + "@truffle/artifactor": "^4.0.119", + "@truffle/compile-common": "^0.7.17", + "@truffle/compile-solidity": "^5.3.18", + "@truffle/compile-vyper": "^3.1.22", + "@truffle/config": "^1.3.5", + "@truffle/db-loader": "^0.0.6", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.21", - "@truffle/resolver": "^7.0.24", + "@truffle/external-compile": "^2.0.22", + "@truffle/resolver": "^7.0.25", "fs-extra": "^9.1.0" }, "devDependencies": { From 9b94063ba48e7c43f40246476cffc2eaf84970a2 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 26 Aug 2021 19:01:12 -0400 Subject: [PATCH 019/124] Update hljs-solidity to version 2 --- packages/debug-utils/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index 73b2bb36f49..b37c2a0d61e 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -23,7 +23,7 @@ "bn.js": "^5.1.3", "chalk": "^2.4.2", "debug": "^4.3.1", - "highlightjs-solidity": "^1.2.2" + "highlightjs-solidity": "^2.0.0" }, "devDependencies": { "chai": "^4.2.0", diff --git a/yarn.lock b/yarn.lock index c48bd160c4d..6a07c0fb0fb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14462,10 +14462,10 @@ highlight.js@^10.4.1: resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.4.1.tgz#d48fbcf4a9971c4361b3f95f302747afe19dbad0" integrity sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg== -highlightjs-solidity@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-1.2.2.tgz#049a050c0d8009c99b373537a4e66bf55366de51" - integrity sha512-+cZ+1+nAO5Pi6c70TKuMcPmwqLECxiYhnQc1MxdXckK94zyWFMNZADzu98ECNlf5xCRdNh+XKp+eklmRU+Dniw== +highlightjs-solidity@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.0.tgz#37150fe2823b9313f1477197217f37da403f3cb3" + integrity sha512-104Nitqem7ntqVR4FyF+a+whp7C15g5moC/K7eHWyet09+wjUVCWcSm2dcaVKOIPAHGiW8X7knq+ZGwkg3aq+A== hkts@^0.3.1: version "0.3.1" From 284490b743a3eb4ffe397189067d3870029bf87d Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 26 Aug 2021 19:03:31 -0400 Subject: [PATCH 020/124] Remove hack for patching highlightjs-solidity --- packages/truffle/package.json | 3 +- .../scripts/patchHighlightJsSolidity.js | 32 ------------------- 2 files changed, 1 insertion(+), 34 deletions(-) delete mode 100644 packages/truffle/scripts/patchHighlightJsSolidity.js diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 134cd7a75a8..1cabb8c2933 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -19,9 +19,8 @@ }, "scripts": { "analyze": "./scripts/analyze.sh", - "build": "yarn build:patch && yarn build:cli", + "build": "yarn build:cli", "build:cli": "node --max-old-space-size=8192 ./node_modules/webpack/bin/webpack --config ./webpack.config.js", - "build:patch": "node ./scripts/patchHighlightJsSolidity.js", "postinstall": "node ./scripts/postinstall.js", "prepare": "yarn build", "publish:byoc": "node ./scripts/prereleaseVersion.js byoc-safe byoc", diff --git a/packages/truffle/scripts/patchHighlightJsSolidity.js b/packages/truffle/scripts/patchHighlightJsSolidity.js deleted file mode 100644 index d641e47d08f..00000000000 --- a/packages/truffle/scripts/patchHighlightJsSolidity.js +++ /dev/null @@ -1,32 +0,0 @@ -const fs = require("fs"); -const path = require("path"); - -// The highlightjs-solidity package contains code that exposes a bug -// in webpack 5 (at least, what I believe to be a bug). This is a -// hack to remove the offending line that we can call before -// running webpack. - -const hljsSolidityPath = path.join( - __dirname, - "..", // truffle - "..", // packages - "..", // root - "node_modules", - "highlightjs-solidity", - "solidity.js" -); - -const offendingCode = - "var module = module ? module : {}; // shim for browser use"; -var hljsSolidityCode; - -try { - hljsSolidityCode = fs.readFileSync(hljsSolidityPath, "utf-8"); -} catch (e) { - console.log("Error reading file: " + hljsSolidityPath); - console.log("Did you forget `yarn bootstrap`?"); - console.log(e.stack); - process.exit(1); // exit with error code -} -hljsSolidityCode = hljsSolidityCode.replace(offendingCode, ""); -fs.writeFileSync(hljsSolidityPath, hljsSolidityCode, "utf-8"); From 5c85ab4daa724b553767a8a3e21bcc4903244e06 Mon Sep 17 00:00:00 2001 From: "g. nicholas d'andrea" Date: Fri, 27 Aug 2021 13:21:54 -0400 Subject: [PATCH 021/124] Publish - @truffle/artifactor@4.0.120 - @truffle/compile-solidity@5.3.19 - @truffle/compile-vyper@3.1.23 - @truffle/contract-tests@0.1.51 - @truffle/contract@4.3.32 - @truffle/core@5.4.8 - @truffle/db-kit@0.1.29 - @truffle/db-loader@0.0.7 - @truffle/db@0.5.28 - @truffle/debug-utils@5.1.12 - @truffle/debugger@9.1.13 - @truffle/decoder@5.0.4 - @truffle/deployer@3.2.41 - @truffle/environment@0.2.69 - @truffle/fetch-and-compile@0.1.4 - @truffle/migrate@3.2.41 - @truffle/resolver@7.0.26 - truffle@5.4.8 - @truffle/workflow-compile@3.2.27 --- packages/artifactor/package.json | 4 ++-- packages/compile-solidity/package.json | 6 +++--- packages/compile-vyper/package.json | 4 ++-- packages/contract-tests/package.json | 6 +++--- packages/contract/package.json | 4 ++-- packages/core/package.json | 26 ++++++++++++------------- packages/db-kit/package.json | 12 ++++++------ packages/db-loader/package.json | 4 ++-- packages/db/package.json | 4 ++-- packages/debug-utils/package.json | 2 +- packages/debugger/package.json | 10 +++++----- packages/decoder/package.json | 6 +++--- packages/deployer/package.json | 6 +++--- packages/environment/package.json | 6 +++--- packages/fetch-and-compile/package.json | 4 ++-- packages/migrate/package.json | 6 +++--- packages/resolver/package.json | 4 ++-- packages/truffle/package.json | 12 ++++++------ packages/workflow-compile/package.json | 12 ++++++------ 19 files changed, 69 insertions(+), 69 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 458aa703be2..05071da25fd 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.119", + "version": "4.0.120", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.31", + "@truffle/contract": "^4.3.32", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 66f5fac9cc6..72bbeb9c789 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.18", + "version": "5.3.19", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.119", + "@truffle/artifactor": "^4.0.120", "@truffle/box": "^2.1.25", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index ae78d06afd8..0ba15e1c3df 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,7 +8,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.22", + "version": "3.1.23", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -17,7 +17,7 @@ "dependencies": { "@truffle/compile-common": "^0.7.17", "@truffle/config": "^1.3.5", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index c1f8a30ca73..176116325ce 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.50", + "version": "0.1.51", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.18", - "@truffle/contract": "^4.3.31", + "@truffle/compile-solidity": "^5.3.19", + "@truffle/contract": "^4.3.32", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index 665cf4b8f75..0564473897c 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.31", + "version": "4.3.32", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,7 +24,7 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.11", + "@truffle/debug-utils": "^5.1.12", "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.5", "bignumber.js": "^7.2.1", diff --git a/packages/core/package.json b/packages/core/package.json index 18deb4d9c13..30ffefc3d6f 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.7", + "version": "5.4.8", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,22 +21,22 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.119", + "@truffle/artifactor": "^4.0.120", "@truffle/box": "^2.1.25", "@truffle/codec": "^0.11.11", - "@truffle/compile-solidity": "^5.3.18", + "@truffle/compile-solidity": "^5.3.19", "@truffle/config": "^1.3.5", - "@truffle/contract": "^4.3.31", - "@truffle/debug-utils": "^5.1.11", - "@truffle/debugger": "^9.1.12", - "@truffle/decoder": "^5.0.3", - "@truffle/deployer": "^3.2.40", - "@truffle/environment": "^0.2.68", + "@truffle/contract": "^4.3.32", + "@truffle/debug-utils": "^5.1.12", + "@truffle/debugger": "^9.1.13", + "@truffle/decoder": "^5.0.4", + "@truffle/deployer": "^3.2.41", + "@truffle/environment": "^0.2.69", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.3", + "@truffle/fetch-and-compile": "^0.1.4", "@truffle/interface-adapter": "^0.5.5", - "@truffle/migrate": "^3.2.40", + "@truffle/migrate": "^3.2.41", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", @@ -46,9 +46,9 @@ "@truffle/provider": "^0.2.38", "@truffle/provisioner": "^0.2.28", "@truffle/require": "^2.0.73", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "@truffle/source-fetcher": "^0.5.7", - "@truffle/workflow-compile": "^3.2.26", + "@truffle/workflow-compile": "^3.2.27", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 6628139c863..4d9e58c7992 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.28", + "version": "0.1.29", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -57,12 +57,12 @@ "dependencies": { "@truffle/codec": "^0.11.11", "@truffle/compile-common": "^0.7.17", - "@truffle/compile-solidity": "^5.3.18", + "@truffle/compile-solidity": "^5.3.19", "@truffle/config": "^1.3.5", - "@truffle/db": "^0.5.27", - "@truffle/decoder": "^5.0.3", - "@truffle/environment": "^0.2.68", - "@truffle/fetch-and-compile": "^0.1.3", + "@truffle/db": "^0.5.28", + "@truffle/decoder": "^5.0.4", + "@truffle/environment": "^0.2.69", + "@truffle/fetch-and-compile": "^0.1.4", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index b0c1a011792..7f3230d1b4a 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.6", + "version": "0.0.7", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.27" + "@truffle/db": "^0.5.28" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 4156352cf94..4db6c9461e4 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.27", + "version": "0.5.28", "main": "dist/src/index.js", "files": [ "dist", @@ -39,7 +39,7 @@ "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", "@truffle/config": "^1.3.5", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index b37c2a0d61e..71dbce97d7c 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.11", + "version": "5.1.12", "main": "index.js", "scripts": { "prepare": "exit 0" diff --git a/packages/debugger/package.json b/packages/debugger/package.json index a5ddc43fc10..3b1e5e73606 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.12", + "version": "9.1.13", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.2" }, "devDependencies": { - "@truffle/artifactor": "^4.0.119", + "@truffle/artifactor": "^4.0.120", "@truffle/box": "^2.1.25", - "@truffle/migrate": "^3.2.40", - "@truffle/resolver": "^7.0.25", - "@truffle/workflow-compile": "^3.2.26", + "@truffle/migrate": "^3.2.41", + "@truffle/resolver": "^7.0.26", + "@truffle/workflow-compile": "^3.2.27", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 644eafc1667..5a300608a62 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.3", + "version": "5.0.4", "main": "dist/index.js", "directories": { "lib": "lib" @@ -36,9 +36,9 @@ "devDependencies": { "@truffle/config": "^1.3.5", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.40", + "@truffle/migrate": "^3.2.41", "@truffle/provider": "^0.2.38", - "@truffle/workflow-compile": "^3.2.26", + "@truffle/workflow-compile": "^3.2.27", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index 24e09ed4fd6..ca18ba27eaa 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.40", + "version": "3.2.41", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,7 +22,7 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.31", + "@truffle/contract": "^4.3.32", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", @@ -30,7 +30,7 @@ }, "devDependencies": { "@truffle/reporters": "^2.0.5", - "@truffle/workflow-compile": "^3.2.26", + "@truffle/workflow-compile": "^3.2.27", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 66f6d769dd7..36023393b8c 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.68", + "version": "0.2.69", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.119", + "@truffle/artifactor": "^4.0.120", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 7b53f212d2b..5eb501fc21d 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.3", + "version": "0.1.4", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -39,7 +39,7 @@ }, "dependencies": { "@truffle/codec": "^0.11.11", - "@truffle/compile-solidity": "^5.3.18", + "@truffle/compile-solidity": "^5.3.19", "@truffle/source-fetcher": "^0.5.7", "semver": "^7.3.4" }, diff --git a/packages/migrate/package.json b/packages/migrate/package.json index f36feeb2a5f..4cf90c1e301 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.40", + "version": "3.2.41", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -20,8 +20,8 @@ }, "dependencies": { "@truffle/config": "^1.3.5", - "@truffle/db-loader": "^0.0.6", - "@truffle/deployer": "^3.2.40", + "@truffle/db-loader": "^0.0.7", + "@truffle/deployer": "^3.2.41", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", "@truffle/reporters": "^2.0.5", diff --git a/packages/resolver/package.json b/packages/resolver/package.json index f65fbf8dcef..e92d4dbec98 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.25", + "version": "7.0.26", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,7 +27,7 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.31", + "@truffle/contract": "^4.3.32", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "@truffle/provisioner": "^0.2.28", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 1cabb8c2933..ab9a47e1b56 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.7", + "version": "5.4.8", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,15 +31,15 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.27", + "@truffle/db": "^0.5.28", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.6", - "@truffle/debugger": "^9.1.12", + "@truffle/db-loader": "^0.0.7", + "@truffle/debugger": "^9.1.13", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" @@ -47,8 +47,8 @@ "devDependencies": { "@truffle/box": "^2.1.25", "@truffle/config": "^1.3.5", - "@truffle/contract": "^4.3.31", - "@truffle/core": "^5.4.7", + "@truffle/contract": "^4.3.32", + "@truffle/core": "^5.4.8", "@truffle/interface-adapter": "^0.5.5", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 2689cf96df2..3d5a7fd2e16 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.26", + "version": "3.2.27", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.119", + "@truffle/artifactor": "^4.0.120", "@truffle/compile-common": "^0.7.17", - "@truffle/compile-solidity": "^5.3.18", - "@truffle/compile-vyper": "^3.1.22", + "@truffle/compile-solidity": "^5.3.19", + "@truffle/compile-vyper": "^3.1.23", "@truffle/config": "^1.3.5", - "@truffle/db-loader": "^0.0.6", + "@truffle/db-loader": "^0.0.7", "@truffle/expect": "^0.0.18", "@truffle/external-compile": "^2.0.22", - "@truffle/resolver": "^7.0.25", + "@truffle/resolver": "^7.0.26", "fs-extra": "^9.1.0" }, "devDependencies": { From d435c77c82b9e916cf9b93cb87db595d5bdd2c5d Mon Sep 17 00:00:00 2001 From: tenthirtyone Date: Fri, 27 Aug 2021 16:56:01 -0500 Subject: [PATCH 022/124] Enhancement: Add provider host to network connection error messages. --- packages/provider/index.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/provider/index.js b/packages/provider/index.js index ccf76678332..bf1772be8c9 100644 --- a/packages/provider/index.js +++ b/packages/provider/index.js @@ -44,13 +44,14 @@ module.exports = { networkCheckTimeout = DEFAULT_NETWORK_CHECK_TIMEOUT; } const provider = this.getProvider(options); + const { host } = provider; const interfaceAdapter = createInterfaceAdapter({ provider, networkType }); return new Promise((resolve, reject) => { const noResponseFromNetworkCall = setTimeout(() => { const errorMessage = - "There was a timeout while attempting to connect to the network." + - "\n Check to see that your provider is valid.\n If you " + - "have a slow internet connection, try configuring a longer " + + "There was a timeout while attempting to connect to the network at " + host + + ".\n Check to see that your provider is valid." + + "\n If you have a slow internet connection, try configuring a longer " + "timeout in your Truffle config. Use the " + "networks[networkName].networkCheckTimeout property to do this."; throw new Error(errorMessage); @@ -64,10 +65,10 @@ module.exports = { clearTimeout(noResponseFromNetworkCall); clearTimeout(networkCheck); return resolve(true); - } catch (error) { + } catch (error) { console.log( - "> Something went wrong while attempting to connect " + - "to the network. Check your network configuration." + "> Something went wrong while attempting to connect to the " + + "network at " + host + ". Check your network configuration." ); clearTimeout(noResponseFromNetworkCall); clearTimeout(networkCheck); From 52c3173b56c94eaf77f97e8ad29eb95ec2e0d03a Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 30 Aug 2021 16:20:12 -0400 Subject: [PATCH 023/124] Use stable version of Geth in CI --- scripts/ci.sh | 4 ++-- scripts/geth.sh | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/ci.sh b/scripts/ci.sh index 78d5e513f50..e3a846603e7 100755 --- a/scripts/ci.sh +++ b/scripts/ci.sh @@ -10,7 +10,7 @@ run_geth() { -p 8545:8545 \ -p 8546:8546 \ -p 30303:30303 \ - ethereum/client-go:v1.10.3 \ + ethereum/client-go:stable \ --http \ --http.addr '0.0.0.0' \ --http.port 8545 \ @@ -39,7 +39,7 @@ if [ "$INTEGRATION" = true ]; then elif [ "$GETH" = true ]; then sudo apt install -y jq - docker pull ethereum/client-go:v1.10.3 + docker pull ethereum/client-go:stable run_geth sleep 30 lerna run --scope truffle test --stream -- --exit diff --git a/scripts/geth.sh b/scripts/geth.sh index 5784542b9d6..19080b213f6 100755 --- a/scripts/geth.sh +++ b/scripts/geth.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -docker pull ethereum/client-go:v1.10.3 +docker pull ethereum/client-go:stable docker run \ -v /$PWD/scripts:/scripts \ @@ -8,7 +8,7 @@ docker run \ -p 8545:8545 \ -p 8546:8546 \ -p 30303:30303 \ - ethereum/client-go:v1.10.3 \ + ethereum/client-go:stable \ --http \ --http.addr '0.0.0.0' \ --http.port 8545 \ From 965a1e0157f1f7fa98fe6937ea4a365a3d4fdca5 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 1 Sep 2021 11:15:53 -0400 Subject: [PATCH 024/124] Log from memory logger in errors test --- .../test/scenarios/migrations/errors.js | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/truffle/test/scenarios/migrations/errors.js b/packages/truffle/test/scenarios/migrations/errors.js index bfbfcb84a3b..85bbe0f9843 100644 --- a/packages/truffle/test/scenarios/migrations/errors.js +++ b/packages/truffle/test/scenarios/migrations/errors.js @@ -7,17 +7,17 @@ const Reporter = require("../reporter"); const sandbox = require("../sandbox"); const Web3 = require("web3"); -describe("migration errors", function() { +describe("migration errors", function () { let config; let web3; let networkId; const project = path.join(__dirname, "../../sources/migrations/error"); - const logger = new MemoryLogger(); + const logger = new MemoryLogger(true); before(done => Server.start(done)); after(done => Server.stop(done)); - before(async function() { + before(async function () { this.timeout(10000); config = await sandbox.create(project); config.network = "development"; @@ -33,7 +33,7 @@ describe("migration errors", function() { networkId = await web3.eth.net.getId(); }); - it("should error and stop", async function() { + it("should error and stop", async function () { this.timeout(70000); try { @@ -64,7 +64,7 @@ describe("migration errors", function() { } }); - it("should run from the last successfully completely migration", async function() { + it("should run from the last successfully completely migration", async function () { this.timeout(70000); try { @@ -79,7 +79,7 @@ describe("migration errors", function() { } }); - it("should run out of gas correctly", async function() { + it("should run out of gas correctly", async function () { this.timeout(70000); try { @@ -99,7 +99,7 @@ describe("migration errors", function() { } }); - it("should expose the reason string if available [ @ganache ]", async function() { + it("should expose the reason string if available [ @ganache ]", async function () { this.timeout(70000); try { @@ -114,7 +114,7 @@ describe("migration errors", function() { } }); - it("should error on insufficient funds correctly [ @ganache ]", async function() { + it("should error on insufficient funds correctly [ @ganache ]", async function () { this.timeout(70000); try { @@ -131,7 +131,7 @@ describe("migration errors", function() { } }); - it("should error on insufficient funds correctly [ @geth ]", async function() { + it("should error on insufficient funds correctly [ @geth ]", async function () { this.timeout(70000); try { @@ -146,7 +146,7 @@ describe("migration errors", function() { } }); - it("should error if user tries to use batch syntax", async function() { + it("should error if user tries to use batch syntax", async function () { this.timeout(70000); try { @@ -161,7 +161,7 @@ describe("migration errors", function() { } }); - it("should error if there are js errors in the migrations script (sync)", async function() { + it("should error if there are js errors in the migrations script (sync)", async function () { this.timeout(70000); try { @@ -175,7 +175,7 @@ describe("migration errors", function() { } }); - it("should error if there are js errors in the migrations script (async)", async function() { + it("should error if there are js errors in the migrations script (async)", async function () { this.timeout(70000); try { From 8400540136d299223e82a50abca982d3fdf62d90 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 1 Sep 2021 11:52:41 -0400 Subject: [PATCH 025/124] Add some logging to the errors test --- packages/truffle/test/scenarios/migrations/errors.js | 1 + .../sources/migrations/error/migrations/6_migrations_funds.js | 3 +++ 2 files changed, 4 insertions(+) diff --git a/packages/truffle/test/scenarios/migrations/errors.js b/packages/truffle/test/scenarios/migrations/errors.js index 85bbe0f9843..16c69a95b8a 100644 --- a/packages/truffle/test/scenarios/migrations/errors.js +++ b/packages/truffle/test/scenarios/migrations/errors.js @@ -135,6 +135,7 @@ describe("migration errors", function () { this.timeout(70000); try { + console.log("about to run a migration"); await CommandRunner.run("migrate -f 6", config); assert(false, "This should have thrown."); } catch (_error) { diff --git a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js index 2201e4d3b9f..61eb7ef2894 100644 --- a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js +++ b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js @@ -2,7 +2,9 @@ const Example = artifacts.require("Example"); module.exports = async function(deployer, network, accounts) { const emptyAccount = accounts[7]; + console.log("the empty account -- %o", emptyAccount); let balance = await web3.eth.getBalance(emptyAccount); + console.log("the balance -- %o", balance); await web3.eth.sendTransaction({ to: accounts[0], @@ -10,6 +12,7 @@ module.exports = async function(deployer, network, accounts) { value: balance, gasPrice: 0 }); + console.log("about to try and deploy"); await deployer.deploy(Example, {from: emptyAccount}); }; From 9dfe7110b7ede1c7df4701ae906cc3b1d11d7cf6 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 1 Sep 2021 17:09:10 -0400 Subject: [PATCH 026/124] Tweak test --- .../migrations/error/migrations/6_migrations_funds.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js index 61eb7ef2894..a40dd484309 100644 --- a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js +++ b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js @@ -5,14 +5,18 @@ module.exports = async function(deployer, network, accounts) { console.log("the empty account -- %o", emptyAccount); let balance = await web3.eth.getBalance(emptyAccount); console.log("the balance -- %o", balance); + const { baseFeePerGas } = await web3.eth.getBlock("latest"); + console.log("the base fee -- %o", baseFeePerGas); + // 21,000 gas to send ether + const priceOfGas = 21000 * baseFeePerGas; await web3.eth.sendTransaction({ to: accounts[0], from: emptyAccount, - value: balance, - gasPrice: 0 + value: balance - priceOfGas, + gasPrice: baseFeePerGas }); console.log("about to try and deploy"); - await deployer.deploy(Example, {from: emptyAccount}); + await deployer.deploy(Example, { from: emptyAccount, }); }; From 8f401837331db033049df6711d9e2661047c6491 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 1 Sep 2021 18:18:26 -0400 Subject: [PATCH 027/124] Revert test and add new fixture --- .../test/scenarios/migrations/errors.js | 2 +- .../migrations/10_migrations_funds_geth.js | 18 ++++++++++++++++++ .../error/migrations/6_migrations_funds.js | 14 ++++---------- 3 files changed, 23 insertions(+), 11 deletions(-) create mode 100644 packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js diff --git a/packages/truffle/test/scenarios/migrations/errors.js b/packages/truffle/test/scenarios/migrations/errors.js index 16c69a95b8a..6db81b9001e 100644 --- a/packages/truffle/test/scenarios/migrations/errors.js +++ b/packages/truffle/test/scenarios/migrations/errors.js @@ -136,7 +136,7 @@ describe("migration errors", function () { try { console.log("about to run a migration"); - await CommandRunner.run("migrate -f 6", config); + await CommandRunner.run("migrate -f 10", config); assert(false, "This should have thrown."); } catch (_error) { const output = logger.contents(); diff --git a/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js b/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js new file mode 100644 index 00000000000..7147c7cc74b --- /dev/null +++ b/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js @@ -0,0 +1,18 @@ +const Example = artifacts.require("Example"); + +module.exports = async function (deployer, network, accounts) { + const emptyAccount = accounts[7]; + let balance = await web3.eth.getBalance(emptyAccount); + const { baseFeePerGas } = await web3.eth.getBlock("latest"); + // 21,000 gas to send ether + const priceOfGas = 21000 * baseFeePerGas; + + await web3.eth.sendTransaction({ + to: accounts[0], + from: emptyAccount, + value: balance - priceOfGas, + gasPrice: baseFeePerGas + }); + + await deployer.deploy(Example, { from: emptyAccount }); +}; diff --git a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js index a40dd484309..314d2692c98 100644 --- a/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js +++ b/packages/truffle/test/sources/migrations/error/migrations/6_migrations_funds.js @@ -1,22 +1,16 @@ + const Example = artifacts.require("Example"); module.exports = async function(deployer, network, accounts) { const emptyAccount = accounts[7]; - console.log("the empty account -- %o", emptyAccount); let balance = await web3.eth.getBalance(emptyAccount); - console.log("the balance -- %o", balance); - const { baseFeePerGas } = await web3.eth.getBlock("latest"); - console.log("the base fee -- %o", baseFeePerGas); - // 21,000 gas to send ether - const priceOfGas = 21000 * baseFeePerGas; await web3.eth.sendTransaction({ to: accounts[0], from: emptyAccount, - value: balance - priceOfGas, - gasPrice: baseFeePerGas + value: balance, + gasPrice: 0 }); - console.log("about to try and deploy"); - await deployer.deploy(Example, { from: emptyAccount, }); + await deployer.deploy(Example, {from: emptyAccount}); }; From da08882288576eacad18943ff63f23c0fe730c0f Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 1 Sep 2021 18:36:56 -0400 Subject: [PATCH 028/124] Update test once more --- packages/truffle/test/scenarios/migrations/errors.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/truffle/test/scenarios/migrations/errors.js b/packages/truffle/test/scenarios/migrations/errors.js index 6db81b9001e..826dd009b69 100644 --- a/packages/truffle/test/scenarios/migrations/errors.js +++ b/packages/truffle/test/scenarios/migrations/errors.js @@ -141,7 +141,7 @@ describe("migration errors", function () { } catch (_error) { const output = logger.contents(); console.log(output); - assert(output.includes("6_migrations_funds.js")); + assert(output.includes("10_migrations_funds_geth.js")); assert(output.includes("Deploying 'Example'")); assert(output.includes("insufficient funds")); } From b9dc9e33d748b088a69f5e1783beb51d1d9ab849 Mon Sep 17 00:00:00 2001 From: tyler Date: Thu, 2 Sep 2021 10:58:52 -0400 Subject: [PATCH 029/124] Update packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js Co-authored-by: cds-amal --- .../migrations/error/migrations/10_migrations_funds_geth.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js b/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js index 7147c7cc74b..6160f86e2ae 100644 --- a/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js +++ b/packages/truffle/test/sources/migrations/error/migrations/10_migrations_funds_geth.js @@ -4,6 +4,7 @@ module.exports = async function (deployer, network, accounts) { const emptyAccount = accounts[7]; let balance = await web3.eth.getBalance(emptyAccount); const { baseFeePerGas } = await web3.eth.getBlock("latest"); + // This transaction drains `emptyAccount` of all funds // 21,000 gas to send ether const priceOfGas = 21000 * baseFeePerGas; From d46b108bff9846e2b57c00a289e067e831570444 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 2 Sep 2021 11:01:33 -0400 Subject: [PATCH 030/124] Remove unwanted console.log --- packages/truffle/test/scenarios/migrations/errors.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/truffle/test/scenarios/migrations/errors.js b/packages/truffle/test/scenarios/migrations/errors.js index 826dd009b69..a9afe560714 100644 --- a/packages/truffle/test/scenarios/migrations/errors.js +++ b/packages/truffle/test/scenarios/migrations/errors.js @@ -135,7 +135,6 @@ describe("migration errors", function () { this.timeout(70000); try { - console.log("about to run a migration"); await CommandRunner.run("migrate -f 10", config); assert(false, "This should have thrown."); } catch (_error) { From 2d60c74a2e2daac8713681d23ba2925e431edc5e Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 2 Sep 2021 12:52:06 -0700 Subject: [PATCH 031/124] Publish - @truffle/artifactor@4.0.121 - @truffle/box@2.1.26 - @truffle/codec@0.11.12 - @truffle/compile-common@0.7.18 - @truffle/compile-solidity@5.3.20 - @truffle/compile-vyper@3.1.24 - @truffle/config@1.3.6 - @truffle/contract-tests@0.1.52 - @truffle/contract@4.3.33 - @truffle/core@5.4.9 - @truffle/db-kit@0.1.30 - @truffle/db-loader@0.0.8 - @truffle/db@0.5.29 - @truffle/debug-utils@5.1.13 - @truffle/debugger@9.1.14 - @truffle/decoder@5.0.5 - @truffle/deployer@3.2.42 - @truffle/environment@0.2.70 - @truffle/external-compile@2.0.23 - @truffle/fetch-and-compile@0.1.5 - @truffle/migrate@3.2.42 - @truffle/provider@0.2.39 - @truffle/provisioner@0.2.29 - @truffle/require@2.0.74 - @truffle/resolver@7.0.27 - @truffle/source-map-utils@1.3.56 - truffle@5.4.9 - @truffle/workflow-compile@3.2.28 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/codec/package.json | 4 +-- packages/compile-common/package.json | 4 +-- packages/compile-solidity/package.json | 12 ++++---- packages/compile-vyper/package.json | 8 +++--- packages/config/package.json | 4 +-- packages/contract-tests/package.json | 6 ++-- packages/contract/package.json | 4 +-- packages/core/package.json | 38 ++++++++++++------------- packages/db-kit/package.json | 18 ++++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 8 +++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++------ packages/decoder/package.json | 16 +++++------ packages/deployer/package.json | 6 ++-- packages/environment/package.json | 6 ++-- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 10 +++---- packages/migrate/package.json | 10 +++---- packages/provider/package.json | 2 +- packages/provisioner/package.json | 4 +-- packages/require/package.json | 4 +-- packages/resolver/package.json | 6 ++-- packages/source-map-utils/package.json | 4 +-- packages/truffle/package.json | 16 +++++------ packages/workflow-compile/package.json | 18 ++++++------ 28 files changed, 122 insertions(+), 122 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 05071da25fd..ca9ca4eb678 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.120", + "version": "4.0.121", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.32", + "@truffle/contract": "^4.3.33", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index 33a435d1092..95cf5ec75d2 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -8,7 +8,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/box" }, - "version": "2.1.25", + "version": "2.1.26", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -17,7 +17,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.5", + "@truffle/config": "^1.3.6", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/codec/package.json b/packages/codec/package.json index d7371ac40e6..1c8a83f49eb 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.11", + "version": "0.11.12", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.17", + "@truffle/compile-common": "^0.7.18", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 4597d139be5..9502cd4e5b8 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.17", + "version": "0.7.18", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -17,7 +17,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.5", + "@truffle/config": "^1.3.6", "@truffle/contract-schema": "^3.4.3", "@types/fs-extra": "^8.1.0", "@types/mocha": "^5.2.7", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 72bbeb9c789..6969fa1a03f 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,15 +12,15 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.19", + "version": "5.3.20", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.17", - "@truffle/config": "^1.3.5", + "@truffle/compile-common": "^0.7.18", + "@truffle/config": "^1.3.6", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "axios": "^0.21.1", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.120", - "@truffle/box": "^2.1.25", - "@truffle/resolver": "^7.0.26", + "@truffle/artifactor": "^4.0.121", + "@truffle/box": "^2.1.26", + "@truffle/resolver": "^7.0.27", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 0ba15e1c3df..0229cc01182 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,16 +8,16 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.23", + "version": "3.1.24", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.17", - "@truffle/config": "^1.3.5", - "@truffle/resolver": "^7.0.26", + "@truffle/compile-common": "^0.7.18", + "@truffle/config": "^1.3.6", + "@truffle/resolver": "^7.0.27", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/config/package.json b/packages/config/package.json index afb645e7441..22ffa08d96f 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.5", + "version": "1.3.6", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -23,7 +23,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/events": "^0.0.14", - "@truffle/provider": "^0.2.38", + "@truffle/provider": "^0.2.39", "configstore": "^4.0.0", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 176116325ce..a3f27663a26 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.51", + "version": "0.1.52", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.19", - "@truffle/contract": "^4.3.32", + "@truffle/compile-solidity": "^5.3.20", + "@truffle/contract": "^4.3.33", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index 0564473897c..1a0b4cebf4b 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.32", + "version": "4.3.33", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,7 +24,7 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.12", + "@truffle/debug-utils": "^5.1.13", "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.5", "bignumber.js": "^7.2.1", diff --git a/packages/core/package.json b/packages/core/package.json index 30ffefc3d6f..5f651fcfc92 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.8", + "version": "5.4.9", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,34 +21,34 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.120", - "@truffle/box": "^2.1.25", - "@truffle/codec": "^0.11.11", - "@truffle/compile-solidity": "^5.3.19", - "@truffle/config": "^1.3.5", - "@truffle/contract": "^4.3.32", - "@truffle/debug-utils": "^5.1.12", - "@truffle/debugger": "^9.1.13", - "@truffle/decoder": "^5.0.4", - "@truffle/deployer": "^3.2.41", - "@truffle/environment": "^0.2.69", + "@truffle/artifactor": "^4.0.121", + "@truffle/box": "^2.1.26", + "@truffle/codec": "^0.11.12", + "@truffle/compile-solidity": "^5.3.20", + "@truffle/config": "^1.3.6", + "@truffle/contract": "^4.3.33", + "@truffle/debug-utils": "^5.1.13", + "@truffle/debugger": "^9.1.14", + "@truffle/decoder": "^5.0.5", + "@truffle/deployer": "^3.2.42", + "@truffle/environment": "^0.2.70", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.4", + "@truffle/fetch-and-compile": "^0.1.5", "@truffle/interface-adapter": "^0.5.5", - "@truffle/migrate": "^3.2.41", + "@truffle/migrate": "^3.2.42", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", - "@truffle/provider": "^0.2.38", - "@truffle/provisioner": "^0.2.28", - "@truffle/require": "^2.0.73", - "@truffle/resolver": "^7.0.26", + "@truffle/provider": "^0.2.39", + "@truffle/provisioner": "^0.2.29", + "@truffle/require": "^2.0.74", + "@truffle/resolver": "^7.0.27", "@truffle/source-fetcher": "^0.5.7", - "@truffle/workflow-compile": "^3.2.27", + "@truffle/workflow-compile": "^3.2.28", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 4d9e58c7992..0fb3274335c 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.29", + "version": "0.1.30", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.11", - "@truffle/compile-common": "^0.7.17", - "@truffle/compile-solidity": "^5.3.19", - "@truffle/config": "^1.3.5", - "@truffle/db": "^0.5.28", - "@truffle/decoder": "^5.0.4", - "@truffle/environment": "^0.2.69", - "@truffle/fetch-and-compile": "^0.1.4", + "@truffle/codec": "^0.11.12", + "@truffle/compile-common": "^0.7.18", + "@truffle/compile-solidity": "^5.3.20", + "@truffle/config": "^1.3.6", + "@truffle/db": "^0.5.29", + "@truffle/decoder": "^5.0.5", + "@truffle/environment": "^0.2.70", + "@truffle/fetch-and-compile": "^0.1.5", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 7f3230d1b4a..535083b3684 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.7", + "version": "0.0.8", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.28" + "@truffle/db": "^0.5.29" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 4db6c9461e4..2e5cc5ea17b 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.28", + "version": "0.5.29", "main": "dist/src/index.js", "files": [ "dist", @@ -38,8 +38,8 @@ "dependencies": { "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", - "@truffle/config": "^1.3.5", - "@truffle/resolver": "^7.0.26", + "@truffle/config": "^1.3.6", + "@truffle/resolver": "^7.0.27", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.17", + "@truffle/compile-common": "^0.7.18", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index 71dbce97d7c..c8c93ab3370 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.12", + "version": "5.1.13", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.11", + "@truffle/codec": "^0.11.12", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 3b1e5e73606..7267618c365 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.13", + "version": "9.1.14", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.11", - "@truffle/source-map-utils": "^1.3.55", + "@truffle/codec": "^0.11.12", + "@truffle/source-map-utils": "^1.3.56", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.2" }, "devDependencies": { - "@truffle/artifactor": "^4.0.120", - "@truffle/box": "^2.1.25", - "@truffle/migrate": "^3.2.41", - "@truffle/resolver": "^7.0.26", - "@truffle/workflow-compile": "^3.2.27", + "@truffle/artifactor": "^4.0.121", + "@truffle/box": "^2.1.26", + "@truffle/migrate": "^3.2.42", + "@truffle/resolver": "^7.0.27", + "@truffle/workflow-compile": "^3.2.28", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 5a300608a62..e6e87d45122 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.4", + "version": "5.0.5", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.11", - "@truffle/compile-common": "^0.7.17", - "@truffle/source-map-utils": "^1.3.55", + "@truffle/codec": "^0.11.12", + "@truffle/compile-common": "^0.7.18", + "@truffle/source-map-utils": "^1.3.56", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.2" }, "devDependencies": { - "@truffle/config": "^1.3.5", + "@truffle/config": "^1.3.6", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.41", - "@truffle/provider": "^0.2.38", - "@truffle/workflow-compile": "^3.2.27", + "@truffle/migrate": "^3.2.42", + "@truffle/provider": "^0.2.39", + "@truffle/workflow-compile": "^3.2.28", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index ca18ba27eaa..ca6eecf55f8 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.41", + "version": "3.2.42", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,7 +22,7 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.32", + "@truffle/contract": "^4.3.33", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", @@ -30,7 +30,7 @@ }, "devDependencies": { "@truffle/reporters": "^2.0.5", - "@truffle/workflow-compile": "^3.2.27", + "@truffle/workflow-compile": "^3.2.28", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 36023393b8c..0a80397bebb 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.69", + "version": "0.2.70", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.120", + "@truffle/artifactor": "^4.0.121", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", - "@truffle/resolver": "^7.0.26", + "@truffle/resolver": "^7.0.27", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index b1caf898239..a81fdadb4e6 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.22", + "version": "2.0.23", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.5", + "@truffle/config": "^1.3.6", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 5eb501fc21d..965b5183f47 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.4", + "version": "0.1.5", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.11", - "@truffle/compile-solidity": "^5.3.19", + "@truffle/codec": "^0.11.12", + "@truffle/compile-solidity": "^5.3.20", "@truffle/source-fetcher": "^0.5.7", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.17", - "@truffle/config": "^1.3.5", + "@truffle/compile-common": "^0.7.18", + "@truffle/config": "^1.3.6", "typescript": "^4.1.4" } } diff --git a/packages/migrate/package.json b/packages/migrate/package.json index 4cf90c1e301..f96cbd78cb8 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.41", + "version": "3.2.42", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.5", - "@truffle/db-loader": "^0.0.7", - "@truffle/deployer": "^3.2.41", + "@truffle/config": "^1.3.6", + "@truffle/db-loader": "^0.0.8", + "@truffle/deployer": "^3.2.42", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", "@truffle/reporters": "^2.0.5", - "@truffle/require": "^2.0.73", + "@truffle/require": "^2.0.74", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/provider/package.json b/packages/provider/package.json index 6ba3a2541c8..f5e3ce564cb 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.38", + "version": "0.2.39", "main": "index.js", "scripts": { "prepare": "exit 0", diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index 2fbf42e4014..abe55574ee7 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.28", + "version": "0.2.29", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.5" + "@truffle/config": "^1.3.6" } } diff --git a/packages/require/package.json b/packages/require/package.json index caa554dc5bf..0714eb2562c 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.73", + "version": "2.0.74", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.5", + "@truffle/config": "^1.3.6", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", "original-require": "^1.0.1" diff --git a/packages/resolver/package.json b/packages/resolver/package.json index e92d4dbec98..4aba50bd143 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.26", + "version": "7.0.27", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.32", + "@truffle/contract": "^4.3.33", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.28", + "@truffle/provisioner": "^0.2.29", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index d7d3d29161e..dfcf6466ea9 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.55", + "version": "1.3.56", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.11", + "@truffle/codec": "^0.11.12", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index ab9a47e1b56..483b2637509 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.8", + "version": "5.4.9", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,24 +31,24 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.28", + "@truffle/db": "^0.5.29", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.7", - "@truffle/debugger": "^9.1.13", + "@truffle/db-loader": "^0.0.8", + "@truffle/debugger": "^9.1.14", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.25", - "@truffle/config": "^1.3.5", - "@truffle/contract": "^4.3.32", - "@truffle/core": "^5.4.8", + "@truffle/box": "^2.1.26", + "@truffle/config": "^1.3.6", + "@truffle/contract": "^4.3.33", + "@truffle/core": "^5.4.9", "@truffle/interface-adapter": "^0.5.5", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 3d5a7fd2e16..60ec9394798 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.27", + "version": "3.2.28", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.120", - "@truffle/compile-common": "^0.7.17", - "@truffle/compile-solidity": "^5.3.19", - "@truffle/compile-vyper": "^3.1.23", - "@truffle/config": "^1.3.5", - "@truffle/db-loader": "^0.0.7", + "@truffle/artifactor": "^4.0.121", + "@truffle/compile-common": "^0.7.18", + "@truffle/compile-solidity": "^5.3.20", + "@truffle/compile-vyper": "^3.1.24", + "@truffle/config": "^1.3.6", + "@truffle/db-loader": "^0.0.8", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.22", - "@truffle/resolver": "^7.0.26", + "@truffle/external-compile": "^2.0.23", + "@truffle/resolver": "^7.0.27", "fs-extra": "^9.1.0" }, "devDependencies": { From 9485bfe6114f947b37118905fba92f2fd64ebd97 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 2 Sep 2021 16:49:23 -0400 Subject: [PATCH 032/124] Add conf package to core and start writing migration utils --- packages/core/lib/config-migrations.js | 30 +++++++++ packages/core/package.json | 1 + yarn.lock | 86 ++++++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 packages/core/lib/config-migrations.js diff --git a/packages/core/lib/config-migrations.js b/packages/core/lib/config-migrations.js new file mode 100644 index 00000000000..e597fcd3177 --- /dev/null +++ b/packages/core/lib/config-migrations.js @@ -0,0 +1,30 @@ +const OS = require("os"); +const path = require("path"); +const fse = require("fs-extra"); +const Conf = require("conf"); + +module.exports = { + oldTruffleFolder: path.join(OS.homedir(), ".config", "truffle"), + + needsMigrated: function () { + const oldConfig = path.join(this.oldTruffleFolder, "config.json"); + const conf = new Conf({ projectName: "truffle" }); + return fse.existsSync(oldConfig) && oldConfig !== conf.path; + }, + + migrate: function () { + if (!this.needsMigrated) return; + this.migrateDataDir(); + }, + + migrateDataDir: function () { + const conf = new Conf({ projectName: "truffle" }); + const oldSettings = require(path.join( + this.oldTruffleFolder, + "config.json" + )); + for (const key in oldSettings) { + conf.set(key, oldSettings[key]); + } + } +}; diff --git a/packages/core/package.json b/packages/core/package.json index 5f651fcfc92..89a77a86fc3 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -52,6 +52,7 @@ "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", + "conf": "^10.0.2", "configstore": "^4.0.0", "cpr": "^3.0.1", "debug": "^4.3.1", diff --git a/yarn.lock b/yarn.lock index 6a07c0fb0fb..b9962eee0cf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5590,6 +5590,13 @@ ajv-errors@^1.0.0: resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== +ajv-formats@^2.0.2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" + ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: version "3.4.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" @@ -5640,6 +5647,16 @@ ajv@^6.12.4, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^8.0.0, ajv@^8.1.0: + version "8.6.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -6366,6 +6383,11 @@ atomic-sleep@^1.0.0: resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== +atomically@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/atomically/-/atomically-1.7.0.tgz#c07a0458432ea6dbc9a3506fffa424b48bccaafe" + integrity sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w== + author-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/author-regex/-/author-regex-1.0.0.tgz#d08885be6b9bbf9439fe087c76287245f0a81450" @@ -9012,6 +9034,22 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" +conf@^10.0.2: + version "10.0.2" + resolved "https://registry.yarnpkg.com/conf/-/conf-10.0.2.tgz#2e0e89fb85ec2c6fba1efce652d7561ed0b70084" + integrity sha512-iyy4ArqyQ/yrzNASNBN+jaylu53JRuq0ztvL6KAWYHj4iN56BVuhy2SrzEEHBodNbacZr2Pd/4nWhoAwc66T1g== + dependencies: + ajv "^8.1.0" + ajv-formats "^2.0.2" + atomically "^1.7.0" + debounce-fn "^4.0.0" + dot-prop "^6.0.1" + env-paths "^2.2.1" + json-schema-typed "^7.0.3" + onetime "^5.1.2" + pkg-up "^3.1.0" + semver "^7.3.5" + config-chain@^1.1.11: version "1.1.12" resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" @@ -9651,6 +9689,13 @@ de-indent@^1.0.2: resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= +debounce-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/debounce-fn/-/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" + integrity sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ== + dependencies: + mimic-fn "^3.0.0" + debounce@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" @@ -10424,6 +10469,13 @@ dot-prop@^5.2.0: dependencies: is-obj "^2.0.0" +dot-prop@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== + dependencies: + is-obj "^2.0.0" + double-ended-queue@2.1.0-0: version "2.1.0-0" resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" @@ -10794,6 +10846,11 @@ env-paths@^2.2.0: resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== +env-paths@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + envinfo@^7.7.3: version "7.7.4" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.7.4.tgz#c6311cdd38a0e86808c1c9343f667e4267c4a320" @@ -17986,6 +18043,16 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema-typed@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz#23ff481b8b4eebcd2ca123b4fa0409e66469a2d9" + integrity sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A== + json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" @@ -20480,6 +20547,11 @@ mimic-fn@^2.0.0, mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +mimic-fn@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" + integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== + mimic-response@^1.0.0, mimic-response@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" @@ -22921,6 +22993,13 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-up@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" + integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== + dependencies: + find-up "^3.0.0" + please-upgrade-node@^3.1.1, please-upgrade-node@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" @@ -25235,6 +25314,13 @@ semver@^7.3.4: dependencies: lru-cache "^6.0.0" +semver@^7.3.5: + version "7.3.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + semver@~5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" From b7a2d82625369b6b14bd6c25b1a001efdd2cb8f3 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 3 Sep 2021 10:51:43 -0400 Subject: [PATCH 033/124] Flesh out the rest of the migrations for global config stuff --- packages/core/lib/config-migrations.js | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/packages/core/lib/config-migrations.js b/packages/core/lib/config-migrations.js index e597fcd3177..d123a0af380 100644 --- a/packages/core/lib/config-migrations.js +++ b/packages/core/lib/config-migrations.js @@ -2,6 +2,8 @@ const OS = require("os"); const path = require("path"); const fse = require("fs-extra"); const Conf = require("conf"); +const { promisify } = require("util"); +const copy = require("./copy"); module.exports = { oldTruffleFolder: path.join(OS.homedir(), ".config", "truffle"), @@ -12,12 +14,16 @@ module.exports = { return fse.existsSync(oldConfig) && oldConfig !== conf.path; }, - migrate: function () { + migrateTruffleDataIfNecessary: async function () { if (!this.needsMigrated) return; - this.migrateDataDir(); + this.migrateGlobalConfig(); + const folders = ["compilers", ".db"]; + for (const folder of folders) { + await this.migrateFolder(folder); + } }, - migrateDataDir: function () { + migrateGlobalConfig: function () { const conf = new Conf({ projectName: "truffle" }); const oldSettings = require(path.join( this.oldTruffleFolder, @@ -26,5 +32,15 @@ module.exports = { for (const key in oldSettings) { conf.set(key, oldSettings[key]); } + }, + + migrateFolder: async function (folderName) { + const targetPath = path.join(this.oldTruffleFolder, folderName); + // use conf to determine the new Truffle folder as it uses OS-appropriate locations + const conf = new Conf({ projectName: "truffle" }); + const destinationPath = path.join(path.dirname(conf.path), folderName); + if (fse.existsSync(targetPath)) { + await promisify(copy)(targetPath, destinationPath, {}); + } } }; From 79ab4c99bfc6fcbaff40caa148e32d6503156253 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 3 Sep 2021 10:59:09 -0400 Subject: [PATCH 034/124] Replace configstore with conf in config --- packages/config/package.json | 2 +- packages/config/src/index.ts | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/config/package.json b/packages/config/package.json index 22ffa08d96f..2833db12e9b 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -24,7 +24,7 @@ "@truffle/error": "^0.0.14", "@truffle/events": "^0.0.14", "@truffle/provider": "^0.2.39", - "configstore": "^4.0.0", + "conf": "^10.0.2", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", "lodash.merge": "^4.6.2", diff --git a/packages/config/src/index.ts b/packages/config/src/index.ts index 1b673de1c74..715895b1e94 100644 --- a/packages/config/src/index.ts +++ b/packages/config/src/index.ts @@ -4,7 +4,7 @@ import merge from "lodash.merge"; import pick from "lodash.pick"; import Module from "module"; import findUp from "find-up"; -import Configstore from "configstore"; +import Conf from "conf"; import TruffleError from "@truffle/error"; import originalRequire from "original-require"; import { getInitialConfig, configProps } from "./configDefaults"; @@ -218,14 +218,13 @@ class TruffleConfig { return config; } - public static getUserConfig(): Configstore { - return new Configstore("truffle", {}, { globalConfigPath: true }); + public static getUserConfig(): Conf { + return new Conf({ projectName: "truffle" }); } public static getTruffleDataDirectory(): string { - const configStore = TruffleConfig.getUserConfig(); - - return path.dirname(configStore.path); + const conf = TruffleConfig.getUserConfig(); + return path.dirname(conf.path); } } From c92be8dbec0c6cfd750cdf10997ca529d75c6da9 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 3 Sep 2021 11:03:04 -0400 Subject: [PATCH 035/124] Remove configstore from core and adjust code --- packages/core/package.json | 1 - packages/core/test/lib/mnemonics/mnemonic.js | 16 +++++----- .../services/analytics/google-analytics.js | 24 +++++++------- yarn.lock | 31 +------------------ 4 files changed, 21 insertions(+), 51 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 89a77a86fc3..70b7d08126f 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -53,7 +53,6 @@ "colors": "^1.4.0", "command-exists": "^1.2.8", "conf": "^10.0.2", - "configstore": "^4.0.0", "cpr": "^3.0.1", "debug": "^4.3.1", "del": "^2.2.0", diff --git a/packages/core/test/lib/mnemonics/mnemonic.js b/packages/core/test/lib/mnemonics/mnemonic.js index 4d565d20220..f2b9dfbbeb7 100644 --- a/packages/core/test/lib/mnemonics/mnemonic.js +++ b/packages/core/test/lib/mnemonics/mnemonic.js @@ -1,28 +1,28 @@ const assert = require("chai").assert; const sinon = require("sinon"); const accountsInfo = require("../../../lib/mnemonics/mnemonic"); -const Configstore = require("configstore"); +const Conf = require("conf"); describe("mnemonic", function() { beforeEach(() => { sinon - .stub(Configstore.prototype, "get") + .stub(Conf.prototype, "get") .returns( "candy maple cake sugar pudding cream honey rich smooth crumble sweet treat" ); - sinon.stub(Configstore.prototype, "set"); + sinon.stub(Conf.prototype, "set"); }); afterEach(() => { - Configstore.prototype.get.restore(); - Configstore.prototype.set.restore(); + Conf.prototype.get.restore(); + Conf.prototype.set.restore(); }); describe("#getOrGenerateMnemonic", function() { it("checks user-level configuration for mnemonic and creates one if one is not present", function() { let mnemonic = accountsInfo.getOrGenerateMnemonic(); - sinon.assert.calledOnce(Configstore.prototype.get); + sinon.assert.calledOnce(Conf.prototype.get); assert.exists(mnemonic); assert.isString(mnemonic); - assert.equal(mnemonic, Configstore.prototype.get("mnemonic")); + assert.equal(mnemonic, Conf.prototype.get("mnemonic")); }); }); describe("#getAccountsInfo", function() { @@ -35,7 +35,7 @@ describe("mnemonic", function() { assert.lengthOf(accounts.accounts, defaultNumAddresses); assert.isArray(accounts.privateKeys); assert.isString(accounts.mnemonic); - sinon.assert.calledOnce(Configstore.prototype.get); + sinon.assert.calledOnce(Conf.prototype.get); }); }); }); diff --git a/packages/core/test/lib/services/analytics/google-analytics.js b/packages/core/test/lib/services/analytics/google-analytics.js index f1321417ae9..09a73c804f2 100644 --- a/packages/core/test/lib/services/analytics/google-analytics.js +++ b/packages/core/test/lib/services/analytics/google-analytics.js @@ -5,22 +5,22 @@ const sinon = require("sinon"); const analytics = require("../../../../lib/services/analytics/google"); const inquirer = require("inquirer"); const configCommand = require("../../../../lib/commands/config"); -const Configstore = require("configstore"); +const Conf = require("conf"); describe("analytics", function() { beforeEach(() => { sinon.stub(inquirer, "prompt").returns({ then: () => 1 }); sinon.stub(Config, "getUserConfig").returns(true); - sinon.stub(Configstore.prototype, "get").returns(false); - sinon.stub(Configstore.prototype, "set"); + sinon.stub(Conf.prototype, "get").returns(false); + sinon.stub(Conf.prototype, "set"); sinon.stub(analytics, "setUserConfigViaPrompt").resolves(); sinon.stub(ua.Visitor.prototype, "_enqueue"); }); afterEach(() => { inquirer.prompt.restore(); Config.getUserConfig.restore(); - Configstore.prototype.get.restore(); - Configstore.prototype.set.restore(); + Conf.prototype.get.restore(); + Conf.prototype.set.restore(); analytics.setUserConfigViaPrompt.restore(); ua.Visitor.prototype._enqueue.restore(); sinon.restore(); @@ -28,8 +28,8 @@ describe("analytics", function() { describe("#setUserId", function() { it("sets a userId if one does not exist", function() { analytics.setUserId(); - sinon.assert.calledOnce(Configstore.prototype.get); - sinon.assert.calledOnce(Configstore.prototype.set); + sinon.assert.calledOnce(Conf.prototype.get); + sinon.assert.calledOnce(Conf.prototype.set); }); }); describe("#setAnalytics", function() { @@ -49,15 +49,15 @@ describe("analytics", function() { }); it("sets user-level configuration of enableAnalytics to true if passed true", function() { analytics.setAnalytics(true); - sinon.assert.calledTwice(Configstore.prototype.set); - let stubArg = Configstore.prototype.set.getCall(1).args[0] + sinon.assert.calledTwice(Conf.prototype.set); + let stubArg = Conf.prototype.set.getCall(1).args[0] .enableAnalytics; assert.equal(stubArg, true); }); it("sets user-level configuration of enableAnalytics to false if passed false", function() { analytics.setAnalytics(false); - sinon.assert.calledOnce(Configstore.prototype.set); - let stubArg = Configstore.prototype.set.getCall(0).args[0] + sinon.assert.calledOnce(Conf.prototype.set); + let stubArg = Conf.prototype.set.getCall(0).args[0] .enableAnalytics; assert.equal(stubArg, false); }); @@ -71,7 +71,7 @@ describe("analytics", function() { describe("#checkIfAnalyticsEnabled", function() { it("checks the user-level config to see if analytics are enabled", function() { analytics.checkIfAnalyticsEnabled(); - sinon.assert.calledOnce(Configstore.prototype.get); + sinon.assert.calledOnce(Conf.prototype.get); }); }); describe("#setPersistentAnalyticsData", function() { diff --git a/yarn.lock b/yarn.lock index b9962eee0cf..e4bd5b46d46 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9058,18 +9058,6 @@ config-chain@^1.1.11: ini "^1.3.4" proto-list "~1.2.1" -configstore@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-4.0.0.tgz#5933311e95d3687efb592c528b922d9262d227e7" - integrity sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ== - dependencies: - dot-prop "^4.1.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - unique-string "^1.0.0" - write-file-atomic "^2.0.0" - xdg-basedir "^3.0.0" - configstore@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" @@ -9494,11 +9482,6 @@ crypto-js@^3.1.9-1: resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8" integrity sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg= -crypto-random-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" - integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= - crypto-random-string@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" @@ -10455,7 +10438,7 @@ dot-prop@^3.0.0: dependencies: is-obj "^1.0.0" -dot-prop@^4.1.0, dot-prop@^4.2.0: +dot-prop@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== @@ -28057,13 +28040,6 @@ unique-stream@^2.0.2: json-stable-stringify-without-jsonify "^1.0.1" through2-filter "^3.0.0" -unique-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" - integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= - dependencies: - crypto-random-string "^1.0.0" - unique-string@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" @@ -30203,11 +30179,6 @@ ws@^7.2.3: resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8" integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA== -xdg-basedir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" - integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ= - xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" From 987bf36384cdde7c34eeff9a9d5d9e2df5dc7958 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 3 Sep 2021 11:05:27 -0400 Subject: [PATCH 036/124] Rename a variable and use Truffle config to get the new data dir --- packages/core/lib/config-migrations.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/core/lib/config-migrations.js b/packages/core/lib/config-migrations.js index d123a0af380..170ff85f648 100644 --- a/packages/core/lib/config-migrations.js +++ b/packages/core/lib/config-migrations.js @@ -4,12 +4,13 @@ const fse = require("fs-extra"); const Conf = require("conf"); const { promisify } = require("util"); const copy = require("./copy"); +const TruffleConfig = require("@truffle/config"); module.exports = { - oldTruffleFolder: path.join(OS.homedir(), ".config", "truffle"), + oldTruffleDataDirectory: path.join(OS.homedir(), ".config", "truffle"), needsMigrated: function () { - const oldConfig = path.join(this.oldTruffleFolder, "config.json"); + const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); const conf = new Conf({ projectName: "truffle" }); return fse.existsSync(oldConfig) && oldConfig !== conf.path; }, @@ -26,7 +27,7 @@ module.exports = { migrateGlobalConfig: function () { const conf = new Conf({ projectName: "truffle" }); const oldSettings = require(path.join( - this.oldTruffleFolder, + this.oldTruffleDataDirectory, "config.json" )); for (const key in oldSettings) { @@ -35,10 +36,10 @@ module.exports = { }, migrateFolder: async function (folderName) { - const targetPath = path.join(this.oldTruffleFolder, folderName); + const targetPath = path.join(this.oldTruffleDataDirectory, folderName); // use conf to determine the new Truffle folder as it uses OS-appropriate locations const conf = new Conf({ projectName: "truffle" }); - const destinationPath = path.join(path.dirname(conf.path), folderName); + const destinationPath = path.join(TruffleConfig.getTruffleDataDirectory, folderName); if (fse.existsSync(targetPath)) { await promisify(copy)(targetPath, destinationPath, {}); } From eae89c037f3b5b515913e4925b62b505744ccd03 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 3 Sep 2021 16:37:13 -0400 Subject: [PATCH 037/124] Add a test and update a test --- packages/core/lib/config-migrations.js | 2 +- packages/core/test/lib/config-migrations.js | 28 ++++++++++++++++++++ packages/core/test/lib/mnemonics/mnemonic.js | 28 +++++--------------- 3 files changed, 36 insertions(+), 22 deletions(-) create mode 100644 packages/core/test/lib/config-migrations.js diff --git a/packages/core/lib/config-migrations.js b/packages/core/lib/config-migrations.js index 170ff85f648..af40416939a 100644 --- a/packages/core/lib/config-migrations.js +++ b/packages/core/lib/config-migrations.js @@ -39,7 +39,7 @@ module.exports = { const targetPath = path.join(this.oldTruffleDataDirectory, folderName); // use conf to determine the new Truffle folder as it uses OS-appropriate locations const conf = new Conf({ projectName: "truffle" }); - const destinationPath = path.join(TruffleConfig.getTruffleDataDirectory, folderName); + const destinationPath = path.join(TruffleConfig.getTruffleDataDirectory(), folderName); if (fse.existsSync(targetPath)) { await promisify(copy)(targetPath, destinationPath, {}); } diff --git a/packages/core/test/lib/config-migrations.js b/packages/core/test/lib/config-migrations.js new file mode 100644 index 00000000000..67781010a25 --- /dev/null +++ b/packages/core/test/lib/config-migrations.js @@ -0,0 +1,28 @@ +const migrationUtils = require("../../lib/config-migrations"); +const { + migrateTruffleDataIfNecessary, + needsMigrated, + oldTruffleDataDirectory, +} = migrationUtils; +const assert = require("assert"); +const path = require("path"); +const sinon = require("sinon"); +const fse = require("fs-extra"); +const oldConfigPath = path.join(oldTruffleDataDirectory, "config.json"); + +describe("global config migrations", function () { + describe("needsMigrated", function () { + describe("when the user has no old-style data dir", function () { + beforeEach(function () { + sinon.stub(fse, "existsSync").withArgs(oldConfigPath).returns(false); + }); + afterEach(function () { + fse.existsSync.restore(); + }); + + it("returns false", function () { + assert.equal(migrationUtils.needsMigrated(), false); + }); + }); + }); +}); diff --git a/packages/core/test/lib/mnemonics/mnemonic.js b/packages/core/test/lib/mnemonics/mnemonic.js index f2b9dfbbeb7..21486a853bb 100644 --- a/packages/core/test/lib/mnemonics/mnemonic.js +++ b/packages/core/test/lib/mnemonics/mnemonic.js @@ -2,40 +2,26 @@ const assert = require("chai").assert; const sinon = require("sinon"); const accountsInfo = require("../../../lib/mnemonics/mnemonic"); const Conf = require("conf"); +let conf; describe("mnemonic", function() { - beforeEach(() => { - sinon - .stub(Conf.prototype, "get") - .returns( - "candy maple cake sugar pudding cream honey rich smooth crumble sweet treat" - ); - sinon.stub(Conf.prototype, "set"); - }); - afterEach(() => { - Conf.prototype.get.restore(); - Conf.prototype.set.restore(); - }); describe("#getOrGenerateMnemonic", function() { - it("checks user-level configuration for mnemonic and creates one if one is not present", function() { - let mnemonic = accountsInfo.getOrGenerateMnemonic(); - sinon.assert.calledOnce(Conf.prototype.get); - assert.exists(mnemonic); - assert.isString(mnemonic); - assert.equal(mnemonic, Conf.prototype.get("mnemonic")); + it("returns the mnemonic set in the config", function() { + const result = accountsInfo.getOrGenerateMnemonic(); + assert.exists(result); + assert.isString(result); }); }); describe("#getAccountsInfo", function() { it("returns public keys, private keys, and mnemonic for default user account", function() { - let defaultNumAddresses = 10; - let accounts = accountsInfo.getAccountsInfo(defaultNumAddresses); + const defaultNumAddresses = 10; + const accounts = accountsInfo.getAccountsInfo(defaultNumAddresses); assert.exists(accounts); assert.isObject(accounts); assert.isArray(accounts.accounts); assert.lengthOf(accounts.accounts, defaultNumAddresses); assert.isArray(accounts.privateKeys); assert.isString(accounts.mnemonic); - sinon.assert.calledOnce(Conf.prototype.get); }); }); }); From c81637417928717a070cc46f4a9cdb216cd9562c Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 8 Sep 2021 10:57:46 -0400 Subject: [PATCH 038/124] Change file name and add migration utility into the command run method --- packages/core/lib/command.js | 6 ++++++ .../core/lib/{config-migrations.js => config-migration.js} | 0 2 files changed, 6 insertions(+) rename packages/core/lib/{config-migrations.js => config-migration.js} (100%) diff --git a/packages/core/lib/command.js b/packages/core/lib/command.js index a32a1a81646..29b53e69768 100644 --- a/packages/core/lib/command.js +++ b/packages/core/lib/command.js @@ -76,6 +76,12 @@ class Command { async run(inputStrings, options) { const result = this.getCommand(inputStrings, options.noAliases); + try { + // migrate Truffle data to the new location if necessary + const { migrateTruffleDataIfNecessary } = require("./config-migration"); + await migrateTruffleDataIfNecessary(); + } catch {}; + if (result == null) { throw new TaskError( "Cannot find command based on input: " + JSON.stringify(inputStrings) diff --git a/packages/core/lib/config-migrations.js b/packages/core/lib/config-migration.js similarity index 100% rename from packages/core/lib/config-migrations.js rename to packages/core/lib/config-migration.js From aa097abfa2dbfbe95b26bd2b4dfdf204bcfb5e04 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Wed, 8 Sep 2021 17:52:44 -0400 Subject: [PATCH 039/124] Update require path --- packages/core/test/lib/config-migrations.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/test/lib/config-migrations.js b/packages/core/test/lib/config-migrations.js index 67781010a25..6aef9f8efe9 100644 --- a/packages/core/test/lib/config-migrations.js +++ b/packages/core/test/lib/config-migrations.js @@ -1,4 +1,4 @@ -const migrationUtils = require("../../lib/config-migrations"); +const migrationUtils = require("../../lib/config-migration"); const { migrateTruffleDataIfNecessary, needsMigrated, From 5a3a3295743a24ab1e737db3ca5fc4c441f2f59a Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 10 Sep 2021 17:30:30 -0400 Subject: [PATCH 040/124] Fix error related to function call --- packages/core/lib/config-migration.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index af40416939a..53ded543ada 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -16,7 +16,7 @@ module.exports = { }, migrateTruffleDataIfNecessary: async function () { - if (!this.needsMigrated) return; + if (!this.needsMigrated()) return; this.migrateGlobalConfig(); const folders = ["compilers", ".db"]; for (const folder of folders) { From 7d7308d87d7f18e5afa9a45867b9c286b438d18d Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 10 Sep 2021 17:39:40 -0400 Subject: [PATCH 041/124] Add property to the config file so we know whether we need to migrate --- packages/core/lib/config-migration.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 53ded543ada..575f4f183c7 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -12,6 +12,8 @@ module.exports = { needsMigrated: function () { const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); const conf = new Conf({ projectName: "truffle" }); + const alreadyMigrated = conf.get("migrated"); + if (alreadyMigrated) return false; return fse.existsSync(oldConfig) && oldConfig !== conf.path; }, @@ -26,6 +28,8 @@ module.exports = { migrateGlobalConfig: function () { const conf = new Conf({ projectName: "truffle" }); + // set this to true so we know not to migrate next time + conf.set("migrated", true); const oldSettings = require(path.join( this.oldTruffleDataDirectory, "config.json" From 4930591364f1126a9f9773178e2111d981a76024 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 10 Sep 2021 17:46:08 -0400 Subject: [PATCH 042/124] Add debugger statement to handle when migrations fail --- packages/core/lib/command.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/core/lib/command.js b/packages/core/lib/command.js index 29b53e69768..0118818ad67 100644 --- a/packages/core/lib/command.js +++ b/packages/core/lib/command.js @@ -5,6 +5,9 @@ const OS = require("os"); const analytics = require("../lib/services/analytics"); const { extractFlags } = require("./utils/utils"); // Contains utility methods const commandOptions = require("./command-options"); +const debugModule = require("debug"); +const debug = debugModule("core:command:run"); + class Command { constructor(commands) { @@ -80,7 +83,9 @@ class Command { // migrate Truffle data to the new location if necessary const { migrateTruffleDataIfNecessary } = require("./config-migration"); await migrateTruffleDataIfNecessary(); - } catch {}; + } catch (error) { + debug("Truffle data migration failed: %o", error); + }; if (result == null) { throw new TaskError( From 58c7036f8992e11ae305e8722ddbd66ddc84b68c Mon Sep 17 00:00:00 2001 From: fainashalts Date: Fri, 10 Sep 2021 17:14:03 -0700 Subject: [PATCH 043/124] Publish - @truffle/artifactor@4.0.122 - @truffle/codec@0.11.13 - @truffle/compile-common@0.7.19 - @truffle/compile-solidity@5.3.21 - @truffle/compile-vyper@3.1.25 - @truffle/contract-tests@0.1.53 - @truffle/contract@4.3.34 - @truffle/core@5.4.10 - @truffle/db-kit@0.1.31 - @truffle/db-loader@0.0.9 - @truffle/db@0.5.30 - @truffle/debug-utils@5.1.14 - @truffle/debugger@9.1.15 - @truffle/decoder@5.0.6 - @truffle/deployer@3.2.43 - @truffle/environment@0.2.71 - @truffle/fetch-and-compile@0.1.6 - @truffle/migrate@3.2.43 - @truffle/resolver@7.0.28 - @truffle/source-map-utils@1.3.57 - truffle@5.4.10 - @truffle/workflow-compile@3.2.29 --- packages/artifactor/package.json | 4 ++-- packages/codec/package.json | 4 ++-- packages/compile-common/package.json | 2 +- packages/compile-solidity/package.json | 8 +++---- packages/compile-vyper/package.json | 6 +++--- packages/contract-tests/package.json | 6 +++--- packages/contract/package.json | 4 ++-- packages/core/package.json | 28 ++++++++++++------------- packages/db-kit/package.json | 16 +++++++------- packages/db-loader/package.json | 4 ++-- packages/db/package.json | 6 +++--- packages/debug-utils/package.json | 4 ++-- packages/debugger/package.json | 14 ++++++------- packages/decoder/package.json | 12 +++++------ packages/deployer/package.json | 6 +++--- packages/environment/package.json | 6 +++--- packages/fetch-and-compile/package.json | 8 +++---- packages/migrate/package.json | 6 +++--- packages/resolver/package.json | 4 ++-- packages/source-map-utils/package.json | 4 ++-- packages/truffle/package.json | 12 +++++------ packages/workflow-compile/package.json | 14 ++++++------- 22 files changed, 89 insertions(+), 89 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index ca9ca4eb678..41d45ecd364 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.121", + "version": "4.0.122", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.33", + "@truffle/contract": "^4.3.34", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/codec/package.json b/packages/codec/package.json index 1c8a83f49eb..0ffe94308b3 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.12", + "version": "0.11.13", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.18", + "@truffle/compile-common": "^0.7.19", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 9502cd4e5b8..077ac1887ed 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.18", + "version": "0.7.19", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 6969fa1a03f..a0e36f42022 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.20", + "version": "5.3.21", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.18", + "@truffle/compile-common": "^0.7.19", "@truffle/config": "^1.3.6", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.121", + "@truffle/artifactor": "^4.0.122", "@truffle/box": "^2.1.26", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 0229cc01182..9ec6c128bac 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,16 +8,16 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.24", + "version": "3.1.25", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.18", + "@truffle/compile-common": "^0.7.19", "@truffle/config": "^1.3.6", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index a3f27663a26..35bcabe1f4c 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.52", + "version": "0.1.53", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.20", - "@truffle/contract": "^4.3.33", + "@truffle/compile-solidity": "^5.3.21", + "@truffle/contract": "^4.3.34", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index 1a0b4cebf4b..728675073b8 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.33", + "version": "4.3.34", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,7 +24,7 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.13", + "@truffle/debug-utils": "^5.1.14", "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.5", "bignumber.js": "^7.2.1", diff --git a/packages/core/package.json b/packages/core/package.json index 5f651fcfc92..da5d54b5316 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.9", + "version": "5.4.10", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,22 +21,22 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.121", + "@truffle/artifactor": "^4.0.122", "@truffle/box": "^2.1.26", - "@truffle/codec": "^0.11.12", - "@truffle/compile-solidity": "^5.3.20", + "@truffle/codec": "^0.11.13", + "@truffle/compile-solidity": "^5.3.21", "@truffle/config": "^1.3.6", - "@truffle/contract": "^4.3.33", - "@truffle/debug-utils": "^5.1.13", - "@truffle/debugger": "^9.1.14", - "@truffle/decoder": "^5.0.5", - "@truffle/deployer": "^3.2.42", - "@truffle/environment": "^0.2.70", + "@truffle/contract": "^4.3.34", + "@truffle/debug-utils": "^5.1.14", + "@truffle/debugger": "^9.1.15", + "@truffle/decoder": "^5.0.6", + "@truffle/deployer": "^3.2.43", + "@truffle/environment": "^0.2.71", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.5", + "@truffle/fetch-and-compile": "^0.1.6", "@truffle/interface-adapter": "^0.5.5", - "@truffle/migrate": "^3.2.42", + "@truffle/migrate": "^3.2.43", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", @@ -46,9 +46,9 @@ "@truffle/provider": "^0.2.39", "@truffle/provisioner": "^0.2.29", "@truffle/require": "^2.0.74", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "@truffle/source-fetcher": "^0.5.7", - "@truffle/workflow-compile": "^3.2.28", + "@truffle/workflow-compile": "^3.2.29", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 0fb3274335c..be6230e8d26 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.30", + "version": "0.1.31", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.12", - "@truffle/compile-common": "^0.7.18", - "@truffle/compile-solidity": "^5.3.20", + "@truffle/codec": "^0.11.13", + "@truffle/compile-common": "^0.7.19", + "@truffle/compile-solidity": "^5.3.21", "@truffle/config": "^1.3.6", - "@truffle/db": "^0.5.29", - "@truffle/decoder": "^5.0.5", - "@truffle/environment": "^0.2.70", - "@truffle/fetch-and-compile": "^0.1.5", + "@truffle/db": "^0.5.30", + "@truffle/decoder": "^5.0.6", + "@truffle/environment": "^0.2.71", + "@truffle/fetch-and-compile": "^0.1.6", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 535083b3684..795b566f3d2 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.8", + "version": "0.0.9", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.29" + "@truffle/db": "^0.5.30" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 2e5cc5ea17b..4c925391197 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.29", + "version": "0.5.30", "main": "dist/src/index.js", "files": [ "dist", @@ -39,7 +39,7 @@ "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", "@truffle/config": "^1.3.6", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.18", + "@truffle/compile-common": "^0.7.19", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index c8c93ab3370..3841fb90d3e 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.13", + "version": "5.1.14", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.12", + "@truffle/codec": "^0.11.13", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 7267618c365..741edeecee2 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.14", + "version": "9.1.15", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.12", - "@truffle/source-map-utils": "^1.3.56", + "@truffle/codec": "^0.11.13", + "@truffle/source-map-utils": "^1.3.57", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.2" }, "devDependencies": { - "@truffle/artifactor": "^4.0.121", + "@truffle/artifactor": "^4.0.122", "@truffle/box": "^2.1.26", - "@truffle/migrate": "^3.2.42", - "@truffle/resolver": "^7.0.27", - "@truffle/workflow-compile": "^3.2.28", + "@truffle/migrate": "^3.2.43", + "@truffle/resolver": "^7.0.28", + "@truffle/workflow-compile": "^3.2.29", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index e6e87d45122..78e3ab83e76 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.5", + "version": "5.0.6", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,9 +26,9 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.12", - "@truffle/compile-common": "^0.7.18", - "@truffle/source-map-utils": "^1.3.56", + "@truffle/codec": "^0.11.13", + "@truffle/compile-common": "^0.7.19", + "@truffle/source-map-utils": "^1.3.57", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.2" @@ -36,9 +36,9 @@ "devDependencies": { "@truffle/config": "^1.3.6", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.42", + "@truffle/migrate": "^3.2.43", "@truffle/provider": "^0.2.39", - "@truffle/workflow-compile": "^3.2.28", + "@truffle/workflow-compile": "^3.2.29", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index ca6eecf55f8..bf33707902e 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.42", + "version": "3.2.43", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,7 +22,7 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.33", + "@truffle/contract": "^4.3.34", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", @@ -30,7 +30,7 @@ }, "devDependencies": { "@truffle/reporters": "^2.0.5", - "@truffle/workflow-compile": "^3.2.28", + "@truffle/workflow-compile": "^3.2.29", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 0a80397bebb..8f180c2dbef 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.70", + "version": "0.2.71", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.121", + "@truffle/artifactor": "^4.0.122", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 965b5183f47..cd9dbfb6dca 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.5", + "version": "0.1.6", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,13 +38,13 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.12", - "@truffle/compile-solidity": "^5.3.20", + "@truffle/codec": "^0.11.13", + "@truffle/compile-solidity": "^5.3.21", "@truffle/source-fetcher": "^0.5.7", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.18", + "@truffle/compile-common": "^0.7.19", "@truffle/config": "^1.3.6", "typescript": "^4.1.4" } diff --git a/packages/migrate/package.json b/packages/migrate/package.json index f96cbd78cb8..ccd1729d77b 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.42", + "version": "3.2.43", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -20,8 +20,8 @@ }, "dependencies": { "@truffle/config": "^1.3.6", - "@truffle/db-loader": "^0.0.8", - "@truffle/deployer": "^3.2.42", + "@truffle/db-loader": "^0.0.9", + "@truffle/deployer": "^3.2.43", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.5", "@truffle/reporters": "^2.0.5", diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 4aba50bd143..421f854eafd 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.27", + "version": "7.0.28", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,7 +27,7 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.33", + "@truffle/contract": "^4.3.34", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "@truffle/provisioner": "^0.2.29", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index dfcf6466ea9..b5e1b1e7cfd 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.56", + "version": "1.3.57", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.12", + "@truffle/codec": "^0.11.13", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 483b2637509..c4a57293513 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.9", + "version": "5.4.10", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,15 +31,15 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.29", + "@truffle/db": "^0.5.30", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.8", - "@truffle/debugger": "^9.1.14", + "@truffle/db-loader": "^0.0.9", + "@truffle/debugger": "^9.1.15", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" @@ -47,8 +47,8 @@ "devDependencies": { "@truffle/box": "^2.1.26", "@truffle/config": "^1.3.6", - "@truffle/contract": "^4.3.33", - "@truffle/core": "^5.4.9", + "@truffle/contract": "^4.3.34", + "@truffle/core": "^5.4.10", "@truffle/interface-adapter": "^0.5.5", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 60ec9394798..8f438d9f511 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.28", + "version": "3.2.29", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.121", - "@truffle/compile-common": "^0.7.18", - "@truffle/compile-solidity": "^5.3.20", - "@truffle/compile-vyper": "^3.1.24", + "@truffle/artifactor": "^4.0.122", + "@truffle/compile-common": "^0.7.19", + "@truffle/compile-solidity": "^5.3.21", + "@truffle/compile-vyper": "^3.1.25", "@truffle/config": "^1.3.6", - "@truffle/db-loader": "^0.0.8", + "@truffle/db-loader": "^0.0.9", "@truffle/expect": "^0.0.18", "@truffle/external-compile": "^2.0.23", - "@truffle/resolver": "^7.0.27", + "@truffle/resolver": "^7.0.28", "fs-extra": "^9.1.0" }, "devDependencies": { From 6528c6b2f9c0f0129c59b7f597bbb5e9d53f8c88 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 10 Sep 2021 18:24:59 -0400 Subject: [PATCH 044/124] Add support flor block.basefee in debugger --- packages/codec/lib/ast/import/index.ts | 3 +-- packages/codec/lib/compiler/types.ts | 4 ++-- packages/codec/lib/compiler/utils.ts | 8 +++++++- packages/codec/lib/special/decode/index.ts | 20 +++++++++++++++++++- packages/debugger/lib/evm/reducers.js | 3 ++- packages/debugger/lib/web3/sagas/index.js | 5 ++++- 6 files changed, 35 insertions(+), 8 deletions(-) diff --git a/packages/codec/lib/ast/import/index.ts b/packages/codec/lib/ast/import/index.ts index aa94c1deaa6..ecf5f470c05 100644 --- a/packages/codec/lib/ast/import/index.ts +++ b/packages/codec/lib/ast/import/index.ts @@ -47,8 +47,7 @@ export function definitionToType( kind: "general", typeHint }; - case "0.5.x": - case "0.8.x": + default: return { typeClass, kind: "specific", diff --git a/packages/codec/lib/compiler/types.ts b/packages/codec/lib/compiler/types.ts index 8f2b2d69660..cae36a14a92 100644 --- a/packages/codec/lib/compiler/types.ts +++ b/packages/codec/lib/compiler/types.ts @@ -7,5 +7,5 @@ export interface CompilerVersion { //NOTE: Families 0.5.0 and up will be named by the lowest version that //fits in the given family. So e.g. 0.5.x covers 0.5.x-0.7.x; -//0.8.x covers 0.8.x-current (as I write this) -export type SolidityFamily = "unknown" | "pre-0.5.0" | "0.5.x" | "0.8.x"; +//0.8.x covers 0.8.0-0.8.6; 0.8.7+ covers 0.8.7 to current (as I write this) +export type SolidityFamily = "unknown" | "pre-0.5.0" | "0.5.x" | "0.8.x" | "0.8.7+"; diff --git a/packages/codec/lib/compiler/utils.ts b/packages/codec/lib/compiler/utils.ts index 48009279fc8..72744a9abe0 100644 --- a/packages/codec/lib/compiler/utils.ts +++ b/packages/codec/lib/compiler/utils.ts @@ -9,11 +9,17 @@ export function solidityFamily(compiler: CompilerVersion): SolidityFamily { return "unknown"; } if ( - semver.satisfies(compiler.version, "~0.8 || >=0.8.0", { + semver.satisfies(compiler.version, ">=0.8.7", { includePrerelease: true }) ) { + return "0.8.7+"; + } else if ( //see comment below about the weird-looking condition + semver.satisfies(compiler.version, "~0.8 || >=0.8.0", { + includePrerelease: true + }) + ) { return "0.8.x"; } else if ( semver.satisfies(compiler.version, "~0.5 || >=0.5.0", { diff --git a/packages/codec/lib/special/decode/index.ts b/packages/codec/lib/special/decode/index.ts index 4588781e3c7..1cfc3934edf 100644 --- a/packages/codec/lib/special/decode/index.ts +++ b/packages/codec/lib/special/decode/index.ts @@ -109,6 +109,9 @@ export function* decodeMagic( if (solidityVersionHasChainId(info.currentContext.compiler)) { variables.push("chainid"); } + if (solidityVersionHasBaseFee(info.currentContext.compiler)) { + variables.push("basefee"); + } for (let variable of variables) { block[variable] = yield* Basic.Decode.decodeBasic( { @@ -143,7 +146,7 @@ function senderType( kind: "specific", payable: true }; - case "0.8.x": + default: return { typeClass: "address", kind: "specific", @@ -164,6 +167,7 @@ function coinbaseType( }; case "0.5.x": case "0.8.x": + case "0.8.7+": return { typeClass: "address", kind: "specific", @@ -180,7 +184,21 @@ function solidityVersionHasChainId( case "pre-0.5.0": case "0.5.x": return false; + default: + return true; + } +} + +function solidityVersionHasBaseFee( + compiler: Compiler.CompilerVersion +): boolean { + switch (Compiler.Utils.solidityFamily(compiler)) { + case "unknown": + case "pre-0.5.0": + case "0.5.x": case "0.8.x": + return false; + default: return true; } } diff --git a/packages/debugger/lib/evm/reducers.js b/packages/debugger/lib/evm/reducers.js index da5bbb15e16..441ad8acffa 100644 --- a/packages/debugger/lib/evm/reducers.js +++ b/packages/debugger/lib/evm/reducers.js @@ -94,7 +94,8 @@ const DEFAULT_BLOCK = { gaslimit: new BN(0), number: new BN(0), timestamp: new BN(0), - chainid: new BN(0) + chainid: new BN(0), + basefee: new BN(0) }; function block(state = DEFAULT_BLOCK, action) { diff --git a/packages/debugger/lib/web3/sagas/index.js b/packages/debugger/lib/web3/sagas/index.js index fa7119588de..7d7da2a7ab9 100644 --- a/packages/debugger/lib/web3/sagas/index.js +++ b/packages/debugger/lib/web3/sagas/index.js @@ -74,7 +74,10 @@ function* fetchTransactionInfo(adapter, { txHash }) { gaslimit: new BN(block.gasLimit), number: new BN(block.number), timestamp: new BN(block.timestamp), - chainid: new BN(chainId) //key is lowercase because that's what Solidity does + chainid: new BN(chainId), //key is lowercase because that's what Solidity does + basefee: new BN(parseInt(block.baseFeePerGas)) //will be 0 if pre-London [new BN(NaN) yields 0] + //note we need parseInt on basefee because some web3 versions return it as a hex string, + //and BN doesn't allow for hex strings as input }; if (tx.to != null) { From 3ea618d49c75c6ef5f04442104d3889969a2a9e9 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 10 Sep 2021 18:49:15 -0400 Subject: [PATCH 045/124] Update debugger test solc to 0.8.7 & EVM to London --- packages/debugger/test/helpers.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/debugger/test/helpers.js b/packages/debugger/test/helpers.js index 4c3b69edd7b..5a5f02fb32c 100644 --- a/packages/debugger/test/helpers.js +++ b/packages/debugger/test/helpers.js @@ -26,10 +26,10 @@ export async function prepareContracts(provider, sources = {}, migrations) { config.compilers = { solc: { - version: "0.8.4", + version: "0.8.7", settings: { optimizer: { enabled: false, runs: 200 }, - evmVersion: "istanbul" + evmVersion: "london" } } }; From b566226d89e9c4c4cbd7b1fbd7b74bfa42775744 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 10 Sep 2021 18:57:10 -0400 Subject: [PATCH 046/124] Account for basefee 0 in debugger tests --- packages/debugger/test/data/global.js | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/packages/debugger/test/data/global.js b/packages/debugger/test/data/global.js index dc2df502294..42453f99b7a 100644 --- a/packages/debugger/test/data/global.js +++ b/packages/debugger/test/data/global.js @@ -189,7 +189,7 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables._this); assert.deepEqual(variables.msg, variables._msg); assert.deepEqual(variables.tx, variables._tx); - assert.deepEqual(variables.block, variables._block); + assert.deepEqual(variables.block, withBaseFeeZero(variables._block)); }); it("Gets globals correctly in nested call", async function () { @@ -215,7 +215,7 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables._this); assert.deepEqual(variables.msg, variables._msg); assert.deepEqual(variables.tx, variables._tx); - assert.deepEqual(variables.block, variables._block); + assert.deepEqual(variables.block, withBaseFeeZero(variables._block)); }); it("Gets globals correctly in static call", async function () { @@ -241,7 +241,7 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables.__this); assert.deepEqual(variables.msg, variables.__msg); assert.deepEqual(variables.tx, variables.__tx); - assert.deepEqual(variables.block, variables.__block); + assert.deepEqual(variables.block, withBaseFeeZero(variables.__block)); }); it("Gets globals correctly in library call", async function () { @@ -260,13 +260,15 @@ describe("Globally-available variables", function () { }); await bugger.continueUntilBreakpoint(); + debug("variables: %O", await bugger.variables()); + const variables = Codec.Format.Utils.Inspect.unsafeNativizeVariables( await bugger.variables() ); assert.deepEqual(variables.msg, variables.__msg); assert.deepEqual(variables.tx, variables.__tx); - assert.deepEqual(variables.block, variables.__block); + assert.deepEqual(variables.block, withBaseFeeZero(variables.__block)); }); it("Gets globals correctly in simple creation", async function () { @@ -285,7 +287,7 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables._this); assert.deepEqual(variables.msg, variables._msg); assert.deepEqual(variables.tx, variables._tx); - assert.deepEqual(variables.block, variables._block); + assert.deepEqual(variables.block, withBaseFeeZero(variables._block)); }); it("Gets globals correctly in nested creation", async function () { @@ -311,7 +313,7 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables._this); assert.deepEqual(variables.msg, variables._msg); assert.deepEqual(variables.tx, variables._tx); - assert.deepEqual(variables.block, variables._block); + assert.deepEqual(variables.block, withBaseFeeZero(variables._block)); }); it("Gets globals correctly in failed CREATE2", async function () { @@ -337,6 +339,14 @@ describe("Globally-available variables", function () { assert.equal(variables.this, variables._this); assert.deepEqual(variables.msg, variables._msg); assert.deepEqual(variables.tx, variables._tx); - assert.deepEqual(variables.block, variables._block); + assert.deepEqual(variables.block, withBaseFeeZero(variables._block)); }); }); + +//HACK for testing until Ganache supports london +function withBaseFeeZero(block) { + return { + ...block, + basefee: 0 + }; +} From 40cf3fb8d167bbdd65b3a6e806490da9e13f3d9d Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 10 Sep 2021 21:53:11 -0400 Subject: [PATCH 047/124] Update stacktrace test for Solidity 0.8.7 --- packages/debugger/test/stacktrace.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/debugger/test/stacktrace.js b/packages/debugger/test/stacktrace.js index 4c2914498ae..b045e092e03 100644 --- a/packages/debugger/test/stacktrace.js +++ b/packages/debugger/test/stacktrace.js @@ -328,18 +328,19 @@ describe("Stack tracing", function () { undefined, "run1", "runInternal", - undefined + undefined, + "panic_error_0x51" ]); let contractNames = report.map(({ contractName }) => contractName); assert.isUndefined(contractNames[contractNames.length - 1]); - contractNames.pop(); - assert(contractNames.every(name => name === "StacktraceTest")); + assert.isUndefined(contractNames[contractNames.length - 2]); + assert(contractNames.slice(0,-2).every(name => name === "StacktraceTest")); let addresses = report.map(({ address }) => address); assert(addresses.every(address => address === instance.address)); let status = report[report.length - 1].status; assert.isFalse(status); - let location = report[report.length - 2].location; //note, -2 because of undefined on top - let prevLocation = report[report.length - 3].location; //similar + let location = report[report.length - 3].location; //note, -2 because of panic & undefined on top + let prevLocation = report[report.length - 4].location; //similar assert.strictEqual(location.sourceRange.lines.start.line, failLine); assert.strictEqual(prevLocation.sourceRange.lines.start.line, callLine); }); From d419b4cdfe7fe073304d1b3596c3f6dc4391bc58 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 10 Sep 2021 23:07:00 -0400 Subject: [PATCH 048/124] Update designated-invalid detection for Solidity 0.8.5 --- packages/source-map-utils/index.js | 72 ++++++++++++++++++++++-------- 1 file changed, 54 insertions(+), 18 deletions(-) diff --git a/packages/source-map-utils/index.js b/packages/source-map-utils/index.js index 48769832025..0ccb221428e 100644 --- a/packages/source-map-utils/index.js +++ b/packages/source-map-utils/index.js @@ -208,9 +208,7 @@ var SourceMapUtils = { //(designated invalid gets file -1 in some Solidity versions) if (sourceIndex === -1) { if ( - SourceMapUtils.isDesignatedInvalid( - instructions.slice(instruction.index) - ) + SourceMapUtils.isDesignatedInvalid(instructions, instruction.index) ) { //designated invalid, include it return { @@ -243,9 +241,7 @@ var SourceMapUtils = { //filter out JUMPDESTs that aren't function definitions... //except for the designated invalid function if ( - SourceMapUtils.isDesignatedInvalid( - instructions.slice(instruction.index) - ) + SourceMapUtils.isDesignatedInvalid(instructions, instruction.index) ) { //designated invalid, include it return { @@ -380,11 +376,11 @@ var SourceMapUtils = { return [start, start + length]; }, - //takes an array of instructions (as returned by parseCode) - //and asks: is the start of this instruction array the + //takes an array of instructions & an index into it + //and asks: is this index the start of this instruction array the //start of a Solidity designated invalid function? //i.e. what an uninitialized internal function pointer jumps to? - isDesignatedInvalid: function (instructions) { + isDesignatedInvalid: function (instructions, index) { const oldSequence = [{ name: "JUMPDEST" }, { name: "INVALID" }]; const panicSelector = Web3Utils.soliditySha3({ type: "string", @@ -408,11 +404,13 @@ var SourceMapUtils = { { name: "REVERT" } ]; - const checkAgainstTemplate = (instructions, template) => { - for (let index = 0; index < template.length; index++) { - const instruction = instructions[index]; - const comparison = template[index]; - if (!instruction || instruction.name !== comparison.name) { + const checkAgainstTemplate = (instructions, index, template) => { + for (let offset = 0; offset < template.length; offset++) { + const instruction = instructions[index + offset]; + const comparison = template[offset]; + if ( + !instruction || instruction.name !== comparison.name + ) { return false; } if ( @@ -425,10 +423,48 @@ var SourceMapUtils = { return true; }; - return ( - checkAgainstTemplate(instructions, oldSequence) || - checkAgainstTemplate(instructions, newSequence) - ); + //gets the final pushdata in a JUMPDEST, PUSH, [PUSH,] JUMP sequence; + //returns null if the code is not of that form + const getIndirectAddress = (instructions, startingIndex) => { + let index = startingIndex; + if (instructions[index].name !== "JUMPDEST") { + return null; + } + index++; + while (instructions[index].name.match(/^PUSH\d*/)) { + index++; + if (index > startingIndex + 3) { + //check: are there more than 2 PUSHes? + return false; + } + } + if (instructions[index].name === "JUMP") { + index--; + return parseInt(instructions[index].pushData); + } else { + return null; + } + }; + + //if it matches either direct template, return true + if ( + checkAgainstTemplate(instructions, index, oldSequence) || + checkAgainstTemplate(instructions, index, newSequence) + ) { + return true; + } + + //otherwise, check if it's indirect for the new template + const jumpAddress = getIndirectAddress(instructions, index); + if (jumpAddress !== null) { + const jumpIndex = instructions.findIndex( + instruction => instruction.pc === jumpAddress + ); + return checkAgainstTemplate(instructions, jumpIndex, newSequence); + } + + //otherwise, return false + return false; } }; From 4182000fe90d994af5a061c046ce81a747d3de3e Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Sat, 11 Sep 2021 00:53:33 -0400 Subject: [PATCH 049/124] Increase timeout on decoder test --- packages/decoder/test/current/test/compatible-nativize.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/decoder/test/current/test/compatible-nativize.js b/packages/decoder/test/current/test/compatible-nativize.js index 87bcd2c856f..b2a0ebe5330 100644 --- a/packages/decoder/test/current/test/compatible-nativize.js +++ b/packages/decoder/test/current/test/compatible-nativize.js @@ -25,7 +25,7 @@ describe("nativize (ethers format)", function () { }); before("Prepare contracts and artifacts", async function () { - this.timeout(30000); + this.timeout(45000); const prepared = await prepareContracts(provider, path.resolve(__dirname, "..")); abstractions = prepared.abstractions; From a4055c72c47658ce431b3063931e507af0e6283d Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 16:31:58 -0400 Subject: [PATCH 050/124] Update logic for needsMigrated and write a value for migrated at a different time --- packages/core/lib/config-migration.js | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 575f4f183c7..6a7dcd0f5d0 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -10,26 +10,33 @@ module.exports = { oldTruffleDataDirectory: path.join(OS.homedir(), ".config", "truffle"), needsMigrated: function () { - const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); const conf = new Conf({ projectName: "truffle" }); - const alreadyMigrated = conf.get("migrated"); - if (alreadyMigrated) return false; - return fse.existsSync(oldConfig) && oldConfig !== conf.path; + if (conf.get("migrated") === true)) return false; + const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); + if (fse.existsSync(oldConfig) && oldConfig !== conf.path) { + // we are on Windows or a Mac + return true; + } else { + // we are on Linux or previous config doesn't exist + // we don't need to perform a migration + conf.set("migrated", true); + return false; + } }, migrateTruffleDataIfNecessary: async function () { if (!this.needsMigrated()) return; - this.migrateGlobalConfig(); + const conf = this.migrateGlobalConfig(); const folders = ["compilers", ".db"]; for (const folder of folders) { await this.migrateFolder(folder); } + // set migrated to true only after migration is complete + conf.set("migrated", true); }, migrateGlobalConfig: function () { const conf = new Conf({ projectName: "truffle" }); - // set this to true so we know not to migrate next time - conf.set("migrated", true); const oldSettings = require(path.join( this.oldTruffleDataDirectory, "config.json" @@ -37,6 +44,7 @@ module.exports = { for (const key in oldSettings) { conf.set(key, oldSettings[key]); } + return conf; }, migrateFolder: async function (folderName) { From 34aa3eab229d0723cf0a15cb34d0eb5d24ee1765 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 16:36:53 -0400 Subject: [PATCH 051/124] Add debug statement to utility --- packages/core/lib/config-migration.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 6a7dcd0f5d0..6ecbead5fb1 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -5,6 +5,8 @@ const Conf = require("conf"); const { promisify } = require("util"); const copy = require("./copy"); const TruffleConfig = require("@truffle/config"); +const debugModule = require("debug"); +const debug = debugModule("core:config-migration"); module.exports = { oldTruffleDataDirectory: path.join(OS.homedir(), ".config", "truffle"), @@ -26,6 +28,7 @@ module.exports = { migrateTruffleDataIfNecessary: async function () { if (!this.needsMigrated()) return; + debug("Truffle files need to be migrated"); const conf = this.migrateGlobalConfig(); const folders = ["compilers", ".db"]; for (const folder of folders) { From d0d926f93d31209d5d3903aab3ad4b6098b589d7 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 16:47:54 -0400 Subject: [PATCH 052/124] Use 'version' to designate a successful migration --- packages/core/lib/config-migration.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 6ecbead5fb1..1560e78e236 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -13,15 +13,15 @@ module.exports = { needsMigrated: function () { const conf = new Conf({ projectName: "truffle" }); - if (conf.get("migrated") === true)) return false; + if (conf.get("version") === 1)) return false; const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); if (fse.existsSync(oldConfig) && oldConfig !== conf.path) { // we are on Windows or a Mac return true; } else { - // we are on Linux or previous config doesn't exist - // we don't need to perform a migration - conf.set("migrated", true); + // we are on Linux or previous config doesn't exist and we don't need to + // perform a migration - version set to 1 designates success + conf.set("version", 1); return false; } }, @@ -34,8 +34,8 @@ module.exports = { for (const folder of folders) { await this.migrateFolder(folder); } - // set migrated to true only after migration is complete - conf.set("migrated", true); + // set version to 1 only after migration is complete to designate success + conf.set("version", 1); }, migrateGlobalConfig: function () { From 502215cb6bab02bd5b0135ef6c6d858bdf9b765d Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 16:59:07 -0400 Subject: [PATCH 053/124] Correct syntax mistake --- packages/core/lib/config-migration.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 1560e78e236..5f5a7810c14 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -13,7 +13,7 @@ module.exports = { needsMigrated: function () { const conf = new Conf({ projectName: "truffle" }); - if (conf.get("version") === 1)) return false; + if (conf.get("version") === 1) return false; const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); if (fse.existsSync(oldConfig) && oldConfig !== conf.path) { // we are on Windows or a Mac From 75d33dba3e49da1f6c44ea436c201c88b179870a Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 17:12:00 -0400 Subject: [PATCH 054/124] Use constant for current version --- packages/core/lib/config-migration.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index 5f5a7810c14..fcd1f586d82 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -8,20 +8,22 @@ const TruffleConfig = require("@truffle/config"); const debugModule = require("debug"); const debug = debugModule("core:config-migration"); +const CURRENT_CONFIG_VERSION = 1; + module.exports = { oldTruffleDataDirectory: path.join(OS.homedir(), ".config", "truffle"), needsMigrated: function () { const conf = new Conf({ projectName: "truffle" }); - if (conf.get("version") === 1) return false; + if (conf.get("version") === CURRENT_CONFIG_VERSION) return false; const oldConfig = path.join(this.oldTruffleDataDirectory, "config.json"); if (fse.existsSync(oldConfig) && oldConfig !== conf.path) { // we are on Windows or a Mac return true; } else { // we are on Linux or previous config doesn't exist and we don't need to - // perform a migration - version set to 1 designates success - conf.set("version", 1); + // perform a migration - current version set to designates success + conf.set("version", CURRENT_CONFIG_VERSION); return false; } }, @@ -34,8 +36,8 @@ module.exports = { for (const folder of folders) { await this.migrateFolder(folder); } - // set version to 1 only after migration is complete to designate success - conf.set("version", 1); + // set version to current only after migration is complete to designate success + conf.set("version", CURRENT_CONFIG_VERSION); }, migrateGlobalConfig: function () { From a96b14d089f88a77a2759bd1a0d4e000fdacada8 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 13 Sep 2021 17:37:05 -0400 Subject: [PATCH 055/124] Add some more debug statements and change import --- packages/core/lib/command.js | 4 ++-- packages/core/lib/config-migration.js | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/core/lib/command.js b/packages/core/lib/command.js index 0118818ad67..f871fc9e8a3 100644 --- a/packages/core/lib/command.js +++ b/packages/core/lib/command.js @@ -81,8 +81,8 @@ class Command { try { // migrate Truffle data to the new location if necessary - const { migrateTruffleDataIfNecessary } = require("./config-migration"); - await migrateTruffleDataIfNecessary(); + const configMigration = require("./config-migration"); + await configMigration.migrateTruffleDataIfNecessary(); } catch (error) { debug("Truffle data migration failed: %o", error); }; diff --git a/packages/core/lib/config-migration.js b/packages/core/lib/config-migration.js index fcd1f586d82..53037a5e3fb 100644 --- a/packages/core/lib/config-migration.js +++ b/packages/core/lib/config-migration.js @@ -32,9 +32,11 @@ module.exports = { if (!this.needsMigrated()) return; debug("Truffle files need to be migrated"); const conf = this.migrateGlobalConfig(); + debug("successfully migrated global config"); const folders = ["compilers", ".db"]; for (const folder of folders) { await this.migrateFolder(folder); + debug("successfully migrated folder: %o", folder); } // set version to current only after migration is complete to designate success conf.set("version", CURRENT_CONFIG_VERSION); From f9ac87d817901dfba1afabc67cdb3b0c68f54fdd Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 13 Sep 2021 18:39:57 -0400 Subject: [PATCH 056/124] Check for panic_error_0x51 in isDesignatedInvalid --- packages/source-map-utils/index.js | 70 ++++++++++++++++++++++++++---- 1 file changed, 61 insertions(+), 9 deletions(-) diff --git a/packages/source-map-utils/index.js b/packages/source-map-utils/index.js index 0ccb221428e..43558846b5c 100644 --- a/packages/source-map-utils/index.js +++ b/packages/source-map-utils/index.js @@ -202,13 +202,17 @@ var SourceMapUtils = { .filter(instruction => instruction.name === "JUMPDEST") .map(instruction => { debug("instruction %O", instruction); - let sourceIndex = instruction.file; + const sourceIndex = instruction.file; //first off, a special case: if the file is -1, check for designated //invalid and if it's not that give up //(designated invalid gets file -1 in some Solidity versions) if (sourceIndex === -1) { if ( - SourceMapUtils.isDesignatedInvalid(instructions, instruction.index) + SourceMapUtils.isDesignatedInvalid( + instructions, + instruction.index, + overlapFunctions + ) ) { //designated invalid, include it return { @@ -222,13 +226,13 @@ var SourceMapUtils = { } } //now we proceed with the normal case - let findOverlappingRange = overlapFunctions[sourceIndex]; - let ast = asts[sourceIndex]; + const findOverlappingRange = overlapFunctions[sourceIndex]; + const ast = asts[sourceIndex]; if (!ast) { //if we can't get the ast... filter it out I guess return {}; } - let range = SourceMapUtils.getSourceRange(instruction); + const range = SourceMapUtils.getSourceRange(instruction); let { node, pointer } = SourceMapUtils.findRange( findOverlappingRange, range.start, @@ -241,7 +245,12 @@ var SourceMapUtils = { //filter out JUMPDESTs that aren't function definitions... //except for the designated invalid function if ( - SourceMapUtils.isDesignatedInvalid(instructions, instruction.index) + SourceMapUtils.isDesignatedInvalid( + instructions, + instruction.index, + overlapFunctions, + node + ) ) { //designated invalid, include it return { @@ -380,7 +389,12 @@ var SourceMapUtils = { //and asks: is this index the start of this instruction array the //start of a Solidity designated invalid function? //i.e. what an uninitialized internal function pointer jumps to? - isDesignatedInvalid: function (instructions, index) { + isDesignatedInvalid: function ( + instructions, + index, + overlapFunctions, + node = undefined + ) { const oldSequence = [{ name: "JUMPDEST" }, { name: "INVALID" }]; const panicSelector = Web3Utils.soliditySha3({ type: "string", @@ -435,10 +449,14 @@ var SourceMapUtils = { index++; if (index > startingIndex + 3) { //check: are there more than 2 PUSHes? - return false; + return null; } } if (instructions[index].name === "JUMP") { + if (index === startingIndex + 1) { + //check: was there at least one push? + return null; + } index--; return parseInt(instructions[index].pushData); } else { @@ -454,13 +472,47 @@ var SourceMapUtils = { return true; } + //if it's panic_error_0x51, return true + if ( + node && + node.nodeType === "YulFunctionDefinition" && + node.name === "panic_error_0x51" + ) { + return true; + } + //otherwise, check if it's indirect for the new template + //(or for panic_error_0x51) const jumpAddress = getIndirectAddress(instructions, index); if (jumpAddress !== null) { const jumpIndex = instructions.findIndex( instruction => instruction.pc === jumpAddress ); - return checkAgainstTemplate(instructions, jumpIndex, newSequence); + if (checkAgainstTemplate(instructions, jumpIndex, newSequence)) { + return true; + } + debug("indirect: %O", instructions.slice(index, index + 4)); + debug("jumpAddress: %d", jumpAddress); + debug("jumpIndex: %d", jumpIndex); + debug("instr count: %d", instructions.length); + const jumpInstruction = instructions[jumpIndex]; + const jumpFile = jumpInstruction.file; + if (jumpFile !== -1) { + const findOverlappingRange = overlapFunctions[jumpFile]; + const range = SourceMapUtils.getSourceRange(jumpInstruction); + const { node: jumpNode } = SourceMapUtils.findRange( + findOverlappingRange, + range.start, + range.length + ); + if ( + jumpNode && + jumpNode.nodeType === "YulFunctionDefinition" && + jumpNode.name === "panic_error_0x51" + ) { + return true; + } + } } //otherwise, return false From 2e6ec2e16675db2dd15e5b79754dfb4bba544bb0 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 14 Sep 2021 16:57:25 -0400 Subject: [PATCH 057/124] Add support for compilation notices --- packages/compile-solidity/run.js | 22 +++++++++++++------ packages/events/defaultSubscribers/compile.js | 7 ++++++ 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/packages/compile-solidity/run.js b/packages/compile-solidity/run.js index b841e9e4518..b2a0be6f07b 100644 --- a/packages/compile-solidity/run.js +++ b/packages/compile-solidity/run.js @@ -45,11 +45,14 @@ async function run(rawSources, options, language = "Solidity") { // handle warnings as errors if options.strict // log if not options.quiet - const { warnings, errors } = detectErrors({ + const { infos, warnings, errors } = detectErrors({ compilerOutput, options, solcVersion }); + if (infos.length > 0) { + options.events.emit("compile:infos", { infos }); + } if (warnings.length > 0) { options.events.emit("compile:warnings", { warnings }); } @@ -238,7 +241,7 @@ async function invokeCompiler({ compilerInput, options }) { /** * Extract errors/warnings from compiler output based on strict mode setting - * @return { errors: string, warnings: string } + * @return { errors: string, warnings: string, infos: string } */ function detectErrors({ compilerOutput: { errors: outputErrors }, @@ -246,17 +249,21 @@ function detectErrors({ solcVersion }) { outputErrors = outputErrors || []; - const rawErrors = options.strict - ? outputErrors - : outputErrors.filter(({ severity }) => severity !== "warning"); + const rawErrors = outputErrors.filter( + ({ severity }) => options.strict + ? severity !== "info" //strict mode: warnings are errors too + : severity === "error" //nonstrict mode: only errors are errors + ); const rawWarnings = options.strict - ? [] // none of those in strict mode + ? [] // in strict mode these get classified as errors, not warnings : outputErrors.filter(({ severity, message }) => severity === "warning" && message !== "Yul is still experimental. Please use the output with care." //filter out Yul warning ); + const rawInfos = outputErrors.filter(({ severity }) => severity === "info"); + // extract messages let errors = rawErrors.map( ({ formattedMessage }) => formattedMessage.replace( @@ -265,6 +272,7 @@ function detectErrors({ ) ).join(); const warnings = rawWarnings.map(({ formattedMessage }) => formattedMessage); + const infos = rawInfos.map(({ formattedMessage }) => formattedMessage); if (errors.includes("requires different compiler version")) { const contractSolcVer = errors.match(/pragma solidity[^;]*/gm)[0]; @@ -287,7 +295,7 @@ function detectErrors({ ); } - return { warnings, errors }; + return { warnings, errors, infos }; } /** diff --git a/packages/events/defaultSubscribers/compile.js b/packages/events/defaultSubscribers/compile.js index 612bb748306..27ec3a88463 100644 --- a/packages/events/defaultSubscribers/compile.js +++ b/packages/events/defaultSubscribers/compile.js @@ -55,6 +55,13 @@ module.exports = { this.logger.log(`${OS.EOL} ${warnings.join()}`); } ], + "compile:infos": [ + function ({ infos }) { + if (this.quiet) return; + this.logger.log("> Compilation notices encountered:"); + this.logger.log(`${OS.EOL} ${infos.join()}`); + } + ], "compile:nothingToCompile": [ function () { if (this.quiet) return; From 914ad1f221d14d35533b176d8e06c7577a0b5e19 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 14 Sep 2021 21:48:56 -0400 Subject: [PATCH 058/124] Increase timeout on truffle install test --- packages/truffle/test/scenarios/commands/install.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/truffle/test/scenarios/commands/install.js b/packages/truffle/test/scenarios/commands/install.js index f6c60dbe45c..bcf8d06c61f 100644 --- a/packages/truffle/test/scenarios/commands/install.js +++ b/packages/truffle/test/scenarios/commands/install.js @@ -19,5 +19,5 @@ describe("truffle install [ @standalone ]", () => { path.join(config.working_directory, "installed_contracts") ); assert(theInstallDirExists); - }).timeout(30000); + }).timeout(45000); }); From a26413b4d40b5a35853853910a9c704c64a97f78 Mon Sep 17 00:00:00 2001 From: fainashalts Date: Mon, 30 Aug 2021 22:44:39 -0700 Subject: [PATCH 059/124] Remove hardcoded default values --- packages/config/src/configDefaults.ts | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/packages/config/src/configDefaults.ts b/packages/config/src/configDefaults.ts index d420ac6e2a5..a1696c850fb 100644 --- a/packages/config/src/configDefaults.ts +++ b/packages/config/src/configDefaults.ts @@ -78,11 +78,6 @@ export const configProps = ({ const resolveDirectory = (value: string): string => path.resolve(configObject.working_directory, value); - const defaultTXValues = { - gas: 6721975, - from: null - }; - return { // These are already set. truffle_directory() {}, @@ -158,7 +153,7 @@ export const configProps = ({ config = {}; } - config = assignIn({}, defaultTXValues, config); + config = assignIn({}, config); return config; }, @@ -173,7 +168,7 @@ export const configProps = ({ try { return configObject.network_config.from; } catch (e) { - return defaultTXValues.from; + return null; } }, set() { @@ -187,7 +182,7 @@ export const configProps = ({ try { return configObject.network_config.gas; } catch (e) { - return defaultTXValues.gas; + return null; } }, set() { From a3b25e43fd34202e2687dcdb0b1c2f31e646ff70 Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 9 Sep 2021 21:02:14 -0700 Subject: [PATCH 060/124] Add check for failed web3 gasEstimation, use 1/2 blockLimit in that scenario --- packages/contract/lib/execute.js | 29 ++++++++++++++----- .../interface-adapter/lib/adapter/types.ts | 2 +- .../lib/adapter/web3/index.ts | 9 ++++-- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/packages/contract/lib/execute.js b/packages/contract/lib/execute.js index 9b7a94c055c..2335048400e 100644 --- a/packages/contract/lib/execute.js +++ b/packages/contract/lib/execute.js @@ -13,6 +13,7 @@ const execute = { // ----------------------------------- Helpers -------------------------------------------------- /** * Retrieves gas estimate multiplied by the set gas multiplier for a `sendTransaction` call. + * Lacking an estimate, sets gas to have of latest blockLimit * @param {Object} params `sendTransaction` parameters * @param {Number} blockLimit most recent network block.blockLimit * @return {Number} gas estimate @@ -22,20 +23,34 @@ const execute = { const interfaceAdapter = this.interfaceAdapter; return new Promise(function (accept) { - // Always prefer specified gas - this includes gas set by class_defaults + // Always prefer gas specified by user (if a user sets gas to 0, that is treated + // as undefined here and we do proceed to do gas estimation) if (params.gas) return accept(params.gas); if (!constructor.autoGas) return accept(); interfaceAdapter .estimateGas(params) .then(gas => { - const bestEstimate = utils.multiplyBigNumberByDecimal( - utils.bigNumberify(gas), - constructor.gasMultiplier - ); - - // Don't go over blockLimit + // there are situations where the web3 gas estimation function in interfaceAdapter + // fails, specifically when a transaction will revert; we still want to continue + // the user flow for debugging purposes; so we provide a default gas for + // that situation, equal to half of the blockLimit for the latest block const limit = utils.bigNumberify(blockLimit); + let bestEstimate; + if(gas === null) { + const defaultGas = utils.bigNumberify(Math.floor(blockLimit/2)); + bestEstimate = defaultGas; + } else { + // if we did get a numerical gas estimate from interfaceAdapter, we + // multiply that estimate by the gasMultiplier to help ensure we + // have enough gas for the transaction + bestEstimate = utils.multiplyBigNumberByDecimal( + utils.bigNumberify(gas), + constructor.gasMultiplier + ); + } + + // Check that we don't go over blockLimit bestEstimate.gte(limit) ? accept(limit.sub(1).toHexString()) : accept(bestEstimate.toHexString()); diff --git a/packages/interface-adapter/lib/adapter/types.ts b/packages/interface-adapter/lib/adapter/types.ts index 8cdb0754e5e..b898a2f7905 100644 --- a/packages/interface-adapter/lib/adapter/types.ts +++ b/packages/interface-adapter/lib/adapter/types.ts @@ -40,7 +40,7 @@ export interface InterfaceAdapter { getBalance(address: string): Promise; getCode(address: string): Promise; getAccounts(): Promise; - estimateGas(transactionConfig: Transaction): Promise; + estimateGas(transactionConfig: Transaction): Promise | null; getTransactionCostReport(receipt: TransactionReceipt): Promise; displayCost(value: BN): string; } diff --git a/packages/interface-adapter/lib/adapter/web3/index.ts b/packages/interface-adapter/lib/adapter/web3/index.ts index 17eb84edcb9..7a66e5682d8 100644 --- a/packages/interface-adapter/lib/adapter/web3/index.ts +++ b/packages/interface-adapter/lib/adapter/web3/index.ts @@ -49,8 +49,13 @@ export class Web3InterfaceAdapter implements InterfaceAdapter { return this.web3.eth.getAccounts(); } - public estimateGas(transactionConfig: Transaction) { - return this.web3.eth.estimateGas(transactionConfig); + public async estimateGas(transactionConfig: Transaction) { + try { + const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); + return gasEstimate; + } catch { + return null; + } } public getBlockNumber() { From c6cc4cff34e172bb3d1d0f47b5f620b2d592e61f Mon Sep 17 00:00:00 2001 From: fainashalts Date: Mon, 13 Sep 2021 21:17:02 -0700 Subject: [PATCH 061/124] Remove try/catch, just await the estimate --- packages/interface-adapter/lib/adapter/web3/index.ts | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/interface-adapter/lib/adapter/web3/index.ts b/packages/interface-adapter/lib/adapter/web3/index.ts index 7a66e5682d8..216e5343c9b 100644 --- a/packages/interface-adapter/lib/adapter/web3/index.ts +++ b/packages/interface-adapter/lib/adapter/web3/index.ts @@ -50,12 +50,9 @@ export class Web3InterfaceAdapter implements InterfaceAdapter { } public async estimateGas(transactionConfig: Transaction) { - try { - const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); - return gasEstimate; - } catch { - return null; - } + const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); + + return gasEstimate; } public getBlockNumber() { From 2ed336c6d6daeab566137db746360146acc8889b Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 16 Sep 2021 10:55:12 -0700 Subject: [PATCH 062/124] Check if user debugging & only catch gas estimation error in that case --- packages/contract/lib/execute.js | 38 ++++++++++--------- .../interface-adapter/lib/adapter/types.ts | 2 +- .../lib/adapter/web3/index.ts | 18 +++++++-- 3 files changed, 35 insertions(+), 23 deletions(-) diff --git a/packages/contract/lib/execute.js b/packages/contract/lib/execute.js index 2335048400e..43001292df9 100644 --- a/packages/contract/lib/execute.js +++ b/packages/contract/lib/execute.js @@ -18,7 +18,7 @@ const execute = { * @param {Number} blockLimit most recent network block.blockLimit * @return {Number} gas estimate */ - getGasEstimate: function (params, blockLimit) { + getGasEstimate: function (params, blockLimit, stacktrace = false) { const constructor = this; const interfaceAdapter = this.interfaceAdapter; @@ -29,34 +29,32 @@ const execute = { if (!constructor.autoGas) return accept(); interfaceAdapter - .estimateGas(params) + .estimateGas(params, stacktrace) .then(gas => { // there are situations where the web3 gas estimation function in interfaceAdapter // fails, specifically when a transaction will revert; we still want to continue - // the user flow for debugging purposes; so we provide a default gas for - // that situation, equal to half of the blockLimit for the latest block - const limit = utils.bigNumberify(blockLimit); - let bestEstimate; + // the user flow for debugging purposes if the user has enabled stacktraces; so we provide a + // default gas for that situation, equal to half of the blockLimit for the latest block + // + // note: this means if a transaction will revert but the user does not have stacktracing enabled, + // they will get an error from the gas estimation and be unable to proceed; we may need to revisit this if(gas === null) { const defaultGas = utils.bigNumberify(Math.floor(blockLimit/2)); - bestEstimate = defaultGas; + accept(defaultGas.toHexString()); } else { + const limit = utils.bigNumberify(blockLimit); // if we did get a numerical gas estimate from interfaceAdapter, we // multiply that estimate by the gasMultiplier to help ensure we // have enough gas for the transaction - bestEstimate = utils.multiplyBigNumberByDecimal( + const bestEstimate = utils.multiplyBigNumberByDecimal( utils.bigNumberify(gas), constructor.gasMultiplier ); + // Check that we don't go over blockLimit + bestEstimate.gte(limit) + ? accept(limit.sub(1).toHexString()) + : accept(bestEstimate.toHexString()); } - - // Check that we don't go over blockLimit - bestEstimate.gte(limit) - ? accept(limit.sub(1).toHexString()) - : accept(bestEstimate.toHexString()); - - // We need to let txs that revert through. - // Often that's exactly what you are testing. }) .catch(() => accept()); }); @@ -204,11 +202,13 @@ const execute = { contract: constructor }); + const stacktrace = promiEvent.debug ? promiEvent.debug : false; try { params.gas = await execute.getGasEstimate.call( constructor, params, - network.blockLimit + network.blockLimit, + stacktrace ); } catch (error) { promiEvent.reject(error); @@ -267,11 +267,13 @@ const execute = { const contract = new web3.eth.Contract(constructor.abi); params.data = contract.deploy(options).encodeABI(); + const stacktrace = promiEvent.debug ? promiEvent.debug : false; params.gas = await execute.getGasEstimate.call( constructor, params, - blockLimit + blockLimit, + stacktrace ); context.params = params; diff --git a/packages/interface-adapter/lib/adapter/types.ts b/packages/interface-adapter/lib/adapter/types.ts index b898a2f7905..c16ed9be2f5 100644 --- a/packages/interface-adapter/lib/adapter/types.ts +++ b/packages/interface-adapter/lib/adapter/types.ts @@ -40,7 +40,7 @@ export interface InterfaceAdapter { getBalance(address: string): Promise; getCode(address: string): Promise; getAccounts(): Promise; - estimateGas(transactionConfig: Transaction): Promise | null; + estimateGas(transactionConfig: Transaction, stacktrace: boolean): Promise | null; getTransactionCostReport(receipt: TransactionReceipt): Promise; displayCost(value: BN): string; } diff --git a/packages/interface-adapter/lib/adapter/web3/index.ts b/packages/interface-adapter/lib/adapter/web3/index.ts index 216e5343c9b..531ccb3b658 100644 --- a/packages/interface-adapter/lib/adapter/web3/index.ts +++ b/packages/interface-adapter/lib/adapter/web3/index.ts @@ -49,10 +49,20 @@ export class Web3InterfaceAdapter implements InterfaceAdapter { return this.web3.eth.getAccounts(); } - public async estimateGas(transactionConfig: Transaction) { - const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); - - return gasEstimate; + public async estimateGas(transactionConfig: Transaction, stacktrace = false) { + // web3 does not error gracefully when gas estimation fails due to a revert, + // so in cases where we want to get past this (debugging/stacktracing), we must + // catch the error and return null instead + if(stacktrace === true) { + try { + const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); + return gasEstimate; + } catch { + return null; + } + } else { + return this.web3.eth.estimateGas(transactionConfig); + } } public getBlockNumber() { From 37bbf0d95f7faddb7175886a9fa1b365033152ca Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 16 Sep 2021 11:42:03 -0700 Subject: [PATCH 063/124] Add missing space --- packages/contract/lib/execute.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/contract/lib/execute.js b/packages/contract/lib/execute.js index 43001292df9..9473918375b 100644 --- a/packages/contract/lib/execute.js +++ b/packages/contract/lib/execute.js @@ -38,7 +38,7 @@ const execute = { // // note: this means if a transaction will revert but the user does not have stacktracing enabled, // they will get an error from the gas estimation and be unable to proceed; we may need to revisit this - if(gas === null) { + if (gas === null) { const defaultGas = utils.bigNumberify(Math.floor(blockLimit/2)); accept(defaultGas.toHexString()); } else { From f36aa7e0002f6ad075d389d55ca7b9ee649060ce Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 16 Sep 2021 16:54:45 -0400 Subject: [PATCH 064/124] Speed up yarncheck and remove jury-rigging --- .github/workflows/nodejs.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 1dca82151c9..05a50a3ca0e 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -19,8 +19,7 @@ jobs: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 - run: npm install -g yarn - - run: yarn bootstrap - - run: test -z "$(git diff)" || (echo 'Please run yarn and commit all changes to yarn.lock'; false) + - run: yarn install --ignore-scripts --frozen-lockfile build: From c076e2b1721ff0c2130b199c4fad3ee0ce42b922 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 16 Sep 2021 17:03:59 -0400 Subject: [PATCH 065/124] Specify Node 12 in yarncheck job --- .github/workflows/nodejs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 05a50a3ca0e..9a128145847 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -18,6 +18,8 @@ jobs: steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 + with: + node-version: 12.x - run: npm install -g yarn - run: yarn install --ignore-scripts --frozen-lockfile From 77b86785b7c1b06731e6bf49ae58380f3dd5484b Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 16 Sep 2021 17:14:50 -0400 Subject: [PATCH 066/124] Replace specified node version with --ignore-engines flag --- .github/workflows/nodejs.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 9a128145847..5cf69ddc475 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -18,10 +18,8 @@ jobs: steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 - with: - node-version: 12.x - run: npm install -g yarn - - run: yarn install --ignore-scripts --frozen-lockfile + - run: yarn install --ignore-scripts --frozen-lockfile --ignore-engines build: From 2ef1f00c4bc9ff3d66b21f14f65c9175b8ee21a6 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 16 Sep 2021 23:36:44 -0400 Subject: [PATCH 067/124] Fix ethers-compatible nativization of empty bytestring --- packages/codec/lib/export.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/codec/lib/export.ts b/packages/codec/lib/export.ts index fe41c79c443..f79f830da19 100644 --- a/packages/codec/lib/export.ts +++ b/packages/codec/lib/export.ts @@ -119,7 +119,8 @@ function ethersCompatibleNativize( case "bool": return (result).value.asBoolean; case "bytes": - return (result).value.asHex; + const asHex = (result).value.asHex; + return asHex !== "0x" ? asHex : null; case "address": return (result).value.asAddress; case "contract": From 52ec7ad68e46993049ecf3f6d084d42275898d44 Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 16 Sep 2021 21:45:20 -0700 Subject: [PATCH 068/124] Remove fake blockLimit, which was using now defunct default gas --- packages/core/test/migrate.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/test/migrate.js b/packages/core/test/migrate.js index 0dffcf70691..72e58b19191 100644 --- a/packages/core/test/migrate.js +++ b/packages/core/test/migrate.js @@ -22,7 +22,7 @@ describe("migrate", function () { }); function createProviderAndSetNetworkConfig(network) { - var provider = Ganache.provider({ seed: network, gasLimit: config.gas }); + var provider = Ganache.provider({ seed: network }); var web3 = new Web3(provider); return web3.eth.getAccounts().then(accs => { return web3.eth.net.getId().then(network_id => { From 99093ff18cca2ec8a135a7c164e76ce00be979af Mon Sep 17 00:00:00 2001 From: fainashalts Date: Thu, 16 Sep 2021 21:47:34 -0700 Subject: [PATCH 069/124] Add missing space --- packages/interface-adapter/lib/adapter/web3/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/interface-adapter/lib/adapter/web3/index.ts b/packages/interface-adapter/lib/adapter/web3/index.ts index 531ccb3b658..6ce0fa34934 100644 --- a/packages/interface-adapter/lib/adapter/web3/index.ts +++ b/packages/interface-adapter/lib/adapter/web3/index.ts @@ -53,7 +53,7 @@ export class Web3InterfaceAdapter implements InterfaceAdapter { // web3 does not error gracefully when gas estimation fails due to a revert, // so in cases where we want to get past this (debugging/stacktracing), we must // catch the error and return null instead - if(stacktrace === true) { + if (stacktrace === true) { try { const gasEstimate = await this.web3.eth.estimateGas(transactionConfig); return gasEstimate; From 5df4cb662b05c1f440e862346eb071ca5573bd9a Mon Sep 17 00:00:00 2001 From: fainashalts Date: Fri, 17 Sep 2021 08:17:05 -0700 Subject: [PATCH 070/124] Remove unneeded object merging --- packages/config/src/configDefaults.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/config/src/configDefaults.ts b/packages/config/src/configDefaults.ts index a1696c850fb..0b43c8a179c 100644 --- a/packages/config/src/configDefaults.ts +++ b/packages/config/src/configDefaults.ts @@ -1,4 +1,3 @@ -import assignIn from "lodash.assignin"; import * as path from "path"; import Provider from "@truffle/provider"; import TruffleConfig from "./"; @@ -153,8 +152,6 @@ export const configProps = ({ config = {}; } - config = assignIn({}, config); - return config; }, set() { From 6fdc616cf4ce4265ea288d640047ee463a9568ec Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 17 Sep 2021 12:26:38 -0400 Subject: [PATCH 071/124] Publish - @truffle/artifactor@4.0.123 - @truffle/box@2.1.27 - @truffle/codec@0.11.14 - @truffle/compile-common@0.7.20 - @truffle/compile-solidity@5.3.22 - @truffle/compile-vyper@3.1.26 - @truffle/config@1.3.7 - @truffle/contract-tests@0.1.54 - @truffle/contract@4.3.35 - @truffle/core@5.4.11 - @truffle/db-kit@0.1.32 - @truffle/db-loader@0.0.10 - @truffle/db@0.5.31 - @truffle/debug-utils@5.1.15 - @truffle/debugger@9.1.16 - @truffle/decoder@5.0.7 - @truffle/deployer@3.2.44 - @truffle/environment@0.2.72 - @truffle/events@0.0.15 - @truffle/external-compile@2.0.24 - @truffle/fetch-and-compile@0.1.7 - @truffle/interface-adapter@0.5.6 - @truffle/migrate@3.2.44 - @truffle/provider@0.2.40 - @truffle/provisioner@0.2.30 - @truffle/require@2.0.75 - @truffle/resolver@7.0.29 - @truffle/source-map-utils@1.3.58 - truffle@5.4.11 - @truffle/workflow-compile@3.2.30 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/codec/package.json | 4 +-- packages/compile-common/package.json | 4 +-- packages/compile-solidity/package.json | 12 ++++---- packages/compile-vyper/package.json | 8 ++--- packages/config/package.json | 6 ++-- packages/contract-tests/package.json | 6 ++-- packages/contract/package.json | 6 ++-- packages/core/package.json | 40 ++++++++++++------------- packages/db-kit/package.json | 18 +++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 8 ++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++----- packages/decoder/package.json | 16 +++++----- packages/deployer/package.json | 6 ++-- packages/environment/package.json | 8 ++--- packages/events/package.json | 2 +- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 10 +++---- packages/interface-adapter/package.json | 2 +- packages/migrate/package.json | 12 ++++---- packages/provider/package.json | 4 +-- packages/provisioner/package.json | 4 +-- packages/require/package.json | 6 ++-- packages/resolver/package.json | 6 ++-- packages/source-map-utils/package.json | 4 +-- packages/truffle/package.json | 18 +++++------ packages/workflow-compile/package.json | 18 +++++------ 30 files changed, 132 insertions(+), 132 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 41d45ecd364..d9b7e6f3f9c 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.122", + "version": "4.0.123", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.34", + "@truffle/contract": "^4.3.35", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index 95cf5ec75d2..a088c7eff1c 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -8,7 +8,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/box" }, - "version": "2.1.26", + "version": "2.1.27", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -17,7 +17,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.7", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/codec/package.json b/packages/codec/package.json index 0ffe94308b3..03147b04fa6 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.13", + "version": "0.11.14", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.19", + "@truffle/compile-common": "^0.7.20", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 077ac1887ed..849c27037c9 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.19", + "version": "0.7.20", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -17,7 +17,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.7", "@truffle/contract-schema": "^3.4.3", "@types/fs-extra": "^8.1.0", "@types/mocha": "^5.2.7", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index a0e36f42022..01ab36265e4 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,15 +12,15 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.21", + "version": "5.3.22", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.19", - "@truffle/config": "^1.3.6", + "@truffle/compile-common": "^0.7.20", + "@truffle/config": "^1.3.7", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "axios": "^0.21.1", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.122", - "@truffle/box": "^2.1.26", - "@truffle/resolver": "^7.0.28", + "@truffle/artifactor": "^4.0.123", + "@truffle/box": "^2.1.27", + "@truffle/resolver": "^7.0.29", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 9ec6c128bac..074e102adc9 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,16 +8,16 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.25", + "version": "3.1.26", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.19", - "@truffle/config": "^1.3.6", - "@truffle/resolver": "^7.0.28", + "@truffle/compile-common": "^0.7.20", + "@truffle/config": "^1.3.7", + "@truffle/resolver": "^7.0.29", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/config/package.json b/packages/config/package.json index 2833db12e9b..8c9042981c0 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.6", + "version": "1.3.7", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -22,8 +22,8 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/events": "^0.0.14", - "@truffle/provider": "^0.2.39", + "@truffle/events": "^0.0.15", + "@truffle/provider": "^0.2.40", "conf": "^10.0.2", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 35bcabe1f4c..5a60685600d 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.53", + "version": "0.1.54", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.21", - "@truffle/contract": "^4.3.34", + "@truffle/compile-solidity": "^5.3.22", + "@truffle/contract": "^4.3.35", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index 728675073b8..ee10c944098 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.34", + "version": "4.3.35", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,9 +24,9 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.14", + "@truffle/debug-utils": "^5.1.15", "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.5", + "@truffle/interface-adapter": "^0.5.6", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", "web3": "1.5.2", diff --git a/packages/core/package.json b/packages/core/package.json index 140c7187b5a..2ba7cc3df11 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.10", + "version": "5.4.11", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,34 +21,34 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.122", - "@truffle/box": "^2.1.26", - "@truffle/codec": "^0.11.13", - "@truffle/compile-solidity": "^5.3.21", - "@truffle/config": "^1.3.6", - "@truffle/contract": "^4.3.34", - "@truffle/debug-utils": "^5.1.14", - "@truffle/debugger": "^9.1.15", - "@truffle/decoder": "^5.0.6", - "@truffle/deployer": "^3.2.43", - "@truffle/environment": "^0.2.71", + "@truffle/artifactor": "^4.0.123", + "@truffle/box": "^2.1.27", + "@truffle/codec": "^0.11.14", + "@truffle/compile-solidity": "^5.3.22", + "@truffle/config": "^1.3.7", + "@truffle/contract": "^4.3.35", + "@truffle/debug-utils": "^5.1.15", + "@truffle/debugger": "^9.1.16", + "@truffle/decoder": "^5.0.7", + "@truffle/deployer": "^3.2.44", + "@truffle/environment": "^0.2.72", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.6", - "@truffle/interface-adapter": "^0.5.5", - "@truffle/migrate": "^3.2.43", + "@truffle/fetch-and-compile": "^0.1.7", + "@truffle/interface-adapter": "^0.5.6", + "@truffle/migrate": "^3.2.44", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", - "@truffle/provider": "^0.2.39", - "@truffle/provisioner": "^0.2.29", - "@truffle/require": "^2.0.74", - "@truffle/resolver": "^7.0.28", + "@truffle/provider": "^0.2.40", + "@truffle/provisioner": "^0.2.30", + "@truffle/require": "^2.0.75", + "@truffle/resolver": "^7.0.29", "@truffle/source-fetcher": "^0.5.7", - "@truffle/workflow-compile": "^3.2.29", + "@truffle/workflow-compile": "^3.2.30", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index be6230e8d26..5b6c29eac4e 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.31", + "version": "0.1.32", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.13", - "@truffle/compile-common": "^0.7.19", - "@truffle/compile-solidity": "^5.3.21", - "@truffle/config": "^1.3.6", - "@truffle/db": "^0.5.30", - "@truffle/decoder": "^5.0.6", - "@truffle/environment": "^0.2.71", - "@truffle/fetch-and-compile": "^0.1.6", + "@truffle/codec": "^0.11.14", + "@truffle/compile-common": "^0.7.20", + "@truffle/compile-solidity": "^5.3.22", + "@truffle/config": "^1.3.7", + "@truffle/db": "^0.5.31", + "@truffle/decoder": "^5.0.7", + "@truffle/environment": "^0.2.72", + "@truffle/fetch-and-compile": "^0.1.7", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 795b566f3d2..370a203c778 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.9", + "version": "0.0.10", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.30" + "@truffle/db": "^0.5.31" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 4c925391197..979c2ed7480 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.30", + "version": "0.5.31", "main": "dist/src/index.js", "files": [ "dist", @@ -38,8 +38,8 @@ "dependencies": { "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", - "@truffle/config": "^1.3.6", - "@truffle/resolver": "^7.0.28", + "@truffle/config": "^1.3.7", + "@truffle/resolver": "^7.0.29", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.19", + "@truffle/compile-common": "^0.7.20", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index 3841fb90d3e..b2bff631b22 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.14", + "version": "5.1.15", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.13", + "@truffle/codec": "^0.11.14", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 741edeecee2..8c5e917d381 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.15", + "version": "9.1.16", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.13", - "@truffle/source-map-utils": "^1.3.57", + "@truffle/codec": "^0.11.14", + "@truffle/source-map-utils": "^1.3.58", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.2" }, "devDependencies": { - "@truffle/artifactor": "^4.0.122", - "@truffle/box": "^2.1.26", - "@truffle/migrate": "^3.2.43", - "@truffle/resolver": "^7.0.28", - "@truffle/workflow-compile": "^3.2.29", + "@truffle/artifactor": "^4.0.123", + "@truffle/box": "^2.1.27", + "@truffle/migrate": "^3.2.44", + "@truffle/resolver": "^7.0.29", + "@truffle/workflow-compile": "^3.2.30", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 78e3ab83e76..baf22a6d4de 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.6", + "version": "5.0.7", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.13", - "@truffle/compile-common": "^0.7.19", - "@truffle/source-map-utils": "^1.3.57", + "@truffle/codec": "^0.11.14", + "@truffle/compile-common": "^0.7.20", + "@truffle/source-map-utils": "^1.3.58", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.2" }, "devDependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.7", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.43", - "@truffle/provider": "^0.2.39", - "@truffle/workflow-compile": "^3.2.29", + "@truffle/migrate": "^3.2.44", + "@truffle/provider": "^0.2.40", + "@truffle/workflow-compile": "^3.2.30", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index bf33707902e..12d8bc2a2ec 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.43", + "version": "3.2.44", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,7 +22,7 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.34", + "@truffle/contract": "^4.3.35", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", @@ -30,7 +30,7 @@ }, "devDependencies": { "@truffle/reporters": "^2.0.5", - "@truffle/workflow-compile": "^3.2.29", + "@truffle/workflow-compile": "^3.2.30", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 8f180c2dbef..ff579246a18 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.71", + "version": "0.2.72", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.122", + "@truffle/artifactor": "^4.0.123", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.5", - "@truffle/resolver": "^7.0.28", + "@truffle/interface-adapter": "^0.5.6", + "@truffle/resolver": "^7.0.29", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/events/package.json b/packages/events/package.json index 092592fa2d8..1c33988bb6b 100644 --- a/packages/events/package.json +++ b/packages/events/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/events", - "version": "0.0.14", + "version": "0.0.15", "description": "Event system for Truffle", "main": "index.js", "keywords": [], diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index a81fdadb4e6..68bb02b257b 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.23", + "version": "2.0.24", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.7", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index cd9dbfb6dca..83a47aa9e3e 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.6", + "version": "0.1.7", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.13", - "@truffle/compile-solidity": "^5.3.21", + "@truffle/codec": "^0.11.14", + "@truffle/compile-solidity": "^5.3.22", "@truffle/source-fetcher": "^0.5.7", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.19", - "@truffle/config": "^1.3.6", + "@truffle/compile-common": "^0.7.20", + "@truffle/config": "^1.3.7", "typescript": "^4.1.4" } } diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index 8216cdf86a0..f0614178f09 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.5", + "version": "0.5.6", "main": "dist/index.js", "directories": { "lib": "lib" diff --git a/packages/migrate/package.json b/packages/migrate/package.json index ccd1729d77b..a55ed9096b4 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.43", + "version": "3.2.44", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.6", - "@truffle/db-loader": "^0.0.9", - "@truffle/deployer": "^3.2.43", + "@truffle/config": "^1.3.7", + "@truffle/db-loader": "^0.0.10", + "@truffle/deployer": "^3.2.44", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.5", + "@truffle/interface-adapter": "^0.5.6", "@truffle/reporters": "^2.0.5", - "@truffle/require": "^2.0.74", + "@truffle/require": "^2.0.75", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/provider/package.json b/packages/provider/package.json index f5e3ce564cb..e8d229e954e 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.39", + "version": "0.2.40", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -21,7 +21,7 @@ "types": "./typings/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.5", + "@truffle/interface-adapter": "^0.5.6", "web3": "1.5.2" }, "devDependencies": { diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index abe55574ee7..05be4ca18c1 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.29", + "version": "0.2.30", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.6" + "@truffle/config": "^1.3.7" } } diff --git a/packages/require/package.json b/packages/require/package.json index 0714eb2562c..1607ff5d3cd 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,16 +12,16 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.74", + "version": "2.0.75", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.7", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.5", + "@truffle/interface-adapter": "^0.5.6", "original-require": "^1.0.1" }, "devDependencies": { diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 421f854eafd..ddd1530fa75 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.28", + "version": "7.0.29", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.34", + "@truffle/contract": "^4.3.35", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.29", + "@truffle/provisioner": "^0.2.30", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index b5e1b1e7cfd..91b716ca614 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.57", + "version": "1.3.58", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.13", + "@truffle/codec": "^0.11.14", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index c4a57293513..6c3549312b9 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.10", + "version": "5.4.11", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,25 +31,25 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.30", + "@truffle/db": "^0.5.31", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.9", - "@truffle/debugger": "^9.1.15", + "@truffle/db-loader": "^0.0.10", + "@truffle/debugger": "^9.1.16", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.26", - "@truffle/config": "^1.3.6", - "@truffle/contract": "^4.3.34", - "@truffle/core": "^5.4.10", - "@truffle/interface-adapter": "^0.5.5", + "@truffle/box": "^2.1.27", + "@truffle/config": "^1.3.7", + "@truffle/contract": "^4.3.35", + "@truffle/core": "^5.4.11", + "@truffle/interface-adapter": "^0.5.6", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", "eslint": "^5.7.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 8f438d9f511..7cf50a99a12 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.29", + "version": "3.2.30", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.122", - "@truffle/compile-common": "^0.7.19", - "@truffle/compile-solidity": "^5.3.21", - "@truffle/compile-vyper": "^3.1.25", - "@truffle/config": "^1.3.6", - "@truffle/db-loader": "^0.0.9", + "@truffle/artifactor": "^4.0.123", + "@truffle/compile-common": "^0.7.20", + "@truffle/compile-solidity": "^5.3.22", + "@truffle/compile-vyper": "^3.1.26", + "@truffle/config": "^1.3.7", + "@truffle/db-loader": "^0.0.10", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.23", - "@truffle/resolver": "^7.0.28", + "@truffle/external-compile": "^2.0.24", + "@truffle/resolver": "^7.0.29", "fs-extra": "^9.1.0" }, "devDependencies": { From 3ab67b0d29d8f629bc6bd56083d88709db1fb78e Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 17 Sep 2021 18:49:01 -0400 Subject: [PATCH 072/124] Add test of 0x nativizing to null --- packages/decoder/test/current/contracts/CompatibleTest.sol | 4 ++++ packages/decoder/test/current/test/compatible-nativize.js | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/decoder/test/current/contracts/CompatibleTest.sol b/packages/decoder/test/current/contracts/CompatibleTest.sol index 5ab6e1bec74..b3140fca01f 100644 --- a/packages/decoder/test/current/contracts/CompatibleTest.sol +++ b/packages/decoder/test/current/contracts/CompatibleTest.sol @@ -40,4 +40,8 @@ contract CompatibleNativizeTest { function returnFunction() public view returns (function() external) { return this.emitString; } + + function returnBytes() public pure returns (bytes memory) { + return hex""; + } } diff --git a/packages/decoder/test/current/test/compatible-nativize.js b/packages/decoder/test/current/test/compatible-nativize.js index b2a0ebe5330..a1e60ac5ad2 100644 --- a/packages/decoder/test/current/test/compatible-nativize.js +++ b/packages/decoder/test/current/test/compatible-nativize.js @@ -75,7 +75,8 @@ describe("nativize (ethers format)", function () { z: keyedArray, __length__: 1 }, - returnFunction: instance.address.toLowerCase() + emitStringSelector + returnFunction: instance.address.toLowerCase() + emitStringSelector, + returnBytes: null }; expected.returnStringPair.w = "hello"; expected.returnStringPair.z = "goodbye"; From d31c2d1b5bf31cbd744a359c144ba6ada351cf2e Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Fri, 17 Sep 2021 20:58:50 -0400 Subject: [PATCH 073/124] Change Gitter link in issue template to Zendesk link --- .github/ISSUE_TEMPLATE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 37790e5f6b1..de91a66c7f2 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,4 +1,4 @@ -- [ ] I've asked for help in the [Truffle Gitter](http://gitter.im/Consensys/truffle) before filing this issue. +- [ ] I've [opened a support ticket](https://trufflesuite.zendesk.com/hc/en-us/requests/new) before filing this issue. --------------------------- From 232c590c81fec9c22e768dbce85426c82c8eef81 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 22 Sep 2021 01:54:32 -0400 Subject: [PATCH 074/124] Update web3 to 1.5.3 --- packages/artifactor/package.json | 2 +- packages/codec/package.json | 2 +- packages/contract-tests/package.json | 4 +- packages/contract/package.json | 10 +- packages/core/package.json | 4 +- packages/db/package.json | 4 +- packages/debugger/package.json | 4 +- packages/decoder/package.json | 2 +- packages/deployer/package.json | 4 +- packages/environment/package.json | 2 +- packages/external-compile/package.json | 2 +- packages/interface-adapter/package.json | 2 +- packages/provider/package.json | 2 +- packages/reporters/package.json | 2 +- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 2 +- packages/truffle/package.json | 2 +- yarn.lock | 308 ++++++++++++------------ 18 files changed, 180 insertions(+), 180 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index d9b7e6f3f9c..1c49b73468e 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -38,7 +38,7 @@ "tmp": "^0.2.1", "ts-node": "^9.0.0", "typescript": "^4.1.4", - "web3": "1.5.2" + "web3": "1.5.3" }, "publishConfig": { "access": "public" diff --git a/packages/codec/package.json b/packages/codec/package.json index 03147b04fa6..0e4aecda56b 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -37,7 +37,7 @@ "lodash.sum": "^4.0.2", "semver": "^7.3.4", "utf8": "^3.0.0", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "devDependencies": { "@truffle/contract-schema": "^3.4.3", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 5a60685600d..1f562bd8659 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -30,7 +30,7 @@ "ganache-core": "2.13.0", "mocha": "8.0.1", "sinon": "^9.0.2", - "web3": "1.5.2", - "web3-core-promievent": "1.5.2" + "web3": "1.5.3", + "web3-core-promievent": "1.5.3" } } diff --git a/packages/contract/package.json b/packages/contract/package.json index ee10c944098..8cfb1caa329 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -29,11 +29,11 @@ "@truffle/interface-adapter": "^0.5.6", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", - "web3": "1.5.2", - "web3-core-helpers": "1.5.2", - "web3-core-promievent": "1.5.2", - "web3-eth-abi": "1.5.2", - "web3-utils": "1.5.2" + "web3": "1.5.3", + "web3-core-helpers": "1.5.3", + "web3-core-promievent": "1.5.3", + "web3-eth-abi": "1.5.3", + "web3-utils": "1.5.3" }, "devDependencies": { "browserify": "^17.0.0", diff --git a/packages/core/package.json b/packages/core/package.json index 2ba7cc3df11..e977c8e07d2 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -77,8 +77,8 @@ "spawn-args": "^0.1.0", "tmp": "^0.2.1", "universal-analytics": "^0.4.17", - "web3": "1.5.2", - "web3-utils": "1.5.2", + "web3": "1.5.3", + "web3-utils": "1.5.3", "xregexp": "^4.2.4", "yargs": "^8.0.2" }, diff --git a/packages/db/package.json b/packages/db/package.json index 979c2ed7480..e8b3ea50544 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -55,7 +55,7 @@ "pouchdb-adapter-node-websql": "^7.0.0", "pouchdb-debug": "^7.1.1", "pouchdb-find": "^7.0.0", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", @@ -87,7 +87,7 @@ "typedoc-neo-theme": "^1.1.0", "typescript": "^4.1.4", "typescript-transform-paths": "^2.1.0", - "web3": "1.5.2" + "web3": "1.5.3" }, "keywords": [ "database", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 8c5e917d381..740edd530bd 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -40,8 +40,8 @@ "remote-redux-devtools": "^0.5.12", "reselect-tree": "^1.3.4", "semver": "^7.3.4", - "web3": "1.5.2", - "web3-eth-abi": "1.5.2" + "web3": "1.5.3", + "web3-eth-abi": "1.5.3" }, "devDependencies": { "@truffle/artifactor": "^4.0.123", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index baf22a6d4de..6776cc4d37b 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -31,7 +31,7 @@ "@truffle/source-map-utils": "^1.3.58", "bn.js": "^5.1.3", "debug": "^4.3.1", - "web3": "1.5.2" + "web3": "1.5.3" }, "devDependencies": { "@truffle/config": "^1.3.7", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index 12d8bc2a2ec..0417a0f10c2 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -26,7 +26,7 @@ "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "devDependencies": { "@truffle/reporters": "^2.0.5", @@ -34,7 +34,7 @@ "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", - "web3": "1.5.2" + "web3": "1.5.3" }, "keywords": [ "contracts", diff --git a/packages/environment/package.json b/packages/environment/package.json index ff579246a18..29013d88e86 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -27,7 +27,7 @@ "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", - "web3": "1.5.2" + "web3": "1.5.3" }, "devDependencies": { "debug": "^4.3.1" diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index 68bb02b257b..48b9575deaa 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -24,7 +24,7 @@ "@truffle/expect": "^0.0.18", "debug": "^4.3.1", "glob": "^7.1.6", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "devDependencies": { "chai": "^4.2.0", diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index f0614178f09..cf93a853b5b 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -26,7 +26,7 @@ "dependencies": { "bn.js": "^5.1.3", "ethers": "^4.0.32", - "web3": "1.5.2" + "web3": "1.5.3" }, "devDependencies": { "@types/bn.js": "^4.11.4", diff --git a/packages/provider/package.json b/packages/provider/package.json index e8d229e954e..ea08c21167a 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -22,7 +22,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.6", - "web3": "1.5.2" + "web3": "1.5.3" }, "devDependencies": { "ganache-core": "2.13.0", diff --git a/packages/reporters/package.json b/packages/reporters/package.json index 46c59164df7..8a0a1e94640 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -19,7 +19,7 @@ }, "dependencies": { "ora": "^3.4.0", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "publishConfig": { "access": "public" diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 8e7c4c26a22..003f7f858e8 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -29,7 +29,7 @@ "async-retry": "^1.3.1", "axios": "^0.21.1", "debug": "^4.3.1", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "devDependencies": { "@types/async-retry": "^1.4.3", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index 91b716ca614..d69b6059182 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -23,7 +23,7 @@ "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", - "web3-utils": "1.5.2" + "web3-utils": "1.5.3" }, "keywords": [ "contracts", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 6c3549312b9..342995ac673 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -65,7 +65,7 @@ "shebang-loader": "0.0.1", "stream-buffers": "^3.0.1", "tmp": "^0.2.1", - "web3": "1.5.2", + "web3": "1.5.3", "webpack": "^5.21.2", "webpack-bundle-analyzer": "^3.0.3", "webpack-cli": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index e4bd5b46d46..44e4f221ef1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28612,10 +28612,10 @@ web3-bzz@1.3.0: swarm-js "^0.1.40" underscore "1.9.1" -web3-bzz@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.2.tgz#a04feaa19462cff6d5a8c87dad1aca4619d9dfc8" - integrity sha512-W/sPCdA+XQ9duUYKHAwf/g69cbbV8gTCRsa1MpZwU7spXECiyJ2EvD/QzAZ+UpJk3GELXFF/fUByeZ3VRQKF2g== +web3-bzz@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.3.tgz#e36456905ce051138f9c3ce3623cbc73da088c2b" + integrity sha512-SlIkAqG0eS6cBS9Q2eBOTI1XFzqh83RqGJWnyrNZMDxUwsTVHL+zNnaPShVPvrWQA1Ub5b0bx1Kc5+qJVxsTJg== dependencies: "@types/node" "^12.12.6" got "9.6.0" @@ -28648,13 +28648,13 @@ web3-core-helpers@1.3.0: web3-eth-iban "1.3.0" web3-utils "1.3.0" -web3-core-helpers@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.5.2.tgz#b6bd5071ca099ba3f92dfafb552eed2b70af2795" - integrity sha512-U7LJoeUdQ3aY9t5gU7t/1XpcApsWm+4AcW5qKl/44ZxD44w0Dmsq1c5zJm3GuLr/a9MwQfXK4lpmvxVQWHHQRg== +web3-core-helpers@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.5.3.tgz#099030235c477aadf39a94199ef40092151d563c" + integrity sha512-Ip1IjB3S8vN7Kf1PPjK41U5gskmMk6IJQlxIVuS8/1U7n/o0jC8krqtpRwiMfAgYyw3TXwBFtxSRTvJtnLyXZw== dependencies: - web3-eth-iban "1.5.2" - web3-utils "1.5.2" + web3-eth-iban "1.5.3" + web3-utils "1.5.3" web3-core-method@1.2.1: version "1.2.1" @@ -28691,17 +28691,17 @@ web3-core-method@1.3.0: web3-core-subscriptions "1.3.0" web3-utils "1.3.0" -web3-core-method@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.5.2.tgz#d1d602657be1000a29d11e3ca3bf7bc778dea9a5" - integrity sha512-/mC5t9UjjJoQmJJqO5nWK41YHo+tMzFaT7Tp7jDCQsBkinE68KsUJkt0jzygpheW84Zra0DVp6q19gf96+cugg== +web3-core-method@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.5.3.tgz#6cff97ed19fe4ea2e9183d6f703823a079f5132c" + integrity sha512-8wJrwQ2qD9ibWieF9oHXwrJsUGrv3XAtEkNeyvyNMpktNTIjxJ2jaFGQUuLiyUrMubD18XXgLk4JS6PJU4Loeg== dependencies: "@ethereumjs/common" "^2.4.0" "@ethersproject/transactions" "^5.0.0-beta.135" - web3-core-helpers "1.5.2" - web3-core-promievent "1.5.2" - web3-core-subscriptions "1.5.2" - web3-utils "1.5.2" + web3-core-helpers "1.5.3" + web3-core-promievent "1.5.3" + web3-core-subscriptions "1.5.3" + web3-utils "1.5.3" web3-core-promievent@1.2.1: version "1.2.1" @@ -28725,10 +28725,10 @@ web3-core-promievent@1.3.0: dependencies: eventemitter3 "4.0.4" -web3-core-promievent@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.5.2.tgz#2dc9fe0e5bbeb7c360fc1aac5f12b32d9949a59b" - integrity sha512-5DacbJXe98ozSor7JlkTNCy6G8945VunRRkPxMk98rUrg60ECVEM/vuefk1atACzjQsKx6tmLZuHxbJQ64TQeQ== +web3-core-promievent@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.5.3.tgz#3f11833c3dc6495577c274350b61144e0a4dba01" + integrity sha512-CFfgqvk3Vk6PIAxtLLuX+pOMozxkKCY+/GdGr7weMh033mDXEPvwyVjoSRO1PqIKj668/hMGQsVoIgbyxkJ9Mg== dependencies: eventemitter3 "4.0.4" @@ -28765,16 +28765,16 @@ web3-core-requestmanager@1.3.0: web3-providers-ipc "1.3.0" web3-providers-ws "1.3.0" -web3-core-requestmanager@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.5.2.tgz#43ccc00779394c941b28e6e07e217350fd1ded71" - integrity sha512-oRVW9OrAsXN2JIZt68OEg1Mb1A9a/L3JAGMv15zLEFEnJEGw0KQsGK1ET2kvZBzvpFd5G0EVkYCnx7WDe4HSNw== +web3-core-requestmanager@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.5.3.tgz#b339525815fd40e3a2a81813c864ddc413f7b6f7" + integrity sha512-9k/Bze2rs8ONix5IZR+hYdMNQv+ark2Ek2kVcrFgWO+LdLgZui/rn8FikPunjE+ub7x7pJaKCgVRbYFXjo3ZWg== dependencies: util "^0.12.0" - web3-core-helpers "1.5.2" - web3-providers-http "1.5.2" - web3-providers-ipc "1.5.2" - web3-providers-ws "1.5.2" + web3-core-helpers "1.5.3" + web3-providers-http "1.5.3" + web3-providers-ipc "1.5.3" + web3-providers-ws "1.5.3" web3-core-subscriptions@1.2.1: version "1.2.1" @@ -28803,13 +28803,13 @@ web3-core-subscriptions@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-core-subscriptions@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.5.2.tgz#8eaebde44f81fc13c45b555c4422fe79393da9cf" - integrity sha512-hapI4rKFk22yurtIv0BYvkraHsM7epA4iI8Np+HuH6P9DD0zj/llaps6TXLM9HyacLBRwmOLZmr+pHBsPopUnQ== +web3-core-subscriptions@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.5.3.tgz#d7d69c4caad65074212028656e9dc56ca5c2159d" + integrity sha512-L2m9vG1iRN6thvmv/HQwO2YLhOQlmZU8dpLG6GSo9FBN14Uch868Swk0dYVr3rFSYjZ/GETevSXU+O+vhCummA== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.5.2" + web3-core-helpers "1.5.3" web3-core@1.2.1: version "1.2.1" @@ -28847,18 +28847,18 @@ web3-core@1.3.0: web3-core-requestmanager "1.3.0" web3-utils "1.3.0" -web3-core@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.5.2.tgz#ca2b9b1ed3cf84d48b31c9bb91f7628f97cfdcd5" - integrity sha512-sebMpQbg3kbh3vHUbHrlKGKOxDWqjgt8KatmTBsTAWj/HwWYVDzeX+2Q84+swNYsm2DrTBVFlqTErFUwPBvyaA== +web3-core@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.5.3.tgz#59f8728b27c8305b349051326aa262b9b7e907bf" + integrity sha512-ACTbu8COCu+0eUNmd9pG7Q9EVsNkAg2w3Y7SqhDr+zjTgbSHZV01jXKlapm9z+G3AN/BziV3zGwudClJ4u4xXQ== dependencies: "@types/bn.js" "^4.11.5" "@types/node" "^12.12.6" bignumber.js "^9.0.0" - web3-core-helpers "1.5.2" - web3-core-method "1.5.2" - web3-core-requestmanager "1.5.2" - web3-utils "1.5.2" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-requestmanager "1.5.3" + web3-utils "1.5.3" web3-eth-abi@1.2.1: version "1.2.1" @@ -28887,13 +28887,13 @@ web3-eth-abi@1.3.0: underscore "1.9.1" web3-utils "1.3.0" -web3-eth-abi@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.5.2.tgz#b627eada967f39ae4657ddd61b693cb00d55cb29" - integrity sha512-P3bJbDR5wib4kWGfVeBKBVi27T+AiHy4EJxYM6SMNbpm3DboLDdisu9YBd6INMs8rzxgnprBbGmmyn4jKIDKAA== +web3-eth-abi@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.5.3.tgz#5aea9394d797f99ca0d9bd40c3417eb07241c96c" + integrity sha512-i/qhuFsoNrnV130CSRYX/z4SlCfSQ4mHntti5yTmmQpt70xZKYZ57BsU0R29ueSQ9/P+aQrL2t2rqkQkAloUxg== dependencies: "@ethersproject/abi" "5.0.7" - web3-utils "1.5.2" + web3-utils "1.5.3" web3-eth-accounts@1.2.1: version "1.2.1" @@ -28946,10 +28946,10 @@ web3-eth-accounts@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-eth-accounts@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.5.2.tgz#cf506c21037fa497fe42f1f055980ce4acf83731" - integrity sha512-F8mtzxgEhxfLc66vPi0Gqd6mpscvvk7Ua575bsJ1p9J2X/VtuKgDgpWcU4e4LKeROQ+ouCpAG9//0j9jQuij3A== +web3-eth-accounts@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.5.3.tgz#076c816ff4d68c9dffebdc7fd2bfaddcfc163d77" + integrity sha512-pdGhXgeBaEJENMvRT6W9cmji3Zz/46ugFSvmnLLw79qi5EH7XJhKISNVb41eWCrs4am5GhI67GLx5d2s2a72iw== dependencies: "@ethereumjs/common" "^2.3.0" "@ethereumjs/tx" "^3.2.1" @@ -28958,10 +28958,10 @@ web3-eth-accounts@1.5.2: ethereumjs-util "^7.0.10" scrypt-js "^3.0.1" uuid "3.3.2" - web3-core "1.5.2" - web3-core-helpers "1.5.2" - web3-core-method "1.5.2" - web3-utils "1.5.2" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-utils "1.5.3" web3-eth-contract@1.2.1: version "1.2.1" @@ -29007,19 +29007,19 @@ web3-eth-contract@1.3.0: web3-eth-abi "1.3.0" web3-utils "1.3.0" -web3-eth-contract@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.5.2.tgz#ffbd799fd01e36596aaadefba323e24a98a23c2f" - integrity sha512-4B8X/IPFxZCTmtENpdWXtyw5fskf2muyc3Jm5brBQRb4H3lVh1/ZyQy7vOIkdphyaXu4m8hBLHzeyKkd37mOUg== +web3-eth-contract@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.5.3.tgz#12b03a4a16ce583a945f874bea2ff2fb4c5b81ad" + integrity sha512-Gdlt1L6cdHe83k7SdV6xhqCytVtOZkjD0kY/15x441AuuJ4JLubCHuqu69k2Dr3tWifHYVys/vG8QE/W16syGg== dependencies: "@types/bn.js" "^4.11.5" - web3-core "1.5.2" - web3-core-helpers "1.5.2" - web3-core-method "1.5.2" - web3-core-promievent "1.5.2" - web3-core-subscriptions "1.5.2" - web3-eth-abi "1.5.2" - web3-utils "1.5.2" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-promievent "1.5.3" + web3-core-subscriptions "1.5.3" + web3-eth-abi "1.5.3" + web3-utils "1.5.3" web3-eth-ens@1.2.1: version "1.2.1" @@ -29065,19 +29065,19 @@ web3-eth-ens@1.3.0: web3-eth-contract "1.3.0" web3-utils "1.3.0" -web3-eth-ens@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.5.2.tgz#ecb3708f0e8e2e847e9d89e8428da12c30bba6a4" - integrity sha512-/UrLL42ZOCYge+BpFBdzG8ICugaRS4f6X7PxJKO+zAt+TwNgBpjuWfW/ZYNcuqJun/ZyfcTuj03TXqA1RlNhZQ== +web3-eth-ens@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.5.3.tgz#ef6eee1ddf32b1ff9536fc7c599a74f2656bafe1" + integrity sha512-QmGFFtTGElg0E+3xfCIFhiUF+1imFi9eg/cdsRMUZU4F1+MZCC/ee+IAelYLfNTGsEslCqfAusliKOT9DdGGnw== dependencies: content-hash "^2.5.2" eth-ens-namehash "2.0.8" - web3-core "1.5.2" - web3-core-helpers "1.5.2" - web3-core-promievent "1.5.2" - web3-eth-abi "1.5.2" - web3-eth-contract "1.5.2" - web3-utils "1.5.2" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-promievent "1.5.3" + web3-eth-abi "1.5.3" + web3-eth-contract "1.5.3" + web3-utils "1.5.3" web3-eth-iban@1.2.1: version "1.2.1" @@ -29103,13 +29103,13 @@ web3-eth-iban@1.3.0: bn.js "^4.11.9" web3-utils "1.3.0" -web3-eth-iban@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.5.2.tgz#f390ad244ef8a6c94de7c58736b0b80a484abc8e" - integrity sha512-C04YDXuSG/aDwOHSX+HySBGb0KraiAVt+/l1Mw7y/fCUrKC/K0yYzMYqY/uYOcvLtepBPsC4ZfUYWUBZ2PO8Vg== +web3-eth-iban@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.5.3.tgz#91b1475893a877b10eac1de5cce6eb379fb81b5d" + integrity sha512-vMzmGqolYZvRHwP9P4Nf6G8uYM5aTLlQu2a34vz78p0KlDC+eV1th3+90Qeaupa28EG7OO0IT1F0BejiIauOPw== dependencies: bn.js "^4.11.9" - web3-utils "1.5.2" + web3-utils "1.5.3" web3-eth-personal@1.2.1: version "1.2.1" @@ -29146,17 +29146,17 @@ web3-eth-personal@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth-personal@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.5.2.tgz#043335a19ab59e119ba61e3bd6c3b8cde8120490" - integrity sha512-nH5N2GiVC0C5XeMEKU16PeFP3Hb3hkPvlR6Tf9WQ+pE+jw1c8eaXBO1CJQLr15ikhUF3s94ICyHcfjzkDsmRbA== +web3-eth-personal@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.5.3.tgz#4ebe09e9a77dd49d23d93b36b36cfbf4a6dae713" + integrity sha512-JzibJafR7ak/Icas8uvos3BmUNrZw1vShuNR5Cxjo+vteOC8XMqz1Vr7RH65B4bmlfb3bm9xLxetUHO894+Sew== dependencies: "@types/node" "^12.12.6" - web3-core "1.5.2" - web3-core-helpers "1.5.2" - web3-core-method "1.5.2" - web3-net "1.5.2" - web3-utils "1.5.2" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-net "1.5.3" + web3-utils "1.5.3" web3-eth@1.2.1: version "1.2.1" @@ -29215,23 +29215,23 @@ web3-eth@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.5.2.tgz#0f6470df60a2a7d04df4423ca7721db8ed5ad72b" - integrity sha512-DwWQ6TCOUqvYyo7T20S7HpQDPveNHNqOn2Q2F3E8ZFyEjmqT4XsGiwvm08kB/VgQ4e/ANyq/i8PPFSYMT8JKHg== - dependencies: - web3-core "1.5.2" - web3-core-helpers "1.5.2" - web3-core-method "1.5.2" - web3-core-subscriptions "1.5.2" - web3-eth-abi "1.5.2" - web3-eth-accounts "1.5.2" - web3-eth-contract "1.5.2" - web3-eth-ens "1.5.2" - web3-eth-iban "1.5.2" - web3-eth-personal "1.5.2" - web3-net "1.5.2" - web3-utils "1.5.2" +web3-eth@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.5.3.tgz#d7d1ac7198f816ab8a2088c01e0bf1eda45862fe" + integrity sha512-saFurA1L23Bd7MEf7cBli6/jRdMhD4X/NaMiO2mdMMCXlPujoudlIJf+VWpRWJpsbDFdu7XJ2WHkmBYT5R3p1Q== + dependencies: + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-subscriptions "1.5.3" + web3-eth-abi "1.5.3" + web3-eth-accounts "1.5.3" + web3-eth-contract "1.5.3" + web3-eth-ens "1.5.3" + web3-eth-iban "1.5.3" + web3-eth-personal "1.5.3" + web3-net "1.5.3" + web3-utils "1.5.3" web3-net@1.2.1: version "1.2.1" @@ -29260,14 +29260,14 @@ web3-net@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-net@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.5.2.tgz#58915d7e2dad025d2a08f02c865f3abe61c48eff" - integrity sha512-VEc9c+jfoERhbJIxnx0VPlQDot8Lm4JW/tOWFU+ekHgIiu2zFKj5YxhURIth7RAbsaRsqCb79aE+M0eI8maxVQ== +web3-net@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.5.3.tgz#545fee49b8e213b0c55cbe74ffd0295766057463" + integrity sha512-0W/xHIPvgVXPSdLu0iZYnpcrgNnhzHMC888uMlGP5+qMCt8VuflUZHy7tYXae9Mzsg1kxaJAS5lHVNyeNw4CoQ== dependencies: - web3-core "1.5.2" - web3-core-method "1.5.2" - web3-utils "1.5.2" + web3-core "1.5.3" + web3-core-method "1.5.3" + web3-utils "1.5.3" web3-provider-engine@14.2.1: version "14.2.1" @@ -29319,12 +29319,12 @@ web3-providers-http@1.3.0: web3-core-helpers "1.3.0" xhr2-cookies "1.1.0" -web3-providers-http@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.5.2.tgz#94f95fe5572ca54aa2c2ffd42c63956436c9eb0a" - integrity sha512-dUNFJc9IMYDLZnkoQX3H4ZjvHjGO6VRVCqrBrdh84wPX/0da9dOA7DwIWnG0Gv3n9ybWwu5JHQxK4MNQ444lyA== +web3-providers-http@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.5.3.tgz#74f170fc3d79eb7941d9fbc34e2a067d61ced0b2" + integrity sha512-5DpUyWGHtDAr2RYmBu34Fu+4gJuBAuNx2POeiJIooUtJ+Mu6pIx4XkONWH6V+Ez87tZAVAsFOkJRTYuzMr3rPw== dependencies: - web3-core-helpers "1.5.2" + web3-core-helpers "1.5.3" xhr2-cookies "1.1.0" web3-providers-ipc@1.2.1: @@ -29354,13 +29354,13 @@ web3-providers-ipc@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-providers-ipc@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.5.2.tgz#68a516883c998eeddf60df4cead77baca4fb4aaa" - integrity sha512-SJC4Sivt4g9LHKlRy7cs1jkJgp7bjrQeUndE6BKs0zNALKguxu6QYnzbmuHCTFW85GfMDjhvi24jyyZHMnBNXQ== +web3-providers-ipc@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.5.3.tgz#4bd7f5e445c2f3c2595fce0929c72bb879320a3f" + integrity sha512-JmeAptugVpmXI39LGxUSAymx0NOFdgpuI1hGQfIhbEAcd4sv7fhfd5D+ZU4oLHbRI8IFr4qfGU0uhR8BXhDzlg== dependencies: oboe "2.1.5" - web3-core-helpers "1.5.2" + web3-core-helpers "1.5.3" web3-providers-ws@1.2.1: version "1.2.1" @@ -29391,13 +29391,13 @@ web3-providers-ws@1.3.0: web3-core-helpers "1.3.0" websocket "^1.0.32" -web3-providers-ws@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.5.2.tgz#d336a93ed608b40cdcadfadd1f1bc8d32ea046e0" - integrity sha512-xy9RGlyO8MbJDuKv2vAMDkg+en+OvXG0CGTCM2BTl6l1vIdHpCa+6A/9KV2rK8aU9OBZ7/Pf+Y19517kHVl9RA== +web3-providers-ws@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.5.3.tgz#eec6cfb32bb928a4106de506f13a49070a21eabf" + integrity sha512-6DhTw4Q7nm5CFYEUHOJM0gAb3xFx+9gWpVveg3YxJ/ybR1BUvEWo3bLgIJJtX56cYX0WyY6DS35a7f0LOI1kVg== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.5.2" + web3-core-helpers "1.5.3" websocket "^1.0.32" web3-shh@1.2.1: @@ -29430,15 +29430,15 @@ web3-shh@1.3.0: web3-core-subscriptions "1.3.0" web3-net "1.3.0" -web3-shh@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.2.tgz#a72a3d903c0708a004db94a72d934a302d880aea" - integrity sha512-wOxOcYt4Sa0AHAI8gG7RulCwVuVjSRS/M/AbFsea3XfJdN6sU13/syY7OdZNjNYuKjYTzxKYrd3dU/K2iqffVw== +web3-shh@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.3.tgz#3c04aa4cda9ba0b746d7225262401160f8e38b13" + integrity sha512-COfEXfsqoV/BkcsNLRxQqnWc1Teb8/9GxdGag5GtPC5gQC/vsN+7hYVJUwNxY9LtJPKYTij2DHHnx6UkITng+Q== dependencies: - web3-core "1.5.2" - web3-core-method "1.5.2" - web3-core-subscriptions "1.5.2" - web3-net "1.5.2" + web3-core "1.5.3" + web3-core-method "1.5.3" + web3-core-subscriptions "1.5.3" + web3-net "1.5.3" web3-utils@1.2.1: version "1.2.1" @@ -29495,10 +29495,10 @@ web3-utils@1.3.0: underscore "1.9.1" utf8 "3.0.0" -web3-utils@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.5.2.tgz#150982dcb1918ffc54eba87528e28f009ebc03aa" - integrity sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q== +web3-utils@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.5.3.tgz#e914c9320cd663b2a09a5cb920ede574043eb437" + integrity sha512-56nRgA+Ad9SEyCv39g36rTcr5fpsd4L9LgV3FK0aB66nAMazLAA6Qz4lH5XrUKPDyBIPGJIR+kJsyRtwcu2q1Q== dependencies: bn.js "^4.11.9" eth-lib "0.2.8" @@ -29548,18 +29548,18 @@ web3@1.2.11: web3-shh "1.2.11" web3-utils "1.2.11" -web3@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/web3/-/web3-1.5.2.tgz#736ca2f39048c63964203dd811f519400973e78d" - integrity sha512-aapKLdO8t7Cos6tZLeeQUtCJvTiPMlLcHsHHDLSBZ/VaJEucSTxzun32M8sp3BmF4waDEmhY+iyUM1BKvtAcVQ== - dependencies: - web3-bzz "1.5.2" - web3-core "1.5.2" - web3-eth "1.5.2" - web3-eth-personal "1.5.2" - web3-net "1.5.2" - web3-shh "1.5.2" - web3-utils "1.5.2" +web3@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.5.3.tgz#11882679453c645bf33620fbc255a243343075aa" + integrity sha512-eyBg/1K44flfv0hPjXfKvNwcUfIVDI4NX48qHQe6wd7C8nPSdbWqo9vLy6ksZIt9NLa90HjI8HsGYgnMSUxn6w== + dependencies: + web3-bzz "1.5.3" + web3-core "1.5.3" + web3-eth "1.5.3" + web3-eth-personal "1.5.3" + web3-net "1.5.3" + web3-shh "1.5.3" + web3-utils "1.5.3" web3@^1.2.1: version "1.3.0" From cd1a7a5136a5afdd46a2b3529c6911a21f52a658 Mon Sep 17 00:00:00 2001 From: fainashalts Date: Wed, 22 Sep 2021 13:56:03 -0700 Subject: [PATCH 075/124] Remove gasLimit line from default ganache config, in favor of getting the limit during gas estmation --- packages/core/lib/commands/test/index.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core/lib/commands/test/index.js b/packages/core/lib/commands/test/index.js index 701f44f593c..7d2fc4e644f 100644 --- a/packages/core/lib/commands/test/index.js +++ b/packages/core/lib/commands/test/index.js @@ -190,7 +190,6 @@ const command = { network_id: 4447, mnemonic: "candy maple cake sugar pudding cream honey rich smooth crumble sweet treat", - gasLimit: config.gas, time: config.genesis_time, _chainId: 1337 //temporary until Ganache v3! }; From 30892d71d003de5edfb8f69f87d6b7e48fdfbb7c Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 22 Sep 2021 19:38:42 -0400 Subject: [PATCH 076/124] Fix printing of events with no arguments --- packages/core/lib/testing/TestRunner.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/lib/testing/TestRunner.js b/packages/core/lib/testing/TestRunner.js index 7b85c35e2c8..5d9e72a11ad 100644 --- a/packages/core/lib/testing/TestRunner.js +++ b/packages/core/lib/testing/TestRunner.js @@ -126,6 +126,7 @@ class TestRunner { } function printEvent(decoding, indentation = 0, initialPrefix = "") { + debug("raw event: %O", decoding); const anonymousPrefix = decoding.kind === "anonymous" ? " " : ""; const className = decoding.definedIn @@ -150,7 +151,7 @@ class TestRunner { )})`; return namePrefix + indexedPrefix + displayValue + typeString + ","; }); - { + if (eventArgs.length > 0) { const len = eventArgs.length - 1; eventArgs[len] = eventArgs[len].slice(0, -1); // remove the final comma } From ddbb2d1550359fc545a1411eb1a30915ae695980 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Fri, 24 Sep 2021 18:52:34 -0400 Subject: [PATCH 077/124] Publish - @truffle/artifactor@4.0.124 - @truffle/box@2.1.28 - @truffle/codec@0.11.15 - @truffle/compile-common@0.7.21 - @truffle/compile-solidity@5.3.23 - @truffle/compile-vyper@3.1.27 - @truffle/config@1.3.8 - @truffle/contract-tests@0.1.55 - @truffle/contract@4.3.36 - @truffle/core@5.4.12 - @truffle/db-kit@0.1.33 - @truffle/db-loader@0.0.11 - @truffle/db@0.5.32 - @truffle/debug-utils@5.1.16 - @truffle/debugger@9.1.17 - @truffle/decoder@5.0.8 - @truffle/deployer@3.2.45 - @truffle/environment@0.2.73 - @truffle/external-compile@2.0.25 - @truffle/fetch-and-compile@0.1.8 - @truffle/interface-adapter@0.5.7 - @truffle/migrate@3.2.45 - @truffle/provider@0.2.41 - @truffle/provisioner@0.2.31 - @truffle/reporters@2.0.6 - @truffle/require@2.0.76 - @truffle/resolver@7.0.30 - @truffle/source-fetcher@0.5.8 - @truffle/source-map-utils@1.3.59 - truffle@5.4.12 - @truffle/workflow-compile@3.2.31 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/codec/package.json | 4 +-- packages/compile-common/package.json | 4 +-- packages/compile-solidity/package.json | 12 +++---- packages/compile-vyper/package.json | 8 ++--- packages/config/package.json | 4 +-- packages/contract-tests/package.json | 6 ++-- packages/contract/package.json | 6 ++-- packages/core/package.json | 42 ++++++++++++------------- packages/db-kit/package.json | 18 +++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 8 ++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++----- packages/decoder/package.json | 16 +++++----- packages/deployer/package.json | 8 ++--- packages/environment/package.json | 8 ++--- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 12 +++---- packages/interface-adapter/package.json | 2 +- packages/migrate/package.json | 14 ++++----- packages/provider/package.json | 4 +-- packages/provisioner/package.json | 4 +-- packages/reporters/package.json | 2 +- packages/require/package.json | 6 ++-- packages/resolver/package.json | 6 ++-- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 4 +-- packages/truffle/package.json | 18 +++++------ packages/workflow-compile/package.json | 18 +++++------ 31 files changed, 136 insertions(+), 136 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 1c49b73468e..5eb71e6670e 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -9,7 +9,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.123", + "version": "4.0.124", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -24,7 +24,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.35", + "@truffle/contract": "^4.3.36", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index a088c7eff1c..1ee44ec3217 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -8,7 +8,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/box" }, - "version": "2.1.27", + "version": "2.1.28", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -17,7 +17,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.7", + "@truffle/config": "^1.3.8", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/codec/package.json b/packages/codec/package.json index 0e4aecda56b..839c9dd910d 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.14", + "version": "0.11.15", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.20", + "@truffle/compile-common": "^0.7.21", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 849c27037c9..4d30a4beb78 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.20", + "version": "0.7.21", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -17,7 +17,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.7", + "@truffle/config": "^1.3.8", "@truffle/contract-schema": "^3.4.3", "@types/fs-extra": "^8.1.0", "@types/mocha": "^5.2.7", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 01ab36265e4..f410be473aa 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,15 +12,15 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.22", + "version": "5.3.23", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.20", - "@truffle/config": "^1.3.7", + "@truffle/compile-common": "^0.7.21", + "@truffle/config": "^1.3.8", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", "axios": "^0.21.1", @@ -35,9 +35,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.123", - "@truffle/box": "^2.1.27", - "@truffle/resolver": "^7.0.29", + "@truffle/artifactor": "^4.0.124", + "@truffle/box": "^2.1.28", + "@truffle/resolver": "^7.0.30", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 074e102adc9..8a678c9ed0a 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -8,16 +8,16 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.26", + "version": "3.1.27", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.20", - "@truffle/config": "^1.3.7", - "@truffle/resolver": "^7.0.29", + "@truffle/compile-common": "^0.7.21", + "@truffle/config": "^1.3.8", + "@truffle/resolver": "^7.0.30", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/config/package.json b/packages/config/package.json index 8c9042981c0..78c5d0667ad 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.7", + "version": "1.3.8", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -23,7 +23,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/events": "^0.0.15", - "@truffle/provider": "^0.2.40", + "@truffle/provider": "^0.2.41", "conf": "^10.0.2", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 1f562bd8659..b6b3393d394 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.54", + "version": "0.1.55", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.22", - "@truffle/contract": "^4.3.35", + "@truffle/compile-solidity": "^5.3.23", + "@truffle/contract": "^4.3.36", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index 8cfb1caa329..a423af8b31a 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.35", + "version": "4.3.36", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,9 +24,9 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.15", + "@truffle/debug-utils": "^5.1.16", "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.6", + "@truffle/interface-adapter": "^0.5.7", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", "web3": "1.5.3", diff --git a/packages/core/package.json b/packages/core/package.json index e977c8e07d2..44951e2d3cb 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.11", + "version": "5.4.12", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,34 +21,34 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.123", - "@truffle/box": "^2.1.27", - "@truffle/codec": "^0.11.14", - "@truffle/compile-solidity": "^5.3.22", - "@truffle/config": "^1.3.7", - "@truffle/contract": "^4.3.35", - "@truffle/debug-utils": "^5.1.15", - "@truffle/debugger": "^9.1.16", - "@truffle/decoder": "^5.0.7", - "@truffle/deployer": "^3.2.44", - "@truffle/environment": "^0.2.72", + "@truffle/artifactor": "^4.0.124", + "@truffle/box": "^2.1.28", + "@truffle/codec": "^0.11.15", + "@truffle/compile-solidity": "^5.3.23", + "@truffle/config": "^1.3.8", + "@truffle/contract": "^4.3.36", + "@truffle/debug-utils": "^5.1.16", + "@truffle/debugger": "^9.1.17", + "@truffle/decoder": "^5.0.8", + "@truffle/deployer": "^3.2.45", + "@truffle/environment": "^0.2.73", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.7", - "@truffle/interface-adapter": "^0.5.6", - "@truffle/migrate": "^3.2.44", + "@truffle/fetch-and-compile": "^0.1.8", + "@truffle/interface-adapter": "^0.5.7", + "@truffle/migrate": "^3.2.45", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", - "@truffle/provider": "^0.2.40", - "@truffle/provisioner": "^0.2.30", - "@truffle/require": "^2.0.75", - "@truffle/resolver": "^7.0.29", - "@truffle/source-fetcher": "^0.5.7", - "@truffle/workflow-compile": "^3.2.30", + "@truffle/provider": "^0.2.41", + "@truffle/provisioner": "^0.2.31", + "@truffle/require": "^2.0.76", + "@truffle/resolver": "^7.0.30", + "@truffle/source-fetcher": "^0.5.8", + "@truffle/workflow-compile": "^3.2.31", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 5b6c29eac4e..59519d3db0d 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.32", + "version": "0.1.33", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.14", - "@truffle/compile-common": "^0.7.20", - "@truffle/compile-solidity": "^5.3.22", - "@truffle/config": "^1.3.7", - "@truffle/db": "^0.5.31", - "@truffle/decoder": "^5.0.7", - "@truffle/environment": "^0.2.72", - "@truffle/fetch-and-compile": "^0.1.7", + "@truffle/codec": "^0.11.15", + "@truffle/compile-common": "^0.7.21", + "@truffle/compile-solidity": "^5.3.23", + "@truffle/config": "^1.3.8", + "@truffle/db": "^0.5.32", + "@truffle/decoder": "^5.0.8", + "@truffle/environment": "^0.2.73", + "@truffle/fetch-and-compile": "^0.1.8", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 370a203c778..8d43a63d6cb 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.10", + "version": "0.0.11", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.31" + "@truffle/db": "^0.5.32" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index e8b3ea50544..a3652b15bd4 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.31", + "version": "0.5.32", "main": "dist/src/index.js", "files": [ "dist", @@ -38,8 +38,8 @@ "dependencies": { "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.29", - "@truffle/config": "^1.3.7", - "@truffle/resolver": "^7.0.29", + "@truffle/config": "^1.3.8", + "@truffle/resolver": "^7.0.30", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.20", + "@truffle/compile-common": "^0.7.21", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index b2bff631b22..a1d3b5ca50f 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.15", + "version": "5.1.16", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.14", + "@truffle/codec": "^0.11.15", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index 740edd530bd..c4283ed4cfa 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.16", + "version": "9.1.17", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.14", - "@truffle/source-map-utils": "^1.3.58", + "@truffle/codec": "^0.11.15", + "@truffle/source-map-utils": "^1.3.59", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.3" }, "devDependencies": { - "@truffle/artifactor": "^4.0.123", - "@truffle/box": "^2.1.27", - "@truffle/migrate": "^3.2.44", - "@truffle/resolver": "^7.0.29", - "@truffle/workflow-compile": "^3.2.30", + "@truffle/artifactor": "^4.0.124", + "@truffle/box": "^2.1.28", + "@truffle/migrate": "^3.2.45", + "@truffle/resolver": "^7.0.30", + "@truffle/workflow-compile": "^3.2.31", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 6776cc4d37b..90444af9fda 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.7", + "version": "5.0.8", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.14", - "@truffle/compile-common": "^0.7.20", - "@truffle/source-map-utils": "^1.3.58", + "@truffle/codec": "^0.11.15", + "@truffle/compile-common": "^0.7.21", + "@truffle/source-map-utils": "^1.3.59", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.3" }, "devDependencies": { - "@truffle/config": "^1.3.7", + "@truffle/config": "^1.3.8", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.44", - "@truffle/provider": "^0.2.40", - "@truffle/workflow-compile": "^3.2.30", + "@truffle/migrate": "^3.2.45", + "@truffle/provider": "^0.2.41", + "@truffle/workflow-compile": "^3.2.31", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index 0417a0f10c2..719745515a5 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.44", + "version": "3.2.45", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,15 +22,15 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.35", + "@truffle/contract": "^4.3.36", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", "web3-utils": "1.5.3" }, "devDependencies": { - "@truffle/reporters": "^2.0.5", - "@truffle/workflow-compile": "^3.2.30", + "@truffle/reporters": "^2.0.6", + "@truffle/workflow-compile": "^3.2.31", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 29013d88e86..3ba3e5c727f 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.72", + "version": "0.2.73", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.123", + "@truffle/artifactor": "^4.0.124", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.6", - "@truffle/resolver": "^7.0.29", + "@truffle/interface-adapter": "^0.5.7", + "@truffle/resolver": "^7.0.30", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index 48b9575deaa..892158c3447 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.24", + "version": "2.0.25", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.7", + "@truffle/config": "^1.3.8", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 83a47aa9e3e..7bcf62aecf9 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.7", + "version": "0.1.8", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.14", - "@truffle/compile-solidity": "^5.3.22", - "@truffle/source-fetcher": "^0.5.7", + "@truffle/codec": "^0.11.15", + "@truffle/compile-solidity": "^5.3.23", + "@truffle/source-fetcher": "^0.5.8", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.20", - "@truffle/config": "^1.3.7", + "@truffle/compile-common": "^0.7.21", + "@truffle/config": "^1.3.8", "typescript": "^4.1.4" } } diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index cf93a853b5b..3643f748d69 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.6", + "version": "0.5.7", "main": "dist/index.js", "directories": { "lib": "lib" diff --git a/packages/migrate/package.json b/packages/migrate/package.json index a55ed9096b4..8498bac2633 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.44", + "version": "3.2.45", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.7", - "@truffle/db-loader": "^0.0.10", - "@truffle/deployer": "^3.2.44", + "@truffle/config": "^1.3.8", + "@truffle/db-loader": "^0.0.11", + "@truffle/deployer": "^3.2.45", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.6", - "@truffle/reporters": "^2.0.5", - "@truffle/require": "^2.0.75", + "@truffle/interface-adapter": "^0.5.7", + "@truffle/reporters": "^2.0.6", + "@truffle/require": "^2.0.76", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/provider/package.json b/packages/provider/package.json index ea08c21167a..7feaca7866c 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.40", + "version": "0.2.41", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -21,7 +21,7 @@ "types": "./typings/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.6", + "@truffle/interface-adapter": "^0.5.7", "web3": "1.5.3" }, "devDependencies": { diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index 05be4ca18c1..278b8d6585f 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.30", + "version": "0.2.31", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.7" + "@truffle/config": "^1.3.8" } } diff --git a/packages/reporters/package.json b/packages/reporters/package.json index 8a0a1e94640..e779c699fd5 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.5", + "version": "2.0.6", "main": "index.js", "scripts": { "prepare": "exit 0" diff --git a/packages/require/package.json b/packages/require/package.json index 1607ff5d3cd..e9f534101f1 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,16 +12,16 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.75", + "version": "2.0.76", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.7", + "@truffle/config": "^1.3.8", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.6", + "@truffle/interface-adapter": "^0.5.7", "original-require": "^1.0.1" }, "devDependencies": { diff --git a/packages/resolver/package.json b/packages/resolver/package.json index ddd1530fa75..448fbfe6a8e 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.29", + "version": "7.0.30", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.35", + "@truffle/contract": "^4.3.36", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.30", + "@truffle/provisioner": "^0.2.31", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 003f7f858e8..58169b4e062 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.7", + "version": "0.5.8", "main": "dist/index.js", "files": [ "dist" diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index d69b6059182..a18d3eba30f 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.58", + "version": "1.3.59", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.14", + "@truffle/codec": "^0.11.15", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 342995ac673..d85b3bfbb3d 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.11", + "version": "5.4.12", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,25 +31,25 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.31", + "@truffle/db": "^0.5.32", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.10", - "@truffle/debugger": "^9.1.16", + "@truffle/db-loader": "^0.0.11", + "@truffle/debugger": "^9.1.17", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.27", - "@truffle/config": "^1.3.7", - "@truffle/contract": "^4.3.35", - "@truffle/core": "^5.4.11", - "@truffle/interface-adapter": "^0.5.6", + "@truffle/box": "^2.1.28", + "@truffle/config": "^1.3.8", + "@truffle/contract": "^4.3.36", + "@truffle/core": "^5.4.12", + "@truffle/interface-adapter": "^0.5.7", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", "eslint": "^5.7.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 7cf50a99a12..9a59dbc92d6 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.30", + "version": "3.2.31", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.123", - "@truffle/compile-common": "^0.7.20", - "@truffle/compile-solidity": "^5.3.22", - "@truffle/compile-vyper": "^3.1.26", - "@truffle/config": "^1.3.7", - "@truffle/db-loader": "^0.0.10", + "@truffle/artifactor": "^4.0.124", + "@truffle/compile-common": "^0.7.21", + "@truffle/compile-solidity": "^5.3.23", + "@truffle/compile-vyper": "^3.1.27", + "@truffle/config": "^1.3.8", + "@truffle/db-loader": "^0.0.11", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.24", - "@truffle/resolver": "^7.0.29", + "@truffle/external-compile": "^2.0.25", + "@truffle/resolver": "^7.0.30", "fs-extra": "^9.1.0" }, "devDependencies": { From 4c0e078455b82b45cb271d104f4fd0ef9078630c Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 11:18:25 -0400 Subject: [PATCH 078/124] Move profiler out of compile-common into its own package --- packages/compile-common/src/index.ts | 1 - packages/compile-common/src/profiler/index.ts | 1 - packages/profiler/.gitignore | 1 + packages/profiler/package.json | 35 +++++++++++++++++++ .../src}/convertToAbsolutePaths.ts | 0 .../profiler => profiler/src}/getImports.ts | 0 .../profiler.ts => profiler/src/index.ts} | 0 .../src}/isExplicitlyRelative.ts | 0 .../src}/requiredSources.ts | 0 .../src}/resolveAllSources.ts | 0 .../src/profiler => profiler/src}/updated.ts | 0 packages/profiler/tsconfig.json | 24 +++++++++++++ 12 files changed, 60 insertions(+), 2 deletions(-) delete mode 100644 packages/compile-common/src/profiler/index.ts create mode 100644 packages/profiler/.gitignore create mode 100644 packages/profiler/package.json rename packages/{compile-common/src/profiler => profiler/src}/convertToAbsolutePaths.ts (100%) rename packages/{compile-common/src/profiler => profiler/src}/getImports.ts (100%) rename packages/{compile-common/src/profiler/profiler.ts => profiler/src/index.ts} (100%) rename packages/{compile-common/src/profiler => profiler/src}/isExplicitlyRelative.ts (100%) rename packages/{compile-common/src/profiler => profiler/src}/requiredSources.ts (100%) rename packages/{compile-common/src/profiler => profiler/src}/resolveAllSources.ts (100%) rename packages/{compile-common/src/profiler => profiler/src}/updated.ts (100%) create mode 100644 packages/profiler/tsconfig.json diff --git a/packages/compile-common/src/index.ts b/packages/compile-common/src/index.ts index 9ab9eacc465..92ee06d9f49 100644 --- a/packages/compile-common/src/index.ts +++ b/packages/compile-common/src/index.ts @@ -1,4 +1,3 @@ -export { Profiler } from "./profiler"; export * as Shims from "./shims"; export * as Sources from "./sources"; export * as Errors from "./errors"; diff --git a/packages/compile-common/src/profiler/index.ts b/packages/compile-common/src/profiler/index.ts deleted file mode 100644 index da933d17a3c..00000000000 --- a/packages/compile-common/src/profiler/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { Profiler } from "./profiler"; diff --git a/packages/profiler/.gitignore b/packages/profiler/.gitignore new file mode 100644 index 00000000000..1521c8b7652 --- /dev/null +++ b/packages/profiler/.gitignore @@ -0,0 +1 @@ +dist diff --git a/packages/profiler/package.json b/packages/profiler/package.json new file mode 100644 index 00000000000..f7e43c7a252 --- /dev/null +++ b/packages/profiler/package.json @@ -0,0 +1,35 @@ +{ + "name": "@truffle/profiler", + "version": "0.1.0", + "description": "Package for dealing with Solidity sources along with their Truffle artifacts", + "main": "dist/src/index.js", + "types": "dist/src/index.d.ts", + "repository": { + "type": "git", + "url": "https://github.com/trufflesuite/truffle.git", + "directory": "packages/profiler" + }, + "license": "MIT", + "scripts": { + "build": "tsc", + "prepare": "yarn build", + "watch": "tsc -w" + }, + "devDependencies": { + "@truffle/config": "^1.3.6", + "@truffle/contract-schema": "^3.4.3", + "@types/fs-extra": "^8.1.0", + "@types/mocha": "^5.2.7", + "@types/node": "12.12.21", + "ts-node": "^9.0.0", + "typescript": "^4.1.4" + }, + "dependencies": { + "@truffle/contract-sources": "^0.1.12", + "@truffle/error": "^0.0.14", + "@truffle/expect": "^0.0.18", + "colors": "^1.4.0", + "debug": "^4.3.1" + }, + "gitHead": "6b84be7849142588ef2e3224d8a9d7c2ceeb6e4a" +} diff --git a/packages/compile-common/src/profiler/convertToAbsolutePaths.ts b/packages/profiler/src/convertToAbsolutePaths.ts similarity index 100% rename from packages/compile-common/src/profiler/convertToAbsolutePaths.ts rename to packages/profiler/src/convertToAbsolutePaths.ts diff --git a/packages/compile-common/src/profiler/getImports.ts b/packages/profiler/src/getImports.ts similarity index 100% rename from packages/compile-common/src/profiler/getImports.ts rename to packages/profiler/src/getImports.ts diff --git a/packages/compile-common/src/profiler/profiler.ts b/packages/profiler/src/index.ts similarity index 100% rename from packages/compile-common/src/profiler/profiler.ts rename to packages/profiler/src/index.ts diff --git a/packages/compile-common/src/profiler/isExplicitlyRelative.ts b/packages/profiler/src/isExplicitlyRelative.ts similarity index 100% rename from packages/compile-common/src/profiler/isExplicitlyRelative.ts rename to packages/profiler/src/isExplicitlyRelative.ts diff --git a/packages/compile-common/src/profiler/requiredSources.ts b/packages/profiler/src/requiredSources.ts similarity index 100% rename from packages/compile-common/src/profiler/requiredSources.ts rename to packages/profiler/src/requiredSources.ts diff --git a/packages/compile-common/src/profiler/resolveAllSources.ts b/packages/profiler/src/resolveAllSources.ts similarity index 100% rename from packages/compile-common/src/profiler/resolveAllSources.ts rename to packages/profiler/src/resolveAllSources.ts diff --git a/packages/compile-common/src/profiler/updated.ts b/packages/profiler/src/updated.ts similarity index 100% rename from packages/compile-common/src/profiler/updated.ts rename to packages/profiler/src/updated.ts diff --git a/packages/profiler/tsconfig.json b/packages/profiler/tsconfig.json new file mode 100644 index 00000000000..b070d09ee87 --- /dev/null +++ b/packages/profiler/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "esModuleInterop": true, + "declaration": true, + "target": "es2016", + "noImplicitAny": true, + "moduleResolution": "node", + "sourceMap": true, + "outDir": "dist", + "baseUrl": ".", + "lib": ["es2017"], + "paths": { + }, + "rootDir": ".", + "types": ["node", "mocha"], + "typeRoots": [ + "../../node_modules/@types/fs-extra" + ] + }, + "include": [ + "./src/**/*.ts" + ] +} From 42f4fa12478db868b620195bcbaead3f2f575d30 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 11:24:12 -0400 Subject: [PATCH 079/124] Update compile-solidity to use new profiler pacakge --- .../compile-solidity/compileWithPragmaAnalysis.js | 2 +- packages/compile-solidity/index.js | 2 +- packages/compile-solidity/package.json | 1 + packages/compile-solidity/profiler/index.js | 8 ++++---- packages/compile-solidity/test/profiler/index.js | 14 +++++++------- 5 files changed, 14 insertions(+), 13 deletions(-) diff --git a/packages/compile-solidity/compileWithPragmaAnalysis.js b/packages/compile-solidity/compileWithPragmaAnalysis.js index 741e88f5fd5..c3c8c54d90b 100644 --- a/packages/compile-solidity/compileWithPragmaAnalysis.js +++ b/packages/compile-solidity/compileWithPragmaAnalysis.js @@ -1,7 +1,7 @@ const CompilerSupplier = require("./compilerSupplier"); const Config = require("@truffle/config"); const semver = require("semver"); -const Profiler = require("./profiler"); +const { Profiler } = require("@truffle/profiler"); const { run } = require("./run"); const { reportSources } = require("./reportSources"); const OS = require("os"); diff --git a/packages/compile-solidity/index.js b/packages/compile-solidity/index.js index 3f3d090de67..e7f2e8f30eb 100644 --- a/packages/compile-solidity/index.js +++ b/packages/compile-solidity/index.js @@ -1,7 +1,7 @@ const debug = require("debug")("compile"); const findContracts = require("@truffle/contract-sources"); const Config = require("@truffle/config"); -const Profiler = require("./profiler"); +const { Profiler } = require("@truffle/profiler"); const CompilerSupplier = require("./compilerSupplier"); const { run } = require("./run"); const { normalizeOptions } = require("./normalizeOptions"); diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index f410be473aa..23bae1bc815 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -23,6 +23,7 @@ "@truffle/config": "^1.3.8", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", + "@truffle/profiler": "^0.1.0", "axios": "^0.21.1", "debug": "^4.3.1", "fs-extra": "^9.1.0", diff --git a/packages/compile-solidity/profiler/index.js b/packages/compile-solidity/profiler/index.js index 6c39c31a634..e0e6d313454 100644 --- a/packages/compile-solidity/profiler/index.js +++ b/packages/compile-solidity/profiler/index.js @@ -2,13 +2,13 @@ // determines which .sol files have been updated. const debug = require("debug")("compile:profiler"); -const Common = require("@truffle/compile-common"); +const { Profiler } = require("@truffle/profiler"); const { loadParser } = require("./loadParser"); const { shouldIncludePath } = require("./shouldIncludePath"); module.exports = { updated: async options => { - const profiler = await new Common.Profiler({}); + const profiler = await new Profiler({}); return await profiler.updated(options); }, @@ -19,7 +19,7 @@ module.exports = { const parseImports = await loadParser(options); // generate profiler - const profiler = new Common.Profiler({ + const profiler = new Profiler({ parseImports, shouldIncludePath }); @@ -31,7 +31,7 @@ module.exports = { requiredSourcesForSingleFile: async options => { const parseImports = await loadParser(options); - const profiler = new Common.Profiler({ + const profiler = new Profiler({ parseImports, shouldIncludePath }); diff --git a/packages/compile-solidity/test/profiler/index.js b/packages/compile-solidity/test/profiler/index.js index 39cb1d2d1a3..7e445704b1d 100644 --- a/packages/compile-solidity/test/profiler/index.js +++ b/packages/compile-solidity/test/profiler/index.js @@ -1,10 +1,10 @@ -var assert = require("chai").assert; -var fs = require("fs-extra"); -var glob = require("glob"); -var { default: Box } = require("@truffle/box"); -var Profiler = require("../../profiler"); -var Resolver = require("@truffle/resolver"); -var Artifactor = require("@truffle/artifactor"); +const assert = require("chai").assert; +const fs = require("fs-extra"); +const glob = require("glob"); +const { default: Box } = require("@truffle/box"); +const { Profiler } = require("../../profiler"); +const Resolver = require("@truffle/resolver"); +const Artifactor = require("@truffle/artifactor"); describe("profiler", function () { var config; From 85a72174475cc04432f9f4cb94083a91c8d1ff84 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 11:28:05 -0400 Subject: [PATCH 080/124] Update compile-vyper to use new profiler package --- packages/compile-vyper/index.js | 4 ++-- packages/compile-vyper/package.json | 7 +++++++ packages/compile-vyper/profiler.js | 4 ++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/compile-vyper/index.js b/packages/compile-vyper/index.js index 3aba4d1c17e..a43864d676e 100644 --- a/packages/compile-vyper/index.js +++ b/packages/compile-vyper/index.js @@ -7,7 +7,7 @@ const minimatch = require("minimatch"); const semver = require("semver"); const findContracts = require("@truffle/contract-sources"); -const Common = require("@truffle/compile-common"); +const { Profiler } = require("@truffle/profiler"); const Config = require("@truffle/config"); const { requiredSources } = require("./profiler"); @@ -316,7 +316,7 @@ const Compile = { async necessary(options) { options = Config.default().merge(options); - const profiler = await new Common.Profiler({}); + const profiler = await new Profiler({}); const updated = await profiler.updated(options); if (updated.length === 0) { return { compilations: [] }; diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 8a678c9ed0a..a662e17ce06 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -15,9 +15,16 @@ "test": "mocha" }, "dependencies": { +<<<<<<< HEAD "@truffle/compile-common": "^0.7.21", "@truffle/config": "^1.3.8", "@truffle/resolver": "^7.0.30", +======= + "@truffle/compile-common": "^0.7.19", + "@truffle/config": "^1.3.6", + "@truffle/profiler": "^0.1.0", + "@truffle/resolver": "^7.0.28", +>>>>>>> Update compile-vyper to use new profiler package "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/compile-vyper/profiler.js b/packages/compile-vyper/profiler.js index fbf2def4123..6b9fed47986 100644 --- a/packages/compile-vyper/profiler.js +++ b/packages/compile-vyper/profiler.js @@ -1,5 +1,5 @@ const debug = require("debug")("compile-vyper:profiler"); -const Common = require("@truffle/compile-common"); +const { Profiler } = require("@truffle/profiler"); const Resolver = require("@truffle/resolver"); const { parseImports } = require("./parser"); @@ -14,7 +14,7 @@ async function requiredSources(options) { debug("resolver.sources.length: %d", resolver.sources.length); // generate profiler - const profiler = new Common.Profiler({ + const profiler = new Profiler({ parseImports, shouldIncludePath }); From 798a7cdc3435d878e41f90defe4b58b312575a5b Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:07:15 -0400 Subject: [PATCH 081/124] Remove unnecessary deps from @truffle/profiler --- packages/profiler/package.json | 6 ------ 1 file changed, 6 deletions(-) diff --git a/packages/profiler/package.json b/packages/profiler/package.json index f7e43c7a252..d70a4ae684e 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -17,18 +17,12 @@ }, "devDependencies": { "@truffle/config": "^1.3.6", - "@truffle/contract-schema": "^3.4.3", - "@types/fs-extra": "^8.1.0", - "@types/mocha": "^5.2.7", "@types/node": "12.12.21", "ts-node": "^9.0.0", "typescript": "^4.1.4" }, "dependencies": { "@truffle/contract-sources": "^0.1.12", - "@truffle/error": "^0.0.14", - "@truffle/expect": "^0.0.18", - "colors": "^1.4.0", "debug": "^4.3.1" }, "gitHead": "6b84be7849142588ef2e3224d8a9d7c2ceeb6e4a" From 125c63e535f90b20e1cbc53daa318784563017ae Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:09:54 -0400 Subject: [PATCH 082/124] Remove @types/fs-extra from compile-common --- packages/compile-common/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 4d30a4beb78..f22c59700e7 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -19,7 +19,6 @@ "devDependencies": { "@truffle/config": "^1.3.8", "@truffle/contract-schema": "^3.4.3", - "@types/fs-extra": "^8.1.0", "@types/mocha": "^5.2.7", "@types/node": "12.12.21", "mocha": "8.0.1", From 367ee12a5d6367afb472a1e3623fd7abba409e1a Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:11:21 -0400 Subject: [PATCH 083/124] Remove contract-sources from compile-common deps --- packages/compile-common/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index f22c59700e7..09cda0d4739 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -26,7 +26,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/contract-sources": "^0.1.12", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", "colors": "^1.4.0", From c9facc3cb4402e23ec15fa7194275c152984eb89 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:12:38 -0400 Subject: [PATCH 084/124] Tweak tsconfig and remove config from compile-common --- packages/compile-common/package.json | 1 - packages/compile-common/tsconfig.json | 5 +---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 09cda0d4739..a3591ce5fd4 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -17,7 +17,6 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.8", "@truffle/contract-schema": "^3.4.3", "@types/mocha": "^5.2.7", "@types/node": "12.12.21", diff --git a/packages/compile-common/tsconfig.json b/packages/compile-common/tsconfig.json index b070d09ee87..35c7e0f0370 100644 --- a/packages/compile-common/tsconfig.json +++ b/packages/compile-common/tsconfig.json @@ -13,10 +13,7 @@ "paths": { }, "rootDir": ".", - "types": ["node", "mocha"], - "typeRoots": [ - "../../node_modules/@types/fs-extra" - ] + "types": ["node", "mocha"] }, "include": [ "./src/**/*.ts" From 7d579f66d1d619fc8b440b775d2d470cf466c8a9 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:13:48 -0400 Subject: [PATCH 085/124] Remove expect from compile-common --- packages/compile-common/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index a3591ce5fd4..05b649afd4b 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -26,7 +26,6 @@ }, "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/expect": "^0.0.18", "colors": "^1.4.0", "debug": "^4.3.1" }, From 77e3e90313cd4de3b3407da73a73a6a18d69c9d6 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:16:39 -0400 Subject: [PATCH 086/124] Tweak tsconfig for profiler --- packages/profiler/tsconfig.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/profiler/tsconfig.json b/packages/profiler/tsconfig.json index b070d09ee87..1a3f6b60a70 100644 --- a/packages/profiler/tsconfig.json +++ b/packages/profiler/tsconfig.json @@ -13,10 +13,7 @@ "paths": { }, "rootDir": ".", - "types": ["node", "mocha"], - "typeRoots": [ - "../../node_modules/@types/fs-extra" - ] + "types": ["node"], }, "include": [ "./src/**/*.ts" From 1738503e4f538a40b167d467a9f21b8bcc72f40b Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 16 Sep 2021 12:27:05 -0400 Subject: [PATCH 087/124] Remove debug module from deps for compile-common --- packages/compile-common/package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 05b649afd4b..d090bc42eb0 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -26,8 +26,7 @@ }, "dependencies": { "@truffle/error": "^0.0.14", - "colors": "^1.4.0", - "debug": "^4.3.1" + "colors": "^1.4.0" }, "gitHead": "6b84be7849142588ef2e3224d8a9d7c2ceeb6e4a" } From bfb64cc2621957d081fa2e6ec195c80f05fc4086 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 17 Sep 2021 14:00:36 -0400 Subject: [PATCH 088/124] Fix some import mistakes --- packages/compile-solidity/compileWithPragmaAnalysis.js | 2 +- packages/compile-solidity/index.js | 2 +- packages/compile-vyper/index.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/compile-solidity/compileWithPragmaAnalysis.js b/packages/compile-solidity/compileWithPragmaAnalysis.js index c3c8c54d90b..741e88f5fd5 100644 --- a/packages/compile-solidity/compileWithPragmaAnalysis.js +++ b/packages/compile-solidity/compileWithPragmaAnalysis.js @@ -1,7 +1,7 @@ const CompilerSupplier = require("./compilerSupplier"); const Config = require("@truffle/config"); const semver = require("semver"); -const { Profiler } = require("@truffle/profiler"); +const Profiler = require("./profiler"); const { run } = require("./run"); const { reportSources } = require("./reportSources"); const OS = require("os"); diff --git a/packages/compile-solidity/index.js b/packages/compile-solidity/index.js index e7f2e8f30eb..3f3d090de67 100644 --- a/packages/compile-solidity/index.js +++ b/packages/compile-solidity/index.js @@ -1,7 +1,7 @@ const debug = require("debug")("compile"); const findContracts = require("@truffle/contract-sources"); const Config = require("@truffle/config"); -const { Profiler } = require("@truffle/profiler"); +const Profiler = require("./profiler"); const CompilerSupplier = require("./compilerSupplier"); const { run } = require("./run"); const { normalizeOptions } = require("./normalizeOptions"); diff --git a/packages/compile-vyper/index.js b/packages/compile-vyper/index.js index a43864d676e..724dfc31290 100644 --- a/packages/compile-vyper/index.js +++ b/packages/compile-vyper/index.js @@ -7,8 +7,8 @@ const minimatch = require("minimatch"); const semver = require("semver"); const findContracts = require("@truffle/contract-sources"); -const { Profiler } = require("@truffle/profiler"); const Config = require("@truffle/config"); +const { Profiler } = require("@truffle/profiler"); const { requiredSources } = require("./profiler"); const { compileJson } = require("./vyper-json"); From 5cb5a1e781c5f656102cbefb9fb3c7ba72804780 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Fri, 17 Sep 2021 14:52:37 -0400 Subject: [PATCH 089/124] Fix import --- packages/compile-solidity/test/profiler/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/compile-solidity/test/profiler/index.js b/packages/compile-solidity/test/profiler/index.js index 7e445704b1d..232aa30201e 100644 --- a/packages/compile-solidity/test/profiler/index.js +++ b/packages/compile-solidity/test/profiler/index.js @@ -2,7 +2,7 @@ const assert = require("chai").assert; const fs = require("fs-extra"); const glob = require("glob"); const { default: Box } = require("@truffle/box"); -const { Profiler } = require("../../profiler"); +const Profiler = require("../../profiler"); const Resolver = require("@truffle/resolver"); const Artifactor = require("@truffle/artifactor"); From a527d39c8243142d62a17d1e9cf4e57e7a2a9b66 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 27 Sep 2021 12:45:52 -0400 Subject: [PATCH 090/124] Give profiler a prerelease version so it bumps properly on release --- packages/profiler/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/profiler/package.json b/packages/profiler/package.json index d70a4ae684e..1b4f2778513 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/profiler", - "version": "0.1.0", + "version": "0.1.0-0", "description": "Package for dealing with Solidity sources along with their Truffle artifacts", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", From 486e46fee5cd01506542f3d0bb1fa7d43f5bda5b Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 27 Sep 2021 12:47:26 -0400 Subject: [PATCH 091/124] Add publishConfig property to profiler package.json --- packages/profiler/package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/profiler/package.json b/packages/profiler/package.json index 1b4f2778513..7b6cf6b14d8 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -25,5 +25,8 @@ "@truffle/contract-sources": "^0.1.12", "debug": "^4.3.1" }, + "publishConfig": { + "access": "public" + }, "gitHead": "6b84be7849142588ef2e3224d8a9d7c2ceeb6e4a" } From 429ca511f753a33baf287f12dd412e39b59090ce Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Mon, 27 Sep 2021 12:52:48 -0400 Subject: [PATCH 092/124] Adjust version of profiler used in compile-vyper and compile-solidity --- packages/compile-solidity/package.json | 2 +- packages/compile-vyper/package.json | 8 +------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 23bae1bc815..8397dccc68a 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -23,7 +23,7 @@ "@truffle/config": "^1.3.8", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/profiler": "^0.1.0", + "@truffle/profiler": "^0.1.0-0", "axios": "^0.21.1", "debug": "^4.3.1", "fs-extra": "^9.1.0", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index a662e17ce06..6a10568d6bb 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -15,16 +15,10 @@ "test": "mocha" }, "dependencies": { -<<<<<<< HEAD "@truffle/compile-common": "^0.7.21", "@truffle/config": "^1.3.8", "@truffle/resolver": "^7.0.30", -======= - "@truffle/compile-common": "^0.7.19", - "@truffle/config": "^1.3.6", - "@truffle/profiler": "^0.1.0", - "@truffle/resolver": "^7.0.28", ->>>>>>> Update compile-vyper to use new profiler package + "@truffle/profiler": "^0.1.0-0", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", From 3c2d0e813c459301d3be14d2743dbdffdd7249a9 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 15:23:56 -0400 Subject: [PATCH 093/124] Update highlightjs-solidity to 2.0.1 --- packages/debug-utils/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index a1d3b5ca50f..04776a5d4a3 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -23,7 +23,7 @@ "bn.js": "^5.1.3", "chalk": "^2.4.2", "debug": "^4.3.1", - "highlightjs-solidity": "^2.0.0" + "highlightjs-solidity": "^2.0.1" }, "devDependencies": { "chai": "^4.2.0", diff --git a/yarn.lock b/yarn.lock index 44e4f221ef1..c39c872772b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14502,10 +14502,10 @@ highlight.js@^10.4.1: resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.4.1.tgz#d48fbcf4a9971c4361b3f95f302747afe19dbad0" integrity sha512-yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg== -highlightjs-solidity@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.0.tgz#37150fe2823b9313f1477197217f37da403f3cb3" - integrity sha512-104Nitqem7ntqVR4FyF+a+whp7C15g5moC/K7eHWyet09+wjUVCWcSm2dcaVKOIPAHGiW8X7knq+ZGwkg3aq+A== +highlightjs-solidity@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.1.tgz#ee1beb6f353d4503aa3a011bbb86577976365b59" + integrity sha512-9YY+HQpXMTrF8HgRByjeQhd21GXAz2ktMPTcs6oWSj5HJR52fgsNoelMOmgigwcpt9j4tu4IVSaWaJB2n2TbvQ== hkts@^0.3.1: version "0.3.1" From d3ba897eded6fcdafe7c3f24f89429933fa5065a Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 18:56:36 -0400 Subject: [PATCH 094/124] Add support for user-defined value types (and fix one or two things) --- packages/codec/lib/abi-data/allocate/index.ts | 5 ++ packages/codec/lib/abify.ts | 30 ++++++- packages/codec/lib/ast/import/index.ts | 87 +++++++++++++++++-- packages/codec/lib/ast/types.ts | 1 + packages/codec/lib/ast/utils.ts | 2 + packages/codec/lib/basic/allocate/index.ts | 15 +++- packages/codec/lib/basic/decode/index.ts | 51 +++++++++++ packages/codec/lib/basic/encode/index.ts | 2 + packages/codec/lib/compilations/utils.ts | 4 +- packages/codec/lib/export.ts | 5 ++ packages/codec/lib/format/elementary.ts | 21 +++++ packages/codec/lib/format/errors.ts | 47 ++++++++++ packages/codec/lib/format/types.ts | 85 ++++++++++++++++-- packages/codec/lib/format/utils/inspect.ts | 21 ++++- packages/codec/lib/format/values.ts | 9 ++ packages/debugger/lib/ast/sagas/index.js | 1 + 16 files changed, 366 insertions(+), 20 deletions(-) diff --git a/packages/codec/lib/abi-data/allocate/index.ts b/packages/codec/lib/abi-data/allocate/index.ts index 0612437a840..471403c458a 100644 --- a/packages/codec/lib/abi-data/allocate/index.ts +++ b/packages/codec/lib/abi-data/allocate/index.ts @@ -196,6 +196,7 @@ function abiSizeAndAllocate( case "fixed": case "ufixed": case "enum": + case "userDefinedValueType": return { size: Evm.Utils.WORD_SIZE, dynamic: false, @@ -367,6 +368,7 @@ function allocateCalldataAndReturndata( let inputParametersAbi: Abi.Parameter[]; let outputParametersAbi: Abi.Parameter[]; let offset: number; //refers to INPUT offset; output offset is always 0 + debug("allocating calldata and returndata"); switch (abiEntry.type) { case "constructor": if (!constructorContext) { @@ -405,6 +407,7 @@ function allocateCalldataAndReturndata( ), contractNode ).node; //may be undefined! that's OK! + debug("found node: %o", Boolean(node)); } break; } @@ -463,6 +466,7 @@ function allocateCalldataAndReturndata( compiler //note no offset ); + debug("modes: %s in, %s out", inputMode, outputMode); //finally: transform the allocation appropriately let inputArgumentsAllocation = abiAllocationInput.members.map(member => ({ ...member, @@ -546,6 +550,7 @@ function allocateDataArguments( )[id]; } catch { //if something goes wrong, switch to ABI mdoe + debug("falling back to ABI due to exception!"); allocationMode = "abi"; } } diff --git a/packages/codec/lib/abify.ts b/packages/codec/lib/abify.ts index 623f22b19de..70e64dbad45 100644 --- a/packages/codec/lib/abify.ts +++ b/packages/codec/lib/abify.ts @@ -50,7 +50,7 @@ export function abifyType( const fullType = ( Format.Types.fullType(dataType, userDefinedTypes) ); - if (!fullType) { + if (!fullType.memberTypes) { let typeToDisplay = Format.Types.typeString(dataType); throw new Common.UnknownUserDefinedTypeError( dataType.id, @@ -73,7 +73,7 @@ export function abifyType( const fullType = ( Format.Types.fullType(dataType, userDefinedTypes) ); - if (!fullType) { + if (!fullType.options) { let typeToDisplay = Format.Types.typeString(dataType); throw new Common.UnknownUserDefinedTypeError( dataType.id, @@ -88,6 +88,19 @@ export function abifyType( typeHint: Format.Types.typeString(fullType) }; } + case "userDefinedValueType": { + const fullType = ( + Format.Types.fullType(dataType, userDefinedTypes) + ); + if (!fullType.underlyingType) { + let typeToDisplay = Format.Types.typeString(dataType); + throw new Common.UnknownUserDefinedTypeError( + dataType.id, + typeToDisplay + ); + } + return abifyType(fullType.underlyingType, userDefinedTypes); + } //finally: arrays case "array": return { @@ -201,6 +214,19 @@ export function abifyResult( }; } } + case "userDefinedValueType": { + const coercedResult = result; + switch (coercedResult.kind) { + case "value": + return abifyResult(coercedResult.value, userDefinedTypes); + case "error": + return { //I have no idea what TS is thinking here + ...coercedResult, + type: abifyType(result.type, userDefinedTypes) + }; + } + break; //to satisfy TS :P + } case "enum": { //NOTE: this is the one case where errors are converted to non-error values!! //(other than recursively, I mean) diff --git a/packages/codec/lib/ast/import/index.ts b/packages/codec/lib/ast/import/index.ts index ecf5f470c05..f639dd05be9 100644 --- a/packages/codec/lib/ast/import/index.ts +++ b/packages/codec/lib/ast/import/index.ts @@ -253,9 +253,7 @@ export function definitionToType( } case "struct": { let id = makeTypeId(Utils.typeId(definition), compilationId); - let qualifiedName = Utils.typeStringWithoutLocation(definition).match( - /struct (.*)/ - )[1]; + let qualifiedName = typeHint.match(/struct (.*)/)[1]; let definingContractName: string; let typeName: string; if (qualifiedName.includes(".")) { @@ -304,9 +302,7 @@ export function definitionToType( } case "enum": { let id = makeTypeId(Utils.typeId(definition), compilationId); - let qualifiedName = Utils.typeStringWithoutLocation(definition).match( - /enum (.*)/ - )[1]; + let qualifiedName = typeHint.match(/enum (.*)/)[1]; let definingContractName: string; let typeName: string; if (qualifiedName.includes(".")) { @@ -332,11 +328,37 @@ export function definitionToType( }; } } + case "userDefinedValueType": { + let id = makeTypeId(Utils.typeId(definition), compilationId); + let definingContractName: string; + let typeName: string; + if (typeHint.includes(".")) { + [definingContractName, typeName] = typeHint.split("."); + } else { + typeName = typeHint; + //leave definingContractName undefined + } + if (definingContractName) { + return { + typeClass, + kind: "local", + id, + typeName, + definingContractName + }; + } else { + return { + typeClass, + kind: "global", + id, + typeName + }; + } + } case "contract": { let id = makeTypeId(Utils.typeId(definition), compilationId); - let typeName = Utils.typeStringWithoutLocation(definition).match( - /(contract|library|interface) (.*)/ - )[2]; //note: we use the type string rather than the type identifier + let typeName = typeHint.match(/(contract|library|interface) (.*)/)[2]; + //note: we use the type string rather than the type identifier //in order to avoid having to deal with the underscore problem let contractKind = Utils.contractKind(definition); return { @@ -470,6 +492,53 @@ export function definitionToStoredType( }; } } + case "UserDefinedValueTypeDefinition": { + let id = makeTypeId(definition.id, compilationId); + let definingContractName: string; + let typeName: string; + if (definition.canonicalName.includes(".")) { + [definingContractName, typeName] = definition.canonicalName.split("."); + } else { + typeName = definition.canonicalName; + //leave definingContractName undefined + } + let underlyingType = //we know it's that, TS doesn't + definitionToType(definition.underlyingType, compilationId, compiler, null); //final null doesn't matter here + let definingContract; + if (referenceDeclarations) { + let contractDefinition = Object.values(referenceDeclarations).find( + node => + node.nodeType === "ContractDefinition" && + node.nodes.some( + (subNode: AstNode) => makeTypeId(subNode.id, compilationId) === id + ) + ); + if (contractDefinition) { + definingContract = ( + definitionToStoredType(contractDefinition, compilationId, compiler) + ); //can skip reference declarations + } + } + if (definingContract) { + return { + typeClass: "userDefinedValueType", + kind: "local", + id, + typeName, + definingContractName, + definingContract, + underlyingType + }; + } else { + return { + typeClass: "userDefinedValueType", + kind: "global", + id, + typeName, + underlyingType + }; + } + } case "ContractDefinition": { let id = makeTypeId(definition.id, compilationId); let typeName = definition.name; diff --git a/packages/codec/lib/ast/types.ts b/packages/codec/lib/ast/types.ts index 7ec9fb58882..ed089e7d450 100644 --- a/packages/codec/lib/ast/types.ts +++ b/packages/codec/lib/ast/types.ts @@ -13,6 +13,7 @@ export interface AstNode { canonicalName?: string; linearizedBaseContracts?: number[]; members?: AstNode[]; + underlyingType?: AstNode; nodes?: AstNode[]; nodeType: string; ast_type?: string; //HACK: Vyper equivalent of nodeType diff --git a/packages/codec/lib/ast/utils.ts b/packages/codec/lib/ast/utils.ts index 4e21f9ace3c..8c9889491f2 100644 --- a/packages/codec/lib/ast/utils.ts +++ b/packages/codec/lib/ast/utils.ts @@ -216,6 +216,8 @@ export function contractKind(definition: AstNode): Common.ContractKind { /** * stack size, in words, of a given type + * note: this function assumes that UDVTs only ever take up + * a single word, which is currently true * @category Definition Reading */ export function stackSize(definition: AstNode): number { diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index c2cf691bcb2..b199e0d0419 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -30,7 +30,19 @@ export function byteLength( } case "bytes": //we assume we're in the static case return (dataType).length; - case "enum": //the only complex case! + case "userDefinedValueType": { + const storedType = userDefinedTypes[dataType.id]; + if (!storedType.underlyingType) { + throw new Common.UnknownUserDefinedTypeError( + dataType.id, + Format.Types.typeString(dataType) + ); + } + const underlyingType = storedType.underlyingType; + return byteLength(underlyingType, userDefinedTypes); + //strictly spekaing, we could omit userDefinedTypes there, but let's not + } + case "enum": { //the only complex case! const storedType = userDefinedTypes[dataType.id]; if (!storedType.options) { throw new Common.UnknownUserDefinedTypeError( @@ -40,5 +52,6 @@ export function byteLength( } const numValues = storedType.options.length; return Math.ceil(Math.log2(numValues) / 8); + } } } diff --git a/packages/codec/lib/basic/decode/index.ts b/packages/codec/lib/basic/decode/index.ts index 94bca7d6050..b4222a798b7 100644 --- a/packages/codec/lib/basic/decode/index.ts +++ b/packages/codec/lib/basic/decode/index.ts @@ -36,6 +36,57 @@ export function* decodeBasic( debug("pointer %o", pointer); switch (dataType.typeClass) { + case "userDefinedValueType": { + const fullType = ( + Format.Types.fullType(dataType, info.userDefinedTypes) + ); + if (!fullType.underlyingType) { + const error = { + kind: "UserDefinedTypeNotFoundError" as const, + type: fullType, + }; + if (strict || options.allowRetry) { + throw new StopDecodingError(error, true); + //note that we allow a retry if we couldn't locate the underlying type! + } + return { + type: fullType, + kind: "error" as const, + error + }; + } + const underlyingResult = yield* decodeBasic( + fullType.underlyingType, + pointer, + info, + options + ); + switch (underlyingResult.kind) { //yes this switch is a little unnecessary :P + case "value": + //wrap the value and return + return { //no idea why need coercion here + type: fullType, + kind: "value" as const, + value: underlyingResult + }; + case "error": + //wrap the error and return an error result! + //this is inconsistent with how we handle other container types + //(structs, arrays, mappings), where having an error in one element + //does not cause an error in the whole thing, but to do that here + //would cause problems for the type system :-/ + //so we'll just be inconsistent + return { //TS is being bad again :-/ + type: fullType, + kind: "error" as const, + error: { + kind: "WrappedError", + error: underlyingResult + } + }; + } + break; //to satisfy TS :P + } case "bool": { if (!checkPadding(bytes, dataType, paddingMode)) { let error = { diff --git a/packages/codec/lib/basic/encode/index.ts b/packages/codec/lib/basic/encode/index.ts index 0c8072c78c6..3aa61fe9eb0 100644 --- a/packages/codec/lib/basic/encode/index.ts +++ b/packages/codec/lib/basic/encode/index.ts @@ -15,6 +15,8 @@ import * as Evm from "@truffle/codec/evm"; export function encodeBasic(input: Format.Values.Value): Uint8Array { let bytes: Uint8Array; switch (input.type.typeClass) { + case "userDefinedValueType": + return encodeBasic((input).value); case "uint": case "int": return Conversion.toBytes( diff --git a/packages/codec/lib/compilations/utils.ts b/packages/codec/lib/compilations/utils.ts index 49aa0aefe32..59c08f4e34a 100644 --- a/packages/codec/lib/compilations/utils.ts +++ b/packages/codec/lib/compilations/utils.ts @@ -489,6 +489,7 @@ export function collectUserDefinedTypesAndTaggedOutputs( if ( node.nodeType === "StructDefinition" || node.nodeType === "EnumDefinition" || + node.nodeType === "UserDefinedValueTypeDefinition" || node.nodeType === "ContractDefinition" ) { references[compilation.id][node.id] = node; @@ -510,7 +511,8 @@ export function collectUserDefinedTypesAndTaggedOutputs( for (const subNode of node.nodes) { if ( subNode.nodeType === "StructDefinition" || - subNode.nodeType === "EnumDefinition" + subNode.nodeType === "EnumDefinition" || + subNode.nodeType === "UserDefinedValueTypeDefinition" ) { references[compilation.id][subNode.id] = subNode; //we don't have all the references yet, but we only need the diff --git a/packages/codec/lib/export.ts b/packages/codec/lib/export.ts index f79f830da19..fc27c4b9c58 100644 --- a/packages/codec/lib/export.ts +++ b/packages/codec/lib/export.ts @@ -139,6 +139,11 @@ function ethersCompatibleNativize( ).toString(); } } + case "userDefinedValueType": + return ethersCompatibleNativize( + (result).value, + numberFormatter + ); case "array": return (result).value.map(value => ethersCompatibleNativize(value, numberFormatter) diff --git a/packages/codec/lib/format/elementary.ts b/packages/codec/lib/format/elementary.ts index 63f673c6d5b..415768cfc75 100644 --- a/packages/codec/lib/format/elementary.ts +++ b/packages/codec/lib/format/elementary.ts @@ -19,8 +19,18 @@ export type ElementaryValue = | FixedValue | UfixedValue | EnumValue + | UDVTValue | ContractValue; +export type BuiltInValueTypeValue = + | UintValue + | IntValue + | BoolValue + | BytesStaticValue + | AddressValue + | FixedValue + | UfixedValue; + /** * A bytestring value (static or dynamic) * @@ -208,6 +218,17 @@ export interface EnumValue { }; } +/** + * A UDVT value + * + * @Category User-defined elementary types + */ +export interface UDVTValue { + type: Types.UDVTType; + kind: "value"; + value: BuiltInValueTypeValue; +} + /** * A contract value; see [[ContractValueInfo]] for more detail * diff --git a/packages/codec/lib/format/errors.ts b/packages/codec/lib/format/errors.ts index aa7edf88855..3195a9486bd 100644 --- a/packages/codec/lib/format/errors.ts +++ b/packages/codec/lib/format/errors.ts @@ -62,6 +62,7 @@ export type DecoderError = | TypeErrorUnion | TupleError | EnumError + | UDVTError | ContractError | FunctionExternalError | FunctionInternalError @@ -86,8 +87,23 @@ export type ElementaryErrorResult = | FixedErrorResult | UfixedErrorResult | EnumErrorResult + | UDVTErrorResult | ContractErrorResult; +/** + * An error result for a built-in value type + * + * @Category Elementary types + */ +export type BuiltInValueTypeErrorResult = + | UintErrorResult + | IntErrorResult + | BoolErrorResult + | BytesStaticErrorResult + | AddressErrorResult + | FixedErrorResult + | UfixedErrorResult; + /** * An error result for a bytestring * @@ -426,6 +442,35 @@ export interface EnumNotFoundDecodingError { rawAsBN: BN; } +/** + * An error result for a user-defined value type + * + * @Category User-defined elementary types + */ +export interface UDVTErrorResult { + type: Types.UDVTType; + kind: "error"; + error: GenericError | UDVTError; +} + +/** + * A UDVT-specific error + * + * @Category User-defined elementary types + */ +export type UDVTError = WrappedError; + +/** + * An error result representing something going wrong decoding + * the underlying type when decoding a UDVT + * + * @Category User-defined elementary types + */ +export interface WrappedError { + kind: "WrappedError"; + error: BuiltInValueTypeErrorResult; +} + /** * An error result for a contract * @@ -719,6 +764,7 @@ export type GenericError = | UserDefinedTypeNotFoundError | IndexedReferenceTypeError | ReadError; + /** * A read error * @@ -730,6 +776,7 @@ export type ReadError = | ReadErrorBytes | ReadErrorStorage | UnusedImmutableError; + /** * An error resulting from overlarge length or pointer values * diff --git a/packages/codec/lib/format/types.ts b/packages/codec/lib/format/types.ts index c1953227700..101845e48b1 100644 --- a/packages/codec/lib/format/types.ts +++ b/packages/codec/lib/format/types.ts @@ -45,6 +45,7 @@ export type Type = | FunctionType | StructType | EnumType + | UDVTType | ContractType | MagicType | TypeType @@ -226,8 +227,23 @@ export type ElementaryType = | AddressType | StringType | EnumType + | UDVTType | ContractType; +/** + * Types that can underlie a user-defined value type + * + * @Category General categories + */ +export type BuiltInValueType = + | UintType + | IntType + | BoolType + | BytesTypeStatic + | FixedType + | UfixedType + | AddressTypeSpecific; //UDVTs only exist on 0.8.8 and later + /** * Type of a mapping * @@ -303,7 +319,11 @@ export interface FunctionExternalTypeGeneral { * * @Category General categories */ -export type ContractDefinedType = StructTypeLocal | EnumTypeLocal; +export type ContractDefinedType = + | StructTypeLocal + | EnumTypeLocal + | UDVTTypeLocal; + /** * User-defined types * @@ -313,7 +333,8 @@ export type UserDefinedType = | ContractDefinedType | ContractTypeNative | StructTypeGlobal - | EnumTypeGlobal; + | EnumTypeGlobal + | UDVTTypeGlobal; /** * Type of a struct @@ -486,6 +507,49 @@ export interface ContractTypeForeign { //now } +/** + * Type of a user-defined value type + * + * These may be local (defined in a contract) or global (defined outside of any contract) + * + * @Category User-defined elementary types + */ +export type UDVTType = UDVTTypeLocal | UDVTTypeGlobal; + +/** + * Local UDVT (defined in a contract) + * + * @Category User-defined elementary types + */ +export interface UDVTTypeLocal { + typeClass: "userDefinedValueType"; + kind: "local"; + /** + * Internal ID. Format may change in future. + */ + id: string; + typeName: string; + definingContractName: string; + definingContract?: ContractTypeNative; + underlyingType?: BuiltInValueType; +} + +/** + * Global UDVT (defined outside a contract) + * + * @Category User-defined elementary types + */ +export interface UDVTTypeGlobal { + typeClass: "userDefinedValueType"; + kind: "global"; + /** + * Internal ID. Format may change in future. + */ + id: string; + typeName: string; + underlyingType?: BuiltInValueType; +} + export type MagicVariableName = "message" | "block" | "transaction"; /** @@ -552,7 +616,7 @@ export interface TypesById { } function isUserDefinedType(anyType: Type): anyType is UserDefinedType { - const userDefinedTypes = ["contract", "enum", "struct"]; + const userDefinedTypes = ["contract", "enum", "struct", "userDefinedValueType"]; return userDefinedTypes.includes(anyType.typeClass); } @@ -698,6 +762,16 @@ export function typeStringWithoutLocation(dataType: Type): string { case "global": return `${dataType.typeClass} ${dataType.typeName}`; } + break; //to satisfy TS :P + case "userDefinedValueType": + //differs from struct & enum in that typeClass is omitted + switch (dataType.kind) { + case "local": + return `${dataType.definingContractName}.${dataType.typeName}`; + case "global": + return `${dataType.typeName}`; + } + break; //to satisfy TS :P case "tuple": return ( dataType.typeHint || @@ -749,6 +823,7 @@ export function typeStringWithoutLocation(dataType: Type): string { export function isContractDefinedType( anyType: Type ): anyType is ContractDefinedType { - const contractDefinedTypes = ["enum", "struct"]; - return contractDefinedTypes.includes(anyType.typeClass); + const contractDefinedTypes = ["enum", "struct", "userDefinedValueType"]; + return contractDefinedTypes.includes(anyType.typeClass) + && (anyType).kind === "local"; } diff --git a/packages/codec/lib/format/utils/inspect.ts b/packages/codec/lib/format/utils/inspect.ts index 479d6061038..bb19868e977 100644 --- a/packages/codec/lib/format/utils/inspect.ts +++ b/packages/codec/lib/format/utils/inspect.ts @@ -2,7 +2,7 @@ import debugModule from "debug"; const debug = debugModule("codec:format:utils:inspect"); import util from "util"; -import type * as Format from "@truffle/codec/format/common"; +import * as Format from "@truffle/codec/format/common"; import * as Exception from "./exception"; //we'll need to write a typing for the options type ourself, it seems; just @@ -150,6 +150,15 @@ export class ResultInspector { options ); } + case "userDefinedValueType": { + const typeName = Format.Types.typeStringWithoutLocation(this.result.type); + const coercedResult = this.result; + const inspectOfUnderlying = util.inspect( + new ResultInspector(coercedResult.value), + options + ); + return `${typeName}.wrap(${inspectOfUnderlying})`; //note only the underlying part is stylized + } case "tuple": { let coercedResult = this.result; //if everything is named, do same as with struct. @@ -291,6 +300,11 @@ export class ResultInspector { debug("this.result: %O", this.result); let errorResult = this.result; //the hell?? why couldn't it make this inference?? switch (errorResult.error.kind) { + case "WrappedError": + return util.inspect( + new ResultInspector(errorResult.error.error), + options + ); case "UintPaddingError": return `Uint has incorrect padding (expected padding: ${errorResult.error.paddingType}) (raw value ${errorResult.error.raw})`; case "IntPaddingError": @@ -383,7 +397,7 @@ class ContractInfoInspector { } } -function enumTypeName(enumType: Format.Types.EnumType) { +function enumTypeName(enumType: Format.Types.EnumType): string { return ( (enumType.kind === "local" ? enumType.definingContractName + "." : "") + enumType.typeName @@ -529,6 +543,9 @@ function unsafeNativizeWithTable( return seenSoFar[coercedResult.reference - 1]; } } + case "userDefinedValueType": { + return unsafeNativize((result).value); + } case "mapping": return Object.assign( {}, diff --git a/packages/codec/lib/format/values.ts b/packages/codec/lib/format/values.ts index 23f80970c49..bfc9e854840 100644 --- a/packages/codec/lib/format/values.ts +++ b/packages/codec/lib/format/values.ts @@ -31,6 +31,7 @@ import type { FixedValue, UfixedValue, EnumValue, + UDVTValue, ContractValue, ContractValueInfoKnown, ContractValueInfoUnknown @@ -98,6 +99,7 @@ export type ElementaryResult = | FixedResult | UfixedResult | EnumResult + | UDVTResult | ContractResult; /** @@ -185,6 +187,13 @@ export type UfixedResult = UfixedValue | Errors.UfixedErrorResult; */ export type EnumResult = EnumValue | Errors.EnumErrorResult; +/** + * A UDVT value or error + * + * @Category User-defined elementary types + */ +export type UDVTResult = UDVTValue | Errors.UDVTErrorResult; + /** * A contract value or error * diff --git a/packages/debugger/lib/ast/sagas/index.js b/packages/debugger/lib/ast/sagas/index.js index 6208c1c89b7..0b83e8df39c 100644 --- a/packages/debugger/lib/ast/sagas/index.js +++ b/packages/debugger/lib/ast/sagas/index.js @@ -50,6 +50,7 @@ function* handleEnter(sourceId, sourceIndex, node, pointer, parentId) { case "ContractDefinition": case "StructDefinition": case "EnumDefinition": + case "UserDefinedValueTypeDefinition": debug("%s recording type %o", pointer, node); yield* data.defineType(node, sourceId); break; From 79db2e09d65a2aef37714f1433f48ce7c635d349 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 20:27:23 -0400 Subject: [PATCH 095/124] Factor definitionToStoredType and account for an 0.8.8 bug --- packages/codec/lib/ast/import/index.ts | 169 ++++++++++++++----------- 1 file changed, 92 insertions(+), 77 deletions(-) diff --git a/packages/codec/lib/ast/import/index.ts b/packages/codec/lib/ast/import/index.ts index f639dd05be9..16412c1ae20 100644 --- a/packages/codec/lib/ast/import/index.ts +++ b/packages/codec/lib/ast/import/index.ts @@ -392,37 +392,24 @@ export function definitionToStoredType( ): Format.Types.UserDefinedType { switch (definition.nodeType) { case "StructDefinition": { - let id = makeTypeId(definition.id, compilationId); - let definingContractName: string; - let typeName: string; - if (definition.canonicalName.includes(".")) { - [definingContractName, typeName] = definition.canonicalName.split("."); - } else { - typeName = definition.canonicalName; - //leave definingContractName undefined - } - let memberTypes: { + const { + id, + typeName, + definingContractName, + definingContract + } = getDefiningInfo( + definition, + compilationId, + compiler, + referenceDeclarations + ); + const memberTypes: { name: string; type: Format.Types.Type; }[] = definition.members.map(member => ({ name: member.name, type: definitionToType(member, compilationId, compiler, null) })); - let definingContract; - if (referenceDeclarations) { - let contractDefinition = Object.values(referenceDeclarations).find( - node => - node.nodeType === "ContractDefinition" && - node.nodes.some( - (subNode: AstNode) => makeTypeId(subNode.id, compilationId) === id - ) - ); - if (contractDefinition) { - definingContract = ( - definitionToStoredType(contractDefinition, compilationId, compiler) - ); //can skip reference declarations - } - } if (definingContract) { return { typeClass: "struct", @@ -444,34 +431,18 @@ export function definitionToStoredType( } } case "EnumDefinition": { - let id = makeTypeId(definition.id, compilationId); - let definingContractName: string; - let typeName: string; - debug("typeName: %s", typeName); - if (definition.canonicalName.includes(".")) { - [definingContractName, typeName] = definition.canonicalName.split("."); - } else { - typeName = definition.canonicalName; - //leave definingContractName undefined - } - let options = definition.members.map(member => member.name); - let definingContract; - if (referenceDeclarations) { - let contractDefinition = Object.values(referenceDeclarations).find( - node => - node.nodeType === "ContractDefinition" && - node.nodes.some( - (subNode: AstNode) => makeTypeId(subNode.id, compilationId) === id - ) - ); - if (contractDefinition) { - definingContract = ( - definitionToStoredType(contractDefinition, compilationId, compiler) - ); //can skip reference declarations - debug("contractDefinition: %o", contractDefinition); - debug("definingContract: %o", definingContract); - } - } + const { + id, + typeName, + definingContractName, + definingContract + } = getDefiningInfo( + definition, + compilationId, + compiler, + referenceDeclarations + ); + const options = definition.members.map(member => member.name); if (definingContract) { return { typeClass: "enum", @@ -493,32 +464,19 @@ export function definitionToStoredType( } } case "UserDefinedValueTypeDefinition": { - let id = makeTypeId(definition.id, compilationId); - let definingContractName: string; - let typeName: string; - if (definition.canonicalName.includes(".")) { - [definingContractName, typeName] = definition.canonicalName.split("."); - } else { - typeName = definition.canonicalName; - //leave definingContractName undefined - } + const { + id, + typeName, + definingContractName, + definingContract + } = getDefiningInfo( + definition, + compilationId, + compiler, + referenceDeclarations + ); let underlyingType = //we know it's that, TS doesn't definitionToType(definition.underlyingType, compilationId, compiler, null); //final null doesn't matter here - let definingContract; - if (referenceDeclarations) { - let contractDefinition = Object.values(referenceDeclarations).find( - node => - node.nodeType === "ContractDefinition" && - node.nodes.some( - (subNode: AstNode) => makeTypeId(subNode.id, compilationId) === id - ) - ); - if (contractDefinition) { - definingContract = ( - definitionToStoredType(contractDefinition, compilationId, compiler) - ); //can skip reference declarations - } - } if (definingContract) { return { typeClass: "userDefinedValueType", @@ -555,3 +513,60 @@ export function definitionToStoredType( } } } + +interface DefiningInfo { + definingContract?: Format.Types.ContractTypeNative; + definingContractName?: string; + typeName: string; + id: string; +} + +function getDefiningInfo( + definition: AstNode, + compilationId: string, + compiler: Compiler.CompilerVersion, + referenceDeclarations?: AstNodes +): DefiningInfo { + const id = makeTypeId(definition.id, compilationId); + let definingContractName: string | undefined; + let typeName: string; + if (definition.canonicalName) { + if (definition.canonicalName.includes(".")) { + [definingContractName, typeName] = definition.canonicalName.split("."); + } else { + typeName = definition.canonicalName; + } + } else { + //due to a bug, in 0.8.8 UDVTs lack a canonicalName. + //so we'll set typeName based on name instead of canonicalName, + //and set definingContractName below based on definingContract. + //(this does mean that we'll mess up a bit if referenceDeclarations + //is not passed... but realistically that shouldn't come up? really the + //same kind of hapepns for every type) + typeName = definition.name; + } + let definingContract: Format.Types.ContractTypeNative | undefined = undefined;; + if (referenceDeclarations) { + let contractDefinition = Object.values(referenceDeclarations).find( + node => + node.nodeType === "ContractDefinition" && + node.nodes.some( + (subNode: AstNode) => makeTypeId(subNode.id, compilationId) === id + ) + ); + if (contractDefinition) { + definingContract = ( + definitionToStoredType(contractDefinition, compilationId, compiler) + ); //can skip reference declarations + if (!definingContractName) { + definingContractName = contractDefinition.name; + } + } + } + return { + definingContract, + definingContractName, + typeName, + id + }; +} From cd56e0ea2cfd1b1303bd9aa41be5e85c0b86bbac Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 21:01:02 -0400 Subject: [PATCH 096/124] Fix storage size of UDVTs --- packages/codec/lib/basic/allocate/index.ts | 12 ------------ packages/codec/lib/storage/allocate/index.ts | 10 ++++++++++ 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index b199e0d0419..009d38b5654 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -30,18 +30,6 @@ export function byteLength( } case "bytes": //we assume we're in the static case return (dataType).length; - case "userDefinedValueType": { - const storedType = userDefinedTypes[dataType.id]; - if (!storedType.underlyingType) { - throw new Common.UnknownUserDefinedTypeError( - dataType.id, - Format.Types.typeString(dataType) - ); - } - const underlyingType = storedType.underlyingType; - return byteLength(underlyingType, userDefinedTypes); - //strictly spekaing, we could omit userDefinedTypes there, but let's not - } case "enum": { //the only complex case! const storedType = userDefinedTypes[dataType.id]; if (!storedType.options) { diff --git a/packages/codec/lib/storage/allocate/index.ts b/packages/codec/lib/storage/allocate/index.ts index db4ffcbae57..7854f2cabb2 100644 --- a/packages/codec/lib/storage/allocate/index.ts +++ b/packages/codec/lib/storage/allocate/index.ts @@ -541,6 +541,16 @@ function storageSizeAndAllocate( }; } + case "userDefinedValueType": { + //surprisingly, these always take up a full word in storage, + //regardless of their underlying type! So I'm handling + //them here rather than in byteLength + return { + size: { words: 1 }, + allocations: existingAllocations + }; + } + default: //otherwise, it's a direct type return { From 34c65c50006644de00c509f1667e3288bd354277 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 23:28:11 -0400 Subject: [PATCH 097/124] Fix abify, fix definitionToAbi, add AbiType and AbiValue --- packages/codec/lib/abify.ts | 21 +++++++++++----- packages/codec/lib/ast/utils.ts | 26 +++++++++++++++----- packages/codec/lib/format/errors.ts | 18 ++++++++++++++ packages/codec/lib/format/types.ts | 18 ++++++++++++++ packages/codec/lib/format/values.ts | 37 +++++++++++++++++++++++++++++ 5 files changed, 108 insertions(+), 12 deletions(-) diff --git a/packages/codec/lib/abify.ts b/packages/codec/lib/abify.ts index 70e64dbad45..9a49dbbb355 100644 --- a/packages/codec/lib/abify.ts +++ b/packages/codec/lib/abify.ts @@ -14,7 +14,7 @@ import * as Conversion from "@truffle/codec/conversion"; export function abifyType( dataType: Format.Types.Type, userDefinedTypes?: Format.Types.TypesById -): Format.Types.Type | undefined { +): Format.Types.AbiType | undefined { switch (dataType.typeClass) { //we only need to specially handle types that don't go in //the ABI, or that have some information loss when going @@ -23,6 +23,7 @@ export function abifyType( //First: types that do not go in the ABI case "mapping": case "magic": + case "type": return undefined; //Next: address & contract, these can get handled together case "address": @@ -99,7 +100,14 @@ export function abifyType( typeToDisplay ); } - return abifyType(fullType.underlyingType, userDefinedTypes); + const abifiedUnderlying = abifyType( + fullType.underlyingType, + userDefinedTypes + ); + return { + ...abifiedUnderlying, + typeHint: Format.Types.typeStringWithoutLocation(dataType) + }; } //finally: arrays case "array": @@ -118,10 +126,11 @@ export function abifyType( export function abifyResult( result: Format.Values.Result, userDefinedTypes?: Format.Types.TypesById -): Format.Values.Result | undefined { +): Format.Values.AbiResult | undefined { switch (result.type.typeClass) { case "mapping": //doesn't go in ABI case "magic": //doesn't go in ABI + case "type": //doesn't go in ABI return undefined; case "address": //abify the type but leave the value alone @@ -200,7 +209,7 @@ export function abifyResult( ); return { kind: "value", - type: ( + type: ( abifyType(result.type, userDefinedTypes) ), //note: may throw exception value: abifiedMembers @@ -208,7 +217,7 @@ export function abifyResult( case "error": return { ...coercedResult, - type: ( + type: ( abifyType(result.type, userDefinedTypes) ) //note: may throw exception }; @@ -321,7 +330,7 @@ export function abifyResult( } } default: - return result; + return result; //just coerce :-/ } } diff --git a/packages/codec/lib/ast/utils.ts b/packages/codec/lib/ast/utils.ts index 8c9889491f2..74e23fa7844 100644 --- a/packages/codec/lib/ast/utils.ts +++ b/packages/codec/lib/ast/utils.ts @@ -746,19 +746,33 @@ function toAbiType(node: AstNode, referenceDeclarations: AstNodes): string { return "address"; case "struct": return "tuple"; //the more detailed checking will be handled elsewhere - case "enum": - let referenceId = typeId(node); - let referenceDeclaration = referenceDeclarations[referenceId]; + case "enum": { + const referenceId = typeId(node); + const referenceDeclaration = referenceDeclarations[referenceId]; if (referenceDeclaration === undefined) { - let typeToDisplay = typeString(node); + const typeToDisplay = typeString(node); throw new Common.UnknownUserDefinedTypeError( referenceId.toString(), typeToDisplay ); } - let numOptions = referenceDeclaration.members.length; - let bits = 8 * Math.ceil(Math.log2(numOptions) / 8); + const numOptions = referenceDeclaration.members.length; + const bits = 8 * Math.ceil(Math.log2(numOptions) / 8); return `uint${bits}`; + } + case "userDefinedValueType": { + const referenceId = typeId(node); + const referenceDeclaration = referenceDeclarations[referenceId]; + if (referenceDeclaration === undefined) { + const typeToDisplay = typeString(node); + throw new Common.UnknownUserDefinedTypeError( + referenceId.toString(), + typeToDisplay + ); + } + const underlyingType = referenceDeclaration.underlyingType; + return toAbiType(underlyingType, referenceDeclarations); + } default: return basicType; //note that: int/uint/fixed/ufixed/bytes will have their size and such left on; diff --git a/packages/codec/lib/format/errors.ts b/packages/codec/lib/format/errors.ts index 3195a9486bd..e61ecda4565 100644 --- a/packages/codec/lib/format/errors.ts +++ b/packages/codec/lib/format/errors.ts @@ -39,6 +39,24 @@ export type ErrorResult = | FunctionExternalErrorResult | FunctionInternalErrorResult; +/** + * An error result for an ABI type + * + * @Category General categories + */ +export type AbiErrorResult = + | UintErrorResult + | IntErrorResult + | BoolErrorResult + | BytesErrorResult + | AddressErrorResult + | FixedErrorResult + | UfixedErrorResult + | StringErrorResult + | ArrayErrorResult + | FunctionExternalErrorResult + | TupleErrorResult; + /** * One of the underlying errors contained in an [[ErrorResult]] * diff --git a/packages/codec/lib/format/types.ts b/packages/codec/lib/format/types.ts index 101845e48b1..f3ef3fe0098 100644 --- a/packages/codec/lib/format/types.ts +++ b/packages/codec/lib/format/types.ts @@ -244,6 +244,24 @@ export type BuiltInValueType = | UfixedType | AddressTypeSpecific; //UDVTs only exist on 0.8.8 and later +/** + * Types that can go in the ABI + * + * @Category General categories + */ +export type AbiType = + | UintType + | IntType + | BoolType + | BytesType + | AddressTypeGeneral + | FixedType + | UfixedType + | StringType + | ArrayType + | FunctionExternalTypeGeneral + | TupleType; + /** * Type of a mapping * diff --git a/packages/codec/lib/format/values.ts b/packages/codec/lib/format/values.ts index bfc9e854840..66ecb38ccb5 100644 --- a/packages/codec/lib/format/values.ts +++ b/packages/codec/lib/format/values.ts @@ -26,6 +26,7 @@ import type { BoolValue, BytesStaticValue, BytesDynamicValue, + BytesValue, AddressValue, StringValue, FixedValue, @@ -76,6 +77,42 @@ export type Value = | FunctionExternalValue | FunctionInternalValue; +/** + * A value that can go in the ABI + * + * @Category General categories + */ +export type AbiValue = + | UintValue + | IntValue + | BoolValue + | BytesValue + | AddressValue + | FixedValue + | UfixedValue + | StringValue + | ArrayValue + | FunctionExternalValue + | TupleValue; + +/** + * A result for an ABI type + * + * @Category General categories + */ +export type AbiResult = + | UintResult + | IntResult + | BoolResult + | BytesResult + | AddressResult + | FixedResult + | UfixedResult + | StringResult + | ArrayResult + | FunctionExternalResult + | TupleResult; + /* * SECTION 2: Built-in elementary types */ From d18360c11a55609d5254da312fc1486c73a0102d Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 28 Sep 2021 01:04:12 -0400 Subject: [PATCH 098/124] Account for wrap/unwrap in mapping key decoding --- packages/codec/lib/ast/utils.ts | 12 +++++++++++ packages/debugger/lib/data/sagas/index.js | 25 +++++++++++++++++++++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/packages/codec/lib/ast/utils.ts b/packages/codec/lib/ast/utils.ts index 74e23fa7844..38ed7676fe3 100644 --- a/packages/codec/lib/ast/utils.ts +++ b/packages/codec/lib/ast/utils.ts @@ -482,6 +482,18 @@ export function functionKind(node: AstNode): string | undefined { return node.name === "" ? "fallback" : "function"; } +//this is kind of a weird one, it exposes some Solidity internals. +//for internal functions it'll return "internal". +//for external functions it'll return "external". +//for library functions it'll return "delegatecall". +//and for builtin functions, it'll return an internal name for +//that particular builtin function. +//(there are more possibilities but I'm not going to list them all here) +export function functionClass(node: AstNode): string | undefined { + const match = typeIdentifier(node).match(/^t_function_([^_]+)_/); + return match ? match[1] : undefined; +} + /** * similar compatibility function for mutability for pre-0.4.16 versions * returns undefined if you don't give it a FunctionDefinition or diff --git a/packages/debugger/lib/data/sagas/index.js b/packages/debugger/lib/data/sagas/index.js index 4078d8f113d..0b310e2b7eb 100644 --- a/packages/debugger/lib/data/sagas/index.js +++ b/packages/debugger/lib/data/sagas/index.js @@ -990,6 +990,8 @@ function* decodeMappingKeyCore(indexDefinition, keyDefinition) { const indexReference = (currentAssignments[fullIndexId] || {}).ref; + debug("indexDefinition.nodeType: %o", indexDefinition.nodeType); + debug("indexDefinition.kind: %o", indexDefinition.kind); if (Codec.Ast.Utils.isSimpleConstant(indexDefinition)) { //while the main case is the next one, where we look for a prior //assignment, we need this case (and need it first) for two reasons: @@ -1068,7 +1070,11 @@ function* decodeMappingKeyCore(indexDefinition, keyDefinition) { //(note that this case is last for a reason; if this were earlier, it //would catch *non*-silent type conversions, which we want to just read //off the stack) - else if (indexDefinition.kind === "typeConversion") { + else if ( + indexDefinition.nodeType === "FunctionCall" && + indexDefinition.kind === "typeConversion" + ) { + debug("type conversion case"); indexDefinition = indexDefinition.arguments[0]; } //...also prior to 0.5.0, unary + was legal, which needs to be accounted @@ -1077,18 +1083,33 @@ function* decodeMappingKeyCore(indexDefinition, keyDefinition) { indexDefinition.nodeType === "UnaryOperation" && indexDefinition.operator === "+" ) { + debug("unary + case"); indexDefinition = indexDefinition.subExpression; } + //...and starting in 0.8.8, we'd better handle wrap and unwrap as well for + //the same reason! + else if ( + indexDefinition.nodeType === "FunctionCall" && + indexDefinition.kind === "functionCall" && + ["wrap", "unwrap"].includes( + Codec.Ast.Utils.functionClass(indexDefinition.expression) + ) + ) { + debug("wrap/unwrap case"); + indexDefinition = indexDefinition.arguments[0]; + } //otherwise, we've just totally failed to decode it, so we mark //indexValue as null (as distinct from undefined) to indicate this. In //the future, we should be able to decode all mapping keys, but we're //not quite there yet, sorry (because we can't yet handle all constant //state variables) else { + debug("we failed"); return null; } + debug("retrying"); //now, as mentioned, retry in the typeConversion case - //(or unary + case) + //(or unary + case, or wrap/unwrap case) } } From 9aceed6ba03921464dae449d4f2aa3727517d270 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 27 Sep 2021 19:40:33 -0400 Subject: [PATCH 099/124] Bump Solidity versions for debugger & decoder tests --- packages/debugger/test/helpers.js | 2 +- packages/decoder/test/current/truffle-config.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/debugger/test/helpers.js b/packages/debugger/test/helpers.js index 5a5f02fb32c..0a3c7cf2527 100644 --- a/packages/debugger/test/helpers.js +++ b/packages/debugger/test/helpers.js @@ -26,7 +26,7 @@ export async function prepareContracts(provider, sources = {}, migrations) { config.compilers = { solc: { - version: "0.8.7", + version: "0.8.8", settings: { optimizer: { enabled: false, runs: 200 }, evmVersion: "london" diff --git a/packages/decoder/test/current/truffle-config.js b/packages/decoder/test/current/truffle-config.js index 244ab4490c4..d180b0f326e 100644 --- a/packages/decoder/test/current/truffle-config.js +++ b/packages/decoder/test/current/truffle-config.js @@ -56,7 +56,7 @@ module.exports = { // Configure your compilers compilers: { solc: { - version: "0.8.4" // Fetch exact version from solc-bin (default: truffle's version) + version: "0.8.8" // Fetch exact version from solc-bin (default: truffle's version) // docker: true, // Use "0.5.1" you've installed locally with docker (default: false) // settings: { // See the solidity docs for advice about optimization and evmVersion // optimizer: { From 9ebc924a8a93ac2743e00e4a9c8b73a49dbc2c4e Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 28 Sep 2021 01:04:26 -0400 Subject: [PATCH 100/124] Add tests of UDVTs to debugger --- packages/debugger/test/data/immutable.js | 13 ++++++++++--- packages/debugger/test/data/more-decoding.js | 8 +++++++- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/packages/debugger/test/data/immutable.js b/packages/debugger/test/data/immutable.js index 267f9c0725d..12f048369ec 100644 --- a/packages/debugger/test/data/immutable.js +++ b/packages/debugger/test/data/immutable.js @@ -13,7 +13,7 @@ import * as Codec from "@truffle/codec"; import solidity from "lib/solidity/selectors"; const __IMMUTABLE = ` -pragma solidity ^0.8.0; +pragma solidity ^0.8.8; contract Base { int8 immutable base = -37; @@ -24,11 +24,14 @@ contract ImmutableTest is Base { Red, Green, Blue } + type MyInt is int8; + Color immutable background; bool immutable truth; address immutable self; bytes1 immutable secret; uint8 immutable trulySecret; + MyInt immutable obscured; event Done(); @@ -38,6 +41,7 @@ contract ImmutableTest is Base { self = address(this); secret = 0x88; trulySecret = 23; + obscured = MyInt.wrap(-1); emit Done(); //BREAK CONSTRUCTOR } @@ -53,6 +57,7 @@ contract ImmutableTest is Base { emit Bool(truth); emit Address(self); emit Byte(secret); + emit Number(MyInt.unwrap(obscured)); emit Done(); //BREAK DEPLOYED } } @@ -107,7 +112,8 @@ describe("Immutable state variables", function () { background: "ImmutableTest.Color.Blue", truth: true, self: address, - secret: "0x88" + secret: "0x88", + obscured: -1 }; assert.deepInclude(variables, expectedResult); @@ -144,7 +150,8 @@ describe("Immutable state variables", function () { truth: true, self: address, secret: "0x88", - trulySecret: 23 + trulySecret: 23, + obscured: -1 }; assert.deepInclude(variables, expectedResult); diff --git a/packages/debugger/test/data/more-decoding.js b/packages/debugger/test/data/more-decoding.js index a7cdca22ce6..b79be966238 100644 --- a/packages/debugger/test/data/more-decoding.js +++ b/packages/debugger/test/data/more-decoding.js @@ -74,7 +74,7 @@ contract ContainersTest { `; const __KEYSANDBYTES = ` -pragma solidity ^0.8.0; +pragma solidity ^0.8.8; contract ElementaryTest { @@ -82,6 +82,8 @@ contract ElementaryTest { enum Ternary { Red, Green, Blue } + type MyInt is int8; + //storage variables to be tested mapping(bool => bool) boolMap; mapping(bytes1 => bytes1) byteMap; @@ -92,6 +94,7 @@ contract ElementaryTest { mapping(address => address) addressMap; mapping(ElementaryTest => ElementaryTest) contractMap; mapping(Ternary => Ternary) enumMap; + mapping(MyInt => MyInt) wrapMap; //constant state variables to try as mapping keys uint constant two = 2; @@ -126,6 +129,8 @@ contract ElementaryTest { enumMap[Ternary.Blue] = Ternary.Blue; + wrapMap[MyInt.wrap(-2)] = MyInt.wrap(-2); + emit Done(); //break here } } @@ -393,6 +398,7 @@ describe("Further Decoding", function () { addressMap: { [address]: address }, contractMap: { [address]: address }, enumMap: { "ElementaryTest.Ternary.Blue": "ElementaryTest.Ternary.Blue" }, + wrapMap: { "-2": -2 }, oneByte: "0xff", severalBytes: ["0xff"] }; From 4f9317303aaaf7810ba595e31155b30449aef6f5 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 28 Sep 2021 02:02:07 -0400 Subject: [PATCH 101/124] Update wrapElementaryValue and constructSlot --- packages/decoder/lib/decoders.ts | 5 ++++- packages/decoder/lib/utils.ts | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/decoder/lib/decoders.ts b/packages/decoder/lib/decoders.ts index f78ac397f57..3cc51fc6e0c 100644 --- a/packages/decoder/lib/decoders.ts +++ b/packages/decoder/lib/decoders.ts @@ -1707,7 +1707,10 @@ export class ContractInstanceDecoder { break; case "mapping": let keyType = parentType.keyType; - if (keyType.typeClass === "enum") { + if ( + keyType.typeClass === "enum" || + keyType.typeClass === "userDefinedValueType" + ) { keyType = ( Format.Types.fullType(keyType, this.userDefinedTypes) ); diff --git a/packages/decoder/lib/utils.ts b/packages/decoder/lib/utils.ts index a82396e9920..5c6a5122e0d 100644 --- a/packages/decoder/lib/utils.ts +++ b/packages/decoder/lib/utils.ts @@ -7,7 +7,7 @@ import BN from "bn.js"; import type * as Codec from "@truffle/codec"; //Function for wrapping a value as an ElementaryValue -//(note: assumes any enum types are the full type) +//(note: assumes any enum types & UDVTs are the full type) //WARNING: this function does not check its inputs! Please check before using! //How to use: //numbers may be BN, number, or numeric string @@ -116,6 +116,8 @@ export function wrapElementaryValue( numericAsBN: numeric } }; + case "userDefinedValueType": + return wrapElementaryValue(value, dataType.underlyingType); //fixed and ufixed are not handled for now! } } From f53b23fef9fd403c5133e524d6b4ffdd7fc7cbc5 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 28 Sep 2021 02:52:02 -0400 Subject: [PATCH 102/124] Add decoder tests of user-defined value types --- .../test/current/contracts/CompatibleTest.sol | 8 +++- .../test/current/contracts/DecodingSample.sol | 11 ++++- .../test/current/contracts/DowngradeTest.sol | 10 +++-- .../test/current/contracts/WireTest.sol | 22 +++++++--- .../test/current/test/compatible-nativize.js | 3 +- .../test/current/test/decoding-test.js | 4 ++ .../test/current/test/downgrade-test.js | 8 ++-- .../decoder/test/current/test/wire-test.js | 43 +++++++++++++++++-- 8 files changed, 88 insertions(+), 21 deletions(-) diff --git a/packages/decoder/test/current/contracts/CompatibleTest.sol b/packages/decoder/test/current/contracts/CompatibleTest.sol index b3140fca01f..067312d938e 100644 --- a/packages/decoder/test/current/contracts/CompatibleTest.sol +++ b/packages/decoder/test/current/contracts/CompatibleTest.sol @@ -1,5 +1,5 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.8; pragma experimental ABIEncoderV2; contract CompatibleNativizeTest { @@ -9,6 +9,8 @@ contract CompatibleNativizeTest { string y; } + type MyBool is bool; + event String(string z); event TwoStrings(string w, string z); event StringPair(Pair z); @@ -44,4 +46,8 @@ contract CompatibleNativizeTest { function returnBytes() public pure returns (bytes memory) { return hex""; } + + function returnCustom() public pure returns (MyBool) { + return MyBool.wrap(true); + } } diff --git a/packages/decoder/test/current/contracts/DecodingSample.sol b/packages/decoder/test/current/contracts/DecodingSample.sol index 60ce21f7f17..6d3cc8f8fcb 100644 --- a/packages/decoder/test/current/contracts/DecodingSample.sol +++ b/packages/decoder/test/current/contracts/DecodingSample.sol @@ -1,7 +1,10 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.8; contract DecodingSample { + + type MyInt is int8; + enum E { EnumValZero, EnumValOne, @@ -31,11 +34,14 @@ contract DecodingSample { bytes varBytes; E varEnum; S varStructS; + MyInt varCustom1; + MyInt varCustom2; mapping(uint => uint) varMapping; mapping(address => uint) varAddressMapping; mapping(DecodingSample => uint) varContractMapping; mapping(E => uint) varEnumMapping; + mapping(MyInt => MyInt) varWrapMapping; uint immutable immutableUint; @@ -84,6 +90,8 @@ contract DecodingSample { varStructS.structS2.structTwoDynamicArrayUint[0] = 4; varStructS.structS2.structTwoDynamicArrayUint[1] = 8; varStructS.structS2.structTwoDynamicArrayUint[2] = 12; + varCustom1 = MyInt.wrap(-1); + varCustom2 = MyInt.wrap(-2); immutableUint = 16; @@ -132,6 +140,7 @@ contract DecodingSample { varEnumMapping[E.EnumValTwo] = 2; varEnumMapping[E.EnumValThree] = 3; varEnumMapping[E.EnumValFour] = 4; + varWrapMapping[MyInt.wrap(-3)] = MyInt.wrap(-3); functionInternal = example; } diff --git a/packages/decoder/test/current/contracts/DowngradeTest.sol b/packages/decoder/test/current/contracts/DowngradeTest.sol index 798baec8b34..341fec49e88 100644 --- a/packages/decoder/test/current/contracts/DowngradeTest.sol +++ b/packages/decoder/test/current/contracts/DowngradeTest.sol @@ -1,5 +1,5 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.8; pragma experimental ABIEncoderV2; contract DowngradeTestParent { @@ -10,9 +10,11 @@ contract DowngradeTest is DowngradeTestParent { //structs; enums; contracts; address payable; functions + type MyInt is int16; + struct Pair { uint x; - uint y; + MyInt y; } struct AsymmetricTriple { @@ -72,13 +74,13 @@ contract DowngradeTest is DowngradeTestParent { } function returnsStuff() public pure returns (Pair memory, Ternary) { - return (Pair(107, 683), Ternary.No); + return (Pair(107, MyInt.wrap(683)), Ternary.No); } error CustomError(Pair pair); function throwCustom() public pure { - revert CustomError(Pair(1, 2)); + revert CustomError(Pair(1, MyInt.wrap(2))); } } diff --git a/packages/decoder/test/current/contracts/WireTest.sol b/packages/decoder/test/current/contracts/WireTest.sol index 95bade7f298..24b9656847a 100644 --- a/packages/decoder/test/current/contracts/WireTest.sol +++ b/packages/decoder/test/current/contracts/WireTest.sol @@ -1,5 +1,5 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.4; +pragma solidity ^0.8.8; pragma experimental ABIEncoderV2; contract WireTestParent { @@ -36,6 +36,8 @@ enum GlobalEnum { contract WireTest is WireTestParent, WireTestAbstract { + type MyInt is int8; + function notImplemented() public { emit Done(); } //just a dummy function, not @@ -70,10 +72,10 @@ contract WireTest is WireTestParent, WireTestAbstract { Yes, No, MaybeSo } - event EmitStuff(Triple, address[2], string[]); + event EmitStuff(Triple, address[2], string[], MyInt); - function emitStuff(Triple memory p, address[2] memory precompiles, string[] memory strings) public { - emit EmitStuff(p, precompiles, strings); + function emitStuff(Triple memory p, address[2] memory precompiles, string[] memory strings, MyInt x) public { + emit EmitStuff(p, precompiles, strings, x); } event MoreStuff(WireTest, uint[] data); @@ -167,8 +169,16 @@ contract WireTest is WireTestParent, WireTestAbstract { mapping(string => Triple[]) public deepStruct; mapping(string => string)[] public deepString; - function returnsStuff() public pure returns (Triple memory, Ternary) { - return (Triple(-1, 0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef, hex"deadbeef"), Ternary.No); + function returnsStuff() public pure returns (Triple memory, Ternary, MyInt) { + return ( + Triple( + -1, + 0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef, + hex"deadbeef" + ), + Ternary.No, + MyInt.wrap(-1) + ); } function overriddenReturn() public pure override returns (uint) { diff --git a/packages/decoder/test/current/test/compatible-nativize.js b/packages/decoder/test/current/test/compatible-nativize.js index a1e60ac5ad2..8bd7f621fcc 100644 --- a/packages/decoder/test/current/test/compatible-nativize.js +++ b/packages/decoder/test/current/test/compatible-nativize.js @@ -76,7 +76,8 @@ describe("nativize (ethers format)", function () { __length__: 1 }, returnFunction: instance.address.toLowerCase() + emitStringSelector, - returnBytes: null + returnBytes: null, + returnCustom: true }; expected.returnStringPair.w = "hello"; expected.returnStringPair.z = "goodbye"; diff --git a/packages/decoder/test/current/test/decoding-test.js b/packages/decoder/test/current/test/decoding-test.js index 52f83278ab7..b6a39b894d5 100644 --- a/packages/decoder/test/current/test/decoding-test.js +++ b/packages/decoder/test/current/test/decoding-test.js @@ -43,6 +43,7 @@ describe("State variable decoding", function () { await decoder.watchMappingKey("varEnumMapping", "EnumValTwo"); await decoder.watchMappingKey("varEnumMapping", "3"); await decoder.watchMappingKey("varEnumMapping", 4); + await decoder.watchMappingKey("varWrapMapping", -3); const initialState = await decoder.state(); const initialVariables = await decoder.variables(); @@ -66,6 +67,8 @@ describe("State variable decoding", function () { assert.equal(variables.varBytes, "0x01030307"); assert.equal(typeof variables.varEnum, "string"); assert.equal(variables.varEnum, "DecodingSample.E.EnumValTwo"); + assert.equal(variables.varCustom1, -1); + assert.equal(variables.varCustom2, -2); const struct = variables.varStructS; validateStructS(struct, [ @@ -134,6 +137,7 @@ describe("State variable decoding", function () { assert.equal(variables.varEnumMapping["DecodingSample.E.EnumValTwo"], 2); assert.equal(variables.varEnumMapping["DecodingSample.E.EnumValThree"], 3); assert.equal(variables.varEnumMapping["DecodingSample.E.EnumValFour"], 4); + assert.equal(variables.varWrapMapping[-3], -3); assert.equal( variables.functionExternal, diff --git a/packages/decoder/test/current/test/downgrade-test.js b/packages/decoder/test/current/test/downgrade-test.js index 4fae2f030f2..3a6b7f66cae 100644 --- a/packages/decoder/test/current/test/downgrade-test.js +++ b/packages/decoder/test/current/test/downgrade-test.js @@ -411,11 +411,11 @@ function verifyAbiDecoding(decoding, address) { assert.lengthOf(decoding.arguments, 4); //we'll skip verifying the names as well - //first argument: {{x: 7, y: 5}, z: 3} + //first argument: {{x: 7, y: -5}, z: 3} assert.strictEqual(decoding.arguments[0].value.type.typeClass, "tuple"); assert.deepEqual( Codec.Format.Utils.Inspect.unsafeNativize(decoding.arguments[0].value), - [[7, 5], 3] + [[7, -5], 3] ); //second argument: No (i.e. 1) assert.strictEqual(decoding.arguments[1].value.type.typeClass, "uint"); @@ -478,7 +478,7 @@ async function runTestBody( let deployedContract = await abstractions.DowngradeTest.new(); let address = deployedContract.address; - let result = await deployedContract.run([[7, 5], 3], 1, address, address); + let result = await deployedContract.run([[7, -5], 3], 1, address, address); let resultHash = result.tx; let resultTx = await web3.eth.getTransaction(resultHash); let resultLog = result.receipt.rawLogs[0]; @@ -505,7 +505,7 @@ async function runTestBody( //still getting it. weird. well, whatever... try { await deployedContract.causeTrouble(); - } catch (_) { + } catch { //do nothing, get the result a different way } //HACK diff --git a/packages/decoder/test/current/test/wire-test.js b/packages/decoder/test/current/test/wire-test.js index eb0cc5ed4f1..f2bcbb4fd76 100644 --- a/packages/decoder/test/current/test/wire-test.js +++ b/packages/decoder/test/current/test/wire-test.js @@ -71,7 +71,8 @@ describe("Over-the-wire decoding", function () { "0x0000000000000000000000000000000000000001", "0x0000000000000000000000000000000000000002" ], - ["hello", "hi", "hooblypoob"] + ["hello", "hi", "hooblypoob"], + -1 ]; let emitStuff = await deployedContract.emitStuff(...emitStuffArgs); let emitStuffHash = emitStuff.tx; @@ -131,6 +132,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(constructorDecoding.kind, "constructor"); + assert.strictEqual(constructorDecoding.decodingMode, "full"); assert.strictEqual(constructorDecoding.class.typeName, "WireTest"); assert.lengthOf(constructorDecoding.arguments, 3); assert.strictEqual(constructorDecoding.arguments[0].name, "status"); @@ -156,9 +158,10 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(emitStuffDecoding.kind, "function"); + assert.strictEqual(emitStuffDecoding.decodingMode, "full"); assert.strictEqual(emitStuffDecoding.abi.name, "emitStuff"); assert.strictEqual(emitStuffDecoding.class.typeName, "WireTest"); - assert.lengthOf(emitStuffDecoding.arguments, 3); + assert.lengthOf(emitStuffDecoding.arguments, 4); assert.strictEqual(emitStuffDecoding.arguments[0].name, "p"); assert.deepEqual( Codec.Format.Utils.Inspect.unsafeNativize( @@ -180,8 +183,16 @@ describe("Over-the-wire decoding", function () { ), emitStuffArgs[2] ); + assert.strictEqual(emitStuffDecoding.arguments[3].name, "x"); + assert.strictEqual( + Codec.Format.Utils.Inspect.unsafeNativize( + emitStuffDecoding.arguments[3].value + ), + emitStuffArgs[3] + ); assert.strictEqual(moreStuffDecoding.kind, "function"); + assert.strictEqual(moreStuffDecoding.decodingMode, "full"); assert.strictEqual(moreStuffDecoding.abi.name, "moreStuff"); assert.strictEqual(moreStuffDecoding.class.typeName, "WireTest"); assert.lengthOf(moreStuffDecoding.arguments, 2); @@ -201,6 +212,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(globalTestDecoding.kind, "function"); + assert.strictEqual(globalTestDecoding.decodingMode, "full"); assert.strictEqual(globalTestDecoding.abi.name, "globalTest"); assert.strictEqual(globalTestDecoding.class.typeName, "WireTest"); assert.lengthOf(globalTestDecoding.arguments, 2); @@ -220,6 +232,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(inheritedDecoding.kind, "function"); + assert.strictEqual(inheritedDecoding.decodingMode, "full"); assert.strictEqual(inheritedDecoding.abi.name, "inherited"); assert.strictEqual(inheritedDecoding.class.typeName, "WireTest"); //NOT WireTestParent assert.lengthOf(inheritedDecoding.arguments, 1); @@ -232,6 +245,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(defaultConstructorDecoding.kind, "constructor"); + assert.strictEqual(defaultConstructorDecoding.decodingMode, "full"); assert.strictEqual( defaultConstructorDecoding.class.typeName, "WireTestParent" @@ -239,6 +253,7 @@ describe("Over-the-wire decoding", function () { assert.isEmpty(defaultConstructorDecoding.arguments); assert.strictEqual(getterDecoding1.kind, "function"); + assert.strictEqual(getterDecoding1.decodingMode, "full"); assert.strictEqual(getterDecoding1.abi.name, "deepStruct"); assert.strictEqual(getterDecoding1.class.typeName, "WireTest"); assert.lengthOf(getterDecoding1.arguments, 2); @@ -258,6 +273,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(getterDecoding2.kind, "function"); + assert.strictEqual(getterDecoding2.decodingMode, "full"); assert.strictEqual(getterDecoding2.abi.name, "deepString"); assert.strictEqual(getterDecoding2.class.typeName, "WireTest"); assert.lengthOf(getterDecoding2.arguments, 2); @@ -366,6 +382,7 @@ describe("Over-the-wire decoding", function () { let dangerEventDecoding = dangerEventDecodings[0]; assert.strictEqual(constructorEventDecoding.kind, "event"); + assert.strictEqual(constructorEventDecoding.decodingMode, "full"); assert.strictEqual(constructorEventDecoding.class.typeName, "WireTest"); assert.strictEqual(constructorEventDecoding.definedIn.typeName, "WireTest"); assert.strictEqual(constructorEventDecoding.abi.name, "ConstructorEvent"); @@ -393,10 +410,11 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(emitStuffEventDecoding.kind, "event"); + assert.strictEqual(emitStuffEventDecoding.decodingMode, "full"); assert.strictEqual(emitStuffEventDecoding.abi.name, "EmitStuff"); assert.strictEqual(emitStuffEventDecoding.class.typeName, "WireTest"); assert.strictEqual(emitStuffEventDecoding.definedIn.typeName, "WireTest"); - assert.lengthOf(emitStuffEventDecoding.arguments, 3); + assert.lengthOf(emitStuffEventDecoding.arguments, 4); assert.isUndefined(emitStuffEventDecoding.arguments[0].name); assert.deepEqual( Codec.Format.Utils.Inspect.unsafeNativize( @@ -418,8 +436,16 @@ describe("Over-the-wire decoding", function () { ), emitStuffArgs[2] ); + assert.isUndefined(emitStuffEventDecoding.arguments[3].name); + assert.strictEqual( + Codec.Format.Utils.Inspect.unsafeNativize( + emitStuffEventDecoding.arguments[3].value + ), + emitStuffArgs[3] + ); assert.strictEqual(moreStuffEventDecoding.kind, "event"); + assert.strictEqual(moreStuffEventDecoding.decodingMode, "full"); assert.strictEqual(moreStuffEventDecoding.abi.name, "MoreStuff"); assert.strictEqual(moreStuffEventDecoding.class.typeName, "WireTest"); assert.strictEqual(moreStuffEventDecoding.definedIn.typeName, "WireTest"); @@ -440,6 +466,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(globalTestEventDecoding.kind, "event"); + assert.strictEqual(globalTestEventDecoding.decodingMode, "full"); assert.strictEqual(globalTestEventDecoding.abi.name, "Globals"); assert.strictEqual(globalTestEventDecoding.class.typeName, "WireTest"); assert.strictEqual(globalTestEventDecoding.definedIn.typeName, "WireTest"); @@ -460,6 +487,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(inheritedEventDecoding.kind, "event"); + assert.strictEqual(inheritedEventDecoding.decodingMode, "full"); assert.strictEqual(inheritedEventDecoding.abi.name, "Done"); assert.strictEqual(inheritedEventDecoding.class.typeName, "WireTest"); assert.strictEqual( @@ -469,6 +497,7 @@ describe("Over-the-wire decoding", function () { assert.isEmpty(inheritedEventDecoding.arguments); assert.strictEqual(indexTestEventDecoding.kind, "event"); + assert.strictEqual(indexTestEventDecoding.decodingMode, "full"); assert.strictEqual(indexTestEventDecoding.abi.name, "HasIndices"); assert.strictEqual(indexTestEventDecoding.class.typeName, "WireTest"); assert.strictEqual(indexTestEventDecoding.definedIn.typeName, "WireTest"); @@ -509,6 +538,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(libraryTestEventDecoding.kind, "event"); + assert.strictEqual(libraryTestEventDecoding.decodingMode, "full"); assert.strictEqual(libraryTestEventDecoding.abi.name, "LibraryEvent"); assert.strictEqual( libraryTestEventDecoding.class.typeName, @@ -528,6 +558,7 @@ describe("Over-the-wire decoding", function () { ); assert.strictEqual(dangerEventDecoding.kind, "event"); + assert.strictEqual(dangerEventDecoding.decodingMode, "full"); assert.strictEqual(dangerEventDecoding.abi.name, "Danger"); assert.lengthOf(dangerEventDecoding.arguments, 1); assert.isUndefined(dangerEventDecoding.arguments[0].name); @@ -930,7 +961,7 @@ describe("Over-the-wire decoding", function () { let decoding = decodings[0]; assert.strictEqual(decoding.kind, "return"); assert.strictEqual(decoding.decodingMode, "full"); - assert.lengthOf(decoding.arguments, 2); + assert.lengthOf(decoding.arguments, 3); assert.deepEqual( Codec.Format.Utils.Inspect.unsafeNativize(decoding.arguments[0].value), { @@ -943,6 +974,10 @@ describe("Over-the-wire decoding", function () { Codec.Format.Utils.Inspect.unsafeNativize(decoding.arguments[1].value), "WireTest.Ternary.No" ); + assert.strictEqual( + Codec.Format.Utils.Inspect.unsafeNativize(decoding.arguments[2].value), + -1 + ); //now: let's try decoding a self-destruct :D let sdAbiEntry = WireTest.abi.find( From 8ae17086d416a98890c5699ef4ebcfc32cbdc975 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 28 Sep 2021 15:41:39 -0400 Subject: [PATCH 103/124] Ensure all packages have homepage and bugs fields --- packages/artifactor/package.json | 4 ++++ packages/box/package.json | 4 ++++ packages/code-utils/package.json | 4 ++++ packages/compile-common/package.json | 4 ++++ packages/compile-vyper/package.json | 4 ++++ packages/profiler/package.json | 4 ++++ 6 files changed, 24 insertions(+) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 5eb71e6670e..38fa44ec27c 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -4,6 +4,10 @@ "description": "A contract packager for Ethereum and Javascript", "license": "MIT", "author": "Tim Coulter", + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/artifactor#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/box/package.json b/packages/box/package.json index 1ee44ec3217..eddbaf36249 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -3,11 +3,15 @@ "description": "Truffle project boilerplate utility", "license": "MIT", "author": "g. nicholas d'andrea ", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/box#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/box" }, + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, "version": "2.1.28", "main": "dist/box.js", "scripts": { diff --git a/packages/code-utils/package.json b/packages/code-utils/package.json index 839259bcf6d..08156545b51 100644 --- a/packages/code-utils/package.json +++ b/packages/code-utils/package.json @@ -3,11 +3,15 @@ "description": "Utilities for parsing and managing EVM-compatible bytecode", "license": "MIT", "author": "", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/code-utils#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/code-utils" }, + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, "version": "1.2.29", "main": "dist/src/index.js", "scripts": { diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index d090bc42eb0..303c755e003 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -4,11 +4,15 @@ "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/compile-common#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-common" }, + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, "license": "MIT", "scripts": { "build": "tsc", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index 6a10568d6bb..a32b32a942f 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -3,6 +3,10 @@ "description": "Vyper compiler support", "license": "MIT", "author": "Evgeniy Filatov ", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/compile-vyper#readme", + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/profiler/package.json b/packages/profiler/package.json index 7b6cf6b14d8..0aa2df40267 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -9,6 +9,10 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/profiler" }, + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/profiler#readme", + "bugs": { + "url": "https://github.com/trufflesuite/truffle/issues" + }, "license": "MIT", "scripts": { "build": "tsc", From f4e7ab46c0763db3c66b01e76b3c1c990335ae1f Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 29 Sep 2021 16:04:59 -0400 Subject: [PATCH 104/124] Standardize format of homepage field --- packages/codec/package.json | 2 +- packages/compile-solidity/package.json | 2 +- packages/contract-tests/package.json | 2 +- packages/db-kit/package.json | 2 +- packages/db-loader/package.json | 2 +- packages/db/package.json | 2 +- packages/decoder/package.json | 2 +- packages/external-compile/package.json | 2 +- packages/fetch-and-compile/package.json | 2 +- packages/interface-adapter/package.json | 2 +- packages/reporters/package.json | 2 +- packages/source-fetcher/package.json | 2 +- packages/truffle/package.json | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/codec/package.json b/packages/codec/package.json index 839c9dd910d..afc3bd1c632 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -3,7 +3,7 @@ "description": "Library for encoding and decoding smart contract data", "license": "MIT", "author": "", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/codec#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 8397dccc68a..44918d63fc1 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -3,7 +3,7 @@ "description": "Compiler helper and artifact manager for Solidity files", "license": "MIT", "author": "Tim Coulter ", - "homepage": "https://github.com/trufflesuite/compile-solidity#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/compile-solidity#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index b6b3393d394..2196ca1c4af 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -4,7 +4,7 @@ "description": "Test suite for @truffle/contract smart contract abstraction (unpublished)", "license": "MIT", "author": "g. nicholas d'andrea ", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/contract-tests#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 59519d3db0d..9ebcc413f1b 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -7,7 +7,7 @@ "truffle" ], "author": "g. nicholas d'andrea ", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/db-kit#readme", "license": "MIT", "main": "dist/src/index.js", "directories": { diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 8d43a63d6cb..b084e49e797 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -3,7 +3,7 @@ "description": "Utility for loading @truffle/db", "license": "MIT", "author": "tyler feickert ", - "homepage": "https://github.com/trufflesuite/truffle/blob/develop/packages/db-loader/README.md", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/db-loader#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/db/package.json b/packages/db/package.json index a3652b15bd4..44141b084d3 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -3,7 +3,7 @@ "description": "Smart contract data aggregation", "license": "MIT", "author": "g. nicholas d'andrea ", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/db#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 90444af9fda..917bb5f8013 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -3,7 +3,7 @@ "description": "A decoder and encoder for Solidity variables of all sorts", "license": "MIT", "author": "Mike Seese and Harry Altman", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/decoder#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index 892158c3447..d07e90b87d4 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -3,7 +3,7 @@ "description": "Wrapper to compile Truffle contracts with arbitrary shell command", "license": "MIT", "author": "g. nicholas d'andrea ", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/external-compile#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 7bcf62aecf9..531c9b25485 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -9,7 +9,7 @@ }, "author": "Harry Altman ", "license": "MIT", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/fetch-and-compile#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index 3643f748d69..8e3bd2829b2 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -2,7 +2,7 @@ "name": "@truffle/interface-adapter", "description": "A library that provides an adapter layer for Truffle to interace with different types of networks/ledgers.", "license": "MIT", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/interface-adapter#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/reporters/package.json b/packages/reporters/package.json index e779c699fd5..5cc39d05fde 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -3,7 +3,7 @@ "description": "Reporters for Truffle modules", "license": "MIT", "author": "", - "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/provisioner#reporters", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/reporters#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 58169b4e062..e8ffc69b696 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -3,7 +3,7 @@ "description": "Fetches verified source code from services such as Etherscan", "license": "MIT", "author": "Harry Altman ", - "homepage": "https://github.com/trufflesuite/truffle#readme", + "homepage": "https://github.com/trufflesuite/truffle/tree/master/packages/source-fetcher#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index d85b3bfbb3d..09461154551 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -3,7 +3,7 @@ "description": "Truffle - Simple development framework for Ethereum", "license": "MIT", "author": "consensys.net", - "homepage": "https://github.com/trufflesuite/truffle/", + "homepage": "https://github.com/trufflesuite/truffle#readme", "repository": { "type": "git", "url": "https://github.com/trufflesuite/truffle.git", From 2c31cf1b8ac38e08908d9a7652298d97247c2dc2 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 29 Sep 2021 19:22:10 -0400 Subject: [PATCH 105/124] Update UDVT support for 0.8.9 bugfix --- packages/codec/lib/basic/allocate/index.ts | 27 ++++++- packages/codec/lib/compilations/utils.ts | 19 +++-- packages/codec/lib/compiler/types.ts | 8 +- packages/codec/lib/compiler/utils.ts | 6 ++ packages/codec/lib/format/types.ts | 17 ++++ packages/codec/lib/special/decode/index.ts | 1 + packages/codec/lib/storage/allocate/index.ts | 80 +++++++++++-------- packages/debugger/lib/data/sagas/index.js | 4 +- packages/debugger/lib/data/selectors/index.js | 62 +++++++------- packages/decoder/lib/decoders.ts | 4 +- 10 files changed, 156 insertions(+), 72 deletions(-) diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index 009d38b5654..5ec0b128f88 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -1,6 +1,7 @@ import debugModule from "debug"; const debug = debugModule("codec:basic:allocate"); +import * as Compiler from "@truffle/codec/compiler"; import * as Common from "@truffle/codec/common"; import * as Evm from "@truffle/codec/evm"; import * as Format from "@truffle/codec/format"; @@ -8,7 +9,8 @@ import * as Format from "@truffle/codec/format"; //only for direct types! export function byteLength( dataType: Format.Types.Type, - userDefinedTypes?: Format.Types.TypesById + userDefinedTypes?: Format.Types.TypesById, + compiler?: Compiler.CompilerVersion ): number { switch (dataType.typeClass) { case "bool": @@ -30,9 +32,9 @@ export function byteLength( } case "bytes": //we assume we're in the static case return (dataType).length; - case "enum": { //the only complex case! + case "enum": { const storedType = userDefinedTypes[dataType.id]; - if (!storedType.options) { + if (!storedType || !storedType.options) { throw new Common.UnknownUserDefinedTypeError( dataType.id, Format.Types.typeString(dataType) @@ -41,5 +43,24 @@ export function byteLength( const numValues = storedType.options.length; return Math.ceil(Math.log2(numValues) / 8); } + case "userDefinedValueType": { + const storedType = userDefinedTypes[dataType.id]; + if (!storedType || !storedType.underlyingType) { + throw new Common.UnknownUserDefinedTypeError( + dataType.id, + Format.Types.typeString(dataType) + ); + } + switch (Compiler.Utils.solidityFamily(compiler)) { + case "0.8.7+": + //UDVTs were introduced in Solidity 0.8.8. However, in that version, + //and that version only, they have a bug where they always take up a + //full word in storage regardless of the size of the underlying type. + return Evm.Utils.ADDRESS_SIZE;; + default: + const { underlyingType } = storedType; + return byteLength(underlyingType, userDefinedTypes, compiler); + } + } } } diff --git a/packages/codec/lib/compilations/utils.ts b/packages/codec/lib/compilations/utils.ts index 59c08f4e34a..78f69bda922 100644 --- a/packages/codec/lib/compilations/utils.ts +++ b/packages/codec/lib/compilations/utils.ts @@ -9,7 +9,7 @@ import type { GeneratedSources } from "@truffle/contract-schema/spec"; import type * as Common from "@truffle/compile-common"; -import type * as Format from "@truffle/codec/format"; +import * as Format from "@truffle/codec/format"; import type { Compilation, Contract, @@ -472,12 +472,17 @@ export function collectUserDefinedTypesAndTaggedOutputs( compilations: Compilation[] ): { definitions: { [compilationId: string]: AstNodes }; + typesByCompilation: Format.Types.TypesByCompilationAndId; types: Format.Types.TypesById; } { let references: { [compilationId: string]: AstNodes } = {}; - let types: Format.Types.TypesById = {}; + let types: Format.Types.TypesByCompilationAndId = {}; for (const compilation of compilations) { references[compilation.id] = {}; + types[compilation.id] = { + compiler: compilation.compiler, + types: {} + }; for (const source of compilation.sources) { if (!source) { continue; //remember, sources could be empty if shimmed! @@ -500,7 +505,7 @@ export function collectUserDefinedTypesAndTaggedOutputs( compiler, references[compilation.id] ); - types[dataType.id] = dataType; + types[compilation.id].types[dataType.id] = dataType; } else if ( node.nodeType === "EventDefinition" || node.nodeType === "ErrorDefinition" @@ -523,7 +528,7 @@ export function collectUserDefinedTypesAndTaggedOutputs( compiler, references[compilation.id] ); - types[dataType.id] = dataType; + types[compilation.id].types[dataType.id] = dataType; } else if ( subNode.nodeType === "EventDefinition" || subNode.nodeType === "ErrorDefinition" @@ -536,7 +541,11 @@ export function collectUserDefinedTypesAndTaggedOutputs( } } } - return { definitions: references, types }; + return { + definitions: references, + typesByCompilation: types, + types: Format.Types.forgetCompilations(types) + }; } function projectInfoIsCodecStyle( diff --git a/packages/codec/lib/compiler/types.ts b/packages/codec/lib/compiler/types.ts index cae36a14a92..dc4233189d2 100644 --- a/packages/codec/lib/compiler/types.ts +++ b/packages/codec/lib/compiler/types.ts @@ -8,4 +8,10 @@ export interface CompilerVersion { //NOTE: Families 0.5.0 and up will be named by the lowest version that //fits in the given family. So e.g. 0.5.x covers 0.5.x-0.7.x; //0.8.x covers 0.8.0-0.8.6; 0.8.7+ covers 0.8.7 to current (as I write this) -export type SolidityFamily = "unknown" | "pre-0.5.0" | "0.5.x" | "0.8.x" | "0.8.7+"; +export type SolidityFamily = + | "unknown" + | "pre-0.5.0" + | "0.5.x" + | "0.8.x" + | "0.8.7+" + | "0.8.9+"; diff --git a/packages/codec/lib/compiler/utils.ts b/packages/codec/lib/compiler/utils.ts index 72744a9abe0..3a278c2f842 100644 --- a/packages/codec/lib/compiler/utils.ts +++ b/packages/codec/lib/compiler/utils.ts @@ -9,6 +9,12 @@ export function solidityFamily(compiler: CompilerVersion): SolidityFamily { return "unknown"; } if ( + semver.satisfies(compiler.version, ">=0.8.9", { + includePrerelease: true + }) + ) { + return "0.8.9+"; + } else if ( semver.satisfies(compiler.version, ">=0.8.7", { includePrerelease: true }) diff --git a/packages/codec/lib/format/types.ts b/packages/codec/lib/format/types.ts index f3ef3fe0098..5be73592c48 100644 --- a/packages/codec/lib/format/types.ts +++ b/packages/codec/lib/format/types.ts @@ -25,6 +25,7 @@ const debug = debugModule("codec:format:types"); import type BN from "bn.js"; import type { ContractKind, Location, Mutability } from "@truffle/codec/common"; +import type { CompilerVersion } from "@truffle/codec/compiler"; /** * Object representing a type @@ -633,6 +634,22 @@ export interface TypesById { [id: string]: UserDefinedType; } +export interface TypesByCompilationAndId { + [compilationId: string]: { + compiler: CompilerVersion; + types: TypesById; + }; +} + +export function forgetCompilations( + typesByCompilation: TypesByCompilationAndId +): TypesById { + return Object.assign( + {}, + ...Object.values(typesByCompilation).map(({ types }) => types) + ); +} + function isUserDefinedType(anyType: Type): anyType is UserDefinedType { const userDefinedTypes = ["contract", "enum", "struct", "userDefinedValueType"]; return userDefinedTypes.includes(anyType.typeClass); diff --git a/packages/codec/lib/special/decode/index.ts b/packages/codec/lib/special/decode/index.ts index 1cfc3934edf..6eb6a3dccb6 100644 --- a/packages/codec/lib/special/decode/index.ts +++ b/packages/codec/lib/special/decode/index.ts @@ -168,6 +168,7 @@ function coinbaseType( case "0.5.x": case "0.8.x": case "0.8.7+": + case "0.8.9+": return { typeClass: "address", kind: "specific", diff --git a/packages/codec/lib/storage/allocate/index.ts b/packages/codec/lib/storage/allocate/index.ts index 7854f2cabb2..7ce94f688f3 100644 --- a/packages/codec/lib/storage/allocate/index.ts +++ b/packages/codec/lib/storage/allocate/index.ts @@ -61,19 +61,27 @@ interface StorageAllocationInfo { //contracts contains only the contracts to be allocated; any base classes not //being allocated should just be in referenceDeclarations export function getStorageAllocations( - userDefinedTypes: Format.Types.TypesById + userDefinedTypesByCompilation: Format.Types.TypesByCompilationAndId ): StorageAllocations { let allocations: StorageAllocations = {}; - for (const dataType of Object.values(userDefinedTypes)) { - if (dataType.typeClass === "struct") { - try { - allocations = allocateStruct(dataType, userDefinedTypes, allocations); - } catch (_) { - //if allocation fails... oh well, allocation fails, we do nothing and just move on :P - //note: a better way of handling this would probably be to *mark* it - //as failed rather than throwing an exception as that would lead to less - //recomputation, but this is simpler and I don't think the recomputation - //should really be a problem + for (const compilation of Object.values(userDefinedTypesByCompilation)) { + const { compiler, types: userDefinedTypes } = compilation; + for (const dataType of Object.values(compilation.types)) { + if (dataType.typeClass === "struct") { + try { + allocations = allocateStruct( + dataType, + userDefinedTypes, + allocations, + compiler + ); + } catch { + //if allocation fails... oh well, allocation fails, we do nothing and just move on :P + //note: a better way of handling this would probably be to *mark* it + //as failed rather than throwing an exception as that would lead to less + //recomputation, but this is simpler and I don't think the recomputation + //should really be a problem + } } } } @@ -115,7 +123,7 @@ export function getStateAllocations( storageAllocations, allocations ); - } catch (_) { + } catch { //we're just going to allow failure here and catch the problem elsewhere } } @@ -125,7 +133,8 @@ export function getStateAllocations( function allocateStruct( dataType: Format.Types.StructType, userDefinedTypes: Format.Types.TypesById, - existingAllocations: StorageAllocations + existingAllocations: StorageAllocations, + compiler?: Compiler.CompilerVersion ): StorageAllocations { //NOTE: dataType here should be a *stored* type! //it is up to the caller to take care of this @@ -133,7 +142,8 @@ function allocateStruct( dataType.id, dataType.memberTypes, userDefinedTypes, - existingAllocations + existingAllocations, + compiler ); } @@ -141,7 +151,8 @@ function allocateMembers( parentId: string, members: Format.Types.NameTypePair[], userDefinedTypes: Format.Types.TypesById, - existingAllocations: StorageAllocations + existingAllocations: StorageAllocations, + compiler?: Compiler.CompilerVersion ): StorageAllocations { let offset: number = 0; //will convert to BN when placing in slot let index: number = Evm.Utils.WORD_SIZE - 1; @@ -161,7 +172,8 @@ function allocateMembers( ({ size, allocations } = storageSizeAndAllocate( member.type, userDefinedTypes, - allocations + allocations, + compiler )); //if it's sized in words (and we're not at the start of slot) we need to start on a new slot @@ -339,7 +351,7 @@ function allocateContractState( ); //transform storage variables into data types - let storageVariableTypes = storageVariables.map(variable => ({ + const storageVariableTypes = storageVariables.map(variable => ({ name: variable.definition.name, type: Ast.Import.definitionToType( variable.definition, @@ -350,15 +362,16 @@ function allocateContractState( //let's allocate the storage variables using a fictitious ID const id = "-1"; - let storageVariableStorageAllocations = allocateMembers( + const storageVariableStorageAllocations = allocateMembers( id, storageVariableTypes, userDefinedTypes, - storageAllocations + storageAllocations, + compiler )[id]; //transform to new format - let storageVariableAllocations = storageVariables.map( + const storageVariableAllocations = storageVariables.map( ({ definition, definedIn }, index) => ({ definition, definedIn, @@ -433,15 +446,22 @@ function allocateContractState( export function storageSize( dataType: Format.Types.Type, userDefinedTypes?: Format.Types.TypesById, - allocations?: StorageAllocations + allocations?: StorageAllocations, + compiler?: Compiler.CompilerVersion ): Storage.StorageLength { - return storageSizeAndAllocate(dataType, userDefinedTypes, allocations).size; + return storageSizeAndAllocate( + dataType, + userDefinedTypes, + allocations, + compiler + ).size; } function storageSizeAndAllocate( dataType: Format.Types.Type, userDefinedTypes?: Format.Types.TypesById, - existingAllocations?: StorageAllocations + existingAllocations?: StorageAllocations, + compiler?: Compiler.CompilerVersion ): StorageAllocationInfo { //we'll only directly handle reference types here; //direct types will be handled by dispatching to Basic.Allocate.byteLength @@ -541,20 +561,12 @@ function storageSizeAndAllocate( }; } - case "userDefinedValueType": { - //surprisingly, these always take up a full word in storage, - //regardless of their underlying type! So I'm handling - //them here rather than in byteLength - return { - size: { words: 1 }, - allocations: existingAllocations - }; - } - default: //otherwise, it's a direct type return { - size: { bytes: Basic.Allocate.byteLength(dataType, userDefinedTypes) }, + size: { + bytes: Basic.Allocate.byteLength(dataType, userDefinedTypes, compiler) + }, allocations: existingAllocations }; } diff --git a/packages/debugger/lib/data/sagas/index.js b/packages/debugger/lib/data/sagas/index.js index 0b310e2b7eb..5dae3d4d6d7 100644 --- a/packages/debugger/lib/data/sagas/index.js +++ b/packages/debugger/lib/data/sagas/index.js @@ -1120,9 +1120,11 @@ export function* reset() { export function* recordAllocations() { const contracts = yield select(data.views.contractAllocationInfo); const referenceDeclarations = yield select(data.views.referenceDeclarations); + const userDefinedTypesByCompilation = + yield select(data.views.userDefinedTypesByCompilation); const userDefinedTypes = yield select(data.views.userDefinedTypes); const storageAllocations = Codec.Storage.Allocate.getStorageAllocations( - userDefinedTypes + userDefinedTypesByCompilation ); const memoryAllocations = Codec.Memory.Allocate.getMemoryAllocations( userDefinedTypes diff --git a/packages/debugger/lib/data/selectors/index.js b/packages/debugger/lib/data/selectors/index.js index 6c2170877bd..b1dbc3bc7ca 100644 --- a/packages/debugger/lib/data/selectors/index.js +++ b/packages/debugger/lib/data/selectors/index.js @@ -246,41 +246,49 @@ const data = createSelectorTree({ }, /** - * data.views.userDefinedTypes - * user-defined types for passing to the decoder - * NOTE: *not* grouped by compilation or anything, this is flat + * data.views.userDefinedTypesByCompilation */ - userDefinedTypes: createLeaf( + userDefinedTypesByCompilation: createLeaf( [ "/info/userDefinedTypes", "./referenceDeclarations", "./scopes/inlined", solidity.views.sources ], - (userDefinedTypes, referenceDeclarations, scopes, sources) => - Object.assign( - {}, - ...userDefinedTypes.map(({ sourceId, id }) => { - debug("id: %d", id); - debug("sourceId: %s", sourceId); - debug("scope: %o", scopes[sourceId][id]); - const node = scopes[sourceId][id].definition; - debug("node: %o", node); - const { compilationId, compiler, internal } = sources[sourceId]; - debug("compilationId: %s", compilationId); - if (internal) { - return {}; //just to be sure, we assume generated sources don't define types - } - const type = Codec.Ast.Import.definitionToStoredType( - node, - compilationId, + (userDefinedTypes, referenceDeclarations, scopes, sources) => { + let typesByCompilation = {}; + for (const { sourceId, id } of userDefinedTypes) { + const node = scopes[sourceId][id].definition; + const { compilationId, compiler, internal } = sources[sourceId]; + if (internal) { + continue; //just to be sure, we assume generated sources don't define types + } + const type = Codec.Ast.Import.definitionToStoredType( + node, + compilationId, + compiler, + referenceDeclarations[compilationId] + ); + if (!typesByCompilation[compilationId]) { + typesByCompilation[compilationId] = { compiler, - referenceDeclarations[compilationId] - ); - debug("type: %o", type); - return { [type.id]: type }; - }) - ) + types: {} + }; + } + typesByCompilation[compilationId].types[type.id] = type; + } + return typesByCompilation; + } + ), + + /** + * data.views.userDefinedTypes + * user-defined types for passing to the decoder + * NOTE: *not* grouped by compilation or anything, this is flat + */ + userDefinedTypes: createLeaf( + ["./userDefinedTypesByCompilation"], + Codec.Format.Types.forgetCompilations ), /** diff --git a/packages/decoder/lib/decoders.ts b/packages/decoder/lib/decoders.ts index 3cc51fc6e0c..6841f535c2c 100644 --- a/packages/decoder/lib/decoders.ts +++ b/packages/decoder/lib/decoders.ts @@ -53,6 +53,7 @@ export class ProjectDecoder { private contractsAndContexts: AbiData.Allocate.ContractAndContexts[] = []; private referenceDeclarations: { [compilationId: string]: Ast.AstNodes }; + private userDefinedTypesByCompilation: Format.Types.TypesByCompilationAndId; private userDefinedTypes: Format.Types.TypesById; private allocations: Evm.AllocationInfo; @@ -78,6 +79,7 @@ export class ProjectDecoder { ({ definitions: this.referenceDeclarations, + typesByCompilation: this.userDefinedTypesByCompilation, types: this.userDefinedTypes } = Compilations.Utils.collectUserDefinedTypesAndTaggedOutputs(this.compilations)); @@ -93,7 +95,7 @@ export class ProjectDecoder { this.userDefinedTypes ); this.allocations.storage = Storage.Allocate.getStorageAllocations( - this.userDefinedTypes + this.userDefinedTypesByCompilation ); //not used by project decoder itself, but used by contract decoder this.allocations.calldata = AbiData.Allocate.getCalldataAllocations( allocationInfo, From f9022f43ad5f72576cdf51cb3ef3ae1bc4b3f1c0 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 29 Sep 2021 19:39:05 -0400 Subject: [PATCH 106/124] Update decoder and debugger tests to Solidity 0.8.9 --- packages/debugger/test/helpers.js | 2 +- packages/decoder/test/current/truffle-config.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/debugger/test/helpers.js b/packages/debugger/test/helpers.js index 0a3c7cf2527..cb98f9adbed 100644 --- a/packages/debugger/test/helpers.js +++ b/packages/debugger/test/helpers.js @@ -26,7 +26,7 @@ export async function prepareContracts(provider, sources = {}, migrations) { config.compilers = { solc: { - version: "0.8.8", + version: "0.8.9", settings: { optimizer: { enabled: false, runs: 200 }, evmVersion: "london" diff --git a/packages/decoder/test/current/truffle-config.js b/packages/decoder/test/current/truffle-config.js index d180b0f326e..e90d008aebc 100644 --- a/packages/decoder/test/current/truffle-config.js +++ b/packages/decoder/test/current/truffle-config.js @@ -56,7 +56,7 @@ module.exports = { // Configure your compilers compilers: { solc: { - version: "0.8.8" // Fetch exact version from solc-bin (default: truffle's version) + version: "0.8.9" // Fetch exact version from solc-bin (default: truffle's version) // docker: true, // Use "0.5.1" you've installed locally with docker (default: false) // settings: { // See the solidity docs for advice about optimization and evmVersion // optimizer: { From 2eca0bb2e709b03395ba40354049fb39e36c0f27 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 29 Sep 2021 20:12:53 -0400 Subject: [PATCH 107/124] Switch padding mode for immutables based on Solidity version --- packages/codec/lib/core.ts | 18 ++++++++++++++++- packages/codec/lib/decode.ts | 39 +++++++++++++++++++++++++++--------- 2 files changed, 46 insertions(+), 11 deletions(-) diff --git a/packages/codec/lib/core.ts b/packages/codec/lib/core.ts index b8cfa1b8f5a..570109cc3dd 100644 --- a/packages/codec/lib/core.ts +++ b/packages/codec/lib/core.ts @@ -4,6 +4,8 @@ const debug = debugModule("codec:core"); import type * as Abi from "@truffle/abi-utils"; import * as Ast from "@truffle/codec/ast"; import * as AbiData from "@truffle/codec/abi-data"; +import * as Compiler from "@truffle/codec/compiler"; +import type { PaddingMode } from "@truffle/codec/common"; import * as Topic from "@truffle/codec/topic"; import type * as Pointer from "@truffle/codec/pointer"; import type { @@ -846,11 +848,25 @@ function* decodeBytecode( for (const variable of allocation.immutables) { const dataType = variable.type; //we don't conditioning on decodingMode here because we know it let value: Format.Values.Result; + let paddingMode: PaddingMode; //how immutables are padded depends on the Solidity version :-/ + switch (Compiler.Utils.solidityFamily(context.compiler)) { + case "0.5.x": + case "0.8.x": + case "0.8.7+": + //from their introduction until 0.8.8, they were always zero-padded, + //regardless of sign + paddingMode = "zero"; + break; + default: + //now they're padded normally + paddingMode = "default"; + break; + } try { value = yield* decode(dataType, variable.pointer, info, { allowRetry: true, //we know we're in full mode strictAbiMode: true, - paddingMode: "zero" //force zero-padding! + paddingMode }); } catch (error) { if (error instanceof StopDecodingError && error.allowRetry) { diff --git a/packages/codec/lib/decode.ts b/packages/codec/lib/decode.ts index afa1e026831..399f96e7405 100644 --- a/packages/codec/lib/decode.ts +++ b/packages/codec/lib/decode.ts @@ -3,6 +3,7 @@ const debug = debugModule("codec:decode"); import * as AstConstant from "@truffle/codec/ast-constant"; import * as AbiData from "@truffle/codec/abi-data"; +import * as Compiler from "@truffle/codec/compiler"; import * as Format from "@truffle/codec/format"; import type * as Pointer from "@truffle/codec/pointer"; import * as Basic from "@truffle/codec/basic"; @@ -62,19 +63,37 @@ function* decodeDispatch( case "nowhere": //currently only basic types can go in code, so we'll dispatch directly to decodeBasic //(if it's a nowhere pointer, this will return an error result, of course) - //also: we force zero-padding! - return yield* Basic.Decode.decodeBasic(dataType, pointer, info, { - ...options, - paddingMode: "zero" - }); + //also: on types with immutables but before 0.8.9, we force zero-padding! + debug("compiler: %o", info.currentContext.compiler); + debug("options: %o", options); + switch (Compiler.Utils.solidityFamily(info.currentContext.compiler)) { + case "0.5.x": + case "0.8.x": + case "0.8.7+": + return yield* Basic.Decode.decodeBasic(dataType, pointer, info, { + ...options, + paddingMode: "zero" + }); + default: + return yield* Basic.Decode.decodeBasic(dataType, pointer, info, options); + } case "memory": //this case -- decoding something that resides *directly* in memory, //rather than located via a pointer -- only comes up when decoding immutables - //in a constructor. thus, we turn on the forceRightPadding option. - return yield* Memory.Decode.decodeMemory(dataType, pointer, info, { - ...options, - paddingMode: "right" - }); + //in a constructor. thus, we turn on the forceRightPadding option on Solidity + //versions prior to 0.8.9, because before then all immutables would be right-padded + //while in memory + switch (Compiler.Utils.solidityFamily(info.currentContext.compiler)) { + case "0.5.x": + case "0.8.x": + case "0.8.7+": + return yield* Memory.Decode.decodeMemory(dataType, pointer, info, { + ...options, + paddingMode: "right" + }); + default: + return yield* Memory.Decode.decodeMemory(dataType, pointer, info, options); + } } } From 94e835fef2ca1207b49e4d0e8f44739eb7be3834 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 30 Sep 2021 13:07:49 -0400 Subject: [PATCH 108/124] Move compiler version check to proper place --- packages/codec/lib/basic/allocate/index.ts | 16 +++------------- packages/codec/lib/storage/allocate/index.ts | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index 5ec0b128f88..3cf501bc72b 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -1,7 +1,6 @@ import debugModule from "debug"; const debug = debugModule("codec:basic:allocate"); -import * as Compiler from "@truffle/codec/compiler"; import * as Common from "@truffle/codec/common"; import * as Evm from "@truffle/codec/evm"; import * as Format from "@truffle/codec/format"; @@ -9,8 +8,7 @@ import * as Format from "@truffle/codec/format"; //only for direct types! export function byteLength( dataType: Format.Types.Type, - userDefinedTypes?: Format.Types.TypesById, - compiler?: Compiler.CompilerVersion + userDefinedTypes?: Format.Types.TypesById ): number { switch (dataType.typeClass) { case "bool": @@ -51,16 +49,8 @@ export function byteLength( Format.Types.typeString(dataType) ); } - switch (Compiler.Utils.solidityFamily(compiler)) { - case "0.8.7+": - //UDVTs were introduced in Solidity 0.8.8. However, in that version, - //and that version only, they have a bug where they always take up a - //full word in storage regardless of the size of the underlying type. - return Evm.Utils.ADDRESS_SIZE;; - default: - const { underlyingType } = storedType; - return byteLength(underlyingType, userDefinedTypes, compiler); - } + const { underlyingType } = storedType; + return byteLength(underlyingType, userDefinedTypes); } } } diff --git a/packages/codec/lib/storage/allocate/index.ts b/packages/codec/lib/storage/allocate/index.ts index 7ce94f688f3..ebecaf305bf 100644 --- a/packages/codec/lib/storage/allocate/index.ts +++ b/packages/codec/lib/storage/allocate/index.ts @@ -1,7 +1,7 @@ import debugModule from "debug"; const debug = debugModule("codec:storage:allocate"); -import type * as Compiler from "@truffle/codec/compiler"; +import * as Compiler from "@truffle/codec/compiler"; import * as Common from "@truffle/codec/common"; import * as Basic from "@truffle/codec/basic"; import type * as Storage from "@truffle/codec/storage/types"; @@ -561,11 +561,23 @@ function storageSizeAndAllocate( }; } + case "userDefinedValueType": + if (Compiler.Utils.solidityFamily(compiler) === "0.8.7+") { + //UDVTs were introduced in Solidity 0.8.8. However, in that version, + //and that version only, they have a bug where they always take up a + //full word in storage regardless of the size of the underlying type. + return { + size: { words: 1 }, + allocations: existingAllocations + }; + } + //otherwise, treat them normally + //DELIBERATE FALL-TRHOUGH default: //otherwise, it's a direct type return { size: { - bytes: Basic.Allocate.byteLength(dataType, userDefinedTypes, compiler) + bytes: Basic.Allocate.byteLength(dataType, userDefinedTypes) }, allocations: existingAllocations }; From f28e8c42090dd8c9709660538393eb47331e0e17 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 30 Sep 2021 14:33:54 -0400 Subject: [PATCH 109/124] Add defaultOrZero padding mode, remove explicit version checks --- packages/codec/lib/basic/decode/index.ts | 18 ++++++++++++------ packages/codec/lib/common/types.ts | 5 +++-- packages/codec/lib/core.ts | 17 +---------------- packages/codec/lib/decode.ts | 20 ++++++-------------- 4 files changed, 22 insertions(+), 38 deletions(-) diff --git a/packages/codec/lib/basic/decode/index.ts b/packages/codec/lib/basic/decode/index.ts index b4222a798b7..5b4681bcb39 100644 --- a/packages/codec/lib/basic/decode/index.ts +++ b/packages/codec/lib/basic/decode/index.ts @@ -704,7 +704,7 @@ function checkPadding( userDefinedTypes?: Format.Types.TypesById ): boolean { const length = byteLength(dataType, userDefinedTypes); - let paddingType = getPaddingType(dataType, paddingMode); + const paddingType = getPaddingType(dataType, paddingMode); if (paddingMode === "permissive") { switch (dataType.typeClass) { case "bool": @@ -737,11 +737,10 @@ function removePaddingDirect( paddingType: PaddingType ) { switch (paddingType) { - case "left": - case "signed": - return bytes.slice(-length); case "right": return bytes.slice(0, length); + default: + return bytes.slice(-length); } } @@ -757,6 +756,8 @@ function checkPaddingDirect( return checkPaddingRight(bytes, length); case "signed": return checkPaddingSigned(bytes, length); + case "signedOrLeft": + return checkPaddingSigned(bytes, length) || checkPaddingLeft(bytes, length); } } @@ -770,9 +771,14 @@ function getPaddingType( case "default": case "permissive": return defaultPaddingType(dataType); - case "zero": - let defaultType = defaultPaddingType(dataType); + case "zero": { + const defaultType = defaultPaddingType(dataType); return defaultType === "signed" ? "left" : defaultType; + } + case "defaultOrZero": { + const defaultType = defaultPaddingType(dataType); + return defaultType === "signed" ? "signedOrLeft" : defaultType; + } } } diff --git a/packages/codec/lib/common/types.ts b/packages/codec/lib/common/types.ts index 1fba462fa5c..1209eebe6c9 100644 --- a/packages/codec/lib/common/types.ts +++ b/packages/codec/lib/common/types.ts @@ -18,16 +18,17 @@ export type ContractKind = "contract" | "library" | "interface"; /** * @Category Enumerations */ -export type PaddingMode = "default" | "permissive" | "zero" | "right"; +export type PaddingMode = "default" | "permissive" | "zero" | "right" | "defaultOrZero"; //default: check padding; the type of padding is determined by the type //permissive: like default, but turns off the check on certain types //zero: forces zero-padding even on signed types //right: forces right-padding on all types +//defaultOrZero: allows either default or zero /** * @Category Enumerations */ -export type PaddingType = "left" | "right" | "signed"; +export type PaddingType = "left" | "right" | "signed" | "signedOrLeft"; /** diff --git a/packages/codec/lib/core.ts b/packages/codec/lib/core.ts index 570109cc3dd..d85c9d62ba5 100644 --- a/packages/codec/lib/core.ts +++ b/packages/codec/lib/core.ts @@ -5,7 +5,6 @@ import type * as Abi from "@truffle/abi-utils"; import * as Ast from "@truffle/codec/ast"; import * as AbiData from "@truffle/codec/abi-data"; import * as Compiler from "@truffle/codec/compiler"; -import type { PaddingMode } from "@truffle/codec/common"; import * as Topic from "@truffle/codec/topic"; import type * as Pointer from "@truffle/codec/pointer"; import type { @@ -848,25 +847,11 @@ function* decodeBytecode( for (const variable of allocation.immutables) { const dataType = variable.type; //we don't conditioning on decodingMode here because we know it let value: Format.Values.Result; - let paddingMode: PaddingMode; //how immutables are padded depends on the Solidity version :-/ - switch (Compiler.Utils.solidityFamily(context.compiler)) { - case "0.5.x": - case "0.8.x": - case "0.8.7+": - //from their introduction until 0.8.8, they were always zero-padded, - //regardless of sign - paddingMode = "zero"; - break; - default: - //now they're padded normally - paddingMode = "default"; - break; - } try { value = yield* decode(dataType, variable.pointer, info, { allowRetry: true, //we know we're in full mode strictAbiMode: true, - paddingMode + paddingMode: "defaultOrZero" }); } catch (error) { if (error instanceof StopDecodingError && error.allowRetry) { diff --git a/packages/codec/lib/decode.ts b/packages/codec/lib/decode.ts index 399f96e7405..0ce63ba99f9 100644 --- a/packages/codec/lib/decode.ts +++ b/packages/codec/lib/decode.ts @@ -63,20 +63,12 @@ function* decodeDispatch( case "nowhere": //currently only basic types can go in code, so we'll dispatch directly to decodeBasic //(if it's a nowhere pointer, this will return an error result, of course) - //also: on types with immutables but before 0.8.9, we force zero-padding! - debug("compiler: %o", info.currentContext.compiler); - debug("options: %o", options); - switch (Compiler.Utils.solidityFamily(info.currentContext.compiler)) { - case "0.5.x": - case "0.8.x": - case "0.8.7+": - return yield* Basic.Decode.decodeBasic(dataType, pointer, info, { - ...options, - paddingMode: "zero" - }); - default: - return yield* Basic.Decode.decodeBasic(dataType, pointer, info, options); - } + //(also, Solidity <0.8.9 would always zero-pad immutables regardless of type, + //so we have to set the padding mode appropriately to allow for this) + return yield* Basic.Decode.decodeBasic(dataType, pointer, info, { + ...options, + paddingMode: "defaultOrZero" + }); case "memory": //this case -- decoding something that resides *directly* in memory, From 1f05ab28b0007e6fab26133d573c4a1ae4b5ef6c Mon Sep 17 00:00:00 2001 From: Lee Faria Date: Thu, 30 Sep 2021 16:36:53 -0500 Subject: [PATCH 110/124] Publish - @truffle/artifactor@4.0.125 - @truffle/box@2.1.29 - @truffle/code-utils@1.2.30 - @truffle/codec@0.11.16 - @truffle/compile-common@0.7.22 - @truffle/compile-solidity@5.3.24 - @truffle/compile-vyper@3.1.28 - @truffle/config@1.3.9 - @truffle/contract-tests@0.1.56 - @truffle/contract@4.3.37 - @truffle/core@5.4.13 - @truffle/db-kit@0.1.34 - @truffle/db-loader@0.0.12 - @truffle/db@0.5.33 - @truffle/debug-utils@5.1.17 - @truffle/debugger@9.1.18 - @truffle/decoder@5.0.9 - @truffle/deployer@3.2.46 - @truffle/environment@0.2.74 - @truffle/external-compile@2.0.26 - @truffle/fetch-and-compile@0.1.9 - @truffle/interface-adapter@0.5.8 - @truffle/migrate@3.2.46 - @truffle/profiler@0.1.0 - @truffle/provider@0.2.42 - @truffle/provisioner@0.2.32 - @truffle/reporters@2.0.7 - @truffle/require@2.0.77 - @truffle/resolver@7.0.31 - @truffle/source-fetcher@0.5.9 - @truffle/source-map-utils@1.3.60 - truffle@5.4.13 - @truffle/workflow-compile@3.2.32 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/code-utils/package.json | 2 +- packages/codec/package.json | 4 +-- packages/compile-common/package.json | 2 +- packages/compile-solidity/package.json | 14 ++++----- packages/compile-vyper/package.json | 12 +++---- packages/config/package.json | 4 +-- packages/contract-tests/package.json | 6 ++-- packages/contract/package.json | 6 ++-- packages/core/package.json | 42 ++++++++++++------------- packages/db-kit/package.json | 18 +++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 10 +++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++----- packages/decoder/package.json | 16 +++++----- packages/deployer/package.json | 8 ++--- packages/environment/package.json | 8 ++--- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 12 +++---- packages/interface-adapter/package.json | 2 +- packages/migrate/package.json | 14 ++++----- packages/profiler/package.json | 4 +-- packages/provider/package.json | 4 +-- packages/provisioner/package.json | 4 +-- packages/reporters/package.json | 2 +- packages/require/package.json | 6 ++-- packages/resolver/package.json | 6 ++-- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 6 ++-- packages/truffle/package.json | 18 +++++------ packages/workflow-compile/package.json | 18 +++++------ 33 files changed, 143 insertions(+), 143 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 38fa44ec27c..b3eadfbff3a 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -13,7 +13,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.124", + "version": "4.0.125", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -28,7 +28,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.36", + "@truffle/contract": "^4.3.37", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index eddbaf36249..684501628aa 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.1.28", + "version": "2.1.29", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -21,7 +21,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.8", + "@truffle/config": "^1.3.9", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/code-utils/package.json b/packages/code-utils/package.json index 08156545b51..02c0798c16b 100644 --- a/packages/code-utils/package.json +++ b/packages/code-utils/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.2.29", + "version": "1.2.30", "main": "dist/src/index.js", "scripts": { "build": "tsc", diff --git a/packages/codec/package.json b/packages/codec/package.json index afc3bd1c632..fa70690052c 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.15", + "version": "0.11.16", "main": "dist/lib/index.js", "files": [ "dist" @@ -26,7 +26,7 @@ "types": "dist/lib/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/compile-common": "^0.7.21", + "@truffle/compile-common": "^0.7.22", "big.js": "^5.2.2", "bn.js": "^5.1.3", "cbor": "^5.1.0", diff --git a/packages/compile-common/package.json b/packages/compile-common/package.json index 303c755e003..313a767129c 100644 --- a/packages/compile-common/package.json +++ b/packages/compile-common/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/compile-common", - "version": "0.7.21", + "version": "0.7.22", "description": "Common compiler integration support infrastructure for Truffle", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index 44918d63fc1..ebdca7416af 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,18 +12,18 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.23", + "version": "5.3.24", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh" }, "dependencies": { - "@truffle/compile-common": "^0.7.21", - "@truffle/config": "^1.3.8", + "@truffle/compile-common": "^0.7.22", + "@truffle/config": "^1.3.9", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/profiler": "^0.1.0-0", + "@truffle/profiler": "^0.1.0", "axios": "^0.21.1", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -36,9 +36,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.124", - "@truffle/box": "^2.1.28", - "@truffle/resolver": "^7.0.30", + "@truffle/artifactor": "^4.0.125", + "@truffle/box": "^2.1.29", + "@truffle/resolver": "^7.0.31", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index a32b32a942f..f1e54b1ca4f 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -12,17 +12,17 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.27", + "version": "3.1.28", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/compile-common": "^0.7.21", - "@truffle/config": "^1.3.8", - "@truffle/resolver": "^7.0.30", - "@truffle/profiler": "^0.1.0-0", + "@truffle/compile-common": "^0.7.22", + "@truffle/config": "^1.3.9", + "@truffle/profiler": "^0.1.0", + "@truffle/resolver": "^7.0.31", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", @@ -30,7 +30,7 @@ "semver": "^7.3.4" }, "devDependencies": { - "@truffle/code-utils": "^1.2.29", + "@truffle/code-utils": "^1.2.30", "mocha": "8.1.2" }, "keywords": [ diff --git a/packages/config/package.json b/packages/config/package.json index 78c5d0667ad..f03d148cf0f 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.8", + "version": "1.3.9", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -23,7 +23,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/events": "^0.0.15", - "@truffle/provider": "^0.2.41", + "@truffle/provider": "^0.2.42", "conf": "^10.0.2", "find-up": "^2.1.0", "lodash.assignin": "^4.2.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 2196ca1c4af..895af0ee961 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.55", + "version": "0.1.56", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.23", - "@truffle/contract": "^4.3.36", + "@truffle/compile-solidity": "^5.3.24", + "@truffle/contract": "^4.3.37", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index a423af8b31a..eb2605ad0a9 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.36", + "version": "4.3.37", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,9 +24,9 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.16", + "@truffle/debug-utils": "^5.1.17", "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.7", + "@truffle/interface-adapter": "^0.5.8", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", "web3": "1.5.3", diff --git a/packages/core/package.json b/packages/core/package.json index 44951e2d3cb..f846ef72477 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.12", + "version": "5.4.13", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,34 +21,34 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.124", - "@truffle/box": "^2.1.28", - "@truffle/codec": "^0.11.15", - "@truffle/compile-solidity": "^5.3.23", - "@truffle/config": "^1.3.8", - "@truffle/contract": "^4.3.36", - "@truffle/debug-utils": "^5.1.16", - "@truffle/debugger": "^9.1.17", - "@truffle/decoder": "^5.0.8", - "@truffle/deployer": "^3.2.45", - "@truffle/environment": "^0.2.73", + "@truffle/artifactor": "^4.0.125", + "@truffle/box": "^2.1.29", + "@truffle/codec": "^0.11.16", + "@truffle/compile-solidity": "^5.3.24", + "@truffle/config": "^1.3.9", + "@truffle/contract": "^4.3.37", + "@truffle/debug-utils": "^5.1.17", + "@truffle/debugger": "^9.1.18", + "@truffle/decoder": "^5.0.9", + "@truffle/deployer": "^3.2.46", + "@truffle/environment": "^0.2.74", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.8", - "@truffle/interface-adapter": "^0.5.7", - "@truffle/migrate": "^3.2.45", + "@truffle/fetch-and-compile": "^0.1.9", + "@truffle/interface-adapter": "^0.5.8", + "@truffle/migrate": "^3.2.46", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", - "@truffle/provider": "^0.2.41", - "@truffle/provisioner": "^0.2.31", - "@truffle/require": "^2.0.76", - "@truffle/resolver": "^7.0.30", - "@truffle/source-fetcher": "^0.5.8", - "@truffle/workflow-compile": "^3.2.31", + "@truffle/provider": "^0.2.42", + "@truffle/provisioner": "^0.2.32", + "@truffle/require": "^2.0.77", + "@truffle/resolver": "^7.0.31", + "@truffle/source-fetcher": "^0.5.9", + "@truffle/workflow-compile": "^3.2.32", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index 9ebcc413f1b..a5adc01ac9a 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.33", + "version": "0.1.34", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.15", - "@truffle/compile-common": "^0.7.21", - "@truffle/compile-solidity": "^5.3.23", - "@truffle/config": "^1.3.8", - "@truffle/db": "^0.5.32", - "@truffle/decoder": "^5.0.8", - "@truffle/environment": "^0.2.73", - "@truffle/fetch-and-compile": "^0.1.8", + "@truffle/codec": "^0.11.16", + "@truffle/compile-common": "^0.7.22", + "@truffle/compile-solidity": "^5.3.24", + "@truffle/config": "^1.3.9", + "@truffle/db": "^0.5.33", + "@truffle/decoder": "^5.0.9", + "@truffle/environment": "^0.2.74", + "@truffle/fetch-and-compile": "^0.1.9", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index b084e49e797..6beac65950d 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.11", + "version": "0.0.12", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.32" + "@truffle/db": "^0.5.33" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index 44141b084d3..fdcd665b000 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.32", + "version": "0.5.33", "main": "dist/src/index.js", "files": [ "dist", @@ -37,9 +37,9 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/code-utils": "^1.2.29", - "@truffle/config": "^1.3.8", - "@truffle/resolver": "^7.0.30", + "@truffle/code-utils": "^1.2.30", + "@truffle/config": "^1.3.9", + "@truffle/resolver": "^7.0.31", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -59,7 +59,7 @@ }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", - "@truffle/compile-common": "^0.7.21", + "@truffle/compile-common": "^0.7.22", "@truffle/contract-schema": "^3.4.3", "@types/debug": "^4.1.5", "@types/express": "^4.16.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index 04776a5d4a3..fc6b37b42df 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.16", + "version": "5.1.17", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.15", + "@truffle/codec": "^0.11.16", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index c4283ed4cfa..c5707375ed0 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.17", + "version": "9.1.18", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.15", - "@truffle/source-map-utils": "^1.3.59", + "@truffle/codec": "^0.11.16", + "@truffle/source-map-utils": "^1.3.60", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.3" }, "devDependencies": { - "@truffle/artifactor": "^4.0.124", - "@truffle/box": "^2.1.28", - "@truffle/migrate": "^3.2.45", - "@truffle/resolver": "^7.0.30", - "@truffle/workflow-compile": "^3.2.31", + "@truffle/artifactor": "^4.0.125", + "@truffle/box": "^2.1.29", + "@truffle/migrate": "^3.2.46", + "@truffle/resolver": "^7.0.31", + "@truffle/workflow-compile": "^3.2.32", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 917bb5f8013..7d5bc1ad187 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.8", + "version": "5.0.9", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.15", - "@truffle/compile-common": "^0.7.21", - "@truffle/source-map-utils": "^1.3.59", + "@truffle/codec": "^0.11.16", + "@truffle/compile-common": "^0.7.22", + "@truffle/source-map-utils": "^1.3.60", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.3" }, "devDependencies": { - "@truffle/config": "^1.3.8", + "@truffle/config": "^1.3.9", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.45", - "@truffle/provider": "^0.2.41", - "@truffle/workflow-compile": "^3.2.31", + "@truffle/migrate": "^3.2.46", + "@truffle/provider": "^0.2.42", + "@truffle/workflow-compile": "^3.2.32", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index 719745515a5..ee08ce197c5 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.45", + "version": "3.2.46", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,15 +22,15 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.36", + "@truffle/contract": "^4.3.37", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", "web3-utils": "1.5.3" }, "devDependencies": { - "@truffle/reporters": "^2.0.6", - "@truffle/workflow-compile": "^3.2.31", + "@truffle/reporters": "^2.0.7", + "@truffle/workflow-compile": "^3.2.32", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 3ba3e5c727f..771243f7c09 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.73", + "version": "0.2.74", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.124", + "@truffle/artifactor": "^4.0.125", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.7", - "@truffle/resolver": "^7.0.30", + "@truffle/interface-adapter": "^0.5.8", + "@truffle/resolver": "^7.0.31", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index d07e90b87d4..eb12410c754 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.25", + "version": "2.0.26", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.8", + "@truffle/config": "^1.3.9", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 531c9b25485..063af692f90 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.8", + "version": "0.1.9", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.15", - "@truffle/compile-solidity": "^5.3.23", - "@truffle/source-fetcher": "^0.5.8", + "@truffle/codec": "^0.11.16", + "@truffle/compile-solidity": "^5.3.24", + "@truffle/source-fetcher": "^0.5.9", "semver": "^7.3.4" }, "devDependencies": { - "@truffle/compile-common": "^0.7.21", - "@truffle/config": "^1.3.8", + "@truffle/compile-common": "^0.7.22", + "@truffle/config": "^1.3.9", "typescript": "^4.1.4" } } diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index 8e3bd2829b2..4824d38346c 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.7", + "version": "0.5.8", "main": "dist/index.js", "directories": { "lib": "lib" diff --git a/packages/migrate/package.json b/packages/migrate/package.json index 8498bac2633..37cc2b00ba3 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.45", + "version": "3.2.46", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.8", - "@truffle/db-loader": "^0.0.11", - "@truffle/deployer": "^3.2.45", + "@truffle/config": "^1.3.9", + "@truffle/db-loader": "^0.0.12", + "@truffle/deployer": "^3.2.46", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.7", - "@truffle/reporters": "^2.0.6", - "@truffle/require": "^2.0.76", + "@truffle/interface-adapter": "^0.5.8", + "@truffle/reporters": "^2.0.7", + "@truffle/require": "^2.0.77", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/profiler/package.json b/packages/profiler/package.json index 0aa2df40267..9a221276c65 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/profiler", - "version": "0.1.0-0", + "version": "0.1.0", "description": "Package for dealing with Solidity sources along with their Truffle artifacts", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.6", + "@truffle/config": "^1.3.9", "@types/node": "12.12.21", "ts-node": "^9.0.0", "typescript": "^4.1.4" diff --git a/packages/provider/package.json b/packages/provider/package.json index 7feaca7866c..312d0094586 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.41", + "version": "0.2.42", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -21,7 +21,7 @@ "types": "./typings/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/interface-adapter": "^0.5.7", + "@truffle/interface-adapter": "^0.5.8", "web3": "1.5.3" }, "devDependencies": { diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index 278b8d6585f..71cbfdc5f72 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.31", + "version": "0.2.32", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.8" + "@truffle/config": "^1.3.9" } } diff --git a/packages/reporters/package.json b/packages/reporters/package.json index 5cc39d05fde..72b971a2ed0 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.6", + "version": "2.0.7", "main": "index.js", "scripts": { "prepare": "exit 0" diff --git a/packages/require/package.json b/packages/require/package.json index e9f534101f1..bec8ef6476a 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,16 +12,16 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.76", + "version": "2.0.77", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.8", + "@truffle/config": "^1.3.9", "@truffle/expect": "^0.0.18", - "@truffle/interface-adapter": "^0.5.7", + "@truffle/interface-adapter": "^0.5.8", "original-require": "^1.0.1" }, "devDependencies": { diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 448fbfe6a8e..64fc5b5f242 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.30", + "version": "7.0.31", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.36", + "@truffle/contract": "^4.3.37", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.31", + "@truffle/provisioner": "^0.2.32", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index e8ffc69b696..16342a3b1f8 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.8", + "version": "0.5.9", "main": "dist/index.js", "files": [ "dist" diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index a18d3eba30f..b55abb21f86 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.59", + "version": "1.3.60", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/code-utils": "^1.2.29", - "@truffle/codec": "^0.11.15", + "@truffle/code-utils": "^1.2.30", + "@truffle/codec": "^0.11.16", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 09461154551..8f502905d90 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.12", + "version": "5.4.13", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,25 +31,25 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.32", + "@truffle/db": "^0.5.33", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.11", - "@truffle/debugger": "^9.1.17", + "@truffle/db-loader": "^0.0.12", + "@truffle/debugger": "^9.1.18", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.28", - "@truffle/config": "^1.3.8", - "@truffle/contract": "^4.3.36", - "@truffle/core": "^5.4.12", - "@truffle/interface-adapter": "^0.5.7", + "@truffle/box": "^2.1.29", + "@truffle/config": "^1.3.9", + "@truffle/contract": "^4.3.37", + "@truffle/core": "^5.4.13", + "@truffle/interface-adapter": "^0.5.8", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", "eslint": "^5.7.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index 9a59dbc92d6..dfedae2f4d9 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.31", + "version": "3.2.32", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.124", - "@truffle/compile-common": "^0.7.21", - "@truffle/compile-solidity": "^5.3.23", - "@truffle/compile-vyper": "^3.1.27", - "@truffle/config": "^1.3.8", - "@truffle/db-loader": "^0.0.11", + "@truffle/artifactor": "^4.0.125", + "@truffle/compile-common": "^0.7.22", + "@truffle/compile-solidity": "^5.3.24", + "@truffle/compile-vyper": "^3.1.28", + "@truffle/config": "^1.3.9", + "@truffle/db-loader": "^0.0.12", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.25", - "@truffle/resolver": "^7.0.30", + "@truffle/external-compile": "^2.0.26", + "@truffle/resolver": "^7.0.31", "fs-extra": "^9.1.0" }, "devDependencies": { From 8114ce8a25d7136c9971b5e762eade63dad1435d Mon Sep 17 00:00:00 2001 From: cds-amal Date: Thu, 30 Sep 2021 19:16:04 -0400 Subject: [PATCH 111/124] Internal improvement: only check permissions for monorepo packages --- scripts/npm-access.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/scripts/npm-access.js b/scripts/npm-access.js index 37d49cb5250..1ddb4b7c8ce 100644 --- a/scripts/npm-access.js +++ b/scripts/npm-access.js @@ -6,6 +6,14 @@ const getPkgPermissions = userOrOrg => { return JSON.parse(stringResponse); }; +const getMonorepoPackages = () => { + // get list of monorepo packages and remove lerna branding from output + const pkgs = execSync('$(yarn bin)/lerna ls | grep -v "^lerna"') + .toString() + .split("\n"); + return new Set(pkgs); +} + const orgs = ["trufflesuite", "truffle"]; for (let org of orgs) { @@ -19,8 +27,14 @@ for (let org of orgs) { const username = getNpmUsername(); const userPermissionsObject = getPkgPermissions(username); + const monoPkgs = getMonorepoPackages(); for (const pkg in permissions) { + // skip perm checks if package not in monorepo + if (!monoPkgs.has(pkg)) { + continue + } + if (!userPermissionsObject[pkg]) throw new Error(`You don't have permissions to publish ${pkg}`); if (permissions[pkg] !== userPermissionsObject[pkg]) From e94de60a13277ab42b7bb720010f1a504809e19b Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 30 Sep 2021 21:44:30 -0400 Subject: [PATCH 112/124] Add missing set of this.recognized in Recognizer --- packages/fetch-and-compile/lib/recognizer.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/fetch-and-compile/lib/recognizer.ts b/packages/fetch-and-compile/lib/recognizer.ts index 02c68f4f701..2bd913a34d2 100644 --- a/packages/fetch-and-compile/lib/recognizer.ts +++ b/packages/fetch-and-compile/lib/recognizer.ts @@ -59,10 +59,13 @@ export class SingleRecognizer implements Recognizer { addCompiledInfo( info: FetchAndCompileResult, - _address: string, + address: string, _fetcherName: string ): void { this.compileResult = info.compileResult; this.sourceInfo = info.sourceInfo; + if (address === this.address) { //I guess? this should never be false + this.recognized = true; + } } } From ebbbe300f55d55416310c9fc83d70dd6092c9297 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Thu, 30 Sep 2021 16:33:37 -0400 Subject: [PATCH 113/124] Update web3 to 1.6.0 --- packages/artifactor/package.json | 2 +- packages/codec/package.json | 2 +- packages/contract-tests/package.json | 4 +- packages/contract/package.json | 10 +- packages/core/package.json | 4 +- packages/db/package.json | 4 +- packages/debugger/package.json | 4 +- packages/decoder/package.json | 2 +- packages/deployer/package.json | 4 +- packages/environment/package.json | 2 +- packages/external-compile/package.json | 2 +- packages/interface-adapter/package.json | 2 +- packages/provider/package.json | 2 +- packages/reporters/package.json | 2 +- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 2 +- packages/truffle/package.json | 2 +- yarn.lock | 310 ++++++++++++------------ 18 files changed, 181 insertions(+), 181 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index b3eadfbff3a..5057473ea96 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -42,7 +42,7 @@ "tmp": "^0.2.1", "ts-node": "^9.0.0", "typescript": "^4.1.4", - "web3": "1.5.3" + "web3": "1.6.0" }, "publishConfig": { "access": "public" diff --git a/packages/codec/package.json b/packages/codec/package.json index fa70690052c..3de149e8f20 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -37,7 +37,7 @@ "lodash.sum": "^4.0.2", "semver": "^7.3.4", "utf8": "^3.0.0", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "devDependencies": { "@truffle/contract-schema": "^3.4.3", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 895af0ee961..0c4ebda0acd 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -30,7 +30,7 @@ "ganache-core": "2.13.0", "mocha": "8.0.1", "sinon": "^9.0.2", - "web3": "1.5.3", - "web3-core-promievent": "1.5.3" + "web3": "1.6.0", + "web3-core-promievent": "1.6.0" } } diff --git a/packages/contract/package.json b/packages/contract/package.json index eb2605ad0a9..a45d2fead5c 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -29,11 +29,11 @@ "@truffle/interface-adapter": "^0.5.8", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", - "web3": "1.5.3", - "web3-core-helpers": "1.5.3", - "web3-core-promievent": "1.5.3", - "web3-eth-abi": "1.5.3", - "web3-utils": "1.5.3" + "web3": "1.6.0", + "web3-core-helpers": "1.6.0", + "web3-core-promievent": "1.6.0", + "web3-eth-abi": "1.6.0", + "web3-utils": "1.6.0" }, "devDependencies": { "browserify": "^17.0.0", diff --git a/packages/core/package.json b/packages/core/package.json index f846ef72477..83ccdcda509 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -77,8 +77,8 @@ "spawn-args": "^0.1.0", "tmp": "^0.2.1", "universal-analytics": "^0.4.17", - "web3": "1.5.3", - "web3-utils": "1.5.3", + "web3": "1.6.0", + "web3-utils": "1.6.0", "xregexp": "^4.2.4", "yargs": "^8.0.2" }, diff --git a/packages/db/package.json b/packages/db/package.json index fdcd665b000..8f3db40f73d 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -55,7 +55,7 @@ "pouchdb-adapter-node-websql": "^7.0.0", "pouchdb-debug": "^7.1.1", "pouchdb-find": "^7.0.0", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", @@ -87,7 +87,7 @@ "typedoc-neo-theme": "^1.1.0", "typescript": "^4.1.4", "typescript-transform-paths": "^2.1.0", - "web3": "1.5.3" + "web3": "1.6.0" }, "keywords": [ "database", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index c5707375ed0..ed5b02f5a27 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -40,8 +40,8 @@ "remote-redux-devtools": "^0.5.12", "reselect-tree": "^1.3.4", "semver": "^7.3.4", - "web3": "1.5.3", - "web3-eth-abi": "1.5.3" + "web3": "1.6.0", + "web3-eth-abi": "1.6.0" }, "devDependencies": { "@truffle/artifactor": "^4.0.125", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 7d5bc1ad187..1cafe977818 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -31,7 +31,7 @@ "@truffle/source-map-utils": "^1.3.60", "bn.js": "^5.1.3", "debug": "^4.3.1", - "web3": "1.5.3" + "web3": "1.6.0" }, "devDependencies": { "@truffle/config": "^1.3.9", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index ee08ce197c5..53c9dd74ab6 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -26,7 +26,7 @@ "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "devDependencies": { "@truffle/reporters": "^2.0.7", @@ -34,7 +34,7 @@ "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", - "web3": "1.5.3" + "web3": "1.6.0" }, "keywords": [ "contracts", diff --git a/packages/environment/package.json b/packages/environment/package.json index 771243f7c09..5068c437a8e 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -27,7 +27,7 @@ "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", - "web3": "1.5.3" + "web3": "1.6.0" }, "devDependencies": { "debug": "^4.3.1" diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index eb12410c754..b351bb59bdd 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -24,7 +24,7 @@ "@truffle/expect": "^0.0.18", "debug": "^4.3.1", "glob": "^7.1.6", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "devDependencies": { "chai": "^4.2.0", diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index 4824d38346c..d1e4d82ab4b 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -26,7 +26,7 @@ "dependencies": { "bn.js": "^5.1.3", "ethers": "^4.0.32", - "web3": "1.5.3" + "web3": "1.6.0" }, "devDependencies": { "@types/bn.js": "^4.11.4", diff --git a/packages/provider/package.json b/packages/provider/package.json index 312d0094586..d8fb0a86fff 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -22,7 +22,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.8", - "web3": "1.5.3" + "web3": "1.6.0" }, "devDependencies": { "ganache-core": "2.13.0", diff --git a/packages/reporters/package.json b/packages/reporters/package.json index 72b971a2ed0..e466cd85f32 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -19,7 +19,7 @@ }, "dependencies": { "ora": "^3.4.0", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "publishConfig": { "access": "public" diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 16342a3b1f8..88fe7e642f0 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -29,7 +29,7 @@ "async-retry": "^1.3.1", "axios": "^0.21.1", "debug": "^4.3.1", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "devDependencies": { "@types/async-retry": "^1.4.3", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index b55abb21f86..cc01a367f7c 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -23,7 +23,7 @@ "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", - "web3-utils": "1.5.3" + "web3-utils": "1.6.0" }, "keywords": [ "contracts", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 8f502905d90..9100d147bc0 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -65,7 +65,7 @@ "shebang-loader": "0.0.1", "stream-buffers": "^3.0.1", "tmp": "^0.2.1", - "web3": "1.5.3", + "web3": "1.6.0", "webpack": "^5.21.2", "webpack-bundle-analyzer": "^3.0.3", "webpack-cli": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index c39c872772b..e2a8d9042a4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28612,10 +28612,10 @@ web3-bzz@1.3.0: swarm-js "^0.1.40" underscore "1.9.1" -web3-bzz@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.3.tgz#e36456905ce051138f9c3ce3623cbc73da088c2b" - integrity sha512-SlIkAqG0eS6cBS9Q2eBOTI1XFzqh83RqGJWnyrNZMDxUwsTVHL+zNnaPShVPvrWQA1Ub5b0bx1Kc5+qJVxsTJg== +web3-bzz@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.6.0.tgz#584b51339f21eedff159abc9239b4b7ef6ded840" + integrity sha512-ugYV6BsinwhIi0CsLWINBz4mqN9wR9vNG0WmyEbdECjxcPyr6vkaWt4qi0zqlUxEnYAwGj4EJXNrbjPILntQTQ== dependencies: "@types/node" "^12.12.6" got "9.6.0" @@ -28648,13 +28648,13 @@ web3-core-helpers@1.3.0: web3-eth-iban "1.3.0" web3-utils "1.3.0" -web3-core-helpers@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.5.3.tgz#099030235c477aadf39a94199ef40092151d563c" - integrity sha512-Ip1IjB3S8vN7Kf1PPjK41U5gskmMk6IJQlxIVuS8/1U7n/o0jC8krqtpRwiMfAgYyw3TXwBFtxSRTvJtnLyXZw== +web3-core-helpers@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.6.0.tgz#77e161b6ba930a4008a0df804ab379e0aa7e1e7f" + integrity sha512-H/IAH/0mrgvad/oxVKiAMC7qDzMrPPe/nRKmJOoIsupRg9/frvL62kZZiHhqVD1HMyyswbQFC69QRl7JqWzvxg== dependencies: - web3-eth-iban "1.5.3" - web3-utils "1.5.3" + web3-eth-iban "1.6.0" + web3-utils "1.6.0" web3-core-method@1.2.1: version "1.2.1" @@ -28691,17 +28691,17 @@ web3-core-method@1.3.0: web3-core-subscriptions "1.3.0" web3-utils "1.3.0" -web3-core-method@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.5.3.tgz#6cff97ed19fe4ea2e9183d6f703823a079f5132c" - integrity sha512-8wJrwQ2qD9ibWieF9oHXwrJsUGrv3XAtEkNeyvyNMpktNTIjxJ2jaFGQUuLiyUrMubD18XXgLk4JS6PJU4Loeg== +web3-core-method@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.6.0.tgz#ebe4ea51f5a4fa809bb68185576186359d3982e9" + integrity sha512-cHekyEil4mtcCOk6Q1Zh4y+2o5pTwsLIxP6Bpt4BRtZgdsyPiadYJpkLAVT/quch5xN7Qs5ZwG5AvRCS3VwD2g== dependencies: "@ethereumjs/common" "^2.4.0" "@ethersproject/transactions" "^5.0.0-beta.135" - web3-core-helpers "1.5.3" - web3-core-promievent "1.5.3" - web3-core-subscriptions "1.5.3" - web3-utils "1.5.3" + web3-core-helpers "1.6.0" + web3-core-promievent "1.6.0" + web3-core-subscriptions "1.6.0" + web3-utils "1.6.0" web3-core-promievent@1.2.1: version "1.2.1" @@ -28725,10 +28725,10 @@ web3-core-promievent@1.3.0: dependencies: eventemitter3 "4.0.4" -web3-core-promievent@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.5.3.tgz#3f11833c3dc6495577c274350b61144e0a4dba01" - integrity sha512-CFfgqvk3Vk6PIAxtLLuX+pOMozxkKCY+/GdGr7weMh033mDXEPvwyVjoSRO1PqIKj668/hMGQsVoIgbyxkJ9Mg== +web3-core-promievent@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.6.0.tgz#8b6053ae83cb47164540167fc361469fc604d2dd" + integrity sha512-ZzsevjMXWkhqW9dnVfTfb1OUcK7jKcKPvPIbQ4boJccNgvNZPZKlo8xB4pkAX38n4c59O5mC7Lt/z2QL/M5CeQ== dependencies: eventemitter3 "4.0.4" @@ -28765,16 +28765,16 @@ web3-core-requestmanager@1.3.0: web3-providers-ipc "1.3.0" web3-providers-ws "1.3.0" -web3-core-requestmanager@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.5.3.tgz#b339525815fd40e3a2a81813c864ddc413f7b6f7" - integrity sha512-9k/Bze2rs8ONix5IZR+hYdMNQv+ark2Ek2kVcrFgWO+LdLgZui/rn8FikPunjE+ub7x7pJaKCgVRbYFXjo3ZWg== +web3-core-requestmanager@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.6.0.tgz#8ef3a3b89cd08983bd94574f9c5893f70a8a6aea" + integrity sha512-CY5paPdiDXKTXPWaEUZekDfUXSuoE2vPxolwqzsvKwFWH5+H1NaXgrc+D5HpufgSvTXawTw0fy7IAicg8+PWqA== dependencies: util "^0.12.0" - web3-core-helpers "1.5.3" - web3-providers-http "1.5.3" - web3-providers-ipc "1.5.3" - web3-providers-ws "1.5.3" + web3-core-helpers "1.6.0" + web3-providers-http "1.6.0" + web3-providers-ipc "1.6.0" + web3-providers-ws "1.6.0" web3-core-subscriptions@1.2.1: version "1.2.1" @@ -28803,13 +28803,13 @@ web3-core-subscriptions@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-core-subscriptions@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.5.3.tgz#d7d69c4caad65074212028656e9dc56ca5c2159d" - integrity sha512-L2m9vG1iRN6thvmv/HQwO2YLhOQlmZU8dpLG6GSo9FBN14Uch868Swk0dYVr3rFSYjZ/GETevSXU+O+vhCummA== +web3-core-subscriptions@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.6.0.tgz#8c23b15b434a7c9f937652ecca45d7108e2c54df" + integrity sha512-kY9WZUY/m1URSOv3uTLshoZD9ZDiFKReIzHuPUkxFpD5oYNmr1/aPQNPCrrMxKODR7UVX/D90FxWwCYqHhLaxQ== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.5.3" + web3-core-helpers "1.6.0" web3-core@1.2.1: version "1.2.1" @@ -28847,18 +28847,18 @@ web3-core@1.3.0: web3-core-requestmanager "1.3.0" web3-utils "1.3.0" -web3-core@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.5.3.tgz#59f8728b27c8305b349051326aa262b9b7e907bf" - integrity sha512-ACTbu8COCu+0eUNmd9pG7Q9EVsNkAg2w3Y7SqhDr+zjTgbSHZV01jXKlapm9z+G3AN/BziV3zGwudClJ4u4xXQ== +web3-core@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.6.0.tgz#144eb00f651c9812faf7176abd7ee99d5f45e212" + integrity sha512-o0WsLrJ2yD+HAAc29lGMWJef/MutTyuzpJC0UzLJtIAQJqtpDalzWINEu4j8XYXGk34N/V6vudtzRPo23QEE6g== dependencies: "@types/bn.js" "^4.11.5" "@types/node" "^12.12.6" bignumber.js "^9.0.0" - web3-core-helpers "1.5.3" - web3-core-method "1.5.3" - web3-core-requestmanager "1.5.3" - web3-utils "1.5.3" + web3-core-helpers "1.6.0" + web3-core-method "1.6.0" + web3-core-requestmanager "1.6.0" + web3-utils "1.6.0" web3-eth-abi@1.2.1: version "1.2.1" @@ -28887,13 +28887,13 @@ web3-eth-abi@1.3.0: underscore "1.9.1" web3-utils "1.3.0" -web3-eth-abi@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.5.3.tgz#5aea9394d797f99ca0d9bd40c3417eb07241c96c" - integrity sha512-i/qhuFsoNrnV130CSRYX/z4SlCfSQ4mHntti5yTmmQpt70xZKYZ57BsU0R29ueSQ9/P+aQrL2t2rqkQkAloUxg== +web3-eth-abi@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.6.0.tgz#4225608f61ebb0607d80849bb2b20f910780253d" + integrity sha512-fImomGE9McuTMJLwK8Tp0lTUzXqCkWeMm00qPVIwpJ/h7lCw9UFYV9+4m29wSqW6FF+FIZKwc6UBEf9dlx3orA== dependencies: "@ethersproject/abi" "5.0.7" - web3-utils "1.5.3" + web3-utils "1.6.0" web3-eth-accounts@1.2.1: version "1.2.1" @@ -28946,10 +28946,10 @@ web3-eth-accounts@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-eth-accounts@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.5.3.tgz#076c816ff4d68c9dffebdc7fd2bfaddcfc163d77" - integrity sha512-pdGhXgeBaEJENMvRT6W9cmji3Zz/46ugFSvmnLLw79qi5EH7XJhKISNVb41eWCrs4am5GhI67GLx5d2s2a72iw== +web3-eth-accounts@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.6.0.tgz#530927f4c5b78df93b3ea1203abbb467de29cd04" + integrity sha512-2f6HS4KIH4laAsNCOfbNX3dRiQosqSY2TRK86C8jtAA/QKGdx+5qlPfYzbI2RjG81iayb2+mVbHIaEaBGZ8sGw== dependencies: "@ethereumjs/common" "^2.3.0" "@ethereumjs/tx" "^3.2.1" @@ -28958,10 +28958,10 @@ web3-eth-accounts@1.5.3: ethereumjs-util "^7.0.10" scrypt-js "^3.0.1" uuid "3.3.2" - web3-core "1.5.3" - web3-core-helpers "1.5.3" - web3-core-method "1.5.3" - web3-utils "1.5.3" + web3-core "1.6.0" + web3-core-helpers "1.6.0" + web3-core-method "1.6.0" + web3-utils "1.6.0" web3-eth-contract@1.2.1: version "1.2.1" @@ -29007,19 +29007,19 @@ web3-eth-contract@1.3.0: web3-eth-abi "1.3.0" web3-utils "1.3.0" -web3-eth-contract@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.5.3.tgz#12b03a4a16ce583a945f874bea2ff2fb4c5b81ad" - integrity sha512-Gdlt1L6cdHe83k7SdV6xhqCytVtOZkjD0kY/15x441AuuJ4JLubCHuqu69k2Dr3tWifHYVys/vG8QE/W16syGg== +web3-eth-contract@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.6.0.tgz#deb946867ad86d32bcbba899d733b681b25ea674" + integrity sha512-ZUtO77zFnxuFtrc+D+iJ3AzNgFXAVcKnhEYN7f1PNz/mFjbtE6dJ+ujO0mvMbxIZF02t9IZv0CIXRpK0rDvZAw== dependencies: "@types/bn.js" "^4.11.5" - web3-core "1.5.3" - web3-core-helpers "1.5.3" - web3-core-method "1.5.3" - web3-core-promievent "1.5.3" - web3-core-subscriptions "1.5.3" - web3-eth-abi "1.5.3" - web3-utils "1.5.3" + web3-core "1.6.0" + web3-core-helpers "1.6.0" + web3-core-method "1.6.0" + web3-core-promievent "1.6.0" + web3-core-subscriptions "1.6.0" + web3-eth-abi "1.6.0" + web3-utils "1.6.0" web3-eth-ens@1.2.1: version "1.2.1" @@ -29065,19 +29065,19 @@ web3-eth-ens@1.3.0: web3-eth-contract "1.3.0" web3-utils "1.3.0" -web3-eth-ens@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.5.3.tgz#ef6eee1ddf32b1ff9536fc7c599a74f2656bafe1" - integrity sha512-QmGFFtTGElg0E+3xfCIFhiUF+1imFi9eg/cdsRMUZU4F1+MZCC/ee+IAelYLfNTGsEslCqfAusliKOT9DdGGnw== +web3-eth-ens@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.6.0.tgz#af13852168d56fa71b9198eb097e96fb93831c2a" + integrity sha512-AG24PNv9qbYHSpjHcU2pViOII0jvIR7TeojJ2bxXSDqfcgHuRp3NZGKv6xFvT4uNI4LEQHUhSC7bzHoNF5t8CA== dependencies: content-hash "^2.5.2" eth-ens-namehash "2.0.8" - web3-core "1.5.3" - web3-core-helpers "1.5.3" - web3-core-promievent "1.5.3" - web3-eth-abi "1.5.3" - web3-eth-contract "1.5.3" - web3-utils "1.5.3" + web3-core "1.6.0" + web3-core-helpers "1.6.0" + web3-core-promievent "1.6.0" + web3-eth-abi "1.6.0" + web3-eth-contract "1.6.0" + web3-utils "1.6.0" web3-eth-iban@1.2.1: version "1.2.1" @@ -29103,13 +29103,13 @@ web3-eth-iban@1.3.0: bn.js "^4.11.9" web3-utils "1.3.0" -web3-eth-iban@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.5.3.tgz#91b1475893a877b10eac1de5cce6eb379fb81b5d" - integrity sha512-vMzmGqolYZvRHwP9P4Nf6G8uYM5aTLlQu2a34vz78p0KlDC+eV1th3+90Qeaupa28EG7OO0IT1F0BejiIauOPw== +web3-eth-iban@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.6.0.tgz#edbe46cedc5b148d53fa455edea6b4eef53b2be7" + integrity sha512-HM/bKBS/e8qg0+Eh7B8C/JVG+GkR4AJty17DKRuwMtrh78YsonPj7GKt99zS4n5sDLFww1Imu/ZIk3+K5uJCjw== dependencies: bn.js "^4.11.9" - web3-utils "1.5.3" + web3-utils "1.6.0" web3-eth-personal@1.2.1: version "1.2.1" @@ -29146,17 +29146,17 @@ web3-eth-personal@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth-personal@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.5.3.tgz#4ebe09e9a77dd49d23d93b36b36cfbf4a6dae713" - integrity sha512-JzibJafR7ak/Icas8uvos3BmUNrZw1vShuNR5Cxjo+vteOC8XMqz1Vr7RH65B4bmlfb3bm9xLxetUHO894+Sew== +web3-eth-personal@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.6.0.tgz#b75a61c0737b8b8bcc11d05db2ed7bfce7e4b262" + integrity sha512-8ohf4qAwbShf4RwES2tLHVqa+pHZnS5Q6tV80sU//bivmlZeyO1W4UWyNn59vu9KPpEYvLseOOC6Muxuvr8mFQ== dependencies: "@types/node" "^12.12.6" - web3-core "1.5.3" - web3-core-helpers "1.5.3" - web3-core-method "1.5.3" - web3-net "1.5.3" - web3-utils "1.5.3" + web3-core "1.6.0" + web3-core-helpers "1.6.0" + web3-core-method "1.6.0" + web3-net "1.6.0" + web3-utils "1.6.0" web3-eth@1.2.1: version "1.2.1" @@ -29215,23 +29215,23 @@ web3-eth@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.5.3.tgz#d7d1ac7198f816ab8a2088c01e0bf1eda45862fe" - integrity sha512-saFurA1L23Bd7MEf7cBli6/jRdMhD4X/NaMiO2mdMMCXlPujoudlIJf+VWpRWJpsbDFdu7XJ2WHkmBYT5R3p1Q== - dependencies: - web3-core "1.5.3" - web3-core-helpers "1.5.3" - web3-core-method "1.5.3" - web3-core-subscriptions "1.5.3" - web3-eth-abi "1.5.3" - web3-eth-accounts "1.5.3" - web3-eth-contract "1.5.3" - web3-eth-ens "1.5.3" - web3-eth-iban "1.5.3" - web3-eth-personal "1.5.3" - web3-net "1.5.3" - web3-utils "1.5.3" +web3-eth@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.6.0.tgz#4c9d5fb4eccf9f8744828281757e6ea76af58cbd" + integrity sha512-qJMvai//r0be6I9ghU24/152f0zgJfYC23TMszN3Y6jse1JtjCBP2TlTibFcvkUN1RRdIUY5giqO7ZqAYAmp7w== + dependencies: + web3-core "1.6.0" + web3-core-helpers "1.6.0" + web3-core-method "1.6.0" + web3-core-subscriptions "1.6.0" + web3-eth-abi "1.6.0" + web3-eth-accounts "1.6.0" + web3-eth-contract "1.6.0" + web3-eth-ens "1.6.0" + web3-eth-iban "1.6.0" + web3-eth-personal "1.6.0" + web3-net "1.6.0" + web3-utils "1.6.0" web3-net@1.2.1: version "1.2.1" @@ -29260,14 +29260,14 @@ web3-net@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-net@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.5.3.tgz#545fee49b8e213b0c55cbe74ffd0295766057463" - integrity sha512-0W/xHIPvgVXPSdLu0iZYnpcrgNnhzHMC888uMlGP5+qMCt8VuflUZHy7tYXae9Mzsg1kxaJAS5lHVNyeNw4CoQ== +web3-net@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.6.0.tgz#2c28f8787073110a7c2310336889d2dad647e500" + integrity sha512-LFfG95ovTT2sNHkO1TEfsaKpYcxOSUtbuwHQ0K3G0e5nevKDJkPEFIqIcob40yiwcWoqEjENJP9Bjk8CRrZ99Q== dependencies: - web3-core "1.5.3" - web3-core-method "1.5.3" - web3-utils "1.5.3" + web3-core "1.6.0" + web3-core-method "1.6.0" + web3-utils "1.6.0" web3-provider-engine@14.2.1: version "14.2.1" @@ -29319,12 +29319,12 @@ web3-providers-http@1.3.0: web3-core-helpers "1.3.0" xhr2-cookies "1.1.0" -web3-providers-http@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.5.3.tgz#74f170fc3d79eb7941d9fbc34e2a067d61ced0b2" - integrity sha512-5DpUyWGHtDAr2RYmBu34Fu+4gJuBAuNx2POeiJIooUtJ+Mu6pIx4XkONWH6V+Ez87tZAVAsFOkJRTYuzMr3rPw== +web3-providers-http@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.6.0.tgz#8db4e589abf7197f5d65b12af1bf9726c45f4160" + integrity sha512-sNxHFNv3lnxpmULt34AS6M36IYB/Hzm2Et4yPNzdP1XE644D8sQBZQZaJQdTaza5HfrlwoqU6AOK935armqGuA== dependencies: - web3-core-helpers "1.5.3" + web3-core-helpers "1.6.0" xhr2-cookies "1.1.0" web3-providers-ipc@1.2.1: @@ -29354,13 +29354,13 @@ web3-providers-ipc@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-providers-ipc@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.5.3.tgz#4bd7f5e445c2f3c2595fce0929c72bb879320a3f" - integrity sha512-JmeAptugVpmXI39LGxUSAymx0NOFdgpuI1hGQfIhbEAcd4sv7fhfd5D+ZU4oLHbRI8IFr4qfGU0uhR8BXhDzlg== +web3-providers-ipc@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.6.0.tgz#6a3410fd47a67c4a36719fb97f99534ae12aac98" + integrity sha512-ETYdfhpGiGoWpmmSJnONvnPfd3TPivHEGjXyuX+L5FUsbMOVZj9MFLNIS19Cx/YGL8UWJ/8alLJoTcWSIdz/aA== dependencies: oboe "2.1.5" - web3-core-helpers "1.5.3" + web3-core-helpers "1.6.0" web3-providers-ws@1.2.1: version "1.2.1" @@ -29391,13 +29391,13 @@ web3-providers-ws@1.3.0: web3-core-helpers "1.3.0" websocket "^1.0.32" -web3-providers-ws@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.5.3.tgz#eec6cfb32bb928a4106de506f13a49070a21eabf" - integrity sha512-6DhTw4Q7nm5CFYEUHOJM0gAb3xFx+9gWpVveg3YxJ/ybR1BUvEWo3bLgIJJtX56cYX0WyY6DS35a7f0LOI1kVg== +web3-providers-ws@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.6.0.tgz#dc15dc18c30089efda992015fd5254bd2b77af5f" + integrity sha512-eNRmlhOPCpuVYwBrKBBQRLGPFb4U1Uo44r9EWV69Cpo4gP6XeBTl6nkawhLz6DS0fq79apyPfItJVuSfAy77pA== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.5.3" + web3-core-helpers "1.6.0" websocket "^1.0.32" web3-shh@1.2.1: @@ -29430,15 +29430,15 @@ web3-shh@1.3.0: web3-core-subscriptions "1.3.0" web3-net "1.3.0" -web3-shh@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.3.tgz#3c04aa4cda9ba0b746d7225262401160f8e38b13" - integrity sha512-COfEXfsqoV/BkcsNLRxQqnWc1Teb8/9GxdGag5GtPC5gQC/vsN+7hYVJUwNxY9LtJPKYTij2DHHnx6UkITng+Q== +web3-shh@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.6.0.tgz#838a3435dce1039f669a48e53e948062de197931" + integrity sha512-ymN0OFL81WtEeSyb+PFpuUv39fR3frGwsZnIg5EVPZvrOIdaDSFcGSLDmafUt0vKSubvLMVYIBOCskRD6YdtEQ== dependencies: - web3-core "1.5.3" - web3-core-method "1.5.3" - web3-core-subscriptions "1.5.3" - web3-net "1.5.3" + web3-core "1.6.0" + web3-core-method "1.6.0" + web3-core-subscriptions "1.6.0" + web3-net "1.6.0" web3-utils@1.2.1: version "1.2.1" @@ -29495,14 +29495,14 @@ web3-utils@1.3.0: underscore "1.9.1" utf8 "3.0.0" -web3-utils@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.5.3.tgz#e914c9320cd663b2a09a5cb920ede574043eb437" - integrity sha512-56nRgA+Ad9SEyCv39g36rTcr5fpsd4L9LgV3FK0aB66nAMazLAA6Qz4lH5XrUKPDyBIPGJIR+kJsyRtwcu2q1Q== +web3-utils@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.6.0.tgz#1975c5ee5b7db8a0836eb7004848a7cd962d1ddc" + integrity sha512-bgCAWAeQnJF035YTFxrcHJ5mGEfTi/McsjqldZiXRwlHK7L1PyOqvXiQLE053dlzvy1kdAxWl/sSSfLMyNUAXg== dependencies: bn.js "^4.11.9" - eth-lib "0.2.8" ethereum-bloom-filters "^1.0.6" + ethereumjs-util "^7.1.0" ethjs-unit "0.1.6" number-to-bn "1.7.0" randombytes "^2.1.0" @@ -29548,18 +29548,18 @@ web3@1.2.11: web3-shh "1.2.11" web3-utils "1.2.11" -web3@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/web3/-/web3-1.5.3.tgz#11882679453c645bf33620fbc255a243343075aa" - integrity sha512-eyBg/1K44flfv0hPjXfKvNwcUfIVDI4NX48qHQe6wd7C8nPSdbWqo9vLy6ksZIt9NLa90HjI8HsGYgnMSUxn6w== - dependencies: - web3-bzz "1.5.3" - web3-core "1.5.3" - web3-eth "1.5.3" - web3-eth-personal "1.5.3" - web3-net "1.5.3" - web3-shh "1.5.3" - web3-utils "1.5.3" +web3@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.6.0.tgz#d8fa0cd9e7bf252f9fe43bb77dc42bc6671affde" + integrity sha512-rWpXnO88MiVX5yTRqMBCVKASxc7QDkXZZUl1D48sKlbX4dt3BAV+nVMVUKCBKiluZ5Bp8pDrVCUdPx/jIYai5Q== + dependencies: + web3-bzz "1.6.0" + web3-core "1.6.0" + web3-eth "1.6.0" + web3-eth-personal "1.6.0" + web3-net "1.6.0" + web3-shh "1.6.0" + web3-utils "1.6.0" web3@^1.2.1: version "1.3.0" From c0ba5fa6408ea3a3651f419865829765bca0617a Mon Sep 17 00:00:00 2001 From: cds-amal Date: Fri, 1 Oct 2021 16:55:14 -0400 Subject: [PATCH 114/124] Change lerna invocation - lerna will have the proper path because it is inoked via a package.json script - filter output in node instead of relying on commandline tool --- scripts/npm-access.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/npm-access.js b/scripts/npm-access.js index 1ddb4b7c8ce..56af6e386d0 100644 --- a/scripts/npm-access.js +++ b/scripts/npm-access.js @@ -7,10 +7,10 @@ const getPkgPermissions = userOrOrg => { }; const getMonorepoPackages = () => { - // get list of monorepo packages and remove lerna branding from output - const pkgs = execSync('$(yarn bin)/lerna ls | grep -v "^lerna"') + const pkgs = execSync('lerna ls') .toString() - .split("\n"); + .split("\n") + .filter(ln => !/^lerna/.test(ln)); return new Set(pkgs); } From d8cd5ce29f6865a337ef4dba57a045cc6141ca7d Mon Sep 17 00:00:00 2001 From: cds-amal Date: Fri, 1 Oct 2021 16:56:06 -0400 Subject: [PATCH 115/124] Only check truffle orgname --- scripts/npm-access.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/npm-access.js b/scripts/npm-access.js index 56af6e386d0..562465d6f54 100644 --- a/scripts/npm-access.js +++ b/scripts/npm-access.js @@ -14,7 +14,7 @@ const getMonorepoPackages = () => { return new Set(pkgs); } -const orgs = ["trufflesuite", "truffle"]; +const orgs = ["truffle"]; for (let org of orgs) { const permissions = getPkgPermissions(org); From afb61248ba70074ac8f363caefb7b16928e4c82b Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 4 Oct 2021 13:38:38 -0400 Subject: [PATCH 116/124] Revert "Update web3 to 1.6.0" This reverts commit ebbbe300f55d55416310c9fc83d70dd6092c9297. --- packages/artifactor/package.json | 2 +- packages/codec/package.json | 2 +- packages/contract-tests/package.json | 4 +- packages/contract/package.json | 10 +- packages/core/package.json | 4 +- packages/db/package.json | 4 +- packages/debugger/package.json | 4 +- packages/decoder/package.json | 2 +- packages/deployer/package.json | 4 +- packages/environment/package.json | 2 +- packages/external-compile/package.json | 2 +- packages/interface-adapter/package.json | 2 +- packages/provider/package.json | 2 +- packages/reporters/package.json | 2 +- packages/source-fetcher/package.json | 2 +- packages/source-map-utils/package.json | 2 +- packages/truffle/package.json | 2 +- yarn.lock | 310 ++++++++++++------------ 18 files changed, 181 insertions(+), 181 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index 5057473ea96..b3eadfbff3a 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -42,7 +42,7 @@ "tmp": "^0.2.1", "ts-node": "^9.0.0", "typescript": "^4.1.4", - "web3": "1.6.0" + "web3": "1.5.3" }, "publishConfig": { "access": "public" diff --git a/packages/codec/package.json b/packages/codec/package.json index 3de149e8f20..fa70690052c 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -37,7 +37,7 @@ "lodash.sum": "^4.0.2", "semver": "^7.3.4", "utf8": "^3.0.0", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "devDependencies": { "@truffle/contract-schema": "^3.4.3", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 0c4ebda0acd..895af0ee961 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -30,7 +30,7 @@ "ganache-core": "2.13.0", "mocha": "8.0.1", "sinon": "^9.0.2", - "web3": "1.6.0", - "web3-core-promievent": "1.6.0" + "web3": "1.5.3", + "web3-core-promievent": "1.5.3" } } diff --git a/packages/contract/package.json b/packages/contract/package.json index a45d2fead5c..eb2605ad0a9 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -29,11 +29,11 @@ "@truffle/interface-adapter": "^0.5.8", "bignumber.js": "^7.2.1", "ethers": "^4.0.32", - "web3": "1.6.0", - "web3-core-helpers": "1.6.0", - "web3-core-promievent": "1.6.0", - "web3-eth-abi": "1.6.0", - "web3-utils": "1.6.0" + "web3": "1.5.3", + "web3-core-helpers": "1.5.3", + "web3-core-promievent": "1.5.3", + "web3-eth-abi": "1.5.3", + "web3-utils": "1.5.3" }, "devDependencies": { "browserify": "^17.0.0", diff --git a/packages/core/package.json b/packages/core/package.json index 83ccdcda509..f846ef72477 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -77,8 +77,8 @@ "spawn-args": "^0.1.0", "tmp": "^0.2.1", "universal-analytics": "^0.4.17", - "web3": "1.6.0", - "web3-utils": "1.6.0", + "web3": "1.5.3", + "web3-utils": "1.5.3", "xregexp": "^4.2.4", "yargs": "^8.0.2" }, diff --git a/packages/db/package.json b/packages/db/package.json index 8f3db40f73d..fdcd665b000 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -55,7 +55,7 @@ "pouchdb-adapter-node-websql": "^7.0.0", "pouchdb-debug": "^7.1.1", "pouchdb-find": "^7.0.0", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "devDependencies": { "@gql2ts/from-schema": "^2.0.0-4", @@ -87,7 +87,7 @@ "typedoc-neo-theme": "^1.1.0", "typescript": "^4.1.4", "typescript-transform-paths": "^2.1.0", - "web3": "1.6.0" + "web3": "1.5.3" }, "keywords": [ "database", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index ed5b02f5a27..c5707375ed0 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -40,8 +40,8 @@ "remote-redux-devtools": "^0.5.12", "reselect-tree": "^1.3.4", "semver": "^7.3.4", - "web3": "1.6.0", - "web3-eth-abi": "1.6.0" + "web3": "1.5.3", + "web3-eth-abi": "1.5.3" }, "devDependencies": { "@truffle/artifactor": "^4.0.125", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 1cafe977818..7d5bc1ad187 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -31,7 +31,7 @@ "@truffle/source-map-utils": "^1.3.60", "bn.js": "^5.1.3", "debug": "^4.3.1", - "web3": "1.6.0" + "web3": "1.5.3" }, "devDependencies": { "@truffle/config": "^1.3.9", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index 53c9dd74ab6..ee08ce197c5 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -26,7 +26,7 @@ "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "devDependencies": { "@truffle/reporters": "^2.0.7", @@ -34,7 +34,7 @@ "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", - "web3": "1.6.0" + "web3": "1.5.3" }, "keywords": [ "contracts", diff --git a/packages/environment/package.json b/packages/environment/package.json index 5068c437a8e..771243f7c09 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -27,7 +27,7 @@ "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", - "web3": "1.6.0" + "web3": "1.5.3" }, "devDependencies": { "debug": "^4.3.1" diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index b351bb59bdd..eb12410c754 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -24,7 +24,7 @@ "@truffle/expect": "^0.0.18", "debug": "^4.3.1", "glob": "^7.1.6", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "devDependencies": { "chai": "^4.2.0", diff --git a/packages/interface-adapter/package.json b/packages/interface-adapter/package.json index d1e4d82ab4b..4824d38346c 100644 --- a/packages/interface-adapter/package.json +++ b/packages/interface-adapter/package.json @@ -26,7 +26,7 @@ "dependencies": { "bn.js": "^5.1.3", "ethers": "^4.0.32", - "web3": "1.6.0" + "web3": "1.5.3" }, "devDependencies": { "@types/bn.js": "^4.11.4", diff --git a/packages/provider/package.json b/packages/provider/package.json index d8fb0a86fff..312d0094586 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -22,7 +22,7 @@ "dependencies": { "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.8", - "web3": "1.6.0" + "web3": "1.5.3" }, "devDependencies": { "ganache-core": "2.13.0", diff --git a/packages/reporters/package.json b/packages/reporters/package.json index e466cd85f32..72b971a2ed0 100644 --- a/packages/reporters/package.json +++ b/packages/reporters/package.json @@ -19,7 +19,7 @@ }, "dependencies": { "ora": "^3.4.0", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "publishConfig": { "access": "public" diff --git a/packages/source-fetcher/package.json b/packages/source-fetcher/package.json index 88fe7e642f0..16342a3b1f8 100644 --- a/packages/source-fetcher/package.json +++ b/packages/source-fetcher/package.json @@ -29,7 +29,7 @@ "async-retry": "^1.3.1", "axios": "^0.21.1", "debug": "^4.3.1", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "devDependencies": { "@types/async-retry": "^1.4.3", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index cc01a367f7c..b55abb21f86 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -23,7 +23,7 @@ "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", - "web3-utils": "1.6.0" + "web3-utils": "1.5.3" }, "keywords": [ "contracts", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 9100d147bc0..8f502905d90 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -65,7 +65,7 @@ "shebang-loader": "0.0.1", "stream-buffers": "^3.0.1", "tmp": "^0.2.1", - "web3": "1.6.0", + "web3": "1.5.3", "webpack": "^5.21.2", "webpack-bundle-analyzer": "^3.0.3", "webpack-cli": "^4.5.0", diff --git a/yarn.lock b/yarn.lock index e2a8d9042a4..c39c872772b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -28612,10 +28612,10 @@ web3-bzz@1.3.0: swarm-js "^0.1.40" underscore "1.9.1" -web3-bzz@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.6.0.tgz#584b51339f21eedff159abc9239b4b7ef6ded840" - integrity sha512-ugYV6BsinwhIi0CsLWINBz4mqN9wR9vNG0WmyEbdECjxcPyr6vkaWt4qi0zqlUxEnYAwGj4EJXNrbjPILntQTQ== +web3-bzz@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.5.3.tgz#e36456905ce051138f9c3ce3623cbc73da088c2b" + integrity sha512-SlIkAqG0eS6cBS9Q2eBOTI1XFzqh83RqGJWnyrNZMDxUwsTVHL+zNnaPShVPvrWQA1Ub5b0bx1Kc5+qJVxsTJg== dependencies: "@types/node" "^12.12.6" got "9.6.0" @@ -28648,13 +28648,13 @@ web3-core-helpers@1.3.0: web3-eth-iban "1.3.0" web3-utils "1.3.0" -web3-core-helpers@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.6.0.tgz#77e161b6ba930a4008a0df804ab379e0aa7e1e7f" - integrity sha512-H/IAH/0mrgvad/oxVKiAMC7qDzMrPPe/nRKmJOoIsupRg9/frvL62kZZiHhqVD1HMyyswbQFC69QRl7JqWzvxg== +web3-core-helpers@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.5.3.tgz#099030235c477aadf39a94199ef40092151d563c" + integrity sha512-Ip1IjB3S8vN7Kf1PPjK41U5gskmMk6IJQlxIVuS8/1U7n/o0jC8krqtpRwiMfAgYyw3TXwBFtxSRTvJtnLyXZw== dependencies: - web3-eth-iban "1.6.0" - web3-utils "1.6.0" + web3-eth-iban "1.5.3" + web3-utils "1.5.3" web3-core-method@1.2.1: version "1.2.1" @@ -28691,17 +28691,17 @@ web3-core-method@1.3.0: web3-core-subscriptions "1.3.0" web3-utils "1.3.0" -web3-core-method@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.6.0.tgz#ebe4ea51f5a4fa809bb68185576186359d3982e9" - integrity sha512-cHekyEil4mtcCOk6Q1Zh4y+2o5pTwsLIxP6Bpt4BRtZgdsyPiadYJpkLAVT/quch5xN7Qs5ZwG5AvRCS3VwD2g== +web3-core-method@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.5.3.tgz#6cff97ed19fe4ea2e9183d6f703823a079f5132c" + integrity sha512-8wJrwQ2qD9ibWieF9oHXwrJsUGrv3XAtEkNeyvyNMpktNTIjxJ2jaFGQUuLiyUrMubD18XXgLk4JS6PJU4Loeg== dependencies: "@ethereumjs/common" "^2.4.0" "@ethersproject/transactions" "^5.0.0-beta.135" - web3-core-helpers "1.6.0" - web3-core-promievent "1.6.0" - web3-core-subscriptions "1.6.0" - web3-utils "1.6.0" + web3-core-helpers "1.5.3" + web3-core-promievent "1.5.3" + web3-core-subscriptions "1.5.3" + web3-utils "1.5.3" web3-core-promievent@1.2.1: version "1.2.1" @@ -28725,10 +28725,10 @@ web3-core-promievent@1.3.0: dependencies: eventemitter3 "4.0.4" -web3-core-promievent@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.6.0.tgz#8b6053ae83cb47164540167fc361469fc604d2dd" - integrity sha512-ZzsevjMXWkhqW9dnVfTfb1OUcK7jKcKPvPIbQ4boJccNgvNZPZKlo8xB4pkAX38n4c59O5mC7Lt/z2QL/M5CeQ== +web3-core-promievent@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.5.3.tgz#3f11833c3dc6495577c274350b61144e0a4dba01" + integrity sha512-CFfgqvk3Vk6PIAxtLLuX+pOMozxkKCY+/GdGr7weMh033mDXEPvwyVjoSRO1PqIKj668/hMGQsVoIgbyxkJ9Mg== dependencies: eventemitter3 "4.0.4" @@ -28765,16 +28765,16 @@ web3-core-requestmanager@1.3.0: web3-providers-ipc "1.3.0" web3-providers-ws "1.3.0" -web3-core-requestmanager@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.6.0.tgz#8ef3a3b89cd08983bd94574f9c5893f70a8a6aea" - integrity sha512-CY5paPdiDXKTXPWaEUZekDfUXSuoE2vPxolwqzsvKwFWH5+H1NaXgrc+D5HpufgSvTXawTw0fy7IAicg8+PWqA== +web3-core-requestmanager@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.5.3.tgz#b339525815fd40e3a2a81813c864ddc413f7b6f7" + integrity sha512-9k/Bze2rs8ONix5IZR+hYdMNQv+ark2Ek2kVcrFgWO+LdLgZui/rn8FikPunjE+ub7x7pJaKCgVRbYFXjo3ZWg== dependencies: util "^0.12.0" - web3-core-helpers "1.6.0" - web3-providers-http "1.6.0" - web3-providers-ipc "1.6.0" - web3-providers-ws "1.6.0" + web3-core-helpers "1.5.3" + web3-providers-http "1.5.3" + web3-providers-ipc "1.5.3" + web3-providers-ws "1.5.3" web3-core-subscriptions@1.2.1: version "1.2.1" @@ -28803,13 +28803,13 @@ web3-core-subscriptions@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-core-subscriptions@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.6.0.tgz#8c23b15b434a7c9f937652ecca45d7108e2c54df" - integrity sha512-kY9WZUY/m1URSOv3uTLshoZD9ZDiFKReIzHuPUkxFpD5oYNmr1/aPQNPCrrMxKODR7UVX/D90FxWwCYqHhLaxQ== +web3-core-subscriptions@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.5.3.tgz#d7d69c4caad65074212028656e9dc56ca5c2159d" + integrity sha512-L2m9vG1iRN6thvmv/HQwO2YLhOQlmZU8dpLG6GSo9FBN14Uch868Swk0dYVr3rFSYjZ/GETevSXU+O+vhCummA== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.6.0" + web3-core-helpers "1.5.3" web3-core@1.2.1: version "1.2.1" @@ -28847,18 +28847,18 @@ web3-core@1.3.0: web3-core-requestmanager "1.3.0" web3-utils "1.3.0" -web3-core@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.6.0.tgz#144eb00f651c9812faf7176abd7ee99d5f45e212" - integrity sha512-o0WsLrJ2yD+HAAc29lGMWJef/MutTyuzpJC0UzLJtIAQJqtpDalzWINEu4j8XYXGk34N/V6vudtzRPo23QEE6g== +web3-core@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.5.3.tgz#59f8728b27c8305b349051326aa262b9b7e907bf" + integrity sha512-ACTbu8COCu+0eUNmd9pG7Q9EVsNkAg2w3Y7SqhDr+zjTgbSHZV01jXKlapm9z+G3AN/BziV3zGwudClJ4u4xXQ== dependencies: "@types/bn.js" "^4.11.5" "@types/node" "^12.12.6" bignumber.js "^9.0.0" - web3-core-helpers "1.6.0" - web3-core-method "1.6.0" - web3-core-requestmanager "1.6.0" - web3-utils "1.6.0" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-requestmanager "1.5.3" + web3-utils "1.5.3" web3-eth-abi@1.2.1: version "1.2.1" @@ -28887,13 +28887,13 @@ web3-eth-abi@1.3.0: underscore "1.9.1" web3-utils "1.3.0" -web3-eth-abi@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.6.0.tgz#4225608f61ebb0607d80849bb2b20f910780253d" - integrity sha512-fImomGE9McuTMJLwK8Tp0lTUzXqCkWeMm00qPVIwpJ/h7lCw9UFYV9+4m29wSqW6FF+FIZKwc6UBEf9dlx3orA== +web3-eth-abi@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.5.3.tgz#5aea9394d797f99ca0d9bd40c3417eb07241c96c" + integrity sha512-i/qhuFsoNrnV130CSRYX/z4SlCfSQ4mHntti5yTmmQpt70xZKYZ57BsU0R29ueSQ9/P+aQrL2t2rqkQkAloUxg== dependencies: "@ethersproject/abi" "5.0.7" - web3-utils "1.6.0" + web3-utils "1.5.3" web3-eth-accounts@1.2.1: version "1.2.1" @@ -28946,10 +28946,10 @@ web3-eth-accounts@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-eth-accounts@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.6.0.tgz#530927f4c5b78df93b3ea1203abbb467de29cd04" - integrity sha512-2f6HS4KIH4laAsNCOfbNX3dRiQosqSY2TRK86C8jtAA/QKGdx+5qlPfYzbI2RjG81iayb2+mVbHIaEaBGZ8sGw== +web3-eth-accounts@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.5.3.tgz#076c816ff4d68c9dffebdc7fd2bfaddcfc163d77" + integrity sha512-pdGhXgeBaEJENMvRT6W9cmji3Zz/46ugFSvmnLLw79qi5EH7XJhKISNVb41eWCrs4am5GhI67GLx5d2s2a72iw== dependencies: "@ethereumjs/common" "^2.3.0" "@ethereumjs/tx" "^3.2.1" @@ -28958,10 +28958,10 @@ web3-eth-accounts@1.6.0: ethereumjs-util "^7.0.10" scrypt-js "^3.0.1" uuid "3.3.2" - web3-core "1.6.0" - web3-core-helpers "1.6.0" - web3-core-method "1.6.0" - web3-utils "1.6.0" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-utils "1.5.3" web3-eth-contract@1.2.1: version "1.2.1" @@ -29007,19 +29007,19 @@ web3-eth-contract@1.3.0: web3-eth-abi "1.3.0" web3-utils "1.3.0" -web3-eth-contract@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.6.0.tgz#deb946867ad86d32bcbba899d733b681b25ea674" - integrity sha512-ZUtO77zFnxuFtrc+D+iJ3AzNgFXAVcKnhEYN7f1PNz/mFjbtE6dJ+ujO0mvMbxIZF02t9IZv0CIXRpK0rDvZAw== +web3-eth-contract@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.5.3.tgz#12b03a4a16ce583a945f874bea2ff2fb4c5b81ad" + integrity sha512-Gdlt1L6cdHe83k7SdV6xhqCytVtOZkjD0kY/15x441AuuJ4JLubCHuqu69k2Dr3tWifHYVys/vG8QE/W16syGg== dependencies: "@types/bn.js" "^4.11.5" - web3-core "1.6.0" - web3-core-helpers "1.6.0" - web3-core-method "1.6.0" - web3-core-promievent "1.6.0" - web3-core-subscriptions "1.6.0" - web3-eth-abi "1.6.0" - web3-utils "1.6.0" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-promievent "1.5.3" + web3-core-subscriptions "1.5.3" + web3-eth-abi "1.5.3" + web3-utils "1.5.3" web3-eth-ens@1.2.1: version "1.2.1" @@ -29065,19 +29065,19 @@ web3-eth-ens@1.3.0: web3-eth-contract "1.3.0" web3-utils "1.3.0" -web3-eth-ens@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.6.0.tgz#af13852168d56fa71b9198eb097e96fb93831c2a" - integrity sha512-AG24PNv9qbYHSpjHcU2pViOII0jvIR7TeojJ2bxXSDqfcgHuRp3NZGKv6xFvT4uNI4LEQHUhSC7bzHoNF5t8CA== +web3-eth-ens@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.5.3.tgz#ef6eee1ddf32b1ff9536fc7c599a74f2656bafe1" + integrity sha512-QmGFFtTGElg0E+3xfCIFhiUF+1imFi9eg/cdsRMUZU4F1+MZCC/ee+IAelYLfNTGsEslCqfAusliKOT9DdGGnw== dependencies: content-hash "^2.5.2" eth-ens-namehash "2.0.8" - web3-core "1.6.0" - web3-core-helpers "1.6.0" - web3-core-promievent "1.6.0" - web3-eth-abi "1.6.0" - web3-eth-contract "1.6.0" - web3-utils "1.6.0" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-promievent "1.5.3" + web3-eth-abi "1.5.3" + web3-eth-contract "1.5.3" + web3-utils "1.5.3" web3-eth-iban@1.2.1: version "1.2.1" @@ -29103,13 +29103,13 @@ web3-eth-iban@1.3.0: bn.js "^4.11.9" web3-utils "1.3.0" -web3-eth-iban@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.6.0.tgz#edbe46cedc5b148d53fa455edea6b4eef53b2be7" - integrity sha512-HM/bKBS/e8qg0+Eh7B8C/JVG+GkR4AJty17DKRuwMtrh78YsonPj7GKt99zS4n5sDLFww1Imu/ZIk3+K5uJCjw== +web3-eth-iban@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.5.3.tgz#91b1475893a877b10eac1de5cce6eb379fb81b5d" + integrity sha512-vMzmGqolYZvRHwP9P4Nf6G8uYM5aTLlQu2a34vz78p0KlDC+eV1th3+90Qeaupa28EG7OO0IT1F0BejiIauOPw== dependencies: bn.js "^4.11.9" - web3-utils "1.6.0" + web3-utils "1.5.3" web3-eth-personal@1.2.1: version "1.2.1" @@ -29146,17 +29146,17 @@ web3-eth-personal@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth-personal@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.6.0.tgz#b75a61c0737b8b8bcc11d05db2ed7bfce7e4b262" - integrity sha512-8ohf4qAwbShf4RwES2tLHVqa+pHZnS5Q6tV80sU//bivmlZeyO1W4UWyNn59vu9KPpEYvLseOOC6Muxuvr8mFQ== +web3-eth-personal@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.5.3.tgz#4ebe09e9a77dd49d23d93b36b36cfbf4a6dae713" + integrity sha512-JzibJafR7ak/Icas8uvos3BmUNrZw1vShuNR5Cxjo+vteOC8XMqz1Vr7RH65B4bmlfb3bm9xLxetUHO894+Sew== dependencies: "@types/node" "^12.12.6" - web3-core "1.6.0" - web3-core-helpers "1.6.0" - web3-core-method "1.6.0" - web3-net "1.6.0" - web3-utils "1.6.0" + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-net "1.5.3" + web3-utils "1.5.3" web3-eth@1.2.1: version "1.2.1" @@ -29215,23 +29215,23 @@ web3-eth@1.3.0: web3-net "1.3.0" web3-utils "1.3.0" -web3-eth@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.6.0.tgz#4c9d5fb4eccf9f8744828281757e6ea76af58cbd" - integrity sha512-qJMvai//r0be6I9ghU24/152f0zgJfYC23TMszN3Y6jse1JtjCBP2TlTibFcvkUN1RRdIUY5giqO7ZqAYAmp7w== - dependencies: - web3-core "1.6.0" - web3-core-helpers "1.6.0" - web3-core-method "1.6.0" - web3-core-subscriptions "1.6.0" - web3-eth-abi "1.6.0" - web3-eth-accounts "1.6.0" - web3-eth-contract "1.6.0" - web3-eth-ens "1.6.0" - web3-eth-iban "1.6.0" - web3-eth-personal "1.6.0" - web3-net "1.6.0" - web3-utils "1.6.0" +web3-eth@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.5.3.tgz#d7d1ac7198f816ab8a2088c01e0bf1eda45862fe" + integrity sha512-saFurA1L23Bd7MEf7cBli6/jRdMhD4X/NaMiO2mdMMCXlPujoudlIJf+VWpRWJpsbDFdu7XJ2WHkmBYT5R3p1Q== + dependencies: + web3-core "1.5.3" + web3-core-helpers "1.5.3" + web3-core-method "1.5.3" + web3-core-subscriptions "1.5.3" + web3-eth-abi "1.5.3" + web3-eth-accounts "1.5.3" + web3-eth-contract "1.5.3" + web3-eth-ens "1.5.3" + web3-eth-iban "1.5.3" + web3-eth-personal "1.5.3" + web3-net "1.5.3" + web3-utils "1.5.3" web3-net@1.2.1: version "1.2.1" @@ -29260,14 +29260,14 @@ web3-net@1.3.0: web3-core-method "1.3.0" web3-utils "1.3.0" -web3-net@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.6.0.tgz#2c28f8787073110a7c2310336889d2dad647e500" - integrity sha512-LFfG95ovTT2sNHkO1TEfsaKpYcxOSUtbuwHQ0K3G0e5nevKDJkPEFIqIcob40yiwcWoqEjENJP9Bjk8CRrZ99Q== +web3-net@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.5.3.tgz#545fee49b8e213b0c55cbe74ffd0295766057463" + integrity sha512-0W/xHIPvgVXPSdLu0iZYnpcrgNnhzHMC888uMlGP5+qMCt8VuflUZHy7tYXae9Mzsg1kxaJAS5lHVNyeNw4CoQ== dependencies: - web3-core "1.6.0" - web3-core-method "1.6.0" - web3-utils "1.6.0" + web3-core "1.5.3" + web3-core-method "1.5.3" + web3-utils "1.5.3" web3-provider-engine@14.2.1: version "14.2.1" @@ -29319,12 +29319,12 @@ web3-providers-http@1.3.0: web3-core-helpers "1.3.0" xhr2-cookies "1.1.0" -web3-providers-http@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.6.0.tgz#8db4e589abf7197f5d65b12af1bf9726c45f4160" - integrity sha512-sNxHFNv3lnxpmULt34AS6M36IYB/Hzm2Et4yPNzdP1XE644D8sQBZQZaJQdTaza5HfrlwoqU6AOK935armqGuA== +web3-providers-http@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.5.3.tgz#74f170fc3d79eb7941d9fbc34e2a067d61ced0b2" + integrity sha512-5DpUyWGHtDAr2RYmBu34Fu+4gJuBAuNx2POeiJIooUtJ+Mu6pIx4XkONWH6V+Ez87tZAVAsFOkJRTYuzMr3rPw== dependencies: - web3-core-helpers "1.6.0" + web3-core-helpers "1.5.3" xhr2-cookies "1.1.0" web3-providers-ipc@1.2.1: @@ -29354,13 +29354,13 @@ web3-providers-ipc@1.3.0: underscore "1.9.1" web3-core-helpers "1.3.0" -web3-providers-ipc@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.6.0.tgz#6a3410fd47a67c4a36719fb97f99534ae12aac98" - integrity sha512-ETYdfhpGiGoWpmmSJnONvnPfd3TPivHEGjXyuX+L5FUsbMOVZj9MFLNIS19Cx/YGL8UWJ/8alLJoTcWSIdz/aA== +web3-providers-ipc@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.5.3.tgz#4bd7f5e445c2f3c2595fce0929c72bb879320a3f" + integrity sha512-JmeAptugVpmXI39LGxUSAymx0NOFdgpuI1hGQfIhbEAcd4sv7fhfd5D+ZU4oLHbRI8IFr4qfGU0uhR8BXhDzlg== dependencies: oboe "2.1.5" - web3-core-helpers "1.6.0" + web3-core-helpers "1.5.3" web3-providers-ws@1.2.1: version "1.2.1" @@ -29391,13 +29391,13 @@ web3-providers-ws@1.3.0: web3-core-helpers "1.3.0" websocket "^1.0.32" -web3-providers-ws@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.6.0.tgz#dc15dc18c30089efda992015fd5254bd2b77af5f" - integrity sha512-eNRmlhOPCpuVYwBrKBBQRLGPFb4U1Uo44r9EWV69Cpo4gP6XeBTl6nkawhLz6DS0fq79apyPfItJVuSfAy77pA== +web3-providers-ws@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.5.3.tgz#eec6cfb32bb928a4106de506f13a49070a21eabf" + integrity sha512-6DhTw4Q7nm5CFYEUHOJM0gAb3xFx+9gWpVveg3YxJ/ybR1BUvEWo3bLgIJJtX56cYX0WyY6DS35a7f0LOI1kVg== dependencies: eventemitter3 "4.0.4" - web3-core-helpers "1.6.0" + web3-core-helpers "1.5.3" websocket "^1.0.32" web3-shh@1.2.1: @@ -29430,15 +29430,15 @@ web3-shh@1.3.0: web3-core-subscriptions "1.3.0" web3-net "1.3.0" -web3-shh@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.6.0.tgz#838a3435dce1039f669a48e53e948062de197931" - integrity sha512-ymN0OFL81WtEeSyb+PFpuUv39fR3frGwsZnIg5EVPZvrOIdaDSFcGSLDmafUt0vKSubvLMVYIBOCskRD6YdtEQ== +web3-shh@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.5.3.tgz#3c04aa4cda9ba0b746d7225262401160f8e38b13" + integrity sha512-COfEXfsqoV/BkcsNLRxQqnWc1Teb8/9GxdGag5GtPC5gQC/vsN+7hYVJUwNxY9LtJPKYTij2DHHnx6UkITng+Q== dependencies: - web3-core "1.6.0" - web3-core-method "1.6.0" - web3-core-subscriptions "1.6.0" - web3-net "1.6.0" + web3-core "1.5.3" + web3-core-method "1.5.3" + web3-core-subscriptions "1.5.3" + web3-net "1.5.3" web3-utils@1.2.1: version "1.2.1" @@ -29495,14 +29495,14 @@ web3-utils@1.3.0: underscore "1.9.1" utf8 "3.0.0" -web3-utils@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.6.0.tgz#1975c5ee5b7db8a0836eb7004848a7cd962d1ddc" - integrity sha512-bgCAWAeQnJF035YTFxrcHJ5mGEfTi/McsjqldZiXRwlHK7L1PyOqvXiQLE053dlzvy1kdAxWl/sSSfLMyNUAXg== +web3-utils@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.5.3.tgz#e914c9320cd663b2a09a5cb920ede574043eb437" + integrity sha512-56nRgA+Ad9SEyCv39g36rTcr5fpsd4L9LgV3FK0aB66nAMazLAA6Qz4lH5XrUKPDyBIPGJIR+kJsyRtwcu2q1Q== dependencies: bn.js "^4.11.9" + eth-lib "0.2.8" ethereum-bloom-filters "^1.0.6" - ethereumjs-util "^7.1.0" ethjs-unit "0.1.6" number-to-bn "1.7.0" randombytes "^2.1.0" @@ -29548,18 +29548,18 @@ web3@1.2.11: web3-shh "1.2.11" web3-utils "1.2.11" -web3@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/web3/-/web3-1.6.0.tgz#d8fa0cd9e7bf252f9fe43bb77dc42bc6671affde" - integrity sha512-rWpXnO88MiVX5yTRqMBCVKASxc7QDkXZZUl1D48sKlbX4dt3BAV+nVMVUKCBKiluZ5Bp8pDrVCUdPx/jIYai5Q== - dependencies: - web3-bzz "1.6.0" - web3-core "1.6.0" - web3-eth "1.6.0" - web3-eth-personal "1.6.0" - web3-net "1.6.0" - web3-shh "1.6.0" - web3-utils "1.6.0" +web3@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.5.3.tgz#11882679453c645bf33620fbc255a243343075aa" + integrity sha512-eyBg/1K44flfv0hPjXfKvNwcUfIVDI4NX48qHQe6wd7C8nPSdbWqo9vLy6ksZIt9NLa90HjI8HsGYgnMSUxn6w== + dependencies: + web3-bzz "1.5.3" + web3-core "1.5.3" + web3-eth "1.5.3" + web3-eth-personal "1.5.3" + web3-net "1.5.3" + web3-shh "1.5.3" + web3-utils "1.5.3" web3@^1.2.1: version "1.3.0" From 8f9bce7d0bd56381b687aae7d9b66057614ff865 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Mon, 4 Oct 2021 16:17:43 -0400 Subject: [PATCH 117/124] Unpin Ubuntu version in GitHub Actions --- .github/workflows/nodejs.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 5cf69ddc475..90e843e2756 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -14,7 +14,7 @@ on: jobs: yarncheck: - runs-on: ubuntu-20.04 #please unpin once possible + runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 @@ -25,7 +25,7 @@ jobs: build: strategy: matrix: - platform: [ubuntu-20.04] #please unpin once possible + platform: [ubuntu-latest] node-version: [10.x, 12.x, 14.x] env: [GETH=true, PACKAGES=true, INTEGRATION=true] runs-on: ${{ matrix.platform }} @@ -52,7 +52,7 @@ jobs: slack_notification: needs: [yarncheck, build] - runs-on: ubuntu-20.04 #please unpin once possible + runs-on: ubuntu-latest continue-on-error: true steps: - uses: 8398a7/action-slack@v1.1.1 From 7203cc202baa3dd253c714cb1f9039fd85ab1836 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 5 Oct 2021 13:39:21 -0400 Subject: [PATCH 118/124] github(action): remove node 10.x from test matrix --- .github/workflows/nodejs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 90e843e2756..3eff7f18d9d 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -26,7 +26,7 @@ jobs: strategy: matrix: platform: [ubuntu-latest] - node-version: [10.x, 12.x, 14.x] + node-version: [12.x, 14.x] env: [GETH=true, PACKAGES=true, INTEGRATION=true] runs-on: ${{ matrix.platform }} From f5d12ecc6d14bc54e35ac9ace1c167c199a59095 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Tue, 5 Oct 2021 19:40:30 -0400 Subject: [PATCH 119/124] Change UDVT to Udvt --- packages/codec/lib/abify.ts | 4 ++-- packages/codec/lib/basic/allocate/index.ts | 2 +- packages/codec/lib/basic/decode/index.ts | 6 +++--- packages/codec/lib/basic/encode/index.ts | 2 +- packages/codec/lib/export.ts | 2 +- packages/codec/lib/format/elementary.ts | 6 +++--- packages/codec/lib/format/errors.ts | 12 ++++++------ packages/codec/lib/format/types.ts | 16 ++++++++-------- packages/codec/lib/format/utils/inspect.ts | 4 ++-- packages/codec/lib/format/values.ts | 6 +++--- 10 files changed, 30 insertions(+), 30 deletions(-) diff --git a/packages/codec/lib/abify.ts b/packages/codec/lib/abify.ts index 9a49dbbb355..4979b5985c2 100644 --- a/packages/codec/lib/abify.ts +++ b/packages/codec/lib/abify.ts @@ -90,7 +90,7 @@ export function abifyType( }; } case "userDefinedValueType": { - const fullType = ( + const fullType = ( Format.Types.fullType(dataType, userDefinedTypes) ); if (!fullType.underlyingType) { @@ -224,7 +224,7 @@ export function abifyResult( } } case "userDefinedValueType": { - const coercedResult = result; + const coercedResult = result; switch (coercedResult.kind) { case "value": return abifyResult(coercedResult.value, userDefinedTypes); diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index 3cf501bc72b..443d3e5fc0a 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -42,7 +42,7 @@ export function byteLength( return Math.ceil(Math.log2(numValues) / 8); } case "userDefinedValueType": { - const storedType = userDefinedTypes[dataType.id]; + const storedType = userDefinedTypes[dataType.id]; if (!storedType || !storedType.underlyingType) { throw new Common.UnknownUserDefinedTypeError( dataType.id, diff --git a/packages/codec/lib/basic/decode/index.ts b/packages/codec/lib/basic/decode/index.ts index 5b4681bcb39..14608fdb170 100644 --- a/packages/codec/lib/basic/decode/index.ts +++ b/packages/codec/lib/basic/decode/index.ts @@ -37,7 +37,7 @@ export function* decodeBasic( switch (dataType.typeClass) { case "userDefinedValueType": { - const fullType = ( + const fullType = ( Format.Types.fullType(dataType, info.userDefinedTypes) ); if (!fullType.underlyingType) { @@ -64,7 +64,7 @@ export function* decodeBasic( switch (underlyingResult.kind) { //yes this switch is a little unnecessary :P case "value": //wrap the value and return - return { //no idea why need coercion here + return { //no idea why need coercion here type: fullType, kind: "value" as const, value: underlyingResult @@ -76,7 +76,7 @@ export function* decodeBasic( //does not cause an error in the whole thing, but to do that here //would cause problems for the type system :-/ //so we'll just be inconsistent - return { //TS is being bad again :-/ + return { //TS is being bad again :-/ type: fullType, kind: "error" as const, error: { diff --git a/packages/codec/lib/basic/encode/index.ts b/packages/codec/lib/basic/encode/index.ts index 3aa61fe9eb0..203904fcab2 100644 --- a/packages/codec/lib/basic/encode/index.ts +++ b/packages/codec/lib/basic/encode/index.ts @@ -16,7 +16,7 @@ export function encodeBasic(input: Format.Values.Value): Uint8Array { let bytes: Uint8Array; switch (input.type.typeClass) { case "userDefinedValueType": - return encodeBasic((input).value); + return encodeBasic((input).value); case "uint": case "int": return Conversion.toBytes( diff --git a/packages/codec/lib/export.ts b/packages/codec/lib/export.ts index fc27c4b9c58..da1d94fe833 100644 --- a/packages/codec/lib/export.ts +++ b/packages/codec/lib/export.ts @@ -141,7 +141,7 @@ function ethersCompatibleNativize( } case "userDefinedValueType": return ethersCompatibleNativize( - (result).value, + (result).value, numberFormatter ); case "array": diff --git a/packages/codec/lib/format/elementary.ts b/packages/codec/lib/format/elementary.ts index 415768cfc75..a6830a52551 100644 --- a/packages/codec/lib/format/elementary.ts +++ b/packages/codec/lib/format/elementary.ts @@ -19,7 +19,7 @@ export type ElementaryValue = | FixedValue | UfixedValue | EnumValue - | UDVTValue + | UdvtValue | ContractValue; export type BuiltInValueTypeValue = @@ -223,8 +223,8 @@ export interface EnumValue { * * @Category User-defined elementary types */ -export interface UDVTValue { - type: Types.UDVTType; +export interface UdvtValue { + type: Types.UdvtType; kind: "value"; value: BuiltInValueTypeValue; } diff --git a/packages/codec/lib/format/errors.ts b/packages/codec/lib/format/errors.ts index e61ecda4565..56ba75cede4 100644 --- a/packages/codec/lib/format/errors.ts +++ b/packages/codec/lib/format/errors.ts @@ -80,7 +80,7 @@ export type DecoderError = | TypeErrorUnion | TupleError | EnumError - | UDVTError + | UdvtError | ContractError | FunctionExternalError | FunctionInternalError @@ -105,7 +105,7 @@ export type ElementaryErrorResult = | FixedErrorResult | UfixedErrorResult | EnumErrorResult - | UDVTErrorResult + | UdvtErrorResult | ContractErrorResult; /** @@ -465,10 +465,10 @@ export interface EnumNotFoundDecodingError { * * @Category User-defined elementary types */ -export interface UDVTErrorResult { - type: Types.UDVTType; +export interface UdvtErrorResult { + type: Types.UdvtType; kind: "error"; - error: GenericError | UDVTError; + error: GenericError | UdvtError; } /** @@ -476,7 +476,7 @@ export interface UDVTErrorResult { * * @Category User-defined elementary types */ -export type UDVTError = WrappedError; +export type UdvtError = WrappedError; /** * An error result representing something going wrong decoding diff --git a/packages/codec/lib/format/types.ts b/packages/codec/lib/format/types.ts index 5be73592c48..8c97f34cdbe 100644 --- a/packages/codec/lib/format/types.ts +++ b/packages/codec/lib/format/types.ts @@ -46,7 +46,7 @@ export type Type = | FunctionType | StructType | EnumType - | UDVTType + | UdvtType | ContractType | MagicType | TypeType @@ -228,7 +228,7 @@ export type ElementaryType = | AddressType | StringType | EnumType - | UDVTType + | UdvtType | ContractType; /** @@ -341,7 +341,7 @@ export interface FunctionExternalTypeGeneral { export type ContractDefinedType = | StructTypeLocal | EnumTypeLocal - | UDVTTypeLocal; + | UdvtTypeLocal; /** * User-defined types @@ -353,7 +353,7 @@ export type UserDefinedType = | ContractTypeNative | StructTypeGlobal | EnumTypeGlobal - | UDVTTypeGlobal; + | UdvtTypeGlobal; /** * Type of a struct @@ -533,14 +533,14 @@ export interface ContractTypeForeign { * * @Category User-defined elementary types */ -export type UDVTType = UDVTTypeLocal | UDVTTypeGlobal; +export type UdvtType = UdvtTypeLocal | UdvtTypeGlobal; /** * Local UDVT (defined in a contract) * * @Category User-defined elementary types */ -export interface UDVTTypeLocal { +export interface UdvtTypeLocal { typeClass: "userDefinedValueType"; kind: "local"; /** @@ -558,7 +558,7 @@ export interface UDVTTypeLocal { * * @Category User-defined elementary types */ -export interface UDVTTypeGlobal { +export interface UdvtTypeGlobal { typeClass: "userDefinedValueType"; kind: "global"; /** @@ -860,5 +860,5 @@ export function isContractDefinedType( ): anyType is ContractDefinedType { const contractDefinedTypes = ["enum", "struct", "userDefinedValueType"]; return contractDefinedTypes.includes(anyType.typeClass) - && (anyType).kind === "local"; + && (anyType).kind === "local"; } diff --git a/packages/codec/lib/format/utils/inspect.ts b/packages/codec/lib/format/utils/inspect.ts index bb19868e977..1b65e151675 100644 --- a/packages/codec/lib/format/utils/inspect.ts +++ b/packages/codec/lib/format/utils/inspect.ts @@ -152,7 +152,7 @@ export class ResultInspector { } case "userDefinedValueType": { const typeName = Format.Types.typeStringWithoutLocation(this.result.type); - const coercedResult = this.result; + const coercedResult = this.result; const inspectOfUnderlying = util.inspect( new ResultInspector(coercedResult.value), options @@ -544,7 +544,7 @@ function unsafeNativizeWithTable( } } case "userDefinedValueType": { - return unsafeNativize((result).value); + return unsafeNativize((result).value); } case "mapping": return Object.assign( diff --git a/packages/codec/lib/format/values.ts b/packages/codec/lib/format/values.ts index 66ecb38ccb5..a780f329c96 100644 --- a/packages/codec/lib/format/values.ts +++ b/packages/codec/lib/format/values.ts @@ -32,7 +32,7 @@ import type { FixedValue, UfixedValue, EnumValue, - UDVTValue, + UdvtValue, ContractValue, ContractValueInfoKnown, ContractValueInfoUnknown @@ -136,7 +136,7 @@ export type ElementaryResult = | FixedResult | UfixedResult | EnumResult - | UDVTResult + | UdvtResult | ContractResult; /** @@ -229,7 +229,7 @@ export type EnumResult = EnumValue | Errors.EnumErrorResult; * * @Category User-defined elementary types */ -export type UDVTResult = UDVTValue | Errors.UDVTErrorResult; +export type UdvtResult = UdvtValue | Errors.UdvtErrorResult; /** * A contract value or error From 0b23346b04734898bc070270b95b93c2f9572bb8 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 6 Oct 2021 13:00:55 -0400 Subject: [PATCH 120/124] Rename Udvt to UserDefinedValueType for clarity --- packages/codec/lib/abify.ts | 4 ++-- packages/codec/lib/basic/allocate/index.ts | 2 +- packages/codec/lib/basic/decode/index.ts | 6 +++--- packages/codec/lib/basic/encode/index.ts | 2 +- packages/codec/lib/export.ts | 2 +- packages/codec/lib/format/elementary.ts | 6 +++--- packages/codec/lib/format/errors.ts | 12 ++++++------ packages/codec/lib/format/types.ts | 16 ++++++++-------- packages/codec/lib/format/utils/inspect.ts | 4 ++-- packages/codec/lib/format/values.ts | 6 +++--- 10 files changed, 30 insertions(+), 30 deletions(-) diff --git a/packages/codec/lib/abify.ts b/packages/codec/lib/abify.ts index 4979b5985c2..419cf1f5385 100644 --- a/packages/codec/lib/abify.ts +++ b/packages/codec/lib/abify.ts @@ -90,7 +90,7 @@ export function abifyType( }; } case "userDefinedValueType": { - const fullType = ( + const fullType = ( Format.Types.fullType(dataType, userDefinedTypes) ); if (!fullType.underlyingType) { @@ -224,7 +224,7 @@ export function abifyResult( } } case "userDefinedValueType": { - const coercedResult = result; + const coercedResult = result; switch (coercedResult.kind) { case "value": return abifyResult(coercedResult.value, userDefinedTypes); diff --git a/packages/codec/lib/basic/allocate/index.ts b/packages/codec/lib/basic/allocate/index.ts index 443d3e5fc0a..e64cf271d02 100644 --- a/packages/codec/lib/basic/allocate/index.ts +++ b/packages/codec/lib/basic/allocate/index.ts @@ -42,7 +42,7 @@ export function byteLength( return Math.ceil(Math.log2(numValues) / 8); } case "userDefinedValueType": { - const storedType = userDefinedTypes[dataType.id]; + const storedType = userDefinedTypes[dataType.id]; if (!storedType || !storedType.underlyingType) { throw new Common.UnknownUserDefinedTypeError( dataType.id, diff --git a/packages/codec/lib/basic/decode/index.ts b/packages/codec/lib/basic/decode/index.ts index 14608fdb170..b7e75b34a15 100644 --- a/packages/codec/lib/basic/decode/index.ts +++ b/packages/codec/lib/basic/decode/index.ts @@ -37,7 +37,7 @@ export function* decodeBasic( switch (dataType.typeClass) { case "userDefinedValueType": { - const fullType = ( + const fullType = ( Format.Types.fullType(dataType, info.userDefinedTypes) ); if (!fullType.underlyingType) { @@ -64,7 +64,7 @@ export function* decodeBasic( switch (underlyingResult.kind) { //yes this switch is a little unnecessary :P case "value": //wrap the value and return - return { //no idea why need coercion here + return { //no idea why need coercion here type: fullType, kind: "value" as const, value: underlyingResult @@ -76,7 +76,7 @@ export function* decodeBasic( //does not cause an error in the whole thing, but to do that here //would cause problems for the type system :-/ //so we'll just be inconsistent - return { //TS is being bad again :-/ + return { //TS is being bad again :-/ type: fullType, kind: "error" as const, error: { diff --git a/packages/codec/lib/basic/encode/index.ts b/packages/codec/lib/basic/encode/index.ts index 203904fcab2..53c2606c8d7 100644 --- a/packages/codec/lib/basic/encode/index.ts +++ b/packages/codec/lib/basic/encode/index.ts @@ -16,7 +16,7 @@ export function encodeBasic(input: Format.Values.Value): Uint8Array { let bytes: Uint8Array; switch (input.type.typeClass) { case "userDefinedValueType": - return encodeBasic((input).value); + return encodeBasic((input).value); case "uint": case "int": return Conversion.toBytes( diff --git a/packages/codec/lib/export.ts b/packages/codec/lib/export.ts index da1d94fe833..4a81e8054a6 100644 --- a/packages/codec/lib/export.ts +++ b/packages/codec/lib/export.ts @@ -141,7 +141,7 @@ function ethersCompatibleNativize( } case "userDefinedValueType": return ethersCompatibleNativize( - (result).value, + (result).value, numberFormatter ); case "array": diff --git a/packages/codec/lib/format/elementary.ts b/packages/codec/lib/format/elementary.ts index a6830a52551..0b9ec6b8e80 100644 --- a/packages/codec/lib/format/elementary.ts +++ b/packages/codec/lib/format/elementary.ts @@ -19,7 +19,7 @@ export type ElementaryValue = | FixedValue | UfixedValue | EnumValue - | UdvtValue + | UserDefinedValueTypeValue | ContractValue; export type BuiltInValueTypeValue = @@ -223,8 +223,8 @@ export interface EnumValue { * * @Category User-defined elementary types */ -export interface UdvtValue { - type: Types.UdvtType; +export interface UserDefinedValueTypeValue { + type: Types.UserDefinedValueTypeType; kind: "value"; value: BuiltInValueTypeValue; } diff --git a/packages/codec/lib/format/errors.ts b/packages/codec/lib/format/errors.ts index 56ba75cede4..e12b7c4b80b 100644 --- a/packages/codec/lib/format/errors.ts +++ b/packages/codec/lib/format/errors.ts @@ -80,7 +80,7 @@ export type DecoderError = | TypeErrorUnion | TupleError | EnumError - | UdvtError + | UserDefinedValueTypeError | ContractError | FunctionExternalError | FunctionInternalError @@ -105,7 +105,7 @@ export type ElementaryErrorResult = | FixedErrorResult | UfixedErrorResult | EnumErrorResult - | UdvtErrorResult + | UserDefinedValueTypeErrorResult | ContractErrorResult; /** @@ -465,10 +465,10 @@ export interface EnumNotFoundDecodingError { * * @Category User-defined elementary types */ -export interface UdvtErrorResult { - type: Types.UdvtType; +export interface UserDefinedValueTypeErrorResult { + type: Types.UserDefinedValueTypeType; kind: "error"; - error: GenericError | UdvtError; + error: GenericError | UserDefinedValueTypeError; } /** @@ -476,7 +476,7 @@ export interface UdvtErrorResult { * * @Category User-defined elementary types */ -export type UdvtError = WrappedError; +export type UserDefinedValueTypeError = WrappedError; /** * An error result representing something going wrong decoding diff --git a/packages/codec/lib/format/types.ts b/packages/codec/lib/format/types.ts index 8c97f34cdbe..64fcee3fb6f 100644 --- a/packages/codec/lib/format/types.ts +++ b/packages/codec/lib/format/types.ts @@ -46,7 +46,7 @@ export type Type = | FunctionType | StructType | EnumType - | UdvtType + | UserDefinedValueTypeType | ContractType | MagicType | TypeType @@ -228,7 +228,7 @@ export type ElementaryType = | AddressType | StringType | EnumType - | UdvtType + | UserDefinedValueTypeType | ContractType; /** @@ -341,7 +341,7 @@ export interface FunctionExternalTypeGeneral { export type ContractDefinedType = | StructTypeLocal | EnumTypeLocal - | UdvtTypeLocal; + | UserDefinedValueTypeTypeLocal; /** * User-defined types @@ -353,7 +353,7 @@ export type UserDefinedType = | ContractTypeNative | StructTypeGlobal | EnumTypeGlobal - | UdvtTypeGlobal; + | UserDefinedValueTypeTypeGlobal; /** * Type of a struct @@ -533,14 +533,14 @@ export interface ContractTypeForeign { * * @Category User-defined elementary types */ -export type UdvtType = UdvtTypeLocal | UdvtTypeGlobal; +export type UserDefinedValueTypeType = UserDefinedValueTypeTypeLocal | UserDefinedValueTypeTypeGlobal; /** * Local UDVT (defined in a contract) * * @Category User-defined elementary types */ -export interface UdvtTypeLocal { +export interface UserDefinedValueTypeTypeLocal { typeClass: "userDefinedValueType"; kind: "local"; /** @@ -558,7 +558,7 @@ export interface UdvtTypeLocal { * * @Category User-defined elementary types */ -export interface UdvtTypeGlobal { +export interface UserDefinedValueTypeTypeGlobal { typeClass: "userDefinedValueType"; kind: "global"; /** @@ -860,5 +860,5 @@ export function isContractDefinedType( ): anyType is ContractDefinedType { const contractDefinedTypes = ["enum", "struct", "userDefinedValueType"]; return contractDefinedTypes.includes(anyType.typeClass) - && (anyType).kind === "local"; + && (anyType).kind === "local"; } diff --git a/packages/codec/lib/format/utils/inspect.ts b/packages/codec/lib/format/utils/inspect.ts index 1b65e151675..65d4639a2ef 100644 --- a/packages/codec/lib/format/utils/inspect.ts +++ b/packages/codec/lib/format/utils/inspect.ts @@ -152,7 +152,7 @@ export class ResultInspector { } case "userDefinedValueType": { const typeName = Format.Types.typeStringWithoutLocation(this.result.type); - const coercedResult = this.result; + const coercedResult = this.result; const inspectOfUnderlying = util.inspect( new ResultInspector(coercedResult.value), options @@ -544,7 +544,7 @@ function unsafeNativizeWithTable( } } case "userDefinedValueType": { - return unsafeNativize((result).value); + return unsafeNativize((result).value); } case "mapping": return Object.assign( diff --git a/packages/codec/lib/format/values.ts b/packages/codec/lib/format/values.ts index a780f329c96..5c85a3c2ad9 100644 --- a/packages/codec/lib/format/values.ts +++ b/packages/codec/lib/format/values.ts @@ -32,7 +32,7 @@ import type { FixedValue, UfixedValue, EnumValue, - UdvtValue, + UserDefinedValueTypeValue, ContractValue, ContractValueInfoKnown, ContractValueInfoUnknown @@ -136,7 +136,7 @@ export type ElementaryResult = | FixedResult | UfixedResult | EnumResult - | UdvtResult + | UserDefinedValueTypeResult | ContractResult; /** @@ -229,7 +229,7 @@ export type EnumResult = EnumValue | Errors.EnumErrorResult; * * @Category User-defined elementary types */ -export type UdvtResult = UdvtValue | Errors.UdvtErrorResult; +export type UserDefinedValueTypeResult = UserDefinedValueTypeValue | Errors.UserDefinedValueTypeErrorResult; /** * A contract value or error From 95fa88f99715ca71cef2fd3205f9f63d0bb9cb77 Mon Sep 17 00:00:00 2001 From: Harry Altman Date: Wed, 6 Oct 2021 13:19:38 -0400 Subject: [PATCH 121/124] Rename BuiltInValue* types to be consistent --- packages/codec/lib/abify.ts | 2 +- packages/codec/lib/format/elementary.ts | 4 ++-- packages/codec/lib/format/errors.ts | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/codec/lib/abify.ts b/packages/codec/lib/abify.ts index 419cf1f5385..7f34cd66c90 100644 --- a/packages/codec/lib/abify.ts +++ b/packages/codec/lib/abify.ts @@ -229,7 +229,7 @@ export function abifyResult( case "value": return abifyResult(coercedResult.value, userDefinedTypes); case "error": - return { //I have no idea what TS is thinking here + return { //I have no idea what TS is thinking here ...coercedResult, type: abifyType(result.type, userDefinedTypes) }; diff --git a/packages/codec/lib/format/elementary.ts b/packages/codec/lib/format/elementary.ts index 0b9ec6b8e80..7ae2bb45ace 100644 --- a/packages/codec/lib/format/elementary.ts +++ b/packages/codec/lib/format/elementary.ts @@ -22,7 +22,7 @@ export type ElementaryValue = | UserDefinedValueTypeValue | ContractValue; -export type BuiltInValueTypeValue = +export type BuiltInValueValue = | UintValue | IntValue | BoolValue @@ -226,7 +226,7 @@ export interface EnumValue { export interface UserDefinedValueTypeValue { type: Types.UserDefinedValueTypeType; kind: "value"; - value: BuiltInValueTypeValue; + value: BuiltInValueValue; } /** diff --git a/packages/codec/lib/format/errors.ts b/packages/codec/lib/format/errors.ts index e12b7c4b80b..ef86a18efbb 100644 --- a/packages/codec/lib/format/errors.ts +++ b/packages/codec/lib/format/errors.ts @@ -113,7 +113,7 @@ export type ElementaryErrorResult = * * @Category Elementary types */ -export type BuiltInValueTypeErrorResult = +export type BuiltInValueErrorResult = | UintErrorResult | IntErrorResult | BoolErrorResult @@ -486,7 +486,7 @@ export type UserDefinedValueTypeError = WrappedError; */ export interface WrappedError { kind: "WrappedError"; - error: BuiltInValueTypeErrorResult; + error: BuiltInValueErrorResult; } /** From ef4d25cca49fcd13f1eb84120d58120ae8ec1000 Mon Sep 17 00:00:00 2001 From: tyler Date: Thu, 19 Aug 2021 10:07:22 -0400 Subject: [PATCH 122/124] Revert "Revert "Upgrade @ethereumjs/common to ^2.4.0 and @ethereumjs/tx to ^3.3.0"" --- packages/hdwallet-provider/package.json | 4 ++-- packages/hdwallet-provider/src/index.ts | 31 +++++++++++++------------ yarn.lock | 8 +++++++ 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/packages/hdwallet-provider/package.json b/packages/hdwallet-provider/package.json index 451212b85a6..05db5193d28 100644 --- a/packages/hdwallet-provider/package.json +++ b/packages/hdwallet-provider/package.json @@ -25,8 +25,8 @@ "eth-sig-util": "^3.0.1", "ethereum-cryptography": "^0.1.3", "ethereum-protocol": "^1.0.1", - "ethereumjs-common": "^1.5.0", - "ethereumjs-tx": "^2.1.2", + "@ethereumjs/common": "^2.4.0", + "@ethereumjs/tx": "^3.3.0", "ethereumjs-util": "^6.1.0", "ethereumjs-wallet": "^1.0.1" }, diff --git a/packages/hdwallet-provider/src/index.ts b/packages/hdwallet-provider/src/index.ts index da2d19b5f76..8631c268648 100644 --- a/packages/hdwallet-provider/src/index.ts +++ b/packages/hdwallet-provider/src/index.ts @@ -3,8 +3,8 @@ import { wordlist } from "ethereum-cryptography/bip39/wordlists/english"; import * as EthUtil from "ethereumjs-util"; import ethJSWallet from "ethereumjs-wallet"; import { hdkey as EthereumHDKey } from "ethereumjs-wallet"; -import { Transaction } from "ethereumjs-tx"; -import Common from "ethereumjs-common"; +import { Transaction } from "@ethereumjs/tx"; +import Common from "@ethereumjs/common"; // @ts-ignore import ProviderEngine from "@trufflesuite/web3-provider-engine"; @@ -157,21 +157,22 @@ class HDWalletProvider { const KNOWN_CHAIN_IDS = new Set([1, 3, 4, 5, 42]); let txOptions; if (typeof chain !== "undefined" && KNOWN_CHAIN_IDS.has(chain)) { - txOptions = { chain }; + txOptions = { common: new Common({ chain }) }; } else if (typeof chain !== "undefined") { - const common = Common.forCustomChain( - 1, - { - name: "custom chain", - chainId: chain - }, - self.hardfork - ); - txOptions = { common }; + txOptions = { + common: Common.forCustomChain( + 1, + { + name: "custom chain", + chainId: chain + }, + self.hardfork + ) + }; } - const tx = new Transaction(txParams, txOptions); - tx.sign(pkey as Buffer); - const rawTx = `0x${tx.serialize().toString("hex")}`; + const tx = Transaction.fromTxData(txParams, txOptions); + const signedTx = tx.sign(pkey as Buffer); + const rawTx = `0x${signedTx.serialize().toString("hex")}`; cb(null, rawTx); }, signMessage({ data, from }: any, cb: any) { diff --git a/yarn.lock b/yarn.lock index c39c872772b..82ace2584e8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1027,6 +1027,14 @@ "@ethereumjs/common" "^2.3.1" ethereumjs-util "^7.0.10" +"@ethereumjs/tx@^3.3.0": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.3.0.tgz#14ed1b7fa0f28e1cd61e3ecbdab824205f6a4378" + integrity sha512-yTwEj2lVzSMgE6Hjw9Oa1DZks/nKTWM8Wn4ykDNapBPua2f4nXO3qKnni86O6lgDj5fVNRqbDsD0yy7/XNGDEA== + dependencies: + "@ethereumjs/common" "^2.4.0" + ethereumjs-util "^7.1.0" + "@ethersproject/abi@5.0.0-beta.153": version "5.0.0-beta.153" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.0.0-beta.153.tgz#43a37172b33794e4562999f6e2d555b7599a8eee" From 12ab88a269d080f55d3d96169394665054b66745 Mon Sep 17 00:00:00 2001 From: Dongming Hwang Date: Tue, 5 Oct 2021 15:18:39 -0400 Subject: [PATCH 123/124] Update `truffle test --compile-none` event message This PR is to update `truffle test --compile-none` event message to > Compilations have been skipped, not compiling. to reflect the actual test. This PR addresses #4348. --- packages/events/defaultSubscribers/compile.js | 8 ++++++++ packages/workflow-compile/index.js | 6 +++++- packages/workflow-compile/legacy/index.js | 6 +++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/packages/events/defaultSubscribers/compile.js b/packages/events/defaultSubscribers/compile.js index 27ec3a88463..5e1f139b245 100644 --- a/packages/events/defaultSubscribers/compile.js +++ b/packages/events/defaultSubscribers/compile.js @@ -69,6 +69,14 @@ module.exports = { `> Everything is up to date, there is nothing to compile.` ); } + ], + "compile:skipped": [ + function () { + if (this.quiet) return; + this.logger.log( + `> Compilation skipped because --compile-none option was passed.` + ); + } ] } }; diff --git a/packages/workflow-compile/index.js b/packages/workflow-compile/index.js index eaddb83e637..9850f581775 100644 --- a/packages/workflow-compile/index.js +++ b/packages/workflow-compile/index.js @@ -74,7 +74,11 @@ const WorkflowCompile = { .filter(compiler => compiler); if (contracts.length === 0 && config.events) { - config.events.emit("compile:nothingToCompile"); + if (config.compileNone || config["compile-none"]) { + config.events.emit("compile:skipped"); + } else { + config.events.emit("compile:nothingToCompile"); + } } if (config.events) { diff --git a/packages/workflow-compile/legacy/index.js b/packages/workflow-compile/legacy/index.js index 4063cd64348..ce98034c164 100644 --- a/packages/workflow-compile/legacy/index.js +++ b/packages/workflow-compile/legacy/index.js @@ -57,7 +57,11 @@ const WorkflowCompile = { ); if (numberOfCompiledContracts === 0 && config.events) { - config.events.emit("compile:nothingToCompile"); + if (config.compileNone || config["compile-none"]) { + config.events.emit("compile:skipped"); + } else { + config.events.emit("compile:nothingToCompile"); + } } if (config.events) { From e0c903d47cf52f10da74fd0348f8bdb2ef973818 Mon Sep 17 00:00:00 2001 From: eggplantzzz Date: Thu, 7 Oct 2021 16:19:56 -0400 Subject: [PATCH 124/124] Publish - @truffle/artifactor@4.0.126 - @truffle/box@2.1.30 - @truffle/codec@0.11.17 - @truffle/compile-solidity@5.3.25 - @truffle/compile-vyper@3.1.29 - @truffle/config@1.3.10 - @truffle/contract-tests@0.1.57 - @truffle/contract@4.3.38 - @truffle/core@5.4.14 - @truffle/db-kit@0.1.35 - @truffle/db-loader@0.0.13 - @truffle/db@0.5.34 - @truffle/debug-utils@5.1.18 - @truffle/debugger@9.1.19 - @truffle/decoder@5.0.10 - @truffle/deployer@3.2.47 - @truffle/environment@0.2.75 - @truffle/events@0.0.16 - @truffle/external-compile@2.0.27 - @truffle/fetch-and-compile@0.1.10 - @truffle/hdwallet-provider@1.5.1 - @truffle/migrate@3.2.47 - @truffle/profiler@0.1.1 - @truffle/provisioner@0.2.33 - @truffle/require@2.0.78 - @truffle/resolver@7.0.32 - @truffle/source-map-utils@1.3.61 - truffle@5.4.14 - @truffle/workflow-compile@3.2.33 --- packages/artifactor/package.json | 4 +-- packages/box/package.json | 4 +-- packages/codec/package.json | 2 +- packages/compile-solidity/package.json | 12 ++++----- packages/compile-vyper/package.json | 8 +++--- packages/config/package.json | 4 +-- packages/contract-tests/package.json | 6 ++--- packages/contract/package.json | 4 +-- packages/core/package.json | 36 ++++++++++++------------- packages/db-kit/package.json | 16 +++++------ packages/db-loader/package.json | 4 +-- packages/db/package.json | 6 ++--- packages/debug-utils/package.json | 4 +-- packages/debugger/package.json | 16 +++++------ packages/decoder/package.json | 12 ++++----- packages/deployer/package.json | 6 ++--- packages/environment/package.json | 6 ++--- packages/events/package.json | 2 +- packages/external-compile/package.json | 4 +-- packages/fetch-and-compile/package.json | 8 +++--- packages/hdwallet-provider/package.json | 6 ++--- packages/migrate/package.json | 10 +++---- packages/profiler/package.json | 4 +-- packages/provisioner/package.json | 4 +-- packages/require/package.json | 4 +-- packages/resolver/package.json | 6 ++--- packages/source-map-utils/package.json | 4 +-- packages/truffle/package.json | 16 +++++------ packages/workflow-compile/package.json | 16 +++++------ 29 files changed, 117 insertions(+), 117 deletions(-) diff --git a/packages/artifactor/package.json b/packages/artifactor/package.json index b3eadfbff3a..adfc72b22ca 100644 --- a/packages/artifactor/package.json +++ b/packages/artifactor/package.json @@ -13,7 +13,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/artifactor" }, - "version": "4.0.125", + "version": "4.0.126", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -28,7 +28,7 @@ "lodash.merge": "^4.6.2" }, "devDependencies": { - "@truffle/contract": "^4.3.37", + "@truffle/contract": "^4.3.38", "@types/fs-extra": "^8.1.0", "@types/lodash.assign": "^4.2.6", "@types/lodash.merge": "^4.6.6", diff --git a/packages/box/package.json b/packages/box/package.json index 684501628aa..1e391d3bbe2 100644 --- a/packages/box/package.json +++ b/packages/box/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.1.29", + "version": "2.1.30", "main": "dist/box.js", "scripts": { "build": "tsc", @@ -21,7 +21,7 @@ }, "types": "./typings/index.d.ts", "dependencies": { - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "axios": "^0.21.1", "download-git-repo": "^3.0.2", "fs-extra": "^9.1.0", diff --git a/packages/codec/package.json b/packages/codec/package.json index fa70690052c..ef4b9f1547f 100644 --- a/packages/codec/package.json +++ b/packages/codec/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.11.16", + "version": "0.11.17", "main": "dist/lib/index.js", "files": [ "dist" diff --git a/packages/compile-solidity/package.json b/packages/compile-solidity/package.json index ebdca7416af..413c09df43e 100644 --- a/packages/compile-solidity/package.json +++ b/packages/compile-solidity/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.3.24", + "version": "5.3.25", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -20,10 +20,10 @@ }, "dependencies": { "@truffle/compile-common": "^0.7.22", - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/profiler": "^0.1.0", + "@truffle/profiler": "^0.1.1", "axios": "^0.21.1", "debug": "^4.3.1", "fs-extra": "^9.1.0", @@ -36,9 +36,9 @@ "solc": "0.6.9" }, "devDependencies": { - "@truffle/artifactor": "^4.0.125", - "@truffle/box": "^2.1.29", - "@truffle/resolver": "^7.0.31", + "@truffle/artifactor": "^4.0.126", + "@truffle/box": "^2.1.30", + "@truffle/resolver": "^7.0.32", "babel-core": "^6.26.0", "babel-polyfill": "^6.26.0", "babel-preset-env": "^1.6.1", diff --git a/packages/compile-vyper/package.json b/packages/compile-vyper/package.json index f1e54b1ca4f..16772a5f40c 100644 --- a/packages/compile-vyper/package.json +++ b/packages/compile-vyper/package.json @@ -12,7 +12,7 @@ "url": "https://github.com/trufflesuite/truffle.git", "directory": "packages/compile-vyper" }, - "version": "3.1.28", + "version": "3.1.29", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -20,9 +20,9 @@ }, "dependencies": { "@truffle/compile-common": "^0.7.22", - "@truffle/config": "^1.3.9", - "@truffle/profiler": "^0.1.0", - "@truffle/resolver": "^7.0.31", + "@truffle/config": "^1.3.10", + "@truffle/profiler": "^0.1.1", + "@truffle/resolver": "^7.0.32", "colors": "^1.4.0", "debug": "^4.3.1", "lodash.partition": "^4.6.0", diff --git a/packages/config/package.json b/packages/config/package.json index f03d148cf0f..851a18bf537 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.9", + "version": "1.3.10", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -22,7 +22,7 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/error": "^0.0.14", - "@truffle/events": "^0.0.15", + "@truffle/events": "^0.0.16", "@truffle/provider": "^0.2.42", "conf": "^10.0.2", "find-up": "^2.1.0", diff --git a/packages/contract-tests/package.json b/packages/contract-tests/package.json index 895af0ee961..4851f2cea41 100644 --- a/packages/contract-tests/package.json +++ b/packages/contract-tests/package.json @@ -13,7 +13,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.1.56", + "version": "0.1.57", "scripts": { "prepare": "exit 0", "test": "./scripts/test.sh", @@ -22,8 +22,8 @@ }, "devDependencies": { "@truffle/blockchain-utils": "^0.0.31", - "@truffle/compile-solidity": "^5.3.24", - "@truffle/contract": "^4.3.37", + "@truffle/compile-solidity": "^5.3.25", + "@truffle/contract": "^4.3.38", "bignumber.js": "^7.2.1", "chai": "^4.2.0", "debug": "^4.3.1", diff --git a/packages/contract/package.json b/packages/contract/package.json index eb2605ad0a9..fadf8c149a5 100644 --- a/packages/contract/package.json +++ b/packages/contract/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "4.3.37", + "version": "4.3.38", "main": "index.js", "scripts": { "compile": "sh -c \"mkdir -p ./dist\" && browserify --debug ./index.js | exorcist ./dist/truffle-contract.js.map > ./dist/truffle-contract.js && uglifyjs ./dist/truffle-contract.js -o ./dist/truffle-contract.min.js", @@ -24,7 +24,7 @@ "@ensdomains/ensjs": "^2.0.1", "@truffle/blockchain-utils": "^0.0.31", "@truffle/contract-schema": "^3.4.3", - "@truffle/debug-utils": "^5.1.17", + "@truffle/debug-utils": "^5.1.18", "@truffle/error": "^0.0.14", "@truffle/interface-adapter": "^0.5.8", "bignumber.js": "^7.2.1", diff --git a/packages/core/package.json b/packages/core/package.json index f846ef72477..69ed3cc051a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.13", + "version": "5.4.14", "bin": { "truffle": "./cli.js", "truffle-exec": "./exec.js" @@ -21,22 +21,22 @@ "test": "mocha ./test/** ./test/**/*" }, "dependencies": { - "@truffle/artifactor": "^4.0.125", - "@truffle/box": "^2.1.29", - "@truffle/codec": "^0.11.16", - "@truffle/compile-solidity": "^5.3.24", - "@truffle/config": "^1.3.9", - "@truffle/contract": "^4.3.37", - "@truffle/debug-utils": "^5.1.17", - "@truffle/debugger": "^9.1.18", - "@truffle/decoder": "^5.0.9", - "@truffle/deployer": "^3.2.46", - "@truffle/environment": "^0.2.74", + "@truffle/artifactor": "^4.0.126", + "@truffle/box": "^2.1.30", + "@truffle/codec": "^0.11.17", + "@truffle/compile-solidity": "^5.3.25", + "@truffle/config": "^1.3.10", + "@truffle/contract": "^4.3.38", + "@truffle/debug-utils": "^5.1.18", + "@truffle/debugger": "^9.1.19", + "@truffle/decoder": "^5.0.10", + "@truffle/deployer": "^3.2.47", + "@truffle/environment": "^0.2.75", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", - "@truffle/fetch-and-compile": "^0.1.9", + "@truffle/fetch-and-compile": "^0.1.10", "@truffle/interface-adapter": "^0.5.8", - "@truffle/migrate": "^3.2.46", + "@truffle/migrate": "^3.2.47", "@truffle/plugins": "^0.2.3", "@truffle/preserve": "^0.2.4", "@truffle/preserve-fs": "^0.2.4", @@ -44,11 +44,11 @@ "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4", "@truffle/provider": "^0.2.42", - "@truffle/provisioner": "^0.2.32", - "@truffle/require": "^2.0.77", - "@truffle/resolver": "^7.0.31", + "@truffle/provisioner": "^0.2.33", + "@truffle/require": "^2.0.78", + "@truffle/resolver": "^7.0.32", "@truffle/source-fetcher": "^0.5.9", - "@truffle/workflow-compile": "^3.2.32", + "@truffle/workflow-compile": "^3.2.33", "chai": "^4.2.0", "colors": "^1.4.0", "command-exists": "^1.2.8", diff --git a/packages/db-kit/package.json b/packages/db-kit/package.json index a5adc01ac9a..41517b5b945 100644 --- a/packages/db-kit/package.json +++ b/packages/db-kit/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/db-kit", - "version": "0.1.34", + "version": "0.1.35", "description": "Utility belt for Truffle and @truffle/db", "keywords": [ "smart-contract", @@ -55,14 +55,14 @@ "url": "https://github.com/trufflesuite/truffle/issues" }, "dependencies": { - "@truffle/codec": "^0.11.16", + "@truffle/codec": "^0.11.17", "@truffle/compile-common": "^0.7.22", - "@truffle/compile-solidity": "^5.3.24", - "@truffle/config": "^1.3.9", - "@truffle/db": "^0.5.33", - "@truffle/decoder": "^5.0.9", - "@truffle/environment": "^0.2.74", - "@truffle/fetch-and-compile": "^0.1.9", + "@truffle/compile-solidity": "^5.3.25", + "@truffle/config": "^1.3.10", + "@truffle/db": "^0.5.34", + "@truffle/decoder": "^5.0.10", + "@truffle/environment": "^0.2.75", + "@truffle/fetch-and-compile": "^0.1.10", "ink": "^3.0.8", "ink-big-text": "^1.2.0", "ink-divider": "^3.0.0", diff --git a/packages/db-loader/package.json b/packages/db-loader/package.json index 6beac65950d..28d91cda365 100644 --- a/packages/db-loader/package.json +++ b/packages/db-loader/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.0.12", + "version": "0.0.13", "main": "dist/index.js", "keywords": [ "ethereum", @@ -30,7 +30,7 @@ "prepare": "tsc" }, "optionalDependencies": { - "@truffle/db": "^0.5.33" + "@truffle/db": "^0.5.34" }, "devDependencies": { "typescript": "^4.1.4" diff --git a/packages/db/package.json b/packages/db/package.json index fdcd665b000..acd63fd9cc4 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.5.33", + "version": "0.5.34", "main": "dist/src/index.js", "files": [ "dist", @@ -38,8 +38,8 @@ "dependencies": { "@truffle/abi-utils": "^0.2.4", "@truffle/code-utils": "^1.2.30", - "@truffle/config": "^1.3.9", - "@truffle/resolver": "^7.0.31", + "@truffle/config": "^1.3.10", + "@truffle/resolver": "^7.0.32", "apollo-server": "^2.18.2", "debug": "^4.3.1", "fs-extra": "^9.1.0", diff --git a/packages/debug-utils/package.json b/packages/debug-utils/package.json index fc6b37b42df..a1c2ad03657 100644 --- a/packages/debug-utils/package.json +++ b/packages/debug-utils/package.json @@ -12,13 +12,13 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.1.17", + "version": "5.1.18", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/codec": "^0.11.16", + "@truffle/codec": "^0.11.17", "@trufflesuite/chromafi": "^2.2.2", "bn.js": "^5.1.3", "chalk": "^2.4.2", diff --git a/packages/debugger/package.json b/packages/debugger/package.json index c5707375ed0..9b15e61ae60 100644 --- a/packages/debugger/package.json +++ b/packages/debugger/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "9.1.18", + "version": "9.1.19", "main": "dist/debugger.js", "scripts": { "build": "webpack --config webpack/webpack.config.js", @@ -25,8 +25,8 @@ }, "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.16", - "@truffle/source-map-utils": "^1.3.60", + "@truffle/codec": "^0.11.17", + "@truffle/source-map-utils": "^1.3.61", "bn.js": "^5.1.3", "debug": "^4.3.1", "json-pointer": "^0.6.0", @@ -44,11 +44,11 @@ "web3-eth-abi": "1.5.3" }, "devDependencies": { - "@truffle/artifactor": "^4.0.125", - "@truffle/box": "^2.1.29", - "@truffle/migrate": "^3.2.46", - "@truffle/resolver": "^7.0.31", - "@truffle/workflow-compile": "^3.2.32", + "@truffle/artifactor": "^4.0.126", + "@truffle/box": "^2.1.30", + "@truffle/migrate": "^3.2.47", + "@truffle/resolver": "^7.0.32", + "@truffle/workflow-compile": "^3.2.33", "babel-core": "^6.26.0", "babel-loader": "^7.1.2", "babel-plugin-transform-object-rest-spread": "^6.26.0", diff --git a/packages/decoder/package.json b/packages/decoder/package.json index 7d5bc1ad187..64368c82782 100644 --- a/packages/decoder/package.json +++ b/packages/decoder/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.0.9", + "version": "5.0.10", "main": "dist/index.js", "directories": { "lib": "lib" @@ -26,19 +26,19 @@ "types": "dist/index.d.ts", "dependencies": { "@truffle/abi-utils": "^0.2.4", - "@truffle/codec": "^0.11.16", + "@truffle/codec": "^0.11.17", "@truffle/compile-common": "^0.7.22", - "@truffle/source-map-utils": "^1.3.60", + "@truffle/source-map-utils": "^1.3.61", "bn.js": "^5.1.3", "debug": "^4.3.1", "web3": "1.5.3" }, "devDependencies": { - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "@truffle/contract-schema": "^3.4.3", - "@truffle/migrate": "^3.2.46", + "@truffle/migrate": "^3.2.47", "@truffle/provider": "^0.2.42", - "@truffle/workflow-compile": "^3.2.32", + "@truffle/workflow-compile": "^3.2.33", "@types/big.js": "^4.0.5", "@types/bn.js": "^4.11.4", "@types/debug": "^4.1.5", diff --git a/packages/deployer/package.json b/packages/deployer/package.json index ee08ce197c5..216d91ca485 100644 --- a/packages/deployer/package.json +++ b/packages/deployer/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.46", + "version": "3.2.47", "main": "index.js", "scripts": { "prepare": "exit 0", @@ -22,7 +22,7 @@ "@ensdomains/ens": "^0.4.0", "@ensdomains/ensjs": "^2.0.1", "@ensdomains/resolver": "^0.2.0", - "@truffle/contract": "^4.3.37", + "@truffle/contract": "^4.3.38", "@truffle/expect": "^0.0.18", "emittery": "^0.4.1", "eth-ens-namehash": "^2.0.8", @@ -30,7 +30,7 @@ }, "devDependencies": { "@truffle/reporters": "^2.0.7", - "@truffle/workflow-compile": "^3.2.32", + "@truffle/workflow-compile": "^3.2.33", "ganache-core": "2.13.0", "mocha": "8.1.2", "sinon": "^9.0.2", diff --git a/packages/environment/package.json b/packages/environment/package.json index 771243f7c09..c42511f695e 100644 --- a/packages/environment/package.json +++ b/packages/environment/package.json @@ -13,17 +13,17 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "0.2.74", + "version": "0.2.75", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { - "@truffle/artifactor": "^4.0.125", + "@truffle/artifactor": "^4.0.126", "@truffle/error": "^0.0.14", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.8", - "@truffle/resolver": "^7.0.31", + "@truffle/resolver": "^7.0.32", "ganache-core": "2.13.0", "node-ipc": "^9.1.1", "source-map-support": "^0.5.19", diff --git a/packages/events/package.json b/packages/events/package.json index 1c33988bb6b..77391df97a4 100644 --- a/packages/events/package.json +++ b/packages/events/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/events", - "version": "0.0.15", + "version": "0.0.16", "description": "Event system for Truffle", "main": "index.js", "keywords": [], diff --git a/packages/external-compile/package.json b/packages/external-compile/package.json index eb12410c754..d909ea51d2f 100644 --- a/packages/external-compile/package.json +++ b/packages/external-compile/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.26", + "version": "2.0.27", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "@truffle/contract-schema": "^3.4.3", "@truffle/expect": "^0.0.18", "debug": "^4.3.1", diff --git a/packages/fetch-and-compile/package.json b/packages/fetch-and-compile/package.json index 063af692f90..2b9243b4805 100644 --- a/packages/fetch-and-compile/package.json +++ b/packages/fetch-and-compile/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/fetch-and-compile", - "version": "0.1.9", + "version": "0.1.10", "description": "Used to obtain external verified sources and compile them", "main": "dist/index.js", "scripts": { @@ -38,14 +38,14 @@ "access": "public" }, "dependencies": { - "@truffle/codec": "^0.11.16", - "@truffle/compile-solidity": "^5.3.24", + "@truffle/codec": "^0.11.17", + "@truffle/compile-solidity": "^5.3.25", "@truffle/source-fetcher": "^0.5.9", "semver": "^7.3.4" }, "devDependencies": { "@truffle/compile-common": "^0.7.22", - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "typescript": "^4.1.4" } } diff --git a/packages/hdwallet-provider/package.json b/packages/hdwallet-provider/package.json index 05db5193d28..48d6ed7d31d 100644 --- a/packages/hdwallet-provider/package.json +++ b/packages/hdwallet-provider/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.5.0", + "version": "1.5.1", "main": "dist/index.js", "scripts": { "build": "tsc", @@ -21,12 +21,12 @@ }, "types": "dist/index.d.ts", "dependencies": { + "@ethereumjs/common": "^2.4.0", + "@ethereumjs/tx": "^3.3.0", "@trufflesuite/web3-provider-engine": "15.0.13-1", "eth-sig-util": "^3.0.1", "ethereum-cryptography": "^0.1.3", "ethereum-protocol": "^1.0.1", - "@ethereumjs/common": "^2.4.0", - "@ethereumjs/tx": "^3.3.0", "ethereumjs-util": "^6.1.0", "ethereumjs-wallet": "^1.0.1" }, diff --git a/packages/migrate/package.json b/packages/migrate/package.json index 37cc2b00ba3..57148eb50b3 100644 --- a/packages/migrate/package.json +++ b/packages/migrate/package.json @@ -12,20 +12,20 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.46", + "version": "3.2.47", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha ./test/* ./test/**/*" }, "dependencies": { - "@truffle/config": "^1.3.9", - "@truffle/db-loader": "^0.0.12", - "@truffle/deployer": "^3.2.46", + "@truffle/config": "^1.3.10", + "@truffle/db-loader": "^0.0.13", + "@truffle/deployer": "^3.2.47", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.8", "@truffle/reporters": "^2.0.7", - "@truffle/require": "^2.0.77", + "@truffle/require": "^2.0.78", "emittery": "^0.4.1", "glob": "^7.1.6" }, diff --git a/packages/profiler/package.json b/packages/profiler/package.json index 9a221276c65..c8adb88f271 100644 --- a/packages/profiler/package.json +++ b/packages/profiler/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/profiler", - "version": "0.1.0", + "version": "0.1.1", "description": "Package for dealing with Solidity sources along with their Truffle artifacts", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -20,7 +20,7 @@ "watch": "tsc -w" }, "devDependencies": { - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "@types/node": "12.12.21", "ts-node": "^9.0.0", "typescript": "^4.1.4" diff --git a/packages/provisioner/package.json b/packages/provisioner/package.json index 71cbfdc5f72..cb25e8b37e5 100644 --- a/packages/provisioner/package.json +++ b/packages/provisioner/package.json @@ -1,6 +1,6 @@ { "name": "@truffle/provisioner", - "version": "0.2.32", + "version": "0.2.33", "description": "Provision contract objects for use from multiple sources", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", @@ -35,6 +35,6 @@ "typescript": "^4.1.4" }, "dependencies": { - "@truffle/config": "^1.3.9" + "@truffle/config": "^1.3.10" } } diff --git a/packages/require/package.json b/packages/require/package.json index bec8ef6476a..22cc1c68a3a 100644 --- a/packages/require/package.json +++ b/packages/require/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "2.0.77", + "version": "2.0.78", "main": "require.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/config": "^1.3.9", + "@truffle/config": "^1.3.10", "@truffle/expect": "^0.0.18", "@truffle/interface-adapter": "^0.5.8", "original-require": "^1.0.1" diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 64fc5b5f242..0ea8b2ee515 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "7.0.31", + "version": "7.0.32", "main": "dist/lib/index.js", "files": [ "dist", @@ -27,10 +27,10 @@ }, "types": "dist/lib/index.d.ts", "dependencies": { - "@truffle/contract": "^4.3.37", + "@truffle/contract": "^4.3.38", "@truffle/contract-sources": "^0.1.12", "@truffle/expect": "^0.0.18", - "@truffle/provisioner": "^0.2.32", + "@truffle/provisioner": "^0.2.33", "abi-to-sol": "^0.2.0", "debug": "^4.3.1", "detect-installed": "^2.0.4", diff --git a/packages/source-map-utils/package.json b/packages/source-map-utils/package.json index b55abb21f86..2dfd2a2fa76 100644 --- a/packages/source-map-utils/package.json +++ b/packages/source-map-utils/package.json @@ -12,14 +12,14 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "1.3.60", + "version": "1.3.61", "main": "index.js", "scripts": { "prepare": "exit 0" }, "dependencies": { "@truffle/code-utils": "^1.2.30", - "@truffle/codec": "^0.11.16", + "@truffle/codec": "^0.11.17", "debug": "^4.3.1", "json-pointer": "^0.6.0", "node-interval-tree": "^1.3.3", diff --git a/packages/truffle/package.json b/packages/truffle/package.json index 8f502905d90..9b8469752e3 100644 --- a/packages/truffle/package.json +++ b/packages/truffle/package.json @@ -12,7 +12,7 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "5.4.13", + "version": "5.4.14", "main": "./build/library.bundled.js", "bin": { "truffle": "./build/cli.bundled.js" @@ -31,24 +31,24 @@ "test:raw": "NO_BUILD=true mocha" }, "optionalDependencies": { - "@truffle/db": "^0.5.33", + "@truffle/db": "^0.5.34", "@truffle/preserve-fs": "^0.2.4", "@truffle/preserve-to-buckets": "^0.2.4", "@truffle/preserve-to-filecoin": "^0.2.4", "@truffle/preserve-to-ipfs": "^0.2.4" }, "dependencies": { - "@truffle/db-loader": "^0.0.12", - "@truffle/debugger": "^9.1.18", + "@truffle/db-loader": "^0.0.13", + "@truffle/debugger": "^9.1.19", "app-module-path": "^2.2.0", "mocha": "8.1.2", "original-require": "^1.0.1" }, "devDependencies": { - "@truffle/box": "^2.1.29", - "@truffle/config": "^1.3.9", - "@truffle/contract": "^4.3.37", - "@truffle/core": "^5.4.13", + "@truffle/box": "^2.1.30", + "@truffle/config": "^1.3.10", + "@truffle/contract": "^4.3.38", + "@truffle/core": "^5.4.14", "@truffle/interface-adapter": "^0.5.8", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^7.0.0", diff --git a/packages/workflow-compile/package.json b/packages/workflow-compile/package.json index dfedae2f4d9..7475f671671 100644 --- a/packages/workflow-compile/package.json +++ b/packages/workflow-compile/package.json @@ -12,22 +12,22 @@ "bugs": { "url": "https://github.com/trufflesuite/truffle/issues" }, - "version": "3.2.32", + "version": "3.2.33", "main": "index.js", "scripts": { "prepare": "exit 0", "test": "mocha" }, "dependencies": { - "@truffle/artifactor": "^4.0.125", + "@truffle/artifactor": "^4.0.126", "@truffle/compile-common": "^0.7.22", - "@truffle/compile-solidity": "^5.3.24", - "@truffle/compile-vyper": "^3.1.28", - "@truffle/config": "^1.3.9", - "@truffle/db-loader": "^0.0.12", + "@truffle/compile-solidity": "^5.3.25", + "@truffle/compile-vyper": "^3.1.29", + "@truffle/config": "^1.3.10", + "@truffle/db-loader": "^0.0.13", "@truffle/expect": "^0.0.18", - "@truffle/external-compile": "^2.0.26", - "@truffle/resolver": "^7.0.31", + "@truffle/external-compile": "^2.0.27", + "@truffle/resolver": "^7.0.32", "fs-extra": "^9.1.0" }, "devDependencies": {