syncpack 9.0.2 → 9.3.2
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/README.md +24 -764
- package/dist/bin-fix-mismatches/fix-mismatches.js +17 -40
- package/dist/bin-lint-semver-ranges/lint-semver-ranges.js +6 -9
- package/dist/bin-list/list.js +41 -21
- package/dist/bin-list-mismatches/list-mismatches.js +63 -34
- package/dist/bin-set-semver-ranges/set-semver-ranges.js +2 -2
- package/dist/get-context/get-config/schema/base-group.d.ts +1 -0
- package/dist/get-context/get-config/schema/base-group.js +1 -0
- package/dist/get-context/get-config/schema/index.d.ts +214 -78
- package/dist/get-context/get-config/schema/semver-group.d.ts +30 -12
- package/dist/get-context/get-config/schema/version-group.d.ts +34 -4
- package/dist/get-context/get-groups/base-group.d.ts +19 -0
- package/dist/get-context/get-groups/base-group.js +40 -0
- package/dist/get-context/get-groups/index.d.ts +8 -0
- package/dist/get-context/get-groups/index.js +47 -0
- package/dist/get-context/get-groups/semver-group.d.ts +16 -0
- package/dist/get-context/get-groups/semver-group.js +89 -0
- package/dist/get-context/get-groups/version-group/index.d.ts +9 -26
- package/dist/get-context/get-groups/version-group/index.js +67 -15
- package/dist/get-context/get-groups/version-group/instance-group/index.d.ts +10 -20
- package/dist/get-context/get-groups/version-group/instance-group/index.js +49 -53
- package/dist/get-context/get-package-json-files/get-file-paths.js +2 -1
- package/dist/get-context/get-package-json-files/package-json-file/index.js +3 -2
- package/dist/get-context/get-package-json-files/package-json-file/instance.d.ts +2 -5
- package/dist/get-context/get-package-json-files/package-json-file/instance.js +3 -22
- package/dist/get-context/index.js +3 -8
- package/dist/lib/log.d.ts +4 -2
- package/dist/lib/log.js +23 -14
- package/dist/lib/print-strings.d.ts +1 -0
- package/dist/lib/print-strings.js +7 -0
- package/package.json +2 -1
- package/dist/get-context/get-groups/get-semver-groups.d.ts +0 -4
- package/dist/get-context/get-groups/get-semver-groups.js +0 -46
- package/dist/get-context/get-groups/get-version-groups.d.ts +0 -4
- package/dist/get-context/get-groups/get-version-groups.js +0 -72
- package/dist/get-context/get-groups/semver-group/index.d.ts +0 -29
- package/dist/get-context/get-groups/semver-group/index.js +0 -56
|
@@ -3,99 +3,117 @@ export declare const ignored: z.ZodObject<{
|
|
|
3
3
|
isIgnored: z.ZodLiteral<true>;
|
|
4
4
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
5
5
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
6
|
+
label: z.ZodDefault<z.ZodString>;
|
|
6
7
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
7
8
|
}, "strict", z.ZodTypeAny, {
|
|
8
9
|
dependencies: string[];
|
|
9
|
-
isIgnored: true;
|
|
10
10
|
dependencyTypes: string[];
|
|
11
|
+
label: string;
|
|
11
12
|
packages: string[];
|
|
13
|
+
isIgnored: true;
|
|
12
14
|
}, {
|
|
13
15
|
dependencyTypes?: string[] | undefined;
|
|
16
|
+
label?: string | undefined;
|
|
14
17
|
dependencies: string[];
|
|
15
|
-
isIgnored: true;
|
|
16
18
|
packages: string[];
|
|
19
|
+
isIgnored: true;
|
|
17
20
|
}>;
|
|
18
21
|
export declare const withRange: z.ZodObject<{
|
|
19
22
|
range: z.ZodEnum<["*", "", ">", ">=", ".x", "<", "<=", "^", "~"]>;
|
|
20
23
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
21
24
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
25
|
+
label: z.ZodDefault<z.ZodString>;
|
|
22
26
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
23
27
|
}, "strict", z.ZodTypeAny, {
|
|
24
28
|
dependencies: string[];
|
|
29
|
+
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
25
30
|
dependencyTypes: string[];
|
|
31
|
+
label: string;
|
|
26
32
|
packages: string[];
|
|
27
|
-
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
28
33
|
}, {
|
|
29
34
|
dependencyTypes?: string[] | undefined;
|
|
35
|
+
label?: string | undefined;
|
|
30
36
|
dependencies: string[];
|
|
31
|
-
packages: string[];
|
|
32
37
|
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
38
|
+
packages: string[];
|
|
33
39
|
}>;
|
|
34
40
|
export declare const base: z.ZodObject<{
|
|
35
41
|
range: z.ZodEnum<["*", "", ">", ">=", ".x", "<", "<=", "^", "~"]>;
|
|
36
42
|
isDefault: z.ZodLiteral<true>;
|
|
37
43
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
38
44
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
45
|
+
label: z.ZodDefault<z.ZodString>;
|
|
39
46
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
40
47
|
}, "strict", z.ZodTypeAny, {
|
|
41
48
|
isDefault: true;
|
|
42
49
|
dependencies: string[];
|
|
50
|
+
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
43
51
|
dependencyTypes: string[];
|
|
52
|
+
label: string;
|
|
44
53
|
packages: string[];
|
|
45
|
-
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
46
54
|
}, {
|
|
47
55
|
dependencyTypes?: string[] | undefined;
|
|
56
|
+
label?: string | undefined;
|
|
48
57
|
isDefault: true;
|
|
49
58
|
dependencies: string[];
|
|
50
|
-
packages: string[];
|
|
51
59
|
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
60
|
+
packages: string[];
|
|
52
61
|
}>;
|
|
53
62
|
export declare const any: z.ZodUnion<[z.ZodObject<{
|
|
54
63
|
isIgnored: z.ZodLiteral<true>;
|
|
55
64
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
56
65
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
66
|
+
label: z.ZodDefault<z.ZodString>;
|
|
57
67
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
58
68
|
}, "strict", z.ZodTypeAny, {
|
|
59
69
|
dependencies: string[];
|
|
60
|
-
isIgnored: true;
|
|
61
70
|
dependencyTypes: string[];
|
|
71
|
+
label: string;
|
|
62
72
|
packages: string[];
|
|
73
|
+
isIgnored: true;
|
|
63
74
|
}, {
|
|
64
75
|
dependencyTypes?: string[] | undefined;
|
|
76
|
+
label?: string | undefined;
|
|
65
77
|
dependencies: string[];
|
|
66
|
-
isIgnored: true;
|
|
67
78
|
packages: string[];
|
|
79
|
+
isIgnored: true;
|
|
68
80
|
}>, z.ZodObject<{
|
|
69
81
|
range: z.ZodEnum<["*", "", ">", ">=", ".x", "<", "<=", "^", "~"]>;
|
|
70
82
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
71
83
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
84
|
+
label: z.ZodDefault<z.ZodString>;
|
|
72
85
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
73
86
|
}, "strict", z.ZodTypeAny, {
|
|
74
87
|
dependencies: string[];
|
|
88
|
+
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
75
89
|
dependencyTypes: string[];
|
|
90
|
+
label: string;
|
|
76
91
|
packages: string[];
|
|
77
|
-
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
78
92
|
}, {
|
|
79
93
|
dependencyTypes?: string[] | undefined;
|
|
94
|
+
label?: string | undefined;
|
|
80
95
|
dependencies: string[];
|
|
81
|
-
packages: string[];
|
|
82
96
|
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
97
|
+
packages: string[];
|
|
83
98
|
}>, z.ZodObject<{
|
|
84
99
|
range: z.ZodEnum<["*", "", ">", ">=", ".x", "<", "<=", "^", "~"]>;
|
|
85
100
|
isDefault: z.ZodLiteral<true>;
|
|
86
101
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
87
102
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
103
|
+
label: z.ZodDefault<z.ZodString>;
|
|
88
104
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
89
105
|
}, "strict", z.ZodTypeAny, {
|
|
90
106
|
isDefault: true;
|
|
91
107
|
dependencies: string[];
|
|
108
|
+
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
92
109
|
dependencyTypes: string[];
|
|
110
|
+
label: string;
|
|
93
111
|
packages: string[];
|
|
94
|
-
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
95
112
|
}, {
|
|
96
113
|
dependencyTypes?: string[] | undefined;
|
|
114
|
+
label?: string | undefined;
|
|
97
115
|
isDefault: true;
|
|
98
116
|
dependencies: string[];
|
|
99
|
-
packages: string[];
|
|
100
117
|
range: "" | "*" | ">" | ">=" | ".x" | "<" | "<=" | "^" | "~";
|
|
118
|
+
packages: string[];
|
|
101
119
|
}>]>;
|
|
@@ -2,13 +2,16 @@ import { z } from 'zod';
|
|
|
2
2
|
export declare const standard: z.ZodObject<{
|
|
3
3
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
4
4
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
5
|
+
label: z.ZodDefault<z.ZodString>;
|
|
5
6
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
6
7
|
}, "strict", z.ZodTypeAny, {
|
|
7
8
|
dependencies: string[];
|
|
8
9
|
dependencyTypes: string[];
|
|
10
|
+
label: string;
|
|
9
11
|
packages: string[];
|
|
10
12
|
}, {
|
|
11
13
|
dependencyTypes?: string[] | undefined;
|
|
14
|
+
label?: string | undefined;
|
|
12
15
|
dependencies: string[];
|
|
13
16
|
packages: string[];
|
|
14
17
|
}>;
|
|
@@ -16,14 +19,17 @@ export declare const banned: z.ZodObject<{
|
|
|
16
19
|
isBanned: z.ZodLiteral<true>;
|
|
17
20
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
18
21
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
22
|
+
label: z.ZodDefault<z.ZodString>;
|
|
19
23
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
20
24
|
}, "strict", z.ZodTypeAny, {
|
|
21
25
|
dependencies: string[];
|
|
22
26
|
dependencyTypes: string[];
|
|
27
|
+
label: string;
|
|
23
28
|
packages: string[];
|
|
24
29
|
isBanned: true;
|
|
25
30
|
}, {
|
|
26
31
|
dependencyTypes?: string[] | undefined;
|
|
32
|
+
label?: string | undefined;
|
|
27
33
|
dependencies: string[];
|
|
28
34
|
packages: string[];
|
|
29
35
|
isBanned: true;
|
|
@@ -32,30 +38,36 @@ export declare const ignored: z.ZodObject<{
|
|
|
32
38
|
isIgnored: z.ZodLiteral<true>;
|
|
33
39
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
34
40
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
41
|
+
label: z.ZodDefault<z.ZodString>;
|
|
35
42
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
36
43
|
}, "strict", z.ZodTypeAny, {
|
|
37
44
|
dependencies: string[];
|
|
38
|
-
isIgnored: true;
|
|
39
45
|
dependencyTypes: string[];
|
|
46
|
+
label: string;
|
|
40
47
|
packages: string[];
|
|
48
|
+
isIgnored: true;
|
|
41
49
|
}, {
|
|
42
50
|
dependencyTypes?: string[] | undefined;
|
|
51
|
+
label?: string | undefined;
|
|
43
52
|
dependencies: string[];
|
|
44
|
-
isIgnored: true;
|
|
45
53
|
packages: string[];
|
|
54
|
+
isIgnored: true;
|
|
46
55
|
}>;
|
|
47
56
|
export declare const pinned: z.ZodObject<{
|
|
48
57
|
pinVersion: z.ZodString;
|
|
49
58
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
50
59
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
60
|
+
label: z.ZodDefault<z.ZodString>;
|
|
51
61
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
52
62
|
}, "strict", z.ZodTypeAny, {
|
|
53
63
|
dependencies: string[];
|
|
54
64
|
dependencyTypes: string[];
|
|
65
|
+
label: string;
|
|
55
66
|
packages: string[];
|
|
56
67
|
pinVersion: string;
|
|
57
68
|
}, {
|
|
58
69
|
dependencyTypes?: string[] | undefined;
|
|
70
|
+
label?: string | undefined;
|
|
59
71
|
dependencies: string[];
|
|
60
72
|
packages: string[];
|
|
61
73
|
pinVersion: string;
|
|
@@ -64,14 +76,17 @@ export declare const base: z.ZodObject<{
|
|
|
64
76
|
isDefault: z.ZodLiteral<true>;
|
|
65
77
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
66
78
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
79
|
+
label: z.ZodDefault<z.ZodString>;
|
|
67
80
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
68
81
|
}, "strict", z.ZodTypeAny, {
|
|
69
82
|
isDefault: true;
|
|
70
83
|
dependencies: string[];
|
|
71
84
|
dependencyTypes: string[];
|
|
85
|
+
label: string;
|
|
72
86
|
packages: string[];
|
|
73
87
|
}, {
|
|
74
88
|
dependencyTypes?: string[] | undefined;
|
|
89
|
+
label?: string | undefined;
|
|
75
90
|
isDefault: true;
|
|
76
91
|
dependencies: string[];
|
|
77
92
|
packages: string[];
|
|
@@ -79,27 +94,33 @@ export declare const base: z.ZodObject<{
|
|
|
79
94
|
export declare const any: z.ZodUnion<[z.ZodObject<{
|
|
80
95
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
81
96
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
97
|
+
label: z.ZodDefault<z.ZodString>;
|
|
82
98
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
83
99
|
}, "strict", z.ZodTypeAny, {
|
|
84
100
|
dependencies: string[];
|
|
85
101
|
dependencyTypes: string[];
|
|
102
|
+
label: string;
|
|
86
103
|
packages: string[];
|
|
87
104
|
}, {
|
|
88
105
|
dependencyTypes?: string[] | undefined;
|
|
106
|
+
label?: string | undefined;
|
|
89
107
|
dependencies: string[];
|
|
90
108
|
packages: string[];
|
|
91
109
|
}>, z.ZodObject<{
|
|
92
110
|
isBanned: z.ZodLiteral<true>;
|
|
93
111
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
94
112
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
113
|
+
label: z.ZodDefault<z.ZodString>;
|
|
95
114
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
96
115
|
}, "strict", z.ZodTypeAny, {
|
|
97
116
|
dependencies: string[];
|
|
98
117
|
dependencyTypes: string[];
|
|
118
|
+
label: string;
|
|
99
119
|
packages: string[];
|
|
100
120
|
isBanned: true;
|
|
101
121
|
}, {
|
|
102
122
|
dependencyTypes?: string[] | undefined;
|
|
123
|
+
label?: string | undefined;
|
|
103
124
|
dependencies: string[];
|
|
104
125
|
packages: string[];
|
|
105
126
|
isBanned: true;
|
|
@@ -107,29 +128,35 @@ export declare const any: z.ZodUnion<[z.ZodObject<{
|
|
|
107
128
|
isIgnored: z.ZodLiteral<true>;
|
|
108
129
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
109
130
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
131
|
+
label: z.ZodDefault<z.ZodString>;
|
|
110
132
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
111
133
|
}, "strict", z.ZodTypeAny, {
|
|
112
134
|
dependencies: string[];
|
|
113
|
-
isIgnored: true;
|
|
114
135
|
dependencyTypes: string[];
|
|
136
|
+
label: string;
|
|
115
137
|
packages: string[];
|
|
138
|
+
isIgnored: true;
|
|
116
139
|
}, {
|
|
117
140
|
dependencyTypes?: string[] | undefined;
|
|
141
|
+
label?: string | undefined;
|
|
118
142
|
dependencies: string[];
|
|
119
|
-
isIgnored: true;
|
|
120
143
|
packages: string[];
|
|
144
|
+
isIgnored: true;
|
|
121
145
|
}>, z.ZodObject<{
|
|
122
146
|
pinVersion: z.ZodString;
|
|
123
147
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
124
148
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
149
|
+
label: z.ZodDefault<z.ZodString>;
|
|
125
150
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
126
151
|
}, "strict", z.ZodTypeAny, {
|
|
127
152
|
dependencies: string[];
|
|
128
153
|
dependencyTypes: string[];
|
|
154
|
+
label: string;
|
|
129
155
|
packages: string[];
|
|
130
156
|
pinVersion: string;
|
|
131
157
|
}, {
|
|
132
158
|
dependencyTypes?: string[] | undefined;
|
|
159
|
+
label?: string | undefined;
|
|
133
160
|
dependencies: string[];
|
|
134
161
|
packages: string[];
|
|
135
162
|
pinVersion: string;
|
|
@@ -137,14 +164,17 @@ export declare const any: z.ZodUnion<[z.ZodObject<{
|
|
|
137
164
|
isDefault: z.ZodLiteral<true>;
|
|
138
165
|
dependencies: z.ZodArray<z.ZodString, "many">;
|
|
139
166
|
dependencyTypes: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
167
|
+
label: z.ZodDefault<z.ZodString>;
|
|
140
168
|
packages: z.ZodArray<z.ZodString, "many">;
|
|
141
169
|
}, "strict", z.ZodTypeAny, {
|
|
142
170
|
isDefault: true;
|
|
143
171
|
dependencies: string[];
|
|
144
172
|
dependencyTypes: string[];
|
|
173
|
+
label: string;
|
|
145
174
|
packages: string[];
|
|
146
175
|
}, {
|
|
147
176
|
dependencyTypes?: string[] | undefined;
|
|
177
|
+
label?: string | undefined;
|
|
148
178
|
isDefault: true;
|
|
149
179
|
dependencies: string[];
|
|
150
180
|
packages: string[];
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Syncpack } from '../../types';
|
|
2
|
+
import type { Instance } from '../get-package-json-files/package-json-file/instance';
|
|
3
|
+
export declare class BaseGroup<T extends Syncpack.Config.SemverGroup.Any | Syncpack.Config.VersionGroup.Any> {
|
|
4
|
+
/** Full config for this run of syncpack */
|
|
5
|
+
syncpackConfig: Syncpack.Config.Private;
|
|
6
|
+
/** The original config which created this `SemverGroup` */
|
|
7
|
+
groupConfig: T;
|
|
8
|
+
/** Instances which belong to this group */
|
|
9
|
+
instances: Instance[];
|
|
10
|
+
/** Instances which belong to this group, keyed by their .name property */
|
|
11
|
+
instancesByName: Record<string, Instance[]>;
|
|
12
|
+
/** Is this the catch-all group, not defined by the user? */
|
|
13
|
+
isDefault: boolean;
|
|
14
|
+
constructor(config: Syncpack.Config.Private, group: T);
|
|
15
|
+
/** Can this instance be added to this group? */
|
|
16
|
+
canAdd(instance: Instance): boolean;
|
|
17
|
+
/** Add this instance to this group */
|
|
18
|
+
add(instance: Instance): void;
|
|
19
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.BaseGroup = void 0;
|
|
7
|
+
var expect_more_1 = require("expect-more");
|
|
8
|
+
var minimatch_1 = __importDefault(require("minimatch"));
|
|
9
|
+
var BaseGroup = /** @class */ (function () {
|
|
10
|
+
function BaseGroup(config, group) {
|
|
11
|
+
this.groupConfig = group;
|
|
12
|
+
this.instances = [];
|
|
13
|
+
this.instancesByName = {};
|
|
14
|
+
this.isDefault =
|
|
15
|
+
group === config.defaultSemverGroup ||
|
|
16
|
+
group === config.defaultVersionGroup;
|
|
17
|
+
this.syncpackConfig = config;
|
|
18
|
+
}
|
|
19
|
+
/** Can this instance be added to this group? */
|
|
20
|
+
BaseGroup.prototype.canAdd = function (instance) {
|
|
21
|
+
var _a = this.groupConfig, dependencies = _a.dependencies, dependencyTypes = _a.dependencyTypes, packages = _a.packages;
|
|
22
|
+
return ((!(0, expect_more_1.isNonEmptyArray)(dependencyTypes) ||
|
|
23
|
+
dependencyTypes.includes(instance.pathDef.name)) &&
|
|
24
|
+
(!(0, expect_more_1.isNonEmptyArray)(packages) ||
|
|
25
|
+
packages.some(function (pattern) { return (0, minimatch_1["default"])(instance.pkgName, pattern); })) &&
|
|
26
|
+
(!(0, expect_more_1.isNonEmptyArray)(dependencies) ||
|
|
27
|
+
dependencies.some(function (pattern) { return (0, minimatch_1["default"])(instance.name, pattern); })));
|
|
28
|
+
};
|
|
29
|
+
/** Add this instance to this group */
|
|
30
|
+
BaseGroup.prototype.add = function (instance) {
|
|
31
|
+
var _a;
|
|
32
|
+
if (!this.instancesByName[instance.name]) {
|
|
33
|
+
this.instancesByName[instance.name] = [];
|
|
34
|
+
}
|
|
35
|
+
(_a = this.instancesByName[instance.name]) === null || _a === void 0 ? void 0 : _a.push(instance);
|
|
36
|
+
this.instances.push(instance);
|
|
37
|
+
};
|
|
38
|
+
return BaseGroup;
|
|
39
|
+
}());
|
|
40
|
+
exports.BaseGroup = BaseGroup;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Syncpack } from '../../types';
|
|
2
|
+
import type { Instance } from '../get-package-json-files/package-json-file/instance';
|
|
3
|
+
import { SemverGroup } from './semver-group';
|
|
4
|
+
import { VersionGroup } from './version-group';
|
|
5
|
+
export declare function getGroups(config: Syncpack.Config.Private, instances: Instance[]): {
|
|
6
|
+
semverGroups: SemverGroup[];
|
|
7
|
+
versionGroups: VersionGroup[];
|
|
8
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
13
|
+
exports.__esModule = true;
|
|
14
|
+
exports.getGroups = void 0;
|
|
15
|
+
var semver_group_1 = require("./semver-group");
|
|
16
|
+
var version_group_1 = require("./version-group");
|
|
17
|
+
function getGroups(config, instances) {
|
|
18
|
+
var groupsByName = {
|
|
19
|
+
semverGroups: config.semverGroups.map(function (group) { return new semver_group_1.SemverGroup(config, group); }),
|
|
20
|
+
versionGroups: config.versionGroups.map(function (group) { return new version_group_1.VersionGroup(config, group); })
|
|
21
|
+
};
|
|
22
|
+
instances.forEach(function (instance) {
|
|
23
|
+
var name = instance.name, pkgName = instance.pkgName;
|
|
24
|
+
Object.keys(groupsByName).forEach(function (key) {
|
|
25
|
+
var e_1, _a;
|
|
26
|
+
try {
|
|
27
|
+
for (var _b = __values(groupsByName[key]), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
28
|
+
var group = _c.value;
|
|
29
|
+
if (group.canAdd(instance)) {
|
|
30
|
+
group.add(instance);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
36
|
+
finally {
|
|
37
|
+
try {
|
|
38
|
+
if (_c && !_c.done && (_a = _b["return"])) _a.call(_b);
|
|
39
|
+
}
|
|
40
|
+
finally { if (e_1) throw e_1.error; }
|
|
41
|
+
}
|
|
42
|
+
throw new Error("".concat(name, " in ").concat(pkgName, " did not match any ").concat(key));
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
return groupsByName;
|
|
46
|
+
}
|
|
47
|
+
exports.getGroups = getGroups;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Syncpack } from '../../types';
|
|
2
|
+
import type { Instance } from '../get-package-json-files/package-json-file/instance';
|
|
3
|
+
import { BaseGroup } from './base-group';
|
|
4
|
+
type MismatchesByName = [string, Instance[]];
|
|
5
|
+
export declare class SemverGroup extends BaseGroup<Syncpack.Config.SemverGroup.Any> {
|
|
6
|
+
constructor(config: Syncpack.Config.Private, semverGroup: Syncpack.Config.SemverGroup.Any);
|
|
7
|
+
getExpectedVersion(instance: Instance): string;
|
|
8
|
+
/** Does this `Instance` have a version which does not follow the rules? */
|
|
9
|
+
isMismatch(instance: Instance): boolean;
|
|
10
|
+
/** 1+ `Instance` has a version which does not follow the rules */
|
|
11
|
+
hasMismatches(): boolean;
|
|
12
|
+
isIgnored(): boolean;
|
|
13
|
+
/** Get every `Instance` with a version which does not follow the rules */
|
|
14
|
+
getMismatches(): MismatchesByName[];
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
18
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
19
|
+
if (!m) return o;
|
|
20
|
+
var i = m.call(o), r, ar = [], e;
|
|
21
|
+
try {
|
|
22
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
23
|
+
}
|
|
24
|
+
catch (error) { e = { error: error }; }
|
|
25
|
+
finally {
|
|
26
|
+
try {
|
|
27
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
28
|
+
}
|
|
29
|
+
finally { if (e) throw e.error; }
|
|
30
|
+
}
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
33
|
+
exports.__esModule = true;
|
|
34
|
+
exports.SemverGroup = void 0;
|
|
35
|
+
var is_semver_1 = require("../../lib/is-semver");
|
|
36
|
+
var set_semver_range_1 = require("../../lib/set-semver-range");
|
|
37
|
+
var base_group_1 = require("./base-group");
|
|
38
|
+
var SemverGroup = /** @class */ (function (_super) {
|
|
39
|
+
__extends(SemverGroup, _super);
|
|
40
|
+
function SemverGroup(config, semverGroup) {
|
|
41
|
+
return _super.call(this, config, semverGroup) || this;
|
|
42
|
+
}
|
|
43
|
+
SemverGroup.prototype.getExpectedVersion = function (instance) {
|
|
44
|
+
var version = instance.version;
|
|
45
|
+
// leave ignored versions alone
|
|
46
|
+
if (this.isIgnored())
|
|
47
|
+
return version;
|
|
48
|
+
// leave unsupported versions alone
|
|
49
|
+
if (!(0, is_semver_1.isSemver)(version))
|
|
50
|
+
return version;
|
|
51
|
+
// version property of package.json must always be exact
|
|
52
|
+
if (instance.isWorkspace())
|
|
53
|
+
return (0, set_semver_range_1.setSemverRange)('', version);
|
|
54
|
+
// otherwise we can change it
|
|
55
|
+
var range = this.groupConfig.range;
|
|
56
|
+
return (0, set_semver_range_1.setSemverRange)(range, version);
|
|
57
|
+
};
|
|
58
|
+
/** Does this `Instance` have a version which does not follow the rules? */
|
|
59
|
+
SemverGroup.prototype.isMismatch = function (instance) {
|
|
60
|
+
return instance.version !== this.getExpectedVersion(instance);
|
|
61
|
+
};
|
|
62
|
+
/** 1+ `Instance` has a version which does not follow the rules */
|
|
63
|
+
SemverGroup.prototype.hasMismatches = function () {
|
|
64
|
+
return this.getMismatches().length > 0;
|
|
65
|
+
};
|
|
66
|
+
SemverGroup.prototype.isIgnored = function () {
|
|
67
|
+
return this.groupConfig.isIgnored === true;
|
|
68
|
+
};
|
|
69
|
+
/** Get every `Instance` with a version which does not follow the rules */
|
|
70
|
+
SemverGroup.prototype.getMismatches = function () {
|
|
71
|
+
var _this = this;
|
|
72
|
+
return this.isIgnored()
|
|
73
|
+
? []
|
|
74
|
+
: Object.entries(this.instancesByName)
|
|
75
|
+
.map(function (_a) {
|
|
76
|
+
var _b = __read(_a, 2), name = _b[0], instances = _b[1];
|
|
77
|
+
return [
|
|
78
|
+
name,
|
|
79
|
+
instances.filter(function (instance) { return _this.isMismatch(instance); }),
|
|
80
|
+
];
|
|
81
|
+
})
|
|
82
|
+
.filter(function (_a) {
|
|
83
|
+
var _b = __read(_a, 2), arr = _b[1];
|
|
84
|
+
return arr.length > 0;
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
return SemverGroup;
|
|
88
|
+
}(base_group_1.BaseGroup));
|
|
89
|
+
exports.SemverGroup = SemverGroup;
|
|
@@ -1,29 +1,12 @@
|
|
|
1
1
|
import type { Syncpack } from '../../../types';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
export declare class VersionGroup {
|
|
5
|
-
|
|
6
|
-
dependencies: string[];
|
|
7
|
-
/** Optionally limit this group to dependencies at these named paths */
|
|
8
|
-
dependencyTypes: Syncpack.TypeName[];
|
|
9
|
-
/** */
|
|
10
|
-
input: Syncpack.Config.Private;
|
|
11
|
-
/** */
|
|
12
|
-
instanceGroups: InstanceGroup[];
|
|
13
|
-
/** */
|
|
14
|
-
instances: Instance[];
|
|
15
|
-
/** */
|
|
16
|
-
instancesByName: Record<string, Instance[]>;
|
|
17
|
-
/** */
|
|
18
|
-
isBanned: boolean;
|
|
19
|
-
/** */
|
|
20
|
-
isDefault: boolean;
|
|
21
|
-
/** */
|
|
22
|
-
isIgnored: boolean;
|
|
23
|
-
/** */
|
|
24
|
-
packages: string[];
|
|
25
|
-
/** Optionally force all dependencies in this group to have this version */
|
|
26
|
-
pinVersion?: string;
|
|
27
|
-
constructor(input: Syncpack.Config.Private, versionGroup: Syncpack.Config.VersionGroup.Any);
|
|
2
|
+
import { BaseGroup } from '../base-group';
|
|
3
|
+
import { InstanceGroup } from './instance-group';
|
|
4
|
+
export declare class VersionGroup extends BaseGroup<Syncpack.Config.VersionGroup.Any> {
|
|
5
|
+
getAllInstanceGroups(): InstanceGroup[];
|
|
28
6
|
getInvalidInstanceGroups(): InstanceGroup[];
|
|
7
|
+
isBanned(): boolean;
|
|
8
|
+
isIgnored(): boolean;
|
|
9
|
+
hasPinnedVersion(): boolean;
|
|
10
|
+
getPinnedVersion(): string;
|
|
11
|
+
isUnpinned(): boolean;
|
|
29
12
|
}
|
|
@@ -1,23 +1,75 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
18
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
19
|
+
if (!m) return o;
|
|
20
|
+
var i = m.call(o), r, ar = [], e;
|
|
21
|
+
try {
|
|
22
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
23
|
+
}
|
|
24
|
+
catch (error) { e = { error: error }; }
|
|
25
|
+
finally {
|
|
26
|
+
try {
|
|
27
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
28
|
+
}
|
|
29
|
+
finally { if (e) throw e.error; }
|
|
30
|
+
}
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
2
33
|
exports.__esModule = true;
|
|
3
34
|
exports.VersionGroup = void 0;
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
this
|
|
11
|
-
this.instancesByName = {};
|
|
12
|
-
this.isBanned = versionGroup.isBanned === true;
|
|
13
|
-
this.isDefault = versionGroup === input.defaultVersionGroup;
|
|
14
|
-
this.isIgnored = versionGroup.isIgnored === true;
|
|
15
|
-
this.packages = versionGroup.packages;
|
|
16
|
-
this.pinVersion = versionGroup.pinVersion;
|
|
35
|
+
var expect_more_1 = require("expect-more");
|
|
36
|
+
var base_group_1 = require("../base-group");
|
|
37
|
+
var instance_group_1 = require("./instance-group");
|
|
38
|
+
var VersionGroup = /** @class */ (function (_super) {
|
|
39
|
+
__extends(VersionGroup, _super);
|
|
40
|
+
function VersionGroup() {
|
|
41
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
17
42
|
}
|
|
43
|
+
VersionGroup.prototype.getAllInstanceGroups = function () {
|
|
44
|
+
var _this = this;
|
|
45
|
+
return Object.entries(this.instancesByName).map(function (_a) {
|
|
46
|
+
var _b = __read(_a, 2), name = _b[0], instances = _b[1];
|
|
47
|
+
return new instance_group_1.InstanceGroup(_this, name, instances);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
18
50
|
VersionGroup.prototype.getInvalidInstanceGroups = function () {
|
|
19
|
-
return this.
|
|
51
|
+
return this.getAllInstanceGroups().filter(function (group) { return group.isInvalid(); });
|
|
52
|
+
};
|
|
53
|
+
VersionGroup.prototype.isBanned = function () {
|
|
54
|
+
return this.groupConfig.isBanned === true;
|
|
55
|
+
};
|
|
56
|
+
VersionGroup.prototype.isIgnored = function () {
|
|
57
|
+
return this.groupConfig.isIgnored === true;
|
|
58
|
+
};
|
|
59
|
+
VersionGroup.prototype.hasPinnedVersion = function () {
|
|
60
|
+
return (0, expect_more_1.isNonEmptyString)(this.getPinnedVersion());
|
|
61
|
+
};
|
|
62
|
+
VersionGroup.prototype.getPinnedVersion = function () {
|
|
63
|
+
return this.groupConfig.pinVersion;
|
|
64
|
+
};
|
|
65
|
+
VersionGroup.prototype.isUnpinned = function () {
|
|
66
|
+
var pinVersion = this.groupConfig.pinVersion;
|
|
67
|
+
return ((0, expect_more_1.isNonEmptyString)(pinVersion) &&
|
|
68
|
+
this.instances.some(function (_a) {
|
|
69
|
+
var version = _a.version;
|
|
70
|
+
return version !== pinVersion;
|
|
71
|
+
}));
|
|
20
72
|
};
|
|
21
73
|
return VersionGroup;
|
|
22
|
-
}());
|
|
74
|
+
}(base_group_1.BaseGroup));
|
|
23
75
|
exports.VersionGroup = VersionGroup;
|