@bundle-stats/utils 4.2.2 → 4.2.3-beta.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/lib/webpack/extract/modules-packages-duplicate.js +13 -8
- package/lib/webpack/extract/modules-packages-duplicate.js.map +1 -1
- package/lib-esm/webpack/extract/modules-packages-duplicate.js +13 -8
- package/lib-esm/webpack/extract/modules-packages-duplicate.js.map +1 -1
- package/package.json +4 -4
- package/src/webpack/extract/modules-packages-duplicate.ts +23 -15
- package/types/webpack/extract/modules-packages-duplicate.d.ts +3 -3
|
@@ -43,8 +43,8 @@ const getDuplicatePackagesInsight = (duplicatePackagesMap, baselineDuplicatePack
|
|
|
43
43
|
const duplicateInstancesCount = duplicateInstances.length;
|
|
44
44
|
const newDuplicateInstancesCount = newDuplicateInstances.length;
|
|
45
45
|
const removedDuplicateInstancesCount = removedDuplicateInstances.length;
|
|
46
|
-
let text;
|
|
47
|
-
let insightType;
|
|
46
|
+
let text = '';
|
|
47
|
+
let insightType = null;
|
|
48
48
|
if (newDuplicateInstancesCount > 0 && removedDuplicateInstancesCount > 0) {
|
|
49
49
|
const item = newDuplicateInstancesCount > 1 || removedDuplicateInstancesCount > 1 ? 'packages' : 'package';
|
|
50
50
|
text = `Bundle introduced ${newDuplicateInstancesCount} and removed ${removedDuplicateInstancesCount} duplicate ${item}`;
|
|
@@ -79,8 +79,9 @@ const getDuplicatePackagesInsight = (duplicatePackagesMap, baselineDuplicatePack
|
|
|
79
79
|
insightType = constants_1.InsightType.WARNING;
|
|
80
80
|
}
|
|
81
81
|
else {
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
}
|
|
83
|
+
if (!text || !insightType) {
|
|
84
|
+
return null;
|
|
84
85
|
}
|
|
85
86
|
return {
|
|
86
87
|
type: insightType,
|
|
@@ -121,11 +122,14 @@ const extractModulesPackagesDuplicate = (_, currentExtractedData, baselineJob) =
|
|
|
121
122
|
const baselineDuplicatePackages = baselineJob?.insights?.webpack?.duplicatePackagesV3?.data?.packages ||
|
|
122
123
|
baselineJob?.insights?.webpack?.duplicatePackages?.data ||
|
|
123
124
|
{};
|
|
125
|
+
const noDuplicatesDuplicatePackagesV3 = (0, exports.getDuplicatePackagesInsight)({}, baselineDuplicatePackages);
|
|
124
126
|
if (!count) {
|
|
125
127
|
return {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
128
|
+
...(noDuplicatesDuplicatePackagesV3 && {
|
|
129
|
+
insights: {
|
|
130
|
+
duplicatePackagesV3: noDuplicatesDuplicatePackagesV3,
|
|
131
|
+
},
|
|
132
|
+
}),
|
|
129
133
|
metrics: {
|
|
130
134
|
duplicatePackagesCount: {
|
|
131
135
|
value: count,
|
|
@@ -147,13 +151,14 @@ const extractModulesPackagesDuplicate = (_, currentExtractedData, baselineJob) =
|
|
|
147
151
|
}
|
|
148
152
|
duplicatePackagesData[packageName] = packageData.children.map(({ id }) => id);
|
|
149
153
|
});
|
|
154
|
+
const duplicatePackagesV3 = (0, exports.getDuplicatePackagesInsight)(duplicatePackagesData, baselineDuplicatePackages);
|
|
150
155
|
return {
|
|
151
156
|
insights: {
|
|
152
157
|
duplicatePackages: {
|
|
153
158
|
type: constants_1.InsightType.WARNING,
|
|
154
159
|
data: duplicatePackagesData,
|
|
155
160
|
},
|
|
156
|
-
duplicatePackagesV3
|
|
161
|
+
...(duplicatePackagesV3 && { duplicatePackagesV3 }),
|
|
157
162
|
},
|
|
158
163
|
metrics: {
|
|
159
164
|
duplicatePackagesCount: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-packages-duplicate.js","sourceRoot":"","sources":["../../../src/webpack/extract/modules-packages-duplicate.ts"],"names":[],"mappings":";;;;;;AAAA,6DAAqC;AACrC,qDAA6B;AAC7B,6DAAqC;AACrC,qDAA6B;AAE7B,+CAQyB;AAwBlB,MAAM,2BAA2B,GAAG,CACzC,oBAAmD,EACnD,4BAA4D,
|
|
1
|
+
{"version":3,"file":"modules-packages-duplicate.js","sourceRoot":"","sources":["../../../src/webpack/extract/modules-packages-duplicate.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,8 +39,8 @@ export const getDuplicatePackagesInsight = (duplicatePackagesMap, baselineDuplic
|
|
|
39
39
|
const duplicateInstancesCount = duplicateInstances.length;
|
|
40
40
|
const newDuplicateInstancesCount = newDuplicateInstances.length;
|
|
41
41
|
const removedDuplicateInstancesCount = removedDuplicateInstances.length;
|
|
42
|
-
let text;
|
|
43
|
-
let insightType;
|
|
42
|
+
let text = '';
|
|
43
|
+
let insightType = null;
|
|
44
44
|
if (newDuplicateInstancesCount > 0 && removedDuplicateInstancesCount > 0) {
|
|
45
45
|
const item = newDuplicateInstancesCount > 1 || removedDuplicateInstancesCount > 1 ? 'packages' : 'package';
|
|
46
46
|
text = `Bundle introduced ${newDuplicateInstancesCount} and removed ${removedDuplicateInstancesCount} duplicate ${item}`;
|
|
@@ -75,8 +75,9 @@ export const getDuplicatePackagesInsight = (duplicatePackagesMap, baselineDuplic
|
|
|
75
75
|
insightType = InsightType.WARNING;
|
|
76
76
|
}
|
|
77
77
|
else {
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
}
|
|
79
|
+
if (!text || !insightType) {
|
|
80
|
+
return null;
|
|
80
81
|
}
|
|
81
82
|
return {
|
|
82
83
|
type: insightType,
|
|
@@ -117,11 +118,14 @@ export const extractModulesPackagesDuplicate = (_, currentExtractedData, baselin
|
|
|
117
118
|
const baselineDuplicatePackages = ((_e = (_d = (_c = (_b = baselineJob === null || baselineJob === void 0 ? void 0 : baselineJob.insights) === null || _b === void 0 ? void 0 : _b.webpack) === null || _c === void 0 ? void 0 : _c.duplicatePackagesV3) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.packages) ||
|
|
118
119
|
((_h = (_g = (_f = baselineJob === null || baselineJob === void 0 ? void 0 : baselineJob.insights) === null || _f === void 0 ? void 0 : _f.webpack) === null || _g === void 0 ? void 0 : _g.duplicatePackages) === null || _h === void 0 ? void 0 : _h.data) ||
|
|
119
120
|
{};
|
|
121
|
+
const noDuplicatesDuplicatePackagesV3 = getDuplicatePackagesInsight({}, baselineDuplicatePackages);
|
|
120
122
|
if (!count) {
|
|
121
123
|
return {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
124
|
+
...(noDuplicatesDuplicatePackagesV3 && {
|
|
125
|
+
insights: {
|
|
126
|
+
duplicatePackagesV3: noDuplicatesDuplicatePackagesV3,
|
|
127
|
+
},
|
|
128
|
+
}),
|
|
125
129
|
metrics: {
|
|
126
130
|
duplicatePackagesCount: {
|
|
127
131
|
value: count,
|
|
@@ -143,13 +147,14 @@ export const extractModulesPackagesDuplicate = (_, currentExtractedData, baselin
|
|
|
143
147
|
}
|
|
144
148
|
duplicatePackagesData[packageName] = packageData.children.map(({ id }) => id);
|
|
145
149
|
});
|
|
150
|
+
const duplicatePackagesV3 = getDuplicatePackagesInsight(duplicatePackagesData, baselineDuplicatePackages);
|
|
146
151
|
return {
|
|
147
152
|
insights: {
|
|
148
153
|
duplicatePackages: {
|
|
149
154
|
type: InsightType.WARNING,
|
|
150
155
|
data: duplicatePackagesData,
|
|
151
156
|
},
|
|
152
|
-
duplicatePackagesV3
|
|
157
|
+
...(duplicatePackagesV3 && { duplicatePackagesV3 }),
|
|
153
158
|
},
|
|
154
159
|
metrics: {
|
|
155
160
|
duplicatePackagesCount: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-packages-duplicate.js","sourceRoot":"","sources":["../../../src/webpack/extract/modules-packages-duplicate.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EACL,WAAW,GAOZ,MAAM,iBAAiB,CAAC;AAwBzB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,oBAAmD,EACnD,4BAA4D,
|
|
1
|
+
{"version":3,"file":"modules-packages-duplicate.js","sourceRoot":"","sources":["../../../src/webpack/extract/modules-packages-duplicate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bundle-stats/utils",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.3-beta.0",
|
|
4
4
|
"description": "BundleStats utils",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-esm/index.js",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
},
|
|
36
36
|
"homepage": "https://github.com/relative-ci/bundle-stats/blob/master/packages/utils#readme",
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@bundle-stats/plugin-webpack-filter": "^4.2.
|
|
39
|
-
"@bundle-stats/plugin-webpack-validate": "^4.2.
|
|
38
|
+
"@bundle-stats/plugin-webpack-filter": "^4.2.3-beta.0",
|
|
39
|
+
"@bundle-stats/plugin-webpack-validate": "^4.2.3-beta.0",
|
|
40
40
|
"query-string": "7.1.3",
|
|
41
41
|
"serialize-query-params": "2.0.2",
|
|
42
42
|
"use-query-params": "2.2.0"
|
|
@@ -58,5 +58,5 @@
|
|
|
58
58
|
"core-js": "^3.0.0",
|
|
59
59
|
"lodash": "^4.0.0"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "a4664a4c6318b73774aae3666f5ae6c778025ea1"
|
|
62
62
|
}
|
|
@@ -26,9 +26,9 @@ interface DuplicatePackageGroup {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
interface ModulesPackagesDuplicateData {
|
|
29
|
-
insights
|
|
29
|
+
insights?: {
|
|
30
30
|
duplicatePackages?: JobInsights['webpack']['duplicatePackages'];
|
|
31
|
-
duplicatePackagesV3
|
|
31
|
+
duplicatePackagesV3?: JobInsights['webpack']['duplicatePackagesV3'];
|
|
32
32
|
};
|
|
33
33
|
metrics: {
|
|
34
34
|
duplicatePackagesCount: MetricRun;
|
|
@@ -38,7 +38,7 @@ interface ModulesPackagesDuplicateData {
|
|
|
38
38
|
export const getDuplicatePackagesInsight = (
|
|
39
39
|
duplicatePackagesMap: Record<string, Array<string>>,
|
|
40
40
|
baselineDuplicatePackagesMap?: Record<string, Array<string>>,
|
|
41
|
-
): JobInsight<JobInsightDuplicatePackagesV3Data> => {
|
|
41
|
+
): JobInsight<JobInsightDuplicatePackagesV3Data> | null => {
|
|
42
42
|
const duplicateInstances: Array<string> = [];
|
|
43
43
|
const baselineDuplicateInstances: Array<string> = [];
|
|
44
44
|
const newDuplicateInstances: Array<string> = [];
|
|
@@ -82,8 +82,8 @@ export const getDuplicatePackagesInsight = (
|
|
|
82
82
|
const newDuplicateInstancesCount = newDuplicateInstances.length;
|
|
83
83
|
const removedDuplicateInstancesCount = removedDuplicateInstances.length;
|
|
84
84
|
|
|
85
|
-
let text
|
|
86
|
-
let insightType: InsightType;
|
|
85
|
+
let text = '';
|
|
86
|
+
let insightType: InsightType | null = null;
|
|
87
87
|
|
|
88
88
|
if (newDuplicateInstancesCount > 0 && removedDuplicateInstancesCount > 0) {
|
|
89
89
|
// New duplicate packages and removed duplicates
|
|
@@ -122,9 +122,11 @@ export const getDuplicatePackagesInsight = (
|
|
|
122
122
|
text = `Bundle contains ${duplicateInstancesCount} duplicate ${item}`;
|
|
123
123
|
insightType = InsightType.WARNING;
|
|
124
124
|
} else {
|
|
125
|
-
// No change
|
|
126
|
-
|
|
127
|
-
|
|
125
|
+
// No change - noop
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (!text || !insightType) {
|
|
129
|
+
return null;
|
|
128
130
|
}
|
|
129
131
|
|
|
130
132
|
return {
|
|
@@ -187,11 +189,15 @@ export const extractModulesPackagesDuplicate = (
|
|
|
187
189
|
baselineJob?.insights?.webpack?.duplicatePackages?.data ||
|
|
188
190
|
{};
|
|
189
191
|
|
|
192
|
+
const noDuplicatesDuplicatePackagesV3 = getDuplicatePackagesInsight({}, baselineDuplicatePackages);
|
|
193
|
+
|
|
190
194
|
if (!count) {
|
|
191
195
|
return {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
196
|
+
...(noDuplicatesDuplicatePackagesV3 && {
|
|
197
|
+
insights: {
|
|
198
|
+
duplicatePackagesV3: noDuplicatesDuplicatePackagesV3,
|
|
199
|
+
},
|
|
200
|
+
}),
|
|
195
201
|
metrics: {
|
|
196
202
|
duplicatePackagesCount: {
|
|
197
203
|
value: count,
|
|
@@ -228,16 +234,18 @@ export const extractModulesPackagesDuplicate = (
|
|
|
228
234
|
duplicatePackagesData[packageName] = packageData.children.map(({ id }) => id);
|
|
229
235
|
});
|
|
230
236
|
|
|
237
|
+
const duplicatePackagesV3 = getDuplicatePackagesInsight(
|
|
238
|
+
duplicatePackagesData,
|
|
239
|
+
baselineDuplicatePackages,
|
|
240
|
+
);
|
|
241
|
+
|
|
231
242
|
return {
|
|
232
243
|
insights: {
|
|
233
244
|
duplicatePackages: {
|
|
234
245
|
type: InsightType.WARNING,
|
|
235
246
|
data: duplicatePackagesData,
|
|
236
247
|
},
|
|
237
|
-
duplicatePackagesV3
|
|
238
|
-
duplicatePackagesData,
|
|
239
|
-
baselineDuplicatePackages,
|
|
240
|
-
),
|
|
248
|
+
...(duplicatePackagesV3 && { duplicatePackagesV3 }),
|
|
241
249
|
},
|
|
242
250
|
metrics: {
|
|
243
251
|
duplicatePackagesCount: {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Job, JobInsight, JobInsightDuplicatePackagesV3Data, JobInsights, MetricRun } from '../../constants';
|
|
2
2
|
interface ModulesPackagesDuplicateData {
|
|
3
|
-
insights
|
|
3
|
+
insights?: {
|
|
4
4
|
duplicatePackages?: JobInsights['webpack']['duplicatePackages'];
|
|
5
|
-
duplicatePackagesV3
|
|
5
|
+
duplicatePackagesV3?: JobInsights['webpack']['duplicatePackagesV3'];
|
|
6
6
|
};
|
|
7
7
|
metrics: {
|
|
8
8
|
duplicatePackagesCount: MetricRun;
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
|
-
export declare const getDuplicatePackagesInsight: (duplicatePackagesMap: Record<string, Array<string>>, baselineDuplicatePackagesMap?: Record<string, Array<string>>) => JobInsight<JobInsightDuplicatePackagesV3Data
|
|
11
|
+
export declare const getDuplicatePackagesInsight: (duplicatePackagesMap: Record<string, Array<string>>, baselineDuplicatePackagesMap?: Record<string, Array<string>>) => JobInsight<JobInsightDuplicatePackagesV3Data> | null;
|
|
12
12
|
export declare const extractModulesPackagesDuplicate: (_: any, currentExtractedData: any, baselineJob?: Job) => ModulesPackagesDuplicateData;
|
|
13
13
|
export {};
|