@openzeppelin/upgrades-core 1.35.1 → 1.37.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.
- package/CHANGELOG.md +10 -0
- package/dist/cli/cli.test.js +258 -0
- package/dist/cli/cli.test.js.map +1 -1
- package/dist/cli/validate/build-info-file.d.ts +4 -0
- package/dist/cli/validate/build-info-file.d.ts.map +1 -1
- package/dist/cli/validate/build-info-file.js +7 -2
- package/dist/cli/validate/build-info-file.js.map +1 -1
- package/dist/cli/validate/contract-report.d.ts +6 -5
- package/dist/cli/validate/contract-report.d.ts.map +1 -1
- package/dist/cli/validate/contract-report.js +54 -13
- package/dist/cli/validate/contract-report.js.map +1 -1
- package/dist/cli/validate/default-exclude.d.ts +2 -0
- package/dist/cli/validate/default-exclude.d.ts.map +1 -0
- package/dist/cli/validate/default-exclude.js +6 -0
- package/dist/cli/validate/default-exclude.js.map +1 -0
- package/dist/cli/validate/find-contract.d.ts +7 -2
- package/dist/cli/validate/find-contract.d.ts.map +1 -1
- package/dist/cli/validate/find-contract.js +32 -4
- package/dist/cli/validate/find-contract.js.map +1 -1
- package/dist/cli/validate/upgradeability-assessment.d.ts +2 -1
- package/dist/cli/validate/upgradeability-assessment.d.ts.map +1 -1
- package/dist/cli/validate/upgradeability-assessment.js +2 -2
- package/dist/cli/validate/upgradeability-assessment.js.map +1 -1
- package/dist/cli/validate/validate-upgrade-safety.d.ts +12 -3
- package/dist/cli/validate/validate-upgrade-safety.d.ts.map +1 -1
- package/dist/cli/validate/validate-upgrade-safety.js +28 -7
- package/dist/cli/validate/validate-upgrade-safety.js.map +1 -1
- package/dist/cli/validate/validate-upgrade-safety.test.js +1 -1
- package/dist/cli/validate/validations.d.ts +1 -0
- package/dist/cli/validate/validations.d.ts.map +1 -1
- package/dist/cli/validate/validations.js +1 -0
- package/dist/cli/validate/validations.js.map +1 -1
- package/dist/cli/validate/validations.test.js +8 -4
- package/dist/cli/validate/validations.test.js.map +1 -1
- package/dist/cli/validate.d.ts +2 -0
- package/dist/cli/validate.d.ts.map +1 -1
- package/dist/cli/validate.js +39 -14
- package/dist/cli/validate.js.map +1 -1
- package/dist/cli/validate.test.js +20 -0
- package/dist/cli/validate.test.js.map +1 -1
- package/dist/storage/extract.js +1 -1
- package/dist/storage/extract.js.map +1 -1
- package/dist/utils/annotations.js +1 -1
- package/dist/utils/annotations.js.map +1 -1
- package/package.json +4 -3
- package/src/cli/cli.test.ts +414 -0
- package/src/cli/cli.test.ts.md +253 -2
- package/src/cli/cli.test.ts.snap +0 -0
- package/src/cli/validate/build-info-file.ts +15 -4
- package/src/cli/validate/contract-report.ts +71 -16
- package/src/cli/validate/default-exclude.ts +3 -0
- package/src/cli/validate/find-contract.ts +50 -4
- package/src/cli/validate/upgradeability-assessment.ts +3 -2
- package/src/cli/validate/validate-upgrade-safety.test.ts +1 -1
- package/src/cli/validate/validate-upgrade-safety.ts +38 -6
- package/src/cli/validate/validations.test.ts +8 -4
- package/src/cli/validate/validations.ts +2 -0
- package/src/cli/validate.test.ts +22 -0
- package/src/cli/validate.ts +46 -14
- package/src/storage/extract.ts +2 -1
- package/src/utils/annotations.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.37.0 (2024-08-28)
|
|
4
|
+
|
|
5
|
+
- **Breaking change**: CLI: Disallow self-references for storage layout validations. ([#1067](https://github.com/OpenZeppelin/openzeppelin-upgrades/pull/1067))
|
|
6
|
+
- CLI: Support `--exclude` option. ([#1065](https://github.com/OpenZeppelin/openzeppelin-upgrades/pull/1065))
|
|
7
|
+
|
|
8
|
+
## 1.36.0 (2024-08-21)
|
|
9
|
+
|
|
10
|
+
- Update dependency on Slang. ([#1059](https://github.com/OpenZeppelin/openzeppelin-upgrades/pull/1059))
|
|
11
|
+
- CLI: Support `--referenceBuildInfoDirs` option. ([#1062](https://github.com/OpenZeppelin/openzeppelin-upgrades/pull/1062))
|
|
12
|
+
|
|
3
13
|
## 1.35.1 (2024-08-13)
|
|
4
14
|
|
|
5
15
|
- Fix Hardhat compile error when `fallback` or `receive` functions are present. ([#1060](https://github.com/OpenZeppelin/openzeppelin-upgrades/pull/1060))
|
package/dist/cli/cli.test.js
CHANGED
|
@@ -75,6 +75,16 @@ async function getTempDir(t) {
|
|
|
75
75
|
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
76
76
|
t.snapshot(expectation.join('\n'));
|
|
77
77
|
});
|
|
78
|
+
(0, ava_1.default)('validate - single contract, reference with same build info dir', async (t) => {
|
|
79
|
+
const temp = await getTempDir(t);
|
|
80
|
+
const buildInfoDir = path_1.default.join(temp, 'build-info');
|
|
81
|
+
await fs_1.promises.mkdir(buildInfoDir);
|
|
82
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/Validate.sol:BecomesBadLayout`);
|
|
83
|
+
await fs_1.promises.writeFile(path_1.default.join(buildInfoDir, 'validate.json'), JSON.stringify(buildInfo));
|
|
84
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${buildInfoDir} --contract BecomesBadLayout --reference build-info:StorageV1`));
|
|
85
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
86
|
+
t.snapshot(expectation.join('\n'));
|
|
87
|
+
});
|
|
78
88
|
(0, ava_1.default)('validate - single contract, reference, fully qualified names', async (t) => {
|
|
79
89
|
const temp = await getTempDir(t);
|
|
80
90
|
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/Validate.sol:BecomesBadLayout`);
|
|
@@ -211,4 +221,252 @@ async function getTempDir(t) {
|
|
|
211
221
|
const output = (await execAsync(`${CLI} validate ${temp} --contract contracts/test/ValidationsSameNameSafe.sol:SameName --reference contracts/test/ValidationsSameNameUnsafe.sol:SameName`)).stdout;
|
|
212
222
|
t.snapshot(output);
|
|
213
223
|
});
|
|
224
|
+
(0, ava_1.default)('validate - references other build info dir by command - ok', async (t) => {
|
|
225
|
+
const temp = await getTempDir(t);
|
|
226
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
227
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
228
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
229
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
230
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
231
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
232
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
233
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
234
|
+
const output = await execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract MyContract --reference build-info-v1:MyContract`);
|
|
235
|
+
t.snapshot(output);
|
|
236
|
+
});
|
|
237
|
+
(0, ava_1.default)('validate - references other build info dir by command - reference not found', async (t) => {
|
|
238
|
+
const temp = await getTempDir(t);
|
|
239
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
240
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
241
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
242
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
243
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
244
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
245
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
246
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
247
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract MyContract --reference build-info-not-found:MyContract`));
|
|
248
|
+
t.true(error?.message.includes('Could not find contract build-info-not-found:MyContract.'), error?.message);
|
|
249
|
+
});
|
|
250
|
+
(0, ava_1.default)('validate - references other build info dir by command - dir not found', async (t) => {
|
|
251
|
+
const temp = await getTempDir(t);
|
|
252
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
253
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
254
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
255
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
256
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs build-info-not-found --contract MyContract --reference build-info-not-found:MyContract`));
|
|
257
|
+
t.true(error?.message.includes("The directory 'build-info-not-found' does not exist or does not contain any build info files."), error?.message);
|
|
258
|
+
});
|
|
259
|
+
(0, ava_1.default)('validate - references other build info dir by command with fully qualified names - ok', async (t) => {
|
|
260
|
+
const temp = await getTempDir(t);
|
|
261
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
262
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
263
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
264
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
265
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
266
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
267
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
268
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
269
|
+
const output = await execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract --reference build-info-v1:contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
270
|
+
t.snapshot(output);
|
|
271
|
+
});
|
|
272
|
+
(0, ava_1.default)('validate - references other build info dir by command - bad', async (t) => {
|
|
273
|
+
const temp = await getTempDir(t);
|
|
274
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
275
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
276
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
277
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
278
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
279
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
280
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Bad.sol:MyContract`);
|
|
281
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
282
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract MyContract --reference build-info-v1:MyContract`));
|
|
283
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
284
|
+
t.snapshot(expectation.join('\n'));
|
|
285
|
+
});
|
|
286
|
+
(0, ava_1.default)('validate - references other build info dir by command with fully qualified names - bad', async (t) => {
|
|
287
|
+
const temp = await getTempDir(t);
|
|
288
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
289
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
290
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
291
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
292
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
293
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
294
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Bad.sol:MyContract`);
|
|
295
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
296
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract contracts/test/cli/ValidateBuildInfoV2_Bad.sol:MyContract --reference build-info-v1:contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`));
|
|
297
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
298
|
+
t.snapshot(expectation.join('\n'));
|
|
299
|
+
});
|
|
300
|
+
async function setupMultipleBuildInfoDirsTest(t) {
|
|
301
|
+
const temp = await getTempDir(t);
|
|
302
|
+
const v1Dir = path_1.default.join(temp, 'build-info-v1');
|
|
303
|
+
await fs_1.promises.mkdir(v1Dir);
|
|
304
|
+
const v1BuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
305
|
+
await fs_1.promises.writeFile(path_1.default.join(v1Dir, 'validate.json'), JSON.stringify(v1BuildInfo));
|
|
306
|
+
const v2Dir = path_1.default.join(temp, 'build-info-v2');
|
|
307
|
+
await fs_1.promises.mkdir(v2Dir);
|
|
308
|
+
const v2BuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
309
|
+
await fs_1.promises.writeFile(path_1.default.join(v2Dir, 'validate.json'), JSON.stringify(v2BuildInfo));
|
|
310
|
+
const v2BranchDir = path_1.default.join(temp, 'build-info-v2-branch');
|
|
311
|
+
await fs_1.promises.mkdir(v2BranchDir);
|
|
312
|
+
const v2BranchBuildInfoOk = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Branch_Ok.sol:MyContract`);
|
|
313
|
+
const v2BranchBuildInfoBad = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Branch_Bad.sol:MyContract`);
|
|
314
|
+
await fs_1.promises.writeFile(path_1.default.join(v2BranchDir, 'ok.json'), JSON.stringify(v2BranchBuildInfoOk));
|
|
315
|
+
await fs_1.promises.writeFile(path_1.default.join(v2BranchDir, 'bad.json'), JSON.stringify(v2BranchBuildInfoBad));
|
|
316
|
+
return { v2BranchDir, v1Dir, v2Dir };
|
|
317
|
+
}
|
|
318
|
+
(0, ava_1.default)('validate - references multiple build info dirs by annotation', async (t) => {
|
|
319
|
+
const { v2BranchDir, v1Dir, v2Dir } = await setupMultipleBuildInfoDirsTest(t);
|
|
320
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${v2BranchDir} --referenceBuildInfoDirs ${v1Dir},${v2Dir}`));
|
|
321
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
322
|
+
t.snapshot(expectation.join('\n'));
|
|
323
|
+
});
|
|
324
|
+
(0, ava_1.default)('validate - references multiple build info dirs by annotation - same arg multiple times', async (t) => {
|
|
325
|
+
const { v2BranchDir, v1Dir, v2Dir } = await setupMultipleBuildInfoDirsTest(t);
|
|
326
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${v2BranchDir} --referenceBuildInfoDirs ${v1Dir} --referenceBuildInfoDirs ${v2Dir}`));
|
|
327
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
328
|
+
t.snapshot(expectation.join('\n'));
|
|
329
|
+
});
|
|
330
|
+
(0, ava_1.default)('validate - references other build info dir by annotation - ok', async (t) => {
|
|
331
|
+
const temp = await getTempDir(t);
|
|
332
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
333
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
334
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
335
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
336
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
337
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
338
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Annotation_Ok.sol:MyContract`);
|
|
339
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
340
|
+
const output = await execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract MyContract`);
|
|
341
|
+
t.snapshot(output);
|
|
342
|
+
});
|
|
343
|
+
(0, ava_1.default)('validate - references other build info dir by annotation - bad', async (t) => {
|
|
344
|
+
const temp = await getTempDir(t);
|
|
345
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
346
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
347
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
348
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
349
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
350
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
351
|
+
t.assert(updatedDir !== referenceDir);
|
|
352
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Annotation_Bad.sol:MyContract`);
|
|
353
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
354
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract MyContract`));
|
|
355
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
356
|
+
t.snapshot(expectation.join('\n'));
|
|
357
|
+
});
|
|
358
|
+
(0, ava_1.default)('validate - contract must not have build info dir name', async (t) => {
|
|
359
|
+
const temp = await getTempDir(t);
|
|
360
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
361
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
362
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
363
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
364
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
365
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
366
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
367
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
368
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract build-info:MyContract --reference build-info-v1:MyContract`));
|
|
369
|
+
t.true(error?.message.includes('Contract build-info:MyContract must be specified without a build info directory name'), error?.message);
|
|
370
|
+
});
|
|
371
|
+
(0, ava_1.default)('validate - contract must not have build info dir name - fully qualified', async (t) => {
|
|
372
|
+
const temp = await getTempDir(t);
|
|
373
|
+
const referenceDir = path_1.default.join(temp, 'build-info-v1');
|
|
374
|
+
await fs_1.promises.mkdir(referenceDir);
|
|
375
|
+
const referenceBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV1.sol:MyContract`);
|
|
376
|
+
await fs_1.promises.writeFile(path_1.default.join(referenceDir, 'validate.json'), JSON.stringify(referenceBuildInfo));
|
|
377
|
+
const updatedDir = path_1.default.join(temp, 'build-info');
|
|
378
|
+
await fs_1.promises.mkdir(updatedDir);
|
|
379
|
+
const updatedBuildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract`);
|
|
380
|
+
await fs_1.promises.writeFile(path_1.default.join(updatedDir, 'validate.json'), JSON.stringify(updatedBuildInfo));
|
|
381
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${updatedDir} --referenceBuildInfoDirs ${referenceDir} --contract build-info:contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract --reference build-info-v1:MyContract`));
|
|
382
|
+
t.true(error?.message.includes('Contract build-info:contracts/test/cli/ValidateBuildInfoV2_Ok.sol:MyContract must be specified without a build info directory name'), error?.message);
|
|
383
|
+
});
|
|
384
|
+
(0, ava_1.default)('validate - excludes by pattern - no match', async (t) => {
|
|
385
|
+
const temp = await getTempDir(t);
|
|
386
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/UsesAbstractUUPS.sol:UsesAbstractUUPS`);
|
|
387
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
388
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --exclude "**/NoMatch.sol"`));
|
|
389
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
390
|
+
t.snapshot(expectation.join('\n'));
|
|
391
|
+
});
|
|
392
|
+
(0, ava_1.default)('validate - excludes by pattern - some match', async (t) => {
|
|
393
|
+
const temp = await getTempDir(t);
|
|
394
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/UsesAbstractUUPS.sol:UsesAbstractUUPS`);
|
|
395
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
396
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --exclude "**/Abstract*.sol"`));
|
|
397
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
398
|
+
t.snapshot(expectation.join('\n'));
|
|
399
|
+
});
|
|
400
|
+
(0, ava_1.default)('validate - excludes by pattern - all match', async (t) => {
|
|
401
|
+
const temp = await getTempDir(t);
|
|
402
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/UsesAbstractUUPS.sol:UsesAbstractUUPS`);
|
|
403
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
404
|
+
const output = await execAsync(`${CLI} validate ${temp} --exclude "**/excludes/*.sol"`);
|
|
405
|
+
t.snapshot(output);
|
|
406
|
+
});
|
|
407
|
+
(0, ava_1.default)('validate - excludes by pattern - all match using commas within glob', async (t) => {
|
|
408
|
+
const temp = await getTempDir(t);
|
|
409
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/UsesAbstractUUPS.sol:UsesAbstractUUPS`);
|
|
410
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
411
|
+
const output = await execAsync(`${CLI} validate ${temp} --exclude "**/excludes/{Abstract*,UsesAbstractUUPS}.sol"`);
|
|
412
|
+
t.snapshot(output);
|
|
413
|
+
});
|
|
414
|
+
(0, ava_1.default)('validate - exclude passed multiple times', async (t) => {
|
|
415
|
+
const temp = await getTempDir(t);
|
|
416
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/UsesAbstractUUPS.sol:UsesAbstractUUPS`);
|
|
417
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
418
|
+
const output = await execAsync(`${CLI} validate ${temp} --exclude "**/excludes/Abstract*.sol" --exclude "**/UsesAbstractUUPS.sol"`);
|
|
419
|
+
t.snapshot(output);
|
|
420
|
+
});
|
|
421
|
+
(0, ava_1.default)('validate - excludes specified contract', async (t) => {
|
|
422
|
+
const temp = await getTempDir(t);
|
|
423
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/Validate.sol:BecomesBadLayout`);
|
|
424
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
425
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --contract BecomesBadLayout --reference StorageV1 --exclude "**/Validate.sol"`));
|
|
426
|
+
t.true(error?.message.includes('No validation report found for contract contracts/test/cli/Validate.sol:BecomesBadLayout'), error?.message);
|
|
427
|
+
});
|
|
428
|
+
(0, ava_1.default)('validate - excludes UpgradeableBeacon and its parents by default', async (t) => {
|
|
429
|
+
const temp = await getTempDir(t);
|
|
430
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/ImportVersionsAndBeacon.sol:Dummy`);
|
|
431
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
432
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp}`));
|
|
433
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
434
|
+
t.snapshot(expectation.join('\n'));
|
|
435
|
+
});
|
|
436
|
+
(0, ava_1.default)('validate - excludes UpgradeableBeacon and its parents by default, and excludes one contract from layout comparisions', async (t) => {
|
|
437
|
+
const temp = await getTempDir(t);
|
|
438
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/excludes/ImportVersionsAndBeacon.sol:Dummy`);
|
|
439
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
440
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --exclude "**/V2Bad1.sol"`));
|
|
441
|
+
const expectation = [`Stdout: ${error.stdout}`, `Stderr: ${error.stderr}`];
|
|
442
|
+
t.snapshot(expectation.join('\n'));
|
|
443
|
+
});
|
|
444
|
+
(0, ava_1.default)('validate - self reference by annotation', async (t) => {
|
|
445
|
+
const temp = await getTempDir(t);
|
|
446
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/SelfReferences.sol:SelfReference`);
|
|
447
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
448
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --contract SelfReference`));
|
|
449
|
+
t.assert(error?.message.includes('must not use itself as a reference'), error?.message);
|
|
450
|
+
});
|
|
451
|
+
(0, ava_1.default)('validate - self reference by fully qualified annotation', async (t) => {
|
|
452
|
+
const temp = await getTempDir(t);
|
|
453
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/SelfReferences.sol:SelfReference`);
|
|
454
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
455
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --contract SelfReferenceFullyQualified`));
|
|
456
|
+
t.assert(error?.message.includes('must not use itself as a reference'), error?.message);
|
|
457
|
+
});
|
|
458
|
+
(0, ava_1.default)('validate - self reference by option', async (t) => {
|
|
459
|
+
const temp = await getTempDir(t);
|
|
460
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/SelfReferences.sol:SelfReference`);
|
|
461
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
462
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --contract NoAnnotation --reference NoAnnotation`));
|
|
463
|
+
t.assert(error?.message.includes('must not use itself as a reference'), error?.message);
|
|
464
|
+
});
|
|
465
|
+
(0, ava_1.default)('validate - self reference by fully qualified option', async (t) => {
|
|
466
|
+
const temp = await getTempDir(t);
|
|
467
|
+
const buildInfo = await hardhat_1.artifacts.getBuildInfo(`contracts/test/cli/SelfReferences.sol:SelfReference`);
|
|
468
|
+
await fs_1.promises.writeFile(path_1.default.join(temp, 'validate.json'), JSON.stringify(buildInfo));
|
|
469
|
+
const error = await t.throwsAsync(execAsync(`${CLI} validate ${temp} --contract NoAnnotation --reference contracts/test/cli/SelfReferences.sol:NoAnnotation`));
|
|
470
|
+
t.assert(error?.message.includes('must not use itself as a reference'), error?.message);
|
|
471
|
+
});
|
|
214
472
|
//# sourceMappingURL=cli.test.js.map
|
package/dist/cli/cli.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../../src/cli/cli.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../../src/cli/cli.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,10 @@ export interface BuildInfoFile {
|
|
|
15
15
|
* The Solidity compiler output JSON object.
|
|
16
16
|
*/
|
|
17
17
|
output: SolcOutput;
|
|
18
|
+
/**
|
|
19
|
+
* Short name of the build info dir containing this file.
|
|
20
|
+
*/
|
|
21
|
+
dirShortName: string;
|
|
18
22
|
}
|
|
19
23
|
/**
|
|
20
24
|
* Gets the build info files from the build info directory.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-info-file.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAiC9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"build-info-file.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAiC9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAMvF"}
|
|
@@ -41,9 +41,13 @@ If using Foundry: ${FOUNDRY_COMPILE_COMMAND}`;
|
|
|
41
41
|
*/
|
|
42
42
|
async function getBuildInfoFiles(buildInfoDir) {
|
|
43
43
|
const dir = await findDir(buildInfoDir);
|
|
44
|
+
const shortName = path_1.default.basename(dir);
|
|
44
45
|
const jsonFiles = await getJsonFiles(dir);
|
|
45
|
-
return await readBuildInfo(jsonFiles);
|
|
46
|
+
return await readBuildInfo(jsonFiles, shortName);
|
|
46
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* Finds the build info dir if provided, otherwise finds the default Hardhat or Foundry build info dir. Throws an error if no build info files were found in the expected dir.
|
|
50
|
+
*/
|
|
47
51
|
async function findDir(buildInfoDir) {
|
|
48
52
|
if (buildInfoDir !== undefined && !(await hasJsonFiles(buildInfoDir))) {
|
|
49
53
|
throw new error_1.ValidateCommandError(`The directory '${buildInfoDir}' does not exist or does not contain any build info files.`, () => `\
|
|
@@ -90,7 +94,7 @@ async function getJsonFiles(dir) {
|
|
|
90
94
|
const jsonFiles = files.filter(file => file.endsWith('.json'));
|
|
91
95
|
return jsonFiles.map(file => path_1.default.join(dir, file));
|
|
92
96
|
}
|
|
93
|
-
async function readBuildInfo(buildInfoFilePaths) {
|
|
97
|
+
async function readBuildInfo(buildInfoFilePaths, dirShortName) {
|
|
94
98
|
const buildInfoFiles = [];
|
|
95
99
|
for (const buildInfoFilePath of buildInfoFilePaths) {
|
|
96
100
|
const buildInfoJson = await readJSON(buildInfoFilePath);
|
|
@@ -105,6 +109,7 @@ async function readBuildInfo(buildInfoFilePaths) {
|
|
|
105
109
|
input: buildInfoJson.input,
|
|
106
110
|
output: buildInfoJson.output,
|
|
107
111
|
solcVersion: buildInfoJson.solcVersion,
|
|
112
|
+
dirShortName: dirShortName,
|
|
108
113
|
});
|
|
109
114
|
}
|
|
110
115
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-info-file.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"build-info-file.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { ValidateUpgradeSafetyOptions, UpgradeableContractErrorReport } from '../..';
|
|
2
2
|
import { Report } from '../../standalone';
|
|
3
|
-
import { SourceContract } from './validations';
|
|
4
3
|
import { LayoutCompatibilityReport } from '../../storage/report';
|
|
5
|
-
import { SpecifiedContracts } from './validate-upgrade-safety';
|
|
4
|
+
import { BuildInfoDictionary, SpecifiedContracts } from './validate-upgrade-safety';
|
|
6
5
|
/**
|
|
7
6
|
* Report for an upgradeable contract.
|
|
8
7
|
* Contains the standalone report, and if there is a reference contract, the reference contract name and storage layout report.
|
|
@@ -20,14 +19,16 @@ export declare class UpgradeableContractReport implements Report {
|
|
|
20
19
|
explain(color?: boolean): string;
|
|
21
20
|
}
|
|
22
21
|
/**
|
|
23
|
-
* Gets upgradeble contract reports for the upgradeable contracts in the
|
|
22
|
+
* Gets upgradeble contract reports for the upgradeable contracts in the set of source contracts at dictionary key ''.
|
|
23
|
+
* Reference contracts can come from source contracts at the corresponding dictionary key.
|
|
24
24
|
* Only contracts that are detected as upgradeable will be included in the reports.
|
|
25
25
|
* Reports include upgradeable contracts regardless of whether they pass or fail upgrade safety checks.
|
|
26
26
|
*
|
|
27
|
-
* @param
|
|
27
|
+
* @param buildInfoDictionary Dictionary of build info directories and the source contracts they contain.
|
|
28
28
|
* @param opts The validation options.
|
|
29
29
|
* @param specifiedContracts If provided, only the specified contract (upgrading from its reference contract) will be reported.
|
|
30
|
+
* @param exclude Exclude validations for contracts in source file paths that match any of the given glob patterns.
|
|
30
31
|
* @returns The upgradeable contract reports.
|
|
31
32
|
*/
|
|
32
|
-
export declare function getContractReports(
|
|
33
|
+
export declare function getContractReports(buildInfoDictionary: BuildInfoDictionary, opts: Required<ValidateUpgradeSafetyOptions>, specifiedContracts?: SpecifiedContracts, exclude?: string[]): UpgradeableContractReport[];
|
|
33
34
|
//# sourceMappingURL=contract-report.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-report.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/contract-report.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"contract-report.d.ts","sourceRoot":"","sources":["../../../src/cli/validate/contract-report.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,4BAA4B,EAE5B,8BAA8B,EAE/B,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAKpF;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,MAAM;IAEpD,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IACtC,QAAQ,CAAC,gBAAgB,EAAE,8BAA8B;IACzD,QAAQ,CAAC,mBAAmB,EAAE,yBAAyB,GAAG,SAAS;gBAH1D,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,gBAAgB,EAAE,8BAA8B,EAChD,mBAAmB,EAAE,yBAAyB,GAAG,SAAS;IAYrE,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED;;OAEG;IACH,OAAO,CAAC,KAAK,UAAO,GAAG,MAAM;CAiB9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,mBAAmB,EAAE,mBAAmB,EACxC,IAAI,EAAE,QAAQ,CAAC,4BAA4B,CAAC,EAC5C,kBAAkB,CAAC,EAAE,kBAAkB,EACvC,OAAO,CAAC,EAAE,MAAM,EAAE,+BAsCnB"}
|