Skip to content

Commit 890966a

Browse files
committed
exit with 1 if eask analyze finds any errors
1 parent 9dc43f5 commit 890966a

File tree

4 files changed

+361
-29
lines changed

4 files changed

+361
-29
lines changed

lisp/core/analyze.el

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
;; JSON format
2929
(defvar eask-analyze--warnings nil)
3030
(defvar eask-analyze--errors nil)
31+
;; Error flag
32+
(defvar eask-analyze--error-p nil)
3133

3234
(defun eask-analyze--pretty-json (json)
3335
"Return pretty JSON."
@@ -87,6 +89,8 @@ information."
8789
8890
Argument LEVEL and MSG are data from the debug log signal."
8991
(unless (string= " *temp*" (buffer-name)) ; avoid error from `package-file' directive
92+
(when (eq 'error level)
93+
(setq eask-analyze--error-p t))
9094
(with-current-buffer (or (eask-analyze--load-buffer) (buffer-name))
9195
(funcall
9296
(cond ((eask-json-p) #'eask-analyze--write-json-format)
@@ -153,7 +157,9 @@ Argument LEVEL and MSG are data from the debug log signal."
153157
(cond
154158
;; Files found, do the action!
155159
(files
156-
(eask-analyze--file files))
160+
(eask-analyze--file files)
161+
(when eask-analyze--error-p
162+
(eask--exit 1)))
157163
;; Pattern defined, but no file found!
158164
(patterns
159165
(eask-info "(No files match wildcard: %s)"

test/jest/__snapshots__/analyze.test.js.snap

Lines changed: 298 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,303 @@
11
// Jest Snapshot v1, https://goo.gl/fbAQLP
22

3+
exports[`analyze in ./analyze/dsl handles json option 1`] = `
4+
"{
5+
"warnings": [
6+
{
7+
"range": {
8+
"start": {
9+
"line": 25,
10+
"col": 0,
11+
"pos": 853
12+
},
13+
"end": {
14+
"line": 25,
15+
"col": 35,
16+
"pos": 888
17+
}
18+
},
19+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
20+
"message": "💡 Pkg-file seems to be missing \`check-pkg.el'"
21+
},
22+
{
23+
"range": {
24+
"start": {
25+
"line": 20,
26+
"col": 0,
27+
"pos": 709
28+
},
29+
"end": {
30+
"line": 20,
31+
"col": 17,
32+
"pos": 726
33+
}
34+
},
35+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
36+
"message": "💡 Warning regarding duplicate license name, GPLv3"
37+
},
38+
{
39+
"range": {
40+
"start": {
41+
"line": 17,
42+
"col": 0,
43+
"pos": 613
44+
},
45+
"end": {
46+
"line": 17,
47+
"col": 15,
48+
"pos": 628
49+
}
50+
},
51+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
52+
"message": "💡 Warning regarding duplicate author name, name"
53+
}
54+
],
55+
"errors": [
56+
{
57+
"range": {
58+
"start": {
59+
"line": 46,
60+
"col": 0,
61+
"pos": 1696
62+
},
63+
"end": {
64+
"line": 50,
65+
"col": 2,
66+
"pos": 1908
67+
}
68+
},
69+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
70+
"message": "✗ Define dependencies with the same name \`f' with different version"
71+
},
72+
{
73+
"range": {
74+
"start": {
75+
"line": 46,
76+
"col": 0,
77+
"pos": 1696
78+
},
79+
"end": {
80+
"line": 50,
81+
"col": 2,
82+
"pos": 1908
83+
}
84+
},
85+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
86+
"message": "✗ Define dependencies with the same name \`f'"
87+
},
88+
{
89+
"range": {
90+
"start": {
91+
"line": 44,
92+
"col": 0,
93+
"pos": 1596
94+
},
95+
"end": {
96+
"line": 44,
97+
"col": 27,
98+
"pos": 1623
99+
}
100+
},
101+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
102+
"message": "✗ Define dependencies with the same name \`dash' with different version"
103+
},
104+
{
105+
"range": {
106+
"start": {
107+
"line": 43,
108+
"col": 0,
109+
"pos": 1576
110+
},
111+
"end": {
112+
"line": 43,
113+
"col": 19,
114+
"pos": 1595
115+
}
116+
},
117+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
118+
"message": "✗ Define dependencies with the same name \`dash'"
119+
},
120+
{
121+
"range": {
122+
"start": {
123+
"line": 40,
124+
"col": 0,
125+
"pos": 1474
126+
},
127+
"end": {
128+
"line": 40,
129+
"col": 20,
130+
"pos": 1494
131+
}
132+
},
133+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
134+
"message": "✗ Define dependencies with the same name \`emacs'"
135+
},
136+
{
137+
"range": {
138+
"start": {
139+
"line": 37,
140+
"col": 0,
141+
"pos": 1304
142+
},
143+
"end": {
144+
"line": 37,
145+
"col": 15,
146+
"pos": 1319
147+
}
148+
},
149+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
150+
"message": "✗ Unknown package archive \`local'"
151+
},
152+
{
153+
"range": {
154+
"start": {
155+
"line": 37,
156+
"col": 0,
157+
"pos": 1304
158+
},
159+
"end": {
160+
"line": 37,
161+
"col": 15,
162+
"pos": 1319
163+
}
164+
},
165+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
166+
"message": "✗ Invalid archive name \`local'"
167+
},
168+
{
169+
"range": {
170+
"start": {
171+
"line": 35,
172+
"col": 0,
173+
"pos": 1229
174+
},
175+
"end": {
176+
"line": 35,
177+
"col": 24,
178+
"pos": 1253
179+
}
180+
},
181+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
182+
"message": "✗ Unknown package archive \`magic-archive'"
183+
},
184+
{
185+
"range": {
186+
"start": {
187+
"line": 33,
188+
"col": 0,
189+
"pos": 1214
190+
},
191+
"end": {
192+
"line": 33,
193+
"col": 13,
194+
"pos": 1227
195+
}
196+
},
197+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
198+
"message": "✗ Multiple definition of source \`gnu'"
199+
},
200+
{
201+
"range": {
202+
"start": {
203+
"line": 30,
204+
"col": 0,
205+
"pos": 1073
206+
},
207+
"end": {
208+
"line": 30,
209+
"col": 61,
210+
"pos": 1134
211+
}
212+
},
213+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
214+
"message": "✗ Run-script with the same key name is not allowed: \`test\`"
215+
},
216+
{
217+
"range": {
218+
"start": {
219+
"line": 26,
220+
"col": 0,
221+
"pos": 953
222+
},
223+
"end": {
224+
"line": 26,
225+
"col": 35,
226+
"pos": 988
227+
}
228+
},
229+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
230+
"message": "✗ Multiple definition of \`package-descriptor'"
231+
},
232+
{
233+
"range": {
234+
"start": {
235+
"line": 23,
236+
"col": 0,
237+
"pos": 822
238+
},
239+
"end": {
240+
"line": 23,
241+
"col": 29,
242+
"pos": 851
243+
}
244+
},
245+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
246+
"message": "✗ Multiple definition of \`package-file'"
247+
},
248+
{
249+
"range": {
250+
"start": {
251+
"line": 14,
252+
"col": 0,
253+
"pos": 517
254+
},
255+
"end": {
256+
"line": 14,
257+
"col": 16,
258+
"pos": 533
259+
}
260+
},
261+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
262+
"message": "✗ Multiple definition of \`keywords'"
263+
},
264+
{
265+
"range": {
266+
"start": {
267+
"line": 12,
268+
"col": 0,
269+
"pos": 383
270+
},
271+
"end": {
272+
"line": 12,
273+
"col": 55,
274+
"pos": 438
275+
}
276+
},
277+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
278+
"message": "✗ Multiple definition of \`website-url'"
279+
},
280+
{
281+
"range": {
282+
"start": {
283+
"line": 9,
284+
"col": 0,
285+
"pos": 290
286+
},
287+
"end": {
288+
"line": 9,
289+
"col": 18,
290+
"pos": 308
291+
}
292+
},
293+
"filename": "/home/naver/git/eask-cli/test/jest/analyze/dsl/Eask",
294+
"message": "✗ Multiple definition of \`package'"
295+
}
296+
]
297+
}
298+
"
299+
`;
300+
3301
exports[`analyze in ./analyze/dsl matches snapshot 1`] = `
4302
{
5303
"stderr": "

0 commit comments

Comments
 (0)