wgc 0.44.2 → 0.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,12 @@ Binaries are attached to the github release otherwise all images can be found [h
|
|
|
4
4
|
All notable changes to this project will be documented in this file.
|
|
5
5
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
6
6
|
|
|
7
|
+
# [0.45.0](https://github.com/wundergraph/cosmo/compare/wgc@0.44.2...wgc@0.45.0) (2024-03-11)
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* add configurable schema linting ([#596](https://github.com/wundergraph/cosmo/issues/596)) ([c662485](https://github.com/wundergraph/cosmo/commit/c66248529c5bc13e795725c82ba50dbad79451ae)) (@JivusAyrus)
|
|
12
|
+
|
|
7
13
|
## [0.44.2](https://github.com/wundergraph/cosmo/compare/wgc@0.44.1...wgc@0.44.2) (2024-03-08)
|
|
8
14
|
|
|
9
15
|
### Bug Fixes
|
|
@@ -16,7 +16,7 @@ export default (opts) => {
|
|
|
16
16
|
command.option('--schema <path-to-schema>', 'The path of the new schema file.');
|
|
17
17
|
command.option('--delete', 'Run checks in case the subgraph is deleted.');
|
|
18
18
|
command.action(async (name, options) => {
|
|
19
|
-
var _a, _b, _c, _d, _e;
|
|
19
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
20
20
|
let schemaFile;
|
|
21
21
|
if (!options.schema && !options.delete) {
|
|
22
22
|
program.error("required option '--schema <path-to-schema>' or '--delete' not specified.");
|
|
@@ -63,7 +63,6 @@ export default (opts) => {
|
|
|
63
63
|
});
|
|
64
64
|
const changesTable = new Table({
|
|
65
65
|
head: [pc.bold(pc.white('CHANGE')), pc.bold(pc.white('TYPE')), pc.bold(pc.white('DESCRIPTION'))],
|
|
66
|
-
colWidths: [15, 30, 80],
|
|
67
66
|
wordWrap: true,
|
|
68
67
|
});
|
|
69
68
|
const compositionErrorsTable = new Table({
|
|
@@ -75,18 +74,25 @@ export default (opts) => {
|
|
|
75
74
|
colWidths: [30, 30, 120],
|
|
76
75
|
wordWrap: true,
|
|
77
76
|
});
|
|
77
|
+
const lintIssuesTable = new Table({
|
|
78
|
+
head: [pc.bold(pc.white('LINT_RULE')), pc.bold(pc.white('ERROR_MESSAGE')), pc.bold(pc.white('LINE NUMBER'))],
|
|
79
|
+
colAligns: ['left', 'left', 'center'],
|
|
80
|
+
wordWrap: true,
|
|
81
|
+
});
|
|
78
82
|
let success = false;
|
|
79
83
|
let finalStatement = '';
|
|
80
84
|
let studioCheckDestination = '';
|
|
81
85
|
if (resp.checkId && resp.checkedFederatedGraphs.length > 0) {
|
|
82
|
-
studioCheckDestination =
|
|
86
|
+
studioCheckDestination = `${pc.bold('Open in studio')}: ${config.webURL}/${resp.checkedFederatedGraphs[0].organizationSlug}/${resp.checkedFederatedGraphs[0].namespace}/graph/${resp.checkedFederatedGraphs[0].name}/checks/${resp.checkId}`;
|
|
83
87
|
}
|
|
84
88
|
switch ((_a = resp.response) === null || _a === void 0 ? void 0 : _a.code) {
|
|
85
89
|
case EnumStatusCode.OK: {
|
|
86
90
|
if (resp.nonBreakingChanges.length === 0 &&
|
|
87
91
|
resp.breakingChanges.length === 0 &&
|
|
88
|
-
resp.compositionErrors.length === 0
|
|
89
|
-
|
|
92
|
+
resp.compositionErrors.length === 0 &&
|
|
93
|
+
resp.lintErrors.length === 0 &&
|
|
94
|
+
resp.lintWarnings.length === 0) {
|
|
95
|
+
console.log(`\nDetected no changes.\nDetected no lint issues.\n\n${studioCheckDestination}\n`);
|
|
90
96
|
success = true;
|
|
91
97
|
break;
|
|
92
98
|
}
|
|
@@ -123,12 +129,20 @@ export default (opts) => {
|
|
|
123
129
|
console.log('\nDetected the following changes:');
|
|
124
130
|
if (resp.breakingChanges.length > 0) {
|
|
125
131
|
for (const breakingChange of resp.breakingChanges) {
|
|
126
|
-
changesTable.push([
|
|
132
|
+
changesTable.push([
|
|
133
|
+
`${logSymbols.error} ${pc.red('BREAKING')}`,
|
|
134
|
+
breakingChange.changeType,
|
|
135
|
+
breakingChange.message,
|
|
136
|
+
]);
|
|
127
137
|
}
|
|
128
138
|
}
|
|
129
139
|
if (resp.nonBreakingChanges.length > 0) {
|
|
130
140
|
for (const nonBreakingChange of resp.nonBreakingChanges) {
|
|
131
|
-
changesTable.push([
|
|
141
|
+
changesTable.push([
|
|
142
|
+
`${logSymbols.success} NON-BREAKING`,
|
|
143
|
+
nonBreakingChange.changeType,
|
|
144
|
+
nonBreakingChange.message,
|
|
145
|
+
]);
|
|
132
146
|
}
|
|
133
147
|
}
|
|
134
148
|
console.log(changesTable.toString());
|
|
@@ -144,11 +158,30 @@ export default (opts) => {
|
|
|
144
158
|
}
|
|
145
159
|
console.log(compositionErrorsTable.toString());
|
|
146
160
|
}
|
|
161
|
+
if (resp.lintErrors.length > 0 || resp.lintWarnings.length > 0) {
|
|
162
|
+
success = resp.lintErrors.length === 0;
|
|
163
|
+
console.log('\nDetected lint issues:');
|
|
164
|
+
for (const error of resp.lintErrors) {
|
|
165
|
+
lintIssuesTable.push([
|
|
166
|
+
`${logSymbols.error} ${pc.red(error.lintRuleType)}`,
|
|
167
|
+
error.message,
|
|
168
|
+
(_b = error.issueLocation) === null || _b === void 0 ? void 0 : _b.line,
|
|
169
|
+
]);
|
|
170
|
+
}
|
|
171
|
+
for (const warning of resp.lintWarnings) {
|
|
172
|
+
lintIssuesTable.push([
|
|
173
|
+
`${logSymbols.warning} ${pc.yellow(warning.lintRuleType)}`,
|
|
174
|
+
warning.message,
|
|
175
|
+
(_c = warning.issueLocation) === null || _c === void 0 ? void 0 : _c.line,
|
|
176
|
+
]);
|
|
177
|
+
}
|
|
178
|
+
console.log(lintIssuesTable.toString());
|
|
179
|
+
}
|
|
147
180
|
if (success) {
|
|
148
181
|
console.log('\n' +
|
|
149
182
|
logSymbols.success +
|
|
150
183
|
pc.green(` Schema check passed. ${finalStatement}`) +
|
|
151
|
-
'\n' +
|
|
184
|
+
'\n\n' +
|
|
152
185
|
studioCheckDestination +
|
|
153
186
|
'\n');
|
|
154
187
|
}
|
|
@@ -162,16 +195,16 @@ export default (opts) => {
|
|
|
162
195
|
}
|
|
163
196
|
case EnumStatusCode.ERR_INVALID_SUBGRAPH_SCHEMA: {
|
|
164
197
|
console.log('\nCheck has failed early because the schema could not be built. Please ensure that the schema is valid GraphQL and try again.');
|
|
165
|
-
if ((
|
|
166
|
-
console.log(pc.red(pc.bold((
|
|
198
|
+
if ((_d = resp.response) === null || _d === void 0 ? void 0 : _d.details) {
|
|
199
|
+
console.log(pc.red(pc.bold((_e = resp.response) === null || _e === void 0 ? void 0 : _e.details)));
|
|
167
200
|
}
|
|
168
201
|
program.error(logSymbols.error + pc.red(' Schema check failed.'));
|
|
169
202
|
break;
|
|
170
203
|
}
|
|
171
204
|
default: {
|
|
172
205
|
console.log('\nFailed to perform the check operation.');
|
|
173
|
-
if ((
|
|
174
|
-
console.log(pc.red(pc.bold((
|
|
206
|
+
if ((_f = resp.response) === null || _f === void 0 ? void 0 : _f.details) {
|
|
207
|
+
console.log(pc.red(pc.bold((_g = resp.response) === null || _g === void 0 ? void 0 : _g.details)));
|
|
175
208
|
}
|
|
176
209
|
program.error(logSymbols.error + pc.red(' Schema check failed.'));
|
|
177
210
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../src/commands/subgraph/commands/check.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../../../src/commands/subgraph/commands/check.ts"],"names":[],"mappings":"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"}
|