@openzeppelin/upgrades-core 1.27.2 → 1.27.3
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/dist/storage-0.8.test.js
CHANGED
|
@@ -98,4 +98,34 @@ test('renamed retyped - extraction', async (t) => {
|
|
|
98
98
|
const layout = await t.context.extractStorageLayout('StorageRenamedRetyped');
|
|
99
99
|
t.snapshot((0, stabilize_layout_1.stabilizeStorageLayout)(layout));
|
|
100
100
|
});
|
|
101
|
+
test('mapping with user defined value type key - ok', async (t) => {
|
|
102
|
+
const v1 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V1');
|
|
103
|
+
const v2 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V2_Ok');
|
|
104
|
+
const comparison = (0, storage_1.getStorageUpgradeErrors)(v1, v2);
|
|
105
|
+
t.deepEqual(comparison, []);
|
|
106
|
+
});
|
|
107
|
+
test('mapping with user defined value type key - bad', async (t) => {
|
|
108
|
+
const v1 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V1');
|
|
109
|
+
const v2 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V2_Bad');
|
|
110
|
+
const comparison = (0, storage_1.getStorageUpgradeErrors)(v1, v2);
|
|
111
|
+
t.like(comparison, {
|
|
112
|
+
length: 2,
|
|
113
|
+
0: {
|
|
114
|
+
kind: 'typechange',
|
|
115
|
+
change: {
|
|
116
|
+
kind: 'mapping key',
|
|
117
|
+
},
|
|
118
|
+
original: { label: 'm1' },
|
|
119
|
+
updated: { label: 'm1' },
|
|
120
|
+
},
|
|
121
|
+
1: {
|
|
122
|
+
kind: 'typechange',
|
|
123
|
+
change: {
|
|
124
|
+
kind: 'mapping key',
|
|
125
|
+
},
|
|
126
|
+
original: { label: 'm2' },
|
|
127
|
+
updated: { label: 'm2' },
|
|
128
|
+
},
|
|
129
|
+
});
|
|
130
|
+
});
|
|
101
131
|
//# sourceMappingURL=storage-0.8.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-0.8.test.js","sourceRoot":"","sources":["../src/storage-0.8.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"storage-0.8.test.js","sourceRoot":"","sources":["../src/storage-0.8.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isValueType = void 0;
|
|
4
4
|
function isValueType(type) {
|
|
5
|
-
return type.args === undefined || ['t_contract', 't_enum'].includes(type.head);
|
|
5
|
+
return type.args === undefined || ['t_contract', 't_enum', 't_userDefinedValueType'].includes(type.head);
|
|
6
6
|
}
|
|
7
7
|
exports.isValueType = isValueType;
|
|
8
8
|
//# sourceMappingURL=is-value-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-value-type.js","sourceRoot":"","sources":["../../src/utils/is-value-type.ts"],"names":[],"mappings":";;;AAEA,SAAgB,WAAW,CAAC,IAAwB;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"is-value-type.js","sourceRoot":"","sources":["../../src/utils/is-value-type.ts"],"names":[],"mappings":";;;AAEA,SAAgB,WAAW,CAAC,IAAwB;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3G,CAAC;AAFD,kCAEC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openzeppelin/upgrades-core",
|
|
3
|
-
"version": "1.27.
|
|
3
|
+
"version": "1.27.3",
|
|
4
4
|
"description": "",
|
|
5
5
|
"repository": "https://github.com/OpenZeppelin/openzeppelin-upgrades/tree/master/packages/core",
|
|
6
6
|
"license": "MIT",
|
|
@@ -64,5 +64,5 @@
|
|
|
64
64
|
"proper-lockfile": "^4.1.1",
|
|
65
65
|
"solidity-ast": "^0.4.15"
|
|
66
66
|
},
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "d1513992c58106b44967e42cb9f8cb2621d5a300"
|
|
68
68
|
}
|
package/src/storage-0.8.test.ts
CHANGED
|
@@ -112,3 +112,35 @@ test('renamed retyped - extraction', async t => {
|
|
|
112
112
|
const layout = await t.context.extractStorageLayout('StorageRenamedRetyped');
|
|
113
113
|
t.snapshot(stabilizeStorageLayout(layout));
|
|
114
114
|
});
|
|
115
|
+
|
|
116
|
+
test('mapping with user defined value type key - ok', async t => {
|
|
117
|
+
const v1 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V1');
|
|
118
|
+
const v2 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V2_Ok');
|
|
119
|
+
const comparison = getStorageUpgradeErrors(v1, v2);
|
|
120
|
+
t.deepEqual(comparison, []);
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
test('mapping with user defined value type key - bad', async t => {
|
|
124
|
+
const v1 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V1');
|
|
125
|
+
const v2 = await t.context.extractStorageLayout('Storage089_MappingUVDTKey_V2_Bad');
|
|
126
|
+
const comparison = getStorageUpgradeErrors(v1, v2);
|
|
127
|
+
t.like(comparison, {
|
|
128
|
+
length: 2,
|
|
129
|
+
0: {
|
|
130
|
+
kind: 'typechange',
|
|
131
|
+
change: {
|
|
132
|
+
kind: 'mapping key',
|
|
133
|
+
},
|
|
134
|
+
original: { label: 'm1' },
|
|
135
|
+
updated: { label: 'm1' },
|
|
136
|
+
},
|
|
137
|
+
1: {
|
|
138
|
+
kind: 'typechange',
|
|
139
|
+
change: {
|
|
140
|
+
kind: 'mapping key',
|
|
141
|
+
},
|
|
142
|
+
original: { label: 'm2' },
|
|
143
|
+
updated: { label: 'm2' },
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ParsedTypeDetailed } from '../storage/layout';
|
|
2
2
|
|
|
3
3
|
export function isValueType(type: ParsedTypeDetailed): boolean {
|
|
4
|
-
return type.args === undefined || ['t_contract', 't_enum'].includes(type.head);
|
|
4
|
+
return type.args === undefined || ['t_contract', 't_enum', 't_userDefinedValueType'].includes(type.head);
|
|
5
5
|
}
|