@openzeppelin/upgrades-core 1.32.2 → 1.32.4

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.
@@ -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;AA6B9C;;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;CACpB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,YAAY,CAAC,EAAE,MAAM,4BAI5D"}
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;CACpB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,YAAY,CAAC,EAAE,MAAM,4BAI5D"}
@@ -29,6 +29,10 @@ If using Foundry, include the "storageLayout" extra output in foundry.toml:
29
29
  build_info = true
30
30
  extra_output = ["storageLayout"]
31
31
  Then recompile your contracts with '${FOUNDRY_COMPILE_COMMAND}' and try again.`;
32
+ const PARTIAL_COMPILE_HELP = `\
33
+ Recompile all contracts with one of the following commands and try again:
34
+ If using Hardhat: ${HARDHAT_COMPILE_COMMAND}
35
+ If using Foundry: ${FOUNDRY_COMPILE_COMMAND}`;
32
36
  /**
33
37
  * Gets the build info files from the build info directory.
34
38
  *
@@ -97,9 +101,7 @@ async function readBuildInfo(buildInfoFilePaths) {
97
101
  throw new error_1.ValidateCommandError(`Build info file ${buildInfoFilePath} must contain Solidity compiler input, output, and solcVersion.`);
98
102
  }
99
103
  else {
100
- if (!hasStorageLayoutSetting(buildInfoJson)) {
101
- throw new error_1.ValidateCommandError(`Build info file ${buildInfoFilePath} does not contain storage layout.`, () => STORAGE_LAYOUT_HELP);
102
- }
104
+ checkOutputSelection(buildInfoJson, buildInfoFilePath);
103
105
  buildInfoFiles.push({
104
106
  input: buildInfoJson.input,
105
107
  output: buildInfoJson.output,
@@ -109,9 +111,21 @@ async function readBuildInfo(buildInfoFilePaths) {
109
111
  }
110
112
  return buildInfoFiles;
111
113
  }
112
- function hasStorageLayoutSetting(buildInfoJson) {
114
+ /**
115
+ * Gives an error if there is empty output selection for any contract, or a contract does not have storage layout.
116
+ */
117
+ function checkOutputSelection(buildInfoJson, buildInfoFilePath) {
113
118
  const o = buildInfoJson.input.settings?.outputSelection;
114
- return o?.['*']?.['*'] && (o['*']['*'].includes('storageLayout') || o['*']['*'].includes('*'));
119
+ return Object.keys(o).forEach((item) => {
120
+ if ((o[item][''] === undefined || o[item][''].length === 0) && o[item]['*'].length === 0) {
121
+ // No outputs at all for this contract e.g. if there were no changes since the last compile in Foundry.
122
+ // This is not supported for now, since it leads to AST nodes that reference node ids in other build-info files.
123
+ throw new error_1.ValidateCommandError(`Build info file ${buildInfoFilePath} is not from a full compilation.`, () => PARTIAL_COMPILE_HELP);
124
+ }
125
+ else if (!o[item]['*'].includes('storageLayout')) {
126
+ throw new error_1.ValidateCommandError(`Build info file ${buildInfoFilePath} does not contain storage layout for all contracts.`, () => STORAGE_LAYOUT_HELP);
127
+ }
128
+ });
115
129
  }
116
130
  async function readJSON(path) {
117
131
  return JSON.parse(await fs_1.promises.readFile(path, 'utf8'));
@@ -1 +1 @@
1
- {"version":3,"file":"build-info-file.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-info-file.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.ts"],"names":[],"mappings":"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"}
@@ -93,6 +93,195 @@ const BUILD_INFO_NO_LAYOUT = {
93
93
  },
94
94
  },
95
95
  };
96
+ const BUILD_INFO_INDIVIDUAL_NO_LAYOUT = {
97
+ solcVersion: '0.8.9',
98
+ input: {
99
+ language: 'Solidity',
100
+ sources: {
101
+ 'mypath/MyContract.sol': {
102
+ content: 'contract MyContract {}',
103
+ },
104
+ 'mypath/MyContractV2.sol': {
105
+ content: 'contract MyContractV2 {}',
106
+ },
107
+ },
108
+ settings: {
109
+ outputSelection: {
110
+ 'mypath/MyContract.sol': {
111
+ '': ['ast'],
112
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
113
+ },
114
+ 'mypath/MyContractV2.sol': {
115
+ '': ['ast'],
116
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
117
+ },
118
+ },
119
+ },
120
+ },
121
+ output: {
122
+ sources: {
123
+ 'mypath/MyContract.sol': {
124
+ ast: {},
125
+ id: 123,
126
+ },
127
+ 'mypath/MyContractV2.sol': {
128
+ ast: {},
129
+ id: 456,
130
+ },
131
+ },
132
+ },
133
+ };
134
+ const BUILD_INFO_INDIVIDUAL_HAS_LAYOUT = {
135
+ solcVersion: '0.8.9',
136
+ input: {
137
+ language: 'Solidity',
138
+ sources: {
139
+ 'mypath/MyContract.sol': {
140
+ content: 'contract MyContract {}',
141
+ },
142
+ 'mypath/MyContractV2.sol': {
143
+ content: 'contract MyContractV2 {}',
144
+ },
145
+ },
146
+ settings: {
147
+ outputSelection: {
148
+ 'mypath/MyContract.sol': {
149
+ '': ['ast'],
150
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
151
+ },
152
+ 'mypath/MyContractV2.sol': {
153
+ '': ['ast'],
154
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
155
+ },
156
+ },
157
+ },
158
+ },
159
+ output: {
160
+ sources: {
161
+ 'mypath/MyContract.sol': {
162
+ ast: {},
163
+ id: 123,
164
+ },
165
+ 'mypath/MyContractV2.sol': {
166
+ ast: {},
167
+ id: 456,
168
+ },
169
+ },
170
+ },
171
+ };
172
+ const BUILD_INFO_PARTIAL_LAYOUT = {
173
+ solcVersion: '0.8.9',
174
+ input: {
175
+ language: 'Solidity',
176
+ sources: {
177
+ 'mypath/MyContract.sol': {
178
+ content: 'contract MyContract {}',
179
+ },
180
+ 'mypath/MyContractV2.sol': {
181
+ content: 'contract MyContractV2 {}',
182
+ },
183
+ },
184
+ settings: {
185
+ outputSelection: {
186
+ 'mypath/MyContract.sol': {
187
+ '': ['ast'],
188
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
189
+ },
190
+ 'mypath/MyContractV2.sol': {
191
+ '': ['ast'],
192
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
193
+ },
194
+ },
195
+ },
196
+ },
197
+ output: {
198
+ sources: {
199
+ 'mypath/MyContract.sol': {
200
+ ast: {},
201
+ id: 123,
202
+ },
203
+ 'mypath/MyContractV2.sol': {
204
+ ast: {},
205
+ id: 456,
206
+ },
207
+ },
208
+ },
209
+ };
210
+ const BUILD_INFO_PARTIAL_COMPILE = {
211
+ solcVersion: '0.8.9',
212
+ input: {
213
+ language: 'Solidity',
214
+ sources: {
215
+ 'mypath/MyContract.sol': {
216
+ content: 'contract MyContract {}',
217
+ },
218
+ 'mypath/MyContractV2.sol': {
219
+ content: 'contract MyContractV2 {}',
220
+ },
221
+ },
222
+ settings: {
223
+ outputSelection: {
224
+ 'mypath/MyContract.sol': {
225
+ '': ['ast'],
226
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
227
+ },
228
+ 'mypath/MyContractV2.sol': {
229
+ '': [],
230
+ '*': [],
231
+ },
232
+ },
233
+ },
234
+ },
235
+ output: {
236
+ sources: {
237
+ 'mypath/MyContract.sol': {
238
+ ast: {},
239
+ id: 123,
240
+ },
241
+ 'mypath/MyContractV2.sol': {
242
+ ast: {},
243
+ id: 456,
244
+ },
245
+ },
246
+ },
247
+ };
248
+ const BUILD_INFO_NO_OUTPUT_SELECTION = {
249
+ solcVersion: '0.8.9',
250
+ input: {
251
+ language: 'Solidity',
252
+ sources: {
253
+ 'mypath/MyContract.sol': {
254
+ content: 'contract MyContract {}',
255
+ },
256
+ 'mypath/MyContractV2.sol': {
257
+ content: 'contract MyContractV2 {}',
258
+ },
259
+ },
260
+ settings: {
261
+ outputSelection: {
262
+ 'mypath/MyContract.sol': {
263
+ '*': [],
264
+ },
265
+ 'mypath/MyContractV2.sol': {
266
+ '': [],
267
+ '*': [],
268
+ },
269
+ },
270
+ },
271
+ },
272
+ output: {
273
+ sources: {
274
+ 'mypath/MyContract.sol': {
275
+ ast: {},
276
+ id: 123,
277
+ },
278
+ 'mypath/MyContractV2.sol': {
279
+ ast: {},
280
+ id: 456,
281
+ },
282
+ },
283
+ },
284
+ };
96
285
  ava_1.default.serial('get build info files - default hardhat', async (t) => {
97
286
  await fs_1.promises.mkdir('artifacts/build-info', { recursive: true });
98
287
  await fs_1.promises.mkdir('out/build-info', { recursive: true }); // should be ignored since it's empty
@@ -150,17 +339,53 @@ ava_1.default.serial('dir does not exist', async (t) => {
150
339
  t.true(error?.message.includes('does not exist'));
151
340
  });
152
341
  ava_1.default.serial('no build info files', async (t) => {
153
- await fs_1.promises.mkdir('empty-dir', { recursive: true });
154
- await fs_1.promises.writeFile('empty-dir/notjson.txt', 'abc');
155
- const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)('empty-dir'));
342
+ const dir = 'empty-dir';
343
+ await fs_1.promises.mkdir(dir, { recursive: true });
344
+ await fs_1.promises.writeFile(`${dir}/notjson.txt`, 'abc');
345
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
156
346
  t.true(error?.message.includes('does not contain any build info files'));
157
347
  });
158
348
  ava_1.default.serial('no storage layout', async (t) => {
159
- await fs_1.promises.mkdir('no-storage-layout', { recursive: true });
160
- await fs_1.promises.writeFile('no-storage-layout/build-info.json', JSON.stringify(BUILD_INFO_NO_LAYOUT));
161
- const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)('no-storage-layout'));
349
+ const dir = 'no-storage-layout';
350
+ await fs_1.promises.mkdir(dir, { recursive: true });
351
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_NO_LAYOUT));
352
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
162
353
  t.true(error?.message.includes('does not contain storage layout'));
163
354
  });
355
+ ava_1.default.serial('individual output selections - no layout', async (t) => {
356
+ const dir = 'individual-no-layout';
357
+ await fs_1.promises.mkdir(dir, { recursive: true });
358
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_INDIVIDUAL_NO_LAYOUT));
359
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
360
+ t.true(error?.message.includes('does not contain storage layout'));
361
+ });
362
+ ava_1.default.serial('individual output selections - has layout', async (t) => {
363
+ const dir = 'individual-has-layout';
364
+ await fs_1.promises.mkdir(dir, { recursive: true });
365
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_INDIVIDUAL_HAS_LAYOUT));
366
+ t.assert((await (0, build_info_file_1.getBuildInfoFiles)(dir)).length === 1);
367
+ });
368
+ ava_1.default.serial('individual output selections - partial layout', async (t) => {
369
+ const dir = 'partial-layout';
370
+ await fs_1.promises.mkdir(dir, { recursive: true });
371
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_PARTIAL_LAYOUT));
372
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
373
+ t.true(error?.message.includes('does not contain storage layout'));
374
+ });
375
+ ava_1.default.serial('individual output selections - partial compile', async (t) => {
376
+ const dir = 'partial-compile';
377
+ await fs_1.promises.mkdir(dir, { recursive: true });
378
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_PARTIAL_COMPILE));
379
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
380
+ t.true(error?.message.includes('is not from a full compilation'));
381
+ });
382
+ ava_1.default.serial('no output selection', async (t) => {
383
+ const dir = 'no-output';
384
+ await fs_1.promises.mkdir(dir, { recursive: true });
385
+ await fs_1.promises.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_NO_OUTPUT_SELECTION));
386
+ const error = await t.throwsAsync((0, build_info_file_1.getBuildInfoFiles)(dir));
387
+ t.true(error?.message.includes('is not from a full compilation'));
388
+ });
164
389
  function assertBuildInfoFiles(t, buildInfoFiles) {
165
390
  t.is(buildInfoFiles.length, 2);
166
391
  const buildInfoFile1 = buildInfoFiles.find(b => b.input.sources['mypath/MyContract.sol'].content === 'contract MyContract {}');
@@ -1 +1 @@
1
- {"version":3,"file":"build-info-file.test.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-info-file.test.js","sourceRoot":"","sources":["../../../src/cli/validate/build-info-file.test.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ export declare class Manifest {
40
40
  private exists;
41
41
  private readFile;
42
42
  private writeFile;
43
- private renameFileIfRequired;
43
+ private moveFileIfRequired;
44
44
  read(retries?: number): Promise<ManifestData>;
45
45
  write(data: ManifestData): Promise<void>;
46
46
  lockedRun<T>(cb: () => Promise<T>): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAMjB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAS/C,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE;SACJ,OAAO,IAAI,MAAM,CAAC,CAAC,EAAE,cAAc,GAAG,kBAAkB;KAC1D,CAAC;IACF,OAAO,EAAE,CAAC,eAAe,GAAG,kBAAkB,CAAC,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,QAAQ,CAAC;CACzC;AAsDD,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE;QAEd,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CACV;AAED,qBAAa,QAAQ;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAW;IAEnC,OAAO,CAAC,MAAM,CAAS;WAEV,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAU1D,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,mBAAmB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAuCnF,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAI3C,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAYlE,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAS9D,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAYvC,MAAM;YASN,QAAQ;YAqBR,SAAS;YAKT,oBAAoB;IAU5B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB7C,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAYtC,IAAI;CAWnB;AAgBD,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAUhE;AAED,qBAAa,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAOvE"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAMjB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAS/C,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE;SACJ,OAAO,IAAI,MAAM,CAAC,CAAC,EAAE,cAAc,GAAG,kBAAkB;KAC1D,CAAC;IACF,OAAO,EAAE,CAAC,eAAe,GAAG,kBAAkB,CAAC,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,QAAQ,CAAC;CACzC;AAsDD,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE;QAEd,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CACV;AAED,qBAAa,QAAQ;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAW;IAEnC,OAAO,CAAC,MAAM,CAAS;WAEV,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAU1D,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,mBAAmB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAuCnF,QAAQ,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAI3C,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAYlE,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAS9D,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAYvC,MAAM;YASN,QAAQ;YAqBR,SAAS;YAKT,kBAAkB;IAY1B,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB7C,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAYtC,IAAI;CAWnB;AAgBD,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAUhE;AAED,qBAAa,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAOvE"}
package/dist/manifest.js CHANGED
@@ -160,16 +160,18 @@ class Manifest {
160
160
  }
161
161
  }
162
162
  async writeFile(content) {
163
- await this.renameFileIfRequired();
163
+ await this.moveFileIfRequired();
164
164
  await fs_1.promises.writeFile(this.file, content);
165
165
  }
166
- async renameFileIfRequired() {
166
+ async moveFileIfRequired() {
167
167
  if (this.file !== this.fallbackFile && (await this.exists(this.fallbackFile))) {
168
168
  try {
169
- await fs_1.promises.rename(this.fallbackFile, this.file);
169
+ // copy and delete instead of rename to work across filesystems
170
+ await fs_1.promises.copyFile(this.fallbackFile, this.file);
171
+ await fs_1.promises.unlink(this.fallbackFile);
170
172
  }
171
173
  catch (e) {
172
- throw new Error(`Failed to rename network file from ${this.fallbackFile} to ${this.file}: ${e.message}`);
174
+ throw new Error(`Failed to move network file from ${this.fallbackFile} to ${this.file}: ${e.message}`);
173
175
  }
174
176
  }
175
177
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,2BAAoC;AACpC,yCAOoB;AACpB,sEAAuC;AACvC,uDAA8D;AAI9D,uCAAoC;AACpC,mDAA+C;AAC/C,mCAAwC;AACxC,0DAAkC;AAClC,2CAAwC;AAExC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAoBrC,SAAS,eAAe;IACtB,OAAO;QACL,eAAe,EAAE,sBAAsB;QACvC,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAC7C,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAIlD,KAAK,UAAU,sBAAsB,CACnC,QAA0B,EAC1B,OAAe;IAEf,IAAI,eAAgC,CAAC;IACrC,IAAI,WAA2B,CAAC;IAChC,IAAI;QACF,eAAe,GAAG,MAAM,IAAA,2BAAgB,EAAC,QAAQ,CAAC,CAAC;QACnD,WAAW,GAAG,OAAO,CAAC;KACvB;IAAC,OAAO,CAAU,EAAE;QACnB,IAAI;YACF,eAAe,GAAG,MAAM,IAAA,6BAAkB,EAAC,QAAQ,CAAC,CAAC;YACrD,WAAW,GAAG,SAAS,CAAC;SACzB;QAAC,OAAO,CAAU,EAAE;YACnB,OAAO,SAAS,CAAC;SAClB;KACF;IAED,IAAI,eAAe,CAAC,OAAO,KAAK,OAAO,EAAE;QACvC,MAAM,IAAI,KAAK,CACb,yDAAyD,eAAe,CAAC,OAAO,+BAA+B,OAAO,EAAE,CACzH,CAAC;KACH;IAED,OAAO;QACL,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,eAAe,CAAC,UAAU;QACtC,aAAa,EAAE,eAAe,CAAC,aAAa;KAC7C,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,mBAAyC;IAC3E,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACrC,OAAO,GAAG,OAAO,IAAI,mBAAmB,CAAC,UAAU,EAAE,CAAC;KACvD;SAAM;QACL,OAAO,GAAG,OAAO,EAAE,CAAC;KACrB;AACH,CAAC;AAWD,MAAa,QAAQ;IAWnB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAA0B;QAChD,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAU,EAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,mBAAmB,GAAG,MAAM,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5E,IAAI,mBAAmB,KAAK,SAAS,EAAE;YACrC,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,mBAAmB,EAAE,YAAE,CAAC,MAAM,EAAE,CAAC,CAAC;SAChE;aAAM;YACL,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,YAAY,OAAe,EAAE,mBAAyC,EAAE,QAAiB;QAZjF,WAAM,GAAG,KAAK,CAAC;QAarB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QAE7D,MAAM,mBAAmB,GAAG,WAAW,OAAO,EAAE,CAAC;QAEjD,IAAI,mBAAmB,KAAK,SAAS,EAAE;YACrC,IAAA,eAAM,EAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YAClD,IAAA,eAAK,EAAC,iCAAiC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,GAAG,mBAAmB,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3E,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,OAAO,CAAC,CAAC;YAEvD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;YACpB,IAAI,OAAO,KAAK,KAAK,EAAE;gBACrB,IAAI,CAAC,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,mBAAmB,OAAO,CAAC,CAAC;aACpF;iBAAM;gBACL,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;aAC7B;YACD,IAAA,eAAK,EAAC,4BAA4B,EAAE,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEpF,IAAI,mBAAmB,CAAC,aAAa,EAAE;gBACrC,MAAM,aAAa,GAAG,mBAAmB,CAAC,aAAa,CAAC,OAAO,CAAC;gBAChE,IAAA,eAAK,EAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;gBAEjD,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;aAC3C;SACF;aAAM;YACL,IAAI,CAAC,GAAG,GAAG,oBAAoB,CAAC;YAEhC,MAAM,WAAW,GAAG,uBAAY,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,WAAW,IAAI,mBAAmB,OAAO,CAAC,CAAC;YAC1F,IAAI,CAAC,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,mBAAmB,OAAO,CAAC,CAAC;YAEnF,IAAA,eAAK,EAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SACzE;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,OAAe;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAC/C,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,IAAI,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,CAClE,CAAC;QAEF,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,OAAO,oBAAoB,CAAC,CAAC;SACpF;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAe;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;QAClE,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,kBAAkB,CAAC,oBAAoB,OAAO,oBAAoB,CAAC,CAAC;SAC/E;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAsB;QACnC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1E,IAAI,QAAQ,IAAI,CAAC,EAAE;gBACjB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;aAClC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,IAAY;QAC/B,IAAI;YACF,MAAM,aAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAM,EAAE;YACf,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,YAAY,EAAE;YACnC,OAAO,MAAM,aAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SAC7C;aAAM;YACL,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEhD,IAAI,UAAU,IAAI,cAAc,EAAE;gBAChC,MAAM,IAAI,qBAAa,CACrB,sCAAsC,IAAI,CAAC,YAAY,QAAQ,IAAI,CAAC,IAAI,mCAAmC,EAC3G,GAAG,EAAE,CACH,qDAAqD,IAAI,CAAC,OAAO,yGAAyG,CAC7K,CAAC;aACH;iBAAM,IAAI,cAAc,EAAE;gBACzB,OAAO,MAAM,aAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;aACrD;iBAAM;gBACL,OAAO,MAAM,aAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aAC7C;SACF;IACH,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,OAAe;QACrC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,aAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE;YAC7E,IAAI;gBACF,+DAA+D;gBAC/D,MAAM,aAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChD,MAAM,aAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACpC;YAAC,OAAO,CAAM,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,YAAY,OAAO,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aACxG;SACF;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAgB;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnE,IAAI;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAiB,CAAC;YAC/D,OAAO,+BAA+B,CAAC,IAAI,CAAC,CAAC;SAC9C;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACvB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC7B,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACxC;qBAAM;oBACL,OAAO,eAAe,EAAE,CAAC;iBAC1B;aACF;iBAAM;gBACL,MAAM,CAAC,CAAC;aACT;SACF;gBAAS;YACR,MAAM,OAAO,EAAE,EAAE,CAAC;SACnB;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAkB;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QACD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,SAAS,CAAI,EAAoB;QACrC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC/C;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI;YACF,OAAO,MAAM,EAAE,EAAE,CAAC;SACnB;gBAAS;YACR,MAAM,OAAO,EAAE,CAAC;SACjB;IACH,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC;QAC5B,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAExE,MAAM,aAAE,CAAC,KAAK,CAAC,cAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,MAAM,yBAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,KAAK,IAAI,EAAE;YAChB,MAAM,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC;CACF;AAnMD,4BAmMC;AAED,SAAS,+BAA+B,CAAC,IAAkB;IACzD,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE;QAC5C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;SAAM,IAAI,IAAA,0BAAe,EAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE;QAC5D,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;KAC7G;SAAM,IAAI,IAAA,0BAAe,EAAC,IAAI,CAAC,eAAe,EAAE,sBAAsB,EAAE,GAAG,CAAC,EAAE;QAC7E,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;KAC9B;SAAM,IAAI,IAAI,CAAC,eAAe,KAAK,sBAAsB,EAAE;QAC1D,OAAO,IAAI,CAAC;KACb;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;KACjF;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,IAAkB;IAChD,QAAQ,IAAI,CAAC,eAAe,EAAE;QAC5B,KAAK,KAAK,CAAC;QACX,KAAK,KAAK;YACR,IAAI,CAAC,eAAe,GAAG,sBAAsB,CAAC;YAC9C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACd;YACE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACvD;AACH,CAAC;AAVD,0CAUC;AAED,MAAa,kBAAmB,SAAQ,KAAK;CAAG;AAAhD,gDAAgD;AAEhD,SAAgB,qBAAqB,CAAC,KAAmB;IACvD,OAAO;QACL,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC;QACtD,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,KAAK,EAAE,IAAA,sBAAS,EAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;KAC5F,CAAC;AACJ,CAAC;AAPD,sDAOC;AAOD,SAAS,mBAAmB,CAC1B,KAAQ,EACR,UAAe,EAAE;IAEjB,OAAO,IAAA,WAAI,EAAC,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;AAC9E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACrE,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,IAAI,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpF,IAAI,CAAC,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAC;IAChG,IAAI,CAAC,MAAM,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC;IACxG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE;QAEd,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CACV;AAED,UAAU,mBAAmB;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,0BAA0B;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE9E;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAG5E;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAElF;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAE7F;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAE3F;AAED,wBAAsB,YAAY,CAChC,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,SAAW,GACf,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAE5G;AAED,wBAAsB,IAAI,CACxB,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,SAAW,GACf,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG3G;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,WAEnC;AAED,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAErC;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAM5C;AAED,eAAO,MAAM,YAAY,EAAE;KAAG,OAAO,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM;CAwBvD,CAAC;AAEH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAWvF;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,GAAG,OAAO,CAEhG"}
package/dist/provider.js CHANGED
@@ -82,7 +82,7 @@ exports.networkNames = Object.freeze({
82
82
  97: 'bsc-testnet',
83
83
  137: 'polygon',
84
84
  420: 'optimism-goerli',
85
- 80001: 'polygon-mumbai',
85
+ 8453: 'base',
86
86
  42161: 'arbitrum-one',
87
87
  42170: 'arbitrum-nova',
88
88
  421613: 'arbitrum-goerli',
@@ -90,7 +90,10 @@ exports.networkNames = Object.freeze({
90
90
  43114: 'avalanche',
91
91
  42220: 'celo',
92
92
  44787: 'celo-alfajores',
93
+ 80001: 'polygon-mumbai',
94
+ 84532: 'base-sepolia',
93
95
  11155111: 'sepolia',
96
+ 11155420: 'op-sepolia',
94
97
  });
95
98
  async function isDevelopmentNetwork(provider) {
96
99
  const chainId = await getChainId(provider);
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.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.32.2",
3
+ "version": "1.32.4",
4
4
  "description": "",
5
5
  "repository": "https://github.com/OpenZeppelin/openzeppelin-upgrades/tree/master/packages/core",
6
6
  "license": "MIT",
@@ -71,5 +71,5 @@
71
71
  "proper-lockfile": "^4.1.1",
72
72
  "solidity-ast": "^0.4.51"
73
73
  },
74
- "gitHead": "c9f518d4a2b31a179487db2f0210dae0e02230c9"
74
+ "gitHead": "a1be59451356a6fef170a6a3acbf13a0765a704a"
75
75
  }
@@ -95,6 +95,200 @@ const BUILD_INFO_NO_LAYOUT = {
95
95
  },
96
96
  };
97
97
 
98
+ const BUILD_INFO_INDIVIDUAL_NO_LAYOUT = {
99
+ solcVersion: '0.8.9',
100
+ input: {
101
+ language: 'Solidity',
102
+ sources: {
103
+ 'mypath/MyContract.sol': {
104
+ content: 'contract MyContract {}',
105
+ },
106
+ 'mypath/MyContractV2.sol': {
107
+ content: 'contract MyContractV2 {}',
108
+ },
109
+ },
110
+ settings: {
111
+ outputSelection: {
112
+ 'mypath/MyContract.sol': {
113
+ '': ['ast'],
114
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
115
+ },
116
+ 'mypath/MyContractV2.sol': {
117
+ '': ['ast'],
118
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
119
+ },
120
+ },
121
+ },
122
+ },
123
+ output: {
124
+ sources: {
125
+ 'mypath/MyContract.sol': {
126
+ ast: {},
127
+ id: 123,
128
+ },
129
+ 'mypath/MyContractV2.sol': {
130
+ ast: {},
131
+ id: 456,
132
+ },
133
+ },
134
+ },
135
+ };
136
+
137
+ const BUILD_INFO_INDIVIDUAL_HAS_LAYOUT = {
138
+ solcVersion: '0.8.9',
139
+ input: {
140
+ language: 'Solidity',
141
+ sources: {
142
+ 'mypath/MyContract.sol': {
143
+ content: 'contract MyContract {}',
144
+ },
145
+ 'mypath/MyContractV2.sol': {
146
+ content: 'contract MyContractV2 {}',
147
+ },
148
+ },
149
+ settings: {
150
+ outputSelection: {
151
+ 'mypath/MyContract.sol': {
152
+ '': ['ast'],
153
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
154
+ },
155
+ 'mypath/MyContractV2.sol': {
156
+ '': ['ast'],
157
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
158
+ },
159
+ },
160
+ },
161
+ },
162
+ output: {
163
+ sources: {
164
+ 'mypath/MyContract.sol': {
165
+ ast: {},
166
+ id: 123,
167
+ },
168
+ 'mypath/MyContractV2.sol': {
169
+ ast: {},
170
+ id: 456,
171
+ },
172
+ },
173
+ },
174
+ };
175
+
176
+ const BUILD_INFO_PARTIAL_LAYOUT = {
177
+ solcVersion: '0.8.9',
178
+ input: {
179
+ language: 'Solidity',
180
+ sources: {
181
+ 'mypath/MyContract.sol': {
182
+ content: 'contract MyContract {}',
183
+ },
184
+ 'mypath/MyContractV2.sol': {
185
+ content: 'contract MyContractV2 {}',
186
+ },
187
+ },
188
+ settings: {
189
+ outputSelection: {
190
+ 'mypath/MyContract.sol': {
191
+ '': ['ast'],
192
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
193
+ },
194
+ 'mypath/MyContractV2.sol': {
195
+ '': ['ast'],
196
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata'],
197
+ },
198
+ },
199
+ },
200
+ },
201
+ output: {
202
+ sources: {
203
+ 'mypath/MyContract.sol': {
204
+ ast: {},
205
+ id: 123,
206
+ },
207
+ 'mypath/MyContractV2.sol': {
208
+ ast: {},
209
+ id: 456,
210
+ },
211
+ },
212
+ },
213
+ };
214
+
215
+ const BUILD_INFO_PARTIAL_COMPILE = {
216
+ solcVersion: '0.8.9',
217
+ input: {
218
+ language: 'Solidity',
219
+ sources: {
220
+ 'mypath/MyContract.sol': {
221
+ content: 'contract MyContract {}',
222
+ },
223
+ 'mypath/MyContractV2.sol': {
224
+ content: 'contract MyContractV2 {}',
225
+ },
226
+ },
227
+ settings: {
228
+ outputSelection: {
229
+ 'mypath/MyContract.sol': {
230
+ '': ['ast'],
231
+ '*': ['abi', 'evm.bytecode', 'evm.deployedBytecode', 'evm.methodIdentifiers', 'metadata', 'storageLayout'],
232
+ },
233
+ 'mypath/MyContractV2.sol': {
234
+ '': [],
235
+ '*': [],
236
+ },
237
+ },
238
+ },
239
+ },
240
+ output: {
241
+ sources: {
242
+ 'mypath/MyContract.sol': {
243
+ ast: {},
244
+ id: 123,
245
+ },
246
+ 'mypath/MyContractV2.sol': {
247
+ ast: {},
248
+ id: 456,
249
+ },
250
+ },
251
+ },
252
+ };
253
+
254
+ const BUILD_INFO_NO_OUTPUT_SELECTION = {
255
+ solcVersion: '0.8.9',
256
+ input: {
257
+ language: 'Solidity',
258
+ sources: {
259
+ 'mypath/MyContract.sol': {
260
+ content: 'contract MyContract {}',
261
+ },
262
+ 'mypath/MyContractV2.sol': {
263
+ content: 'contract MyContractV2 {}',
264
+ },
265
+ },
266
+ settings: {
267
+ outputSelection: {
268
+ 'mypath/MyContract.sol': {
269
+ '*': [],
270
+ },
271
+ 'mypath/MyContractV2.sol': {
272
+ '': [],
273
+ '*': [],
274
+ },
275
+ },
276
+ },
277
+ },
278
+ output: {
279
+ sources: {
280
+ 'mypath/MyContract.sol': {
281
+ ast: {},
282
+ id: 123,
283
+ },
284
+ 'mypath/MyContractV2.sol': {
285
+ ast: {},
286
+ id: 456,
287
+ },
288
+ },
289
+ },
290
+ };
291
+
98
292
  test.serial('get build info files - default hardhat', async t => {
99
293
  await fs.mkdir('artifacts/build-info', { recursive: true });
100
294
  await fs.mkdir('out/build-info', { recursive: true }); // should be ignored since it's empty
@@ -177,21 +371,74 @@ test.serial('dir does not exist', async t => {
177
371
  });
178
372
 
179
373
  test.serial('no build info files', async t => {
180
- await fs.mkdir('empty-dir', { recursive: true });
181
- await fs.writeFile('empty-dir/notjson.txt', 'abc');
374
+ const dir = 'empty-dir';
375
+
376
+ await fs.mkdir(dir, { recursive: true });
377
+ await fs.writeFile(`${dir}/notjson.txt`, 'abc');
182
378
 
183
- const error = await t.throwsAsync(getBuildInfoFiles('empty-dir'));
379
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
184
380
  t.true(error?.message.includes('does not contain any build info files'));
185
381
  });
186
382
 
187
383
  test.serial('no storage layout', async t => {
188
- await fs.mkdir('no-storage-layout', { recursive: true });
189
- await fs.writeFile('no-storage-layout/build-info.json', JSON.stringify(BUILD_INFO_NO_LAYOUT));
384
+ const dir = 'no-storage-layout';
385
+
386
+ await fs.mkdir(dir, { recursive: true });
387
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_NO_LAYOUT));
388
+
389
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
390
+ t.true(error?.message.includes('does not contain storage layout'));
391
+ });
392
+
393
+ test.serial('individual output selections - no layout', async t => {
394
+ const dir = 'individual-no-layout';
190
395
 
191
- const error = await t.throwsAsync(getBuildInfoFiles('no-storage-layout'));
396
+ await fs.mkdir(dir, { recursive: true });
397
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_INDIVIDUAL_NO_LAYOUT));
398
+
399
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
192
400
  t.true(error?.message.includes('does not contain storage layout'));
193
401
  });
194
402
 
403
+ test.serial('individual output selections - has layout', async t => {
404
+ const dir = 'individual-has-layout';
405
+
406
+ await fs.mkdir(dir, { recursive: true });
407
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_INDIVIDUAL_HAS_LAYOUT));
408
+
409
+ t.assert((await getBuildInfoFiles(dir)).length === 1);
410
+ });
411
+
412
+ test.serial('individual output selections - partial layout', async t => {
413
+ const dir = 'partial-layout';
414
+
415
+ await fs.mkdir(dir, { recursive: true });
416
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_PARTIAL_LAYOUT));
417
+
418
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
419
+ t.true(error?.message.includes('does not contain storage layout'));
420
+ });
421
+
422
+ test.serial('individual output selections - partial compile', async t => {
423
+ const dir = 'partial-compile';
424
+
425
+ await fs.mkdir(dir, { recursive: true });
426
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_PARTIAL_COMPILE));
427
+
428
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
429
+ t.true(error?.message.includes('is not from a full compilation'));
430
+ });
431
+
432
+ test.serial('no output selection', async t => {
433
+ const dir = 'no-output';
434
+
435
+ await fs.mkdir(dir, { recursive: true });
436
+ await fs.writeFile(`${dir}/build-info.json`, JSON.stringify(BUILD_INFO_NO_OUTPUT_SELECTION));
437
+
438
+ const error = await t.throwsAsync(getBuildInfoFiles(dir));
439
+ t.true(error?.message.includes('is not from a full compilation'));
440
+ });
441
+
195
442
  function assertBuildInfoFiles(t: ExecutionContext, buildInfoFiles: BuildInfoFile[]) {
196
443
  t.is(buildInfoFiles.length, 2);
197
444
 
@@ -26,6 +26,10 @@ If using Foundry, include the "storageLayout" extra output in foundry.toml:
26
26
  build_info = true
27
27
  extra_output = ["storageLayout"]
28
28
  Then recompile your contracts with '${FOUNDRY_COMPILE_COMMAND}' and try again.`;
29
+ const PARTIAL_COMPILE_HELP = `\
30
+ Recompile all contracts with one of the following commands and try again:
31
+ If using Hardhat: ${HARDHAT_COMPILE_COMMAND}
32
+ If using Foundry: ${FOUNDRY_COMPILE_COMMAND}`;
29
33
 
30
34
  /**
31
35
  * A build info file containing Solidity compiler input and output JSON objects.
@@ -133,12 +137,7 @@ async function readBuildInfo(buildInfoFilePaths: string[]) {
133
137
  `Build info file ${buildInfoFilePath} must contain Solidity compiler input, output, and solcVersion.`,
134
138
  );
135
139
  } else {
136
- if (!hasStorageLayoutSetting(buildInfoJson)) {
137
- throw new ValidateCommandError(
138
- `Build info file ${buildInfoFilePath} does not contain storage layout.`,
139
- () => STORAGE_LAYOUT_HELP,
140
- );
141
- }
140
+ checkOutputSelection(buildInfoJson, buildInfoFilePath);
142
141
 
143
142
  buildInfoFiles.push({
144
143
  input: buildInfoJson.input,
@@ -150,9 +149,27 @@ async function readBuildInfo(buildInfoFilePaths: string[]) {
150
149
  return buildInfoFiles;
151
150
  }
152
151
 
153
- function hasStorageLayoutSetting(buildInfoJson: any) {
152
+ /**
153
+ * Gives an error if there is empty output selection for any contract, or a contract does not have storage layout.
154
+ */
155
+ function checkOutputSelection(buildInfoJson: any, buildInfoFilePath: string) {
154
156
  const o = buildInfoJson.input.settings?.outputSelection;
155
- return o?.['*']?.['*'] && (o['*']['*'].includes('storageLayout') || o['*']['*'].includes('*'));
157
+
158
+ return Object.keys(o).forEach((item: any) => {
159
+ if ((o[item][''] === undefined || o[item][''].length === 0) && o[item]['*'].length === 0) {
160
+ // No outputs at all for this contract e.g. if there were no changes since the last compile in Foundry.
161
+ // This is not supported for now, since it leads to AST nodes that reference node ids in other build-info files.
162
+ throw new ValidateCommandError(
163
+ `Build info file ${buildInfoFilePath} is not from a full compilation.`,
164
+ () => PARTIAL_COMPILE_HELP,
165
+ );
166
+ } else if (!o[item]['*'].includes('storageLayout')) {
167
+ throw new ValidateCommandError(
168
+ `Build info file ${buildInfoFilePath} does not contain storage layout for all contracts.`,
169
+ () => STORAGE_LAYOUT_HELP,
170
+ );
171
+ }
172
+ });
156
173
  }
157
174
 
158
175
  async function readJSON(path: string) {
package/src/manifest.ts CHANGED
@@ -229,16 +229,18 @@ export class Manifest {
229
229
  }
230
230
 
231
231
  private async writeFile(content: string): Promise<void> {
232
- await this.renameFileIfRequired();
232
+ await this.moveFileIfRequired();
233
233
  await fs.writeFile(this.file, content);
234
234
  }
235
235
 
236
- private async renameFileIfRequired() {
236
+ private async moveFileIfRequired() {
237
237
  if (this.file !== this.fallbackFile && (await this.exists(this.fallbackFile))) {
238
238
  try {
239
- await fs.rename(this.fallbackFile, this.file);
239
+ // copy and delete instead of rename to work across filesystems
240
+ await fs.copyFile(this.fallbackFile, this.file);
241
+ await fs.unlink(this.fallbackFile);
240
242
  } catch (e: any) {
241
- throw new Error(`Failed to rename network file from ${this.fallbackFile} to ${this.file}: ${e.message}`);
243
+ throw new Error(`Failed to move network file from ${this.fallbackFile} to ${this.file}: ${e.message}`);
242
244
  }
243
245
  }
244
246
  }
package/src/provider.ts CHANGED
@@ -135,7 +135,7 @@ export const networkNames: { [chainId in number]?: string } = Object.freeze({
135
135
  97: 'bsc-testnet',
136
136
  137: 'polygon',
137
137
  420: 'optimism-goerli',
138
- 80001: 'polygon-mumbai',
138
+ 8453: 'base',
139
139
  42161: 'arbitrum-one',
140
140
  42170: 'arbitrum-nova',
141
141
  421613: 'arbitrum-goerli',
@@ -143,7 +143,10 @@ export const networkNames: { [chainId in number]?: string } = Object.freeze({
143
143
  43114: 'avalanche',
144
144
  42220: 'celo',
145
145
  44787: 'celo-alfajores',
146
+ 80001: 'polygon-mumbai',
147
+ 84532: 'base-sepolia',
146
148
  11155111: 'sepolia',
149
+ 11155420: 'op-sepolia',
147
150
  });
148
151
 
149
152
  export async function isDevelopmentNetwork(provider: EthereumProvider): Promise<boolean> {