@openzeppelin/upgrades-core 1.35.0 → 1.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cli/cli.test.js +160 -0
  3. package/dist/cli/cli.test.js.map +1 -1
  4. package/dist/cli/validate/build-info-file.d.ts +4 -0
  5. package/dist/cli/validate/build-info-file.d.ts.map +1 -1
  6. package/dist/cli/validate/build-info-file.js +7 -2
  7. package/dist/cli/validate/build-info-file.js.map +1 -1
  8. package/dist/cli/validate/contract-report.d.ts +5 -5
  9. package/dist/cli/validate/contract-report.d.ts.map +1 -1
  10. package/dist/cli/validate/contract-report.js +12 -6
  11. package/dist/cli/validate/contract-report.js.map +1 -1
  12. package/dist/cli/validate/find-contract.d.ts +7 -2
  13. package/dist/cli/validate/find-contract.d.ts.map +1 -1
  14. package/dist/cli/validate/find-contract.js +32 -4
  15. package/dist/cli/validate/find-contract.js.map +1 -1
  16. package/dist/cli/validate/upgradeability-assessment.d.ts +2 -1
  17. package/dist/cli/validate/upgradeability-assessment.d.ts.map +1 -1
  18. package/dist/cli/validate/upgradeability-assessment.js +2 -2
  19. package/dist/cli/validate/upgradeability-assessment.js.map +1 -1
  20. package/dist/cli/validate/validate-upgrade-safety.d.ts +11 -3
  21. package/dist/cli/validate/validate-upgrade-safety.d.ts.map +1 -1
  22. package/dist/cli/validate/validate-upgrade-safety.js +27 -7
  23. package/dist/cli/validate/validate-upgrade-safety.js.map +1 -1
  24. package/dist/cli/validate/validate-upgrade-safety.test.js +1 -1
  25. package/dist/cli/validate/validations.d.ts +1 -0
  26. package/dist/cli/validate/validations.d.ts.map +1 -1
  27. package/dist/cli/validate/validations.js +1 -0
  28. package/dist/cli/validate/validations.js.map +1 -1
  29. package/dist/cli/validate/validations.test.js +8 -4
  30. package/dist/cli/validate/validations.test.js.map +1 -1
  31. package/dist/cli/validate.d.ts +1 -0
  32. package/dist/cli/validate.d.ts.map +1 -1
  33. package/dist/cli/validate.js +6 -3
  34. package/dist/cli/validate.js.map +1 -1
  35. package/dist/utils/make-namespaced.d.ts +6 -2
  36. package/dist/utils/make-namespaced.d.ts.map +1 -1
  37. package/dist/utils/make-namespaced.js +27 -14
  38. package/dist/utils/make-namespaced.js.map +1 -1
  39. package/package.json +2 -2
  40. package/src/cli/cli.test.ts +274 -0
  41. package/src/cli/cli.test.ts.md +119 -0
  42. package/src/cli/cli.test.ts.snap +0 -0
  43. package/src/cli/validate/build-info-file.ts +15 -4
  44. package/src/cli/validate/contract-report.ts +12 -7
  45. package/src/cli/validate/find-contract.ts +50 -4
  46. package/src/cli/validate/upgradeability-assessment.ts +3 -2
  47. package/src/cli/validate/validate-upgrade-safety.test.ts +1 -1
  48. package/src/cli/validate/validate-upgrade-safety.ts +36 -6
  49. package/src/cli/validate/validations.test.ts +8 -4
  50. package/src/cli/validate/validations.ts +2 -0
  51. package/src/cli/validate.ts +7 -2
  52. package/src/utils/make-namespaced.test.ts.md +32 -2
  53. package/src/utils/make-namespaced.test.ts.snap +0 -0
  54. package/src/utils/make-namespaced.ts +36 -21
@@ -1 +1 @@
1
- {"version":3,"file":"upgradeability-assessment.js","sourceRoot":"","sources":["../../../src/cli/validate/upgradeability-assessment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgradeability-assessment.js","sourceRoot":"","sources":["../../../src/cli/validate/upgradeability-assessment.ts"],"names":[],"mappings":"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"}
@@ -15,13 +15,21 @@ export type SpecifiedContracts = {
15
15
  * Validates the upgrade safety of all contracts in the build info dir's build info files.
16
16
  * Only contracts that are detected as upgradeable will be validated.
17
17
  *
18
- * @param buildInfoDir Absolute path of build info directory, or undefined to use the default Hardhat or Foundry build-info dir.
18
+ * @param buildInfoDir Path of build info directory, or undefined to use the default Hardhat or Foundry build-info dir.
19
19
  * @param contract The name or fully qualified name of the contract to validate. If not specified, all upgradeable contracts in the build info directory will be validated.
20
20
  * @param reference The name or fully qualified name of the reference contract to use for storage layout comparisons. Can only be used along with `contract`. If not specified, uses the `@custom:oz-upgrades-from` annotation in the contract that is being validated.
21
21
  * @param opts Validation options, or undefined to use the default validation options.
22
+ * @param referenceBuildInfoDirs Optional paths of additional build info directories from previous versions of the project to use for storage layout comparisons. When using this option, refer to one of these directories using prefix `<dirName>:` before the contract name or fully qualified name in the `reference` param or `@custom:oz-upgrades-from` annotation, where `<dirName>` is the directory short name. Each directory short name must be unique, including compared to the main build info directory.
22
23
  * @returns The project report.
23
24
  */
24
- export declare function validateUpgradeSafety(buildInfoDir?: string, contract?: string, reference?: string, opts?: ValidateUpgradeSafetyOptions): Promise<ProjectReport>;
25
- export declare function findSpecifiedContracts(sourceContracts: SourceContract[], opts: Required<ValidateUpgradeSafetyOptions>, contractName?: string, referenceName?: string): SpecifiedContracts | undefined;
25
+ export declare function validateUpgradeSafety(buildInfoDir?: string, contract?: string, reference?: string, opts?: ValidateUpgradeSafetyOptions, referenceBuildInfoDirs?: string[]): Promise<ProjectReport>;
26
+ /**
27
+ * Dictionary of build info directories and the contracts they contain.
28
+ * Main build info directory can be found with the key '' and also with its short name.
29
+ */
30
+ export interface BuildInfoDictionary {
31
+ [buildInfoDirName: string]: SourceContract[];
32
+ }
33
+ export declare function findSpecifiedContracts(buildInfoDictionary: BuildInfoDictionary, opts: Required<ValidateUpgradeSafetyOptions>, contractName?: string, referenceName?: string): SpecifiedContracts | undefined;
26
34
  export declare function withCliDefaults(opts: ValidateUpgradeSafetyOptions): Required<ValidateUpgradeSafetyOptions>;
27
35
  //# sourceMappingURL=validate-upgrade-safety.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-upgrade-safety.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/validate-upgrade-safety.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA0B,MAAM,OAAO,CAAC;AAKlE,OAAO,EAAE,aAAa,EAAoB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,cAAc,EAA8B,MAAM,eAAe,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG;IAC3E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,YAAY,CAAC,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,GAAE,4BAAiC,GACtC,OAAO,CAAC,aAAa,CAAC,CAUxB;AAED,wBAAgB,sBAAsB,CACpC,eAAe,EAAE,cAAc,EAAE,EACjC,IAAI,EAAE,QAAQ,CAAC,4BAA4B,CAAC,EAC5C,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,GAAG,SAAS,CAahC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,4BAA4B,GAAG,QAAQ,CAAC,4BAA4B,CAAC,CAQ1G"}
1
+ {"version":3,"file":"validate-upgrade-safety.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/validate-upgrade-safety.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAA0B,MAAM,OAAO,CAAC;AAKlE,OAAO,EAAE,aAAa,EAAoB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,cAAc,EAA8B,MAAM,eAAe,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG;IAC3E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CACzC,YAAY,CAAC,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,GAAE,4BAAiC,EACvC,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAChC,OAAO,CAAC,aAAa,CAAC,CA6BxB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,gBAAgB,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;CAC9C;AAED,wBAAgB,sBAAsB,CACpC,mBAAmB,EAAE,mBAAmB,EACxC,IAAI,EAAE,QAAQ,CAAC,4BAA4B,CAAC,EAC5C,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,GAAG,SAAS,CAahC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,4BAA4B,GAAG,QAAQ,CAAC,4BAA4B,CAAC,CAQ1G"}
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.validateUpgradeSafety = validateUpgradeSafety;
4
7
  exports.findSpecifiedContracts = findSpecifiedContracts;
5
8
  exports.withCliDefaults = withCliDefaults;
9
+ const path_1 = __importDefault(require("path"));
6
10
  const __1 = require("../..");
7
11
  const build_info_file_1 = require("./build-info-file");
8
12
  const contract_report_1 = require("./contract-report");
@@ -13,25 +17,41 @@ const validations_1 = require("./validations");
13
17
  * Validates the upgrade safety of all contracts in the build info dir's build info files.
14
18
  * Only contracts that are detected as upgradeable will be validated.
15
19
  *
16
- * @param buildInfoDir Absolute path of build info directory, or undefined to use the default Hardhat or Foundry build-info dir.
20
+ * @param buildInfoDir Path of build info directory, or undefined to use the default Hardhat or Foundry build-info dir.
17
21
  * @param contract The name or fully qualified name of the contract to validate. If not specified, all upgradeable contracts in the build info directory will be validated.
18
22
  * @param reference The name or fully qualified name of the reference contract to use for storage layout comparisons. Can only be used along with `contract`. If not specified, uses the `@custom:oz-upgrades-from` annotation in the contract that is being validated.
19
23
  * @param opts Validation options, or undefined to use the default validation options.
24
+ * @param referenceBuildInfoDirs Optional paths of additional build info directories from previous versions of the project to use for storage layout comparisons. When using this option, refer to one of these directories using prefix `<dirName>:` before the contract name or fully qualified name in the `reference` param or `@custom:oz-upgrades-from` annotation, where `<dirName>` is the directory short name. Each directory short name must be unique, including compared to the main build info directory.
20
25
  * @returns The project report.
21
26
  */
22
- async function validateUpgradeSafety(buildInfoDir, contract, reference, opts = {}) {
27
+ async function validateUpgradeSafety(buildInfoDir, contract, reference, opts = {}, referenceBuildInfoDirs) {
23
28
  const allOpts = withCliDefaults(opts);
24
29
  const buildInfoFiles = await (0, build_info_file_1.getBuildInfoFiles)(buildInfoDir);
25
30
  const sourceContracts = (0, validations_1.validateBuildInfoContracts)(buildInfoFiles);
26
- const specifiedContracts = findSpecifiedContracts(sourceContracts, allOpts, contract, reference);
27
- const contractReports = (0, contract_report_1.getContractReports)(sourceContracts, allOpts, specifiedContracts);
31
+ const buildInfoDictionary = {};
32
+ buildInfoDictionary[''] = sourceContracts;
33
+ if (buildInfoFiles.length > 0) {
34
+ buildInfoDictionary[buildInfoFiles[0].dirShortName] = sourceContracts;
35
+ }
36
+ if (referenceBuildInfoDirs !== undefined) {
37
+ for (const referenceBuildInfoDir of referenceBuildInfoDirs) {
38
+ const key = path_1.default.basename(referenceBuildInfoDir);
39
+ if (buildInfoDictionary[key] !== undefined) {
40
+ throw new Error(`Reference build info directory short name '${key}' is not unique.`);
41
+ }
42
+ const referenceBuildInfoFiles = await (0, build_info_file_1.getBuildInfoFiles)(referenceBuildInfoDir);
43
+ buildInfoDictionary[key] = (0, validations_1.validateBuildInfoContracts)(referenceBuildInfoFiles);
44
+ }
45
+ }
46
+ const specifiedContracts = findSpecifiedContracts(buildInfoDictionary, allOpts, contract, reference);
47
+ const contractReports = (0, contract_report_1.getContractReports)(buildInfoDictionary, allOpts, specifiedContracts);
28
48
  return (0, project_report_1.getProjectReport)(contractReports, specifiedContracts !== undefined);
29
49
  }
30
- function findSpecifiedContracts(sourceContracts, opts, contractName, referenceName) {
50
+ function findSpecifiedContracts(buildInfoDictionary, opts, contractName, referenceName) {
31
51
  if (contractName !== undefined) {
32
52
  return {
33
- contract: (0, find_contract_1.findContract)(contractName, undefined, sourceContracts),
34
- reference: referenceName !== undefined ? (0, find_contract_1.findContract)(referenceName, undefined, sourceContracts) : undefined,
53
+ contract: (0, find_contract_1.findContract)(contractName, undefined, buildInfoDictionary, true), // only search main build info dir for the specified contract
54
+ reference: referenceName !== undefined ? (0, find_contract_1.findContract)(referenceName, undefined, buildInfoDictionary) : undefined,
35
55
  };
36
56
  }
37
57
  else if (referenceName !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-upgrade-safety.js","sourceRoot":"","sources":["../../../src/cli/validate/validate-upgrade-safety.ts"],"names":[],"mappings":";;AA8BA,sDAeC;AAED,wDAkBC;AAED,0CAQC;AA3ED,6BAAkE;AAElE,uDAAsD;AACtD,uDAAuD;AACvD,mDAA+C;AAC/C,qDAAmE;AACnE,+CAA2E;AAc3E;;;;;;;;;GASG;AACI,KAAK,UAAU,qBAAqB,CACzC,YAAqB,EACrB,QAAiB,EACjB,SAAkB,EAClB,OAAqC,EAAE;IAEvC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEtC,MAAM,cAAc,GAAG,MAAM,IAAA,mCAAiB,EAAC,YAAY,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAA,wCAA0B,EAAC,cAAc,CAAC,CAAC;IAEnE,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAEjG,MAAM,eAAe,GAAG,IAAA,oCAAkB,EAAC,eAAe,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;IACzF,OAAO,IAAA,iCAAgB,EAAC,eAAe,EAAE,kBAAkB,KAAK,SAAS,CAAC,CAAC;AAC7E,CAAC;AAED,SAAgB,sBAAsB,CACpC,eAAiC,EACjC,IAA4C,EAC5C,YAAqB,EACrB,aAAsB;IAEtB,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO;YACL,QAAQ,EAAE,IAAA,4BAAY,EAAC,YAAY,EAAE,SAAS,EAAE,eAAe,CAAC;YAChE,SAAS,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,IAAA,4BAAY,EAAC,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;SAC7G,CAAC;IACJ,CAAC;SAAM,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC5G,CAAC;SAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC;IACnH,CAAC;SAAM,CAAC;QACN,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,IAAkC;IAChE,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;IAC9G,CAAC;IACD,OAAO;QACL,GAAG,IAAA,0BAAsB,EAAC,IAAI,CAAC;QAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,KAAK;KACjD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"validate-upgrade-safety.js","sourceRoot":"","sources":["../../../src/cli/validate/validate-upgrade-safety.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,7 @@ ava_1.default.after(async () => {
71
71
  });
72
72
  (0, ava_1.default)('findSpecifiedContracts - requireReference option without contract', async (t) => {
73
73
  try {
74
- (0, validate_upgrade_safety_1.findSpecifiedContracts)([], (0, validate_upgrade_safety_1.withCliDefaults)({ requireReference: true }));
74
+ (0, validate_upgrade_safety_1.findSpecifiedContracts)({}, (0, validate_upgrade_safety_1.withCliDefaults)({ requireReference: true }));
75
75
  }
76
76
  catch (e) {
77
77
  t.true(e.message.includes('The requireReference option can only be specified when the contract option is also specified.'));
@@ -6,6 +6,7 @@ export interface SourceContract {
6
6
  name: string;
7
7
  fullyQualifiedName: string;
8
8
  validationData: ValidationRunData;
9
+ buildInfoDirShortName: string;
9
10
  }
10
11
  export declare function validateBuildInfoContracts(buildInfoFiles: BuildInfoFile[]): SourceContract[];
11
12
  //# sourceMappingURL=validations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/validations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAK5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,iBAAiB,CAAC;CACnC;AAED,wBAAgB,0BAA0B,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,cAAc,EAAE,CAO5F"}
1
+ {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/validations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAK5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,iBAAiB,CAAC;IAClC,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,0BAA0B,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,cAAc,EAAE,CAO5F"}
@@ -33,6 +33,7 @@ function addContractsFromBuildInfo(buildInfoFile, validationData, sourceContract
33
33
  name: contractDef.name,
34
34
  fullyQualifiedName,
35
35
  validationData: validationData,
36
+ buildInfoDirShortName: buildInfoFile.dirShortName,
36
37
  });
37
38
  }
38
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../src/cli/validate/validations.ts"],"names":[],"mappings":";;;;;AAiBA,gEAOC;AAxBD,6BAA4E;AAE5E,8DAAsC;AAEtC,8CAA6C;AAG7C,6DAAkE;AAUlE,SAAgB,0BAA0B,CAAC,cAA+B;IACxE,MAAM,eAAe,GAAqB,EAAE,CAAC;IAC7C,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;QAClD,yBAAyB,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,cAAc,CAAC,aAA4B;IAClD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;IACrD,MAAM,SAAS,GAAG,IAAA,0BAAsB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,IAAA,YAAQ,EAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IACnE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,yBAAyB,CAChC,aAA4B,EAC5B,cAAiC,EACjC,eAAiC;IAEjC,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC;QAEzD,KAAK,MAAM,WAAW,IAAI,IAAA,eAAO,EAAC,oBAAoB,EAAE,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,kBAAkB,GAAG,IAAA,qCAAqB,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/E,IAAA,eAAK,EAAC,SAAS,GAAG,kBAAkB,CAAC,CAAC;YAEtC,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,kBAAkB;gBAClB,cAAc,EAAE,cAAc;aAC/B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../src/cli/validate/validations.ts"],"names":[],"mappings":";;;;;AAkBA,gEAOC;AAzBD,6BAA4E;AAE5E,8DAAsC;AAEtC,8CAA6C;AAG7C,6DAAkE;AAWlE,SAAgB,0BAA0B,CAAC,cAA+B;IACxE,MAAM,eAAe,GAAqB,EAAE,CAAC;IAC7C,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;QAClD,yBAAyB,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,cAAc,CAAC,aAA4B;IAClD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;IACrD,MAAM,SAAS,GAAG,IAAA,0BAAsB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,IAAA,YAAQ,EAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IACnE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,yBAAyB,CAChC,aAA4B,EAC5B,cAAiC,EACjC,eAAiC;IAEjC,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC;QAEzD,KAAK,MAAM,WAAW,IAAI,IAAA,eAAO,EAAC,oBAAoB,EAAE,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,kBAAkB,GAAG,IAAA,qCAAqB,EAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/E,IAAA,eAAK,EAAC,SAAS,GAAG,kBAAkB,CAAC,CAAC;YAEtC,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,kBAAkB;gBAClB,cAAc,EAAE,cAAc;gBAC9B,qBAAqB,EAAE,aAAa,CAAC,YAAY;aAClD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -11,13 +11,17 @@ const validate_upgrade_safety_1 = require("./validate-upgrade-safety");
11
11
  const test = ava_1.default;
12
12
  const SOURCE_FILE = 'contracts/test/cli/Validate.sol';
13
13
  test.before(async (t) => {
14
- const buildInfo = await hardhat_1.artifacts.getBuildInfo(`${SOURCE_FILE}:Safe`);
15
- if (buildInfo === undefined) {
14
+ const hardhatBuildInfo = await hardhat_1.artifacts.getBuildInfo(`${SOURCE_FILE}:Safe`);
15
+ if (hardhatBuildInfo === undefined) {
16
16
  t.fail();
17
17
  }
18
18
  else {
19
- const sourceContracts = (0, validations_1.validateBuildInfoContracts)([buildInfo]);
20
- t.context.reports = (0, contract_report_1.getContractReports)(sourceContracts, (0, validate_upgrade_safety_1.withCliDefaults)({}));
19
+ const buildInfoFile = {
20
+ ...hardhatBuildInfo,
21
+ dirShortName: 'build-info',
22
+ };
23
+ const sourceContracts = (0, validations_1.validateBuildInfoContracts)([buildInfoFile]);
24
+ t.context.reports = (0, contract_report_1.getContractReports)({ '': sourceContracts }, (0, validate_upgrade_safety_1.withCliDefaults)({}));
21
25
  }
22
26
  });
23
27
  function getReport(t, contractName) {
@@ -1 +1 @@
1
- {"version":3,"file":"validations.test.js","sourceRoot":"","sources":["../../../src/cli/validate/validations.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validations.test.js","sourceRoot":"","sources":["../../../src/cli/validate/validations.test.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ interface FunctionArgs {
6
6
  contract?: string;
7
7
  reference?: string;
8
8
  opts: Required<ValidateUpgradeSafetyOptions>;
9
+ referenceBuildInfoDirs?: string[];
9
10
  }
10
11
  /**
11
12
  * Gets and validates function arguments and options.
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,4BAA4B,EAAyB,MAAM,GAAG,CAAC;AAsBxE,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAcxD;AA8BD,UAAU,YAAY;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,QAAQ,CAAC,4BAA4B,CAAC,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,YAAY,CAsBlG;AAmDD,wBAAgB,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,4BAA4B,CAAC,CAapG"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,4BAA4B,EAAyB,MAAM,GAAG,CAAC;AAuBxE,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAexD;AA8BD,UAAU,YAAY;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IAC7C,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;CACnC;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,YAAY,CAuBlG;AAoDD,wBAAgB,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,4BAA4B,CAAC,CAapG"}
@@ -22,6 +22,7 @@ Options:
22
22
  --contract <CONTRACT> The name or fully qualified name of the contract to validate. If not specified, all upgradeable contracts in the build info directory will be validated.
23
23
  --reference <REFERENCE_CONTRACT> Can only be used when the --contract option is also provided. The name or fully qualified name of the reference contract to use for storage layout comparisons. If not specified, uses the @custom:oz-upgrades-from annotation if it is defined in the contract that is being validated.
24
24
  --requireReference Can only be used when the --contract option is also provided. Not compatible with --unsafeSkipStorageCheck. If specified, requires either the --reference option to be provided or the contract to have a @custom:oz-upgrades-from annotation.
25
+ --referenceBuildInfoDirs Optional paths of additional build info directories from previous versions of the project to use for storage layout comparisons. When using this option, refer to one of these directories using prefix '<dirName>:' before the contract name or fully qualified name in the --reference option or @custom:oz-upgrades-from annotation, where <dirName> is the directory short name. Each directory short name must be unique, including compared to the main build info directory.
25
26
  --unsafeAllow "<VALIDATION_ERRORS>" Selectively disable one or more validation errors. Comma-separated list with one or more of the following: ${run_1.errorKinds.join(', ')}
26
27
  --unsafeAllowRenames Configure storage layout check to allow variable renaming.
27
28
  --unsafeSkipStorageCheck Skips checking for storage layout compatibility errors. This is a dangerous option meant to be used as a last resort.`;
@@ -29,7 +30,7 @@ async function main(args) {
29
30
  const { parsedArgs, extraArgs } = parseArgs(args);
30
31
  if (!help(parsedArgs, extraArgs)) {
31
32
  const functionArgs = getFunctionArgs(parsedArgs, extraArgs);
32
- const result = await (0, _1.validateUpgradeSafety)(functionArgs.buildInfoDir, functionArgs.contract, functionArgs.reference, functionArgs.opts);
33
+ const result = await (0, _1.validateUpgradeSafety)(functionArgs.buildInfoDir, functionArgs.contract, functionArgs.reference, functionArgs.opts, functionArgs.referenceBuildInfoDirs);
33
34
  console.log(result.explain());
34
35
  process.exitCode = result.ok ? 0 : 1;
35
36
  }
@@ -44,7 +45,7 @@ function parseArgs(args) {
44
45
  'unsafeAllowLinkedLibraries',
45
46
  'requireReference',
46
47
  ],
47
- string: ['unsafeAllow', 'contract', 'reference'],
48
+ string: ['unsafeAllow', 'contract', 'reference', 'referenceBuildInfoDirs'],
48
49
  alias: { h: 'help' },
49
50
  });
50
51
  const extraArgs = parsedArgs._;
@@ -81,6 +82,7 @@ function getFunctionArgs(parsedArgs, extraArgs) {
81
82
  const contract = getAndValidateString(parsedArgs, 'contract');
82
83
  const reference = getAndValidateString(parsedArgs, 'reference');
83
84
  const opts = withDefaults(parsedArgs);
85
+ const referenceBuildInfoDirs = getAndValidateString(parsedArgs, 'referenceBuildInfoDirs')?.split(/,+/);
84
86
  if (contract === undefined) {
85
87
  if (reference !== undefined) {
86
88
  throw new Error('The --reference option can only be used along with the --contract option.');
@@ -89,7 +91,7 @@ function getFunctionArgs(parsedArgs, extraArgs) {
89
91
  throw new Error('The --requireReference option can only be used along with the --contract option.');
90
92
  }
91
93
  }
92
- return { buildInfoDir, contract, reference, opts };
94
+ return { buildInfoDir, contract, reference, opts, referenceBuildInfoDirs };
93
95
  }
94
96
  }
95
97
  function getAndValidateString(parsedArgs, option) {
@@ -112,6 +114,7 @@ function validateOptions(parsedArgs) {
112
114
  'contract',
113
115
  'reference',
114
116
  'requireReference',
117
+ 'referenceBuildInfoDirs',
115
118
  ].includes(key));
116
119
  if (invalidArgs.length > 0) {
117
120
  throw new Error(`Invalid options: ${invalidArgs.join(', ')}`);
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/cli/validate.ts"],"names":[],"mappings":"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"}
@@ -5,9 +5,13 @@ import { SolcInput, SolcOutput } from '../solc-api';
5
5
  *
6
6
  * This makes the following modifications to the input:
7
7
  * - Adds a state variable for each namespaced struct definition
8
- * - For each contract, for all node types that are not needed for storage layout or may reference deleted functions and constructors, converts them to dummy enums with random id
8
+ * - For each contract, for all node types that are not needed for storage layout or may call functions and constructors, converts them to dummy enums with random id
9
9
  * - Converts all using for directives (at file level and in contracts) to dummy enums with random id (do not delete them to avoid orphaning possible NatSpec documentation)
10
- * - Converts all custom errors, free functions and constants (at file level) to dummy enums with the same name (do not delete them since they might be imported by other files)
10
+ * - Converts all custom errors and constants (at file level) to dummy enums with the same name (do not delete them since they might be imported by other files)
11
+ * - Replaces functions as follows:
12
+ * - For regular function and free function, keep declarations since they may be referenced by constants (free functions may also be imported by other files). But simplify compilation by removing modifiers and body, and replace return parameters with bools which can be default initialized.
13
+ * - Constructors are not needed, since we removed anything that may call constructors. Convert to dummy enums to avoid orphaning possible NatSpec.
14
+ * - Fallback and receive functions are not needed, since they don't have signatures. Convert to dummy enums to avoid orphaning possible NatSpec.
11
15
  *
12
16
  * Also sets the outputSelection to only include storageLayout and ast, since the other outputs are not needed.
13
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"make-namespaced.d.ts","sourceRoot":"","sources":["../../src/utils/make-namespaced.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAYpD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAgIzG"}
1
+ {"version":3,"file":"make-namespaced.d.ts","sourceRoot":"","sources":["../../src/utils/make-namespaced.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAYpD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAgIzG"}
@@ -16,9 +16,13 @@ const OUTPUT_SELECTION = {
16
16
  *
17
17
  * This makes the following modifications to the input:
18
18
  * - Adds a state variable for each namespaced struct definition
19
- * - For each contract, for all node types that are not needed for storage layout or may reference deleted functions and constructors, converts them to dummy enums with random id
19
+ * - For each contract, for all node types that are not needed for storage layout or may call functions and constructors, converts them to dummy enums with random id
20
20
  * - Converts all using for directives (at file level and in contracts) to dummy enums with random id (do not delete them to avoid orphaning possible NatSpec documentation)
21
- * - Converts all custom errors, free functions and constants (at file level) to dummy enums with the same name (do not delete them since they might be imported by other files)
21
+ * - Converts all custom errors and constants (at file level) to dummy enums with the same name (do not delete them since they might be imported by other files)
22
+ * - Replaces functions as follows:
23
+ * - For regular function and free function, keep declarations since they may be referenced by constants (free functions may also be imported by other files). But simplify compilation by removing modifiers and body, and replace return parameters with bools which can be default initialized.
24
+ * - Constructors are not needed, since we removed anything that may call constructors. Convert to dummy enums to avoid orphaning possible NatSpec.
25
+ * - Fallback and receive functions are not needed, since they don't have signatures. Convert to dummy enums to avoid orphaning possible NatSpec.
22
26
  *
23
27
  * Also sets the outputSelection to only include storageLayout and ast, since the other outputs are not needed.
24
28
  *
@@ -197,21 +201,30 @@ function toDummyEnumWithAstId(astId) {
197
201
  return `enum $astId_${astId}_${(Math.random() * 1e6).toFixed(0)} { dummy }`;
198
202
  }
199
203
  function replaceFunction(node, orig, modifications) {
200
- if (node.kind === 'constructor') {
201
- modifications.push(makeDelete(node, orig));
202
- }
203
- else {
204
- if (node.modifiers.length > 0) {
205
- for (const modifier of node.modifiers) {
206
- modifications.push(makeDelete(modifier, orig));
204
+ switch (node.kind) {
205
+ case 'freeFunction':
206
+ case 'function': {
207
+ if (node.modifiers.length > 0) {
208
+ for (const modifier of node.modifiers) {
209
+ modifications.push(makeDelete(modifier, orig));
210
+ }
207
211
  }
212
+ if (node.returnParameters.parameters.length > 0) {
213
+ modifications.push(makeReplace(node.returnParameters, orig, `(${node.returnParameters.parameters.map(param => toReturnParameterReplacement(param)).join(', ')})`));
214
+ }
215
+ if (node.body) {
216
+ modifications.push(makeReplace(node.body, orig, '{}'));
217
+ }
218
+ break;
208
219
  }
209
- if (node.returnParameters.parameters.length > 0) {
210
- modifications.push(makeReplace(node.returnParameters, orig, `(${node.returnParameters.parameters.map(param => toReturnParameterReplacement(param)).join(', ')})`));
211
- }
212
- if (node.body) {
213
- modifications.push(makeReplace(node.body, orig, '{}'));
220
+ case 'constructor':
221
+ case 'fallback':
222
+ case 'receive': {
223
+ modifications.push(makeReplace(node, orig, toDummyEnumWithAstId(node.id)));
224
+ break;
214
225
  }
226
+ default:
227
+ return (0, assert_1.assertUnreachable)(node.kind);
215
228
  }
216
229
  }
217
230
  function toReturnParameterReplacement(param) {
@@ -1 +1 @@
1
- {"version":3,"file":"make-namespaced.js","sourceRoot":"","sources":["../../src/utils/make-namespaced.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make-namespaced.js","sourceRoot":"","sources":["../../src/utils/make-namespaced.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openzeppelin/upgrades-core",
3
- "version": "1.35.0",
3
+ "version": "1.36.0",
4
4
  "description": "",
5
5
  "repository": "https://github.com/OpenZeppelin/openzeppelin-upgrades/tree/master/packages/core",
6
6
  "license": "MIT",
@@ -61,7 +61,7 @@
61
61
  "typescript": "^5.0.0"
62
62
  },
63
63
  "dependencies": {
64
- "@nomicfoundation/slang": "^0.15.1",
64
+ "@nomicfoundation/slang": "^0.16.0",
65
65
  "cbor": "^9.0.0",
66
66
  "chalk": "^4.1.0",
67
67
  "compare-versions": "^6.0.0",