Skip to content

Commit 3f4a5fe

Browse files
TrottMylesBorins
authored andcommitted
tools: increase lint coverage
Extend linting to tools/license2rtf.js and any other JS that gets added to the `tools` directory by default. This incidentally simplifies lint invocation. Ref: #8349 PR-URL: #7647 Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Roman Reiss <[email protected]> Reviewed-By: Сковорода Никита Андреевич <[email protected]>
1 parent a5b6c2c commit 3f4a5fe

File tree

4 files changed

+55
-56
lines changed

4 files changed

+55
-56
lines changed

.eslintignore

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ lib/internal/v8_prof_polyfill.js
22
lib/punycode.js
33
test/addons/??_*/
44
test/fixtures
5-
test/**/node_modules
65
test/disabled
76
test/tmp*/
8-
tools/doc/node_modules
7+
tools/eslint
8+
node_modules

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -644,8 +644,8 @@ bench-idle:
644644
$(NODE) benchmark/idle_clients.js &
645645

646646
jslint:
647-
$(NODE) tools/eslint/bin/eslint.js benchmark lib src test tools/doc \
648-
tools/eslint-rules --rulesdir tools/eslint-rules
647+
$(NODE) tools/eslint/bin/eslint.js benchmark lib src test tools \
648+
--rulesdir tools/eslint-rules
649649

650650
CPPLINT_EXCLUDE ?=
651651
CPPLINT_EXCLUDE += src/node_root_certs.h

tools/license2rtf.js

+49-51
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
1+
'use strict';
12

2-
var assert = require('assert'),
3-
Stream = require('stream'),
4-
inherits = require('util').inherits;
3+
const assert = require('assert');
4+
const Stream = require('stream');
5+
const inherits = require('util').inherits;
56

67

78
/*
89
* This filter consumes a stream of characters and emits one string per line.
910
*/
1011
function LineSplitter() {
11-
var self = this,
12-
buffer = "";
12+
const self = this;
13+
var buffer = '';
1314

1415
Stream.call(this);
1516
this.writable = true;
@@ -38,33 +39,31 @@ inherits(LineSplitter, Stream);
3839
* This filter consumes lines and emits paragraph objects.
3940
*/
4041
function ParagraphParser() {
41-
var self = this,
42-
block_is_license_block = false,
43-
block_has_c_style_comment,
44-
is_first_line_in_paragraph,
45-
paragraph_line_indent,
46-
paragraph;
47-
48-
Stream.call(this);
49-
this.writable = true;
50-
51-
resetBlock(false);
52-
53-
this.write = function(data) {
54-
parseLine(data + '');
55-
return true;
56-
};
57-
58-
this.end = function(data) {
59-
if (data) {
60-
parseLine(data + '');
61-
}
62-
flushParagraph();
63-
self.emit('end');
64-
};
42+
const self = this;
43+
var block_is_license_block = false;
44+
var block_has_c_style_comment;
45+
var paragraph_line_indent;
46+
var paragraph;
47+
48+
Stream.call(this);
49+
this.writable = true;
50+
51+
resetBlock(false);
52+
53+
this.write = function(data) {
54+
parseLine(data + '');
55+
return true;
56+
};
57+
58+
this.end = function(data) {
59+
if (data) {
60+
parseLine(data + '');
61+
}
62+
flushParagraph();
63+
self.emit('end');
64+
};
6565

6666
function resetParagraph() {
67-
is_first_line_in_paragraph = true;
6867
paragraph_line_indent = -1;
6968

7069
paragraph = {
@@ -165,8 +164,6 @@ function ParagraphParser() {
165164

166165
if (line)
167166
paragraph.lines.push(line);
168-
169-
is_first_line_in_paragraph = false;
170167
}
171168
}
172169
inherits(ParagraphParser, Stream);
@@ -184,16 +181,16 @@ function Unwrapper() {
184181
this.writable = true;
185182

186183
this.write = function(paragraph) {
187-
var lines = paragraph.lines,
188-
break_after = [],
189-
i;
184+
var lines = paragraph.lines;
185+
var break_after = [];
186+
var i;
190187

191188
for (i = 0; i < lines.length - 1; i++) {
192189
var line = lines[i];
193190

194191
// When a line is really short, the line was probably kept separate for a
195192
// reason.
196-
if (line.length < 50) {
193+
if (line.length < 50) {
197194
// If the first word on the next line really didn't fit after the line,
198195
// it probably was just ordinary wrapping after all.
199196
var next_first_word_length = lines[i + 1].replace(/\s.*$/, '').length;
@@ -203,7 +200,7 @@ function Unwrapper() {
203200
}
204201
}
205202

206-
for (i = 0; i < lines.length - 1; ) {
203+
for (i = 0; i < lines.length - 1;) {
207204
if (!break_after[i]) {
208205
lines[i] += ' ' + lines.splice(i + 1, 1)[0];
209206
} else {
@@ -233,8 +230,8 @@ inherits(Unwrapper, Stream);
233230
* This filter generates an rtf document from a stream of paragraph objects.
234231
*/
235232
function RtfGenerator() {
236-
var self = this,
237-
did_write_anything = false;
233+
const self = this;
234+
var did_write_anything = false;
238235

239236
Stream.call(this);
240237
this.writable = true;
@@ -245,11 +242,11 @@ function RtfGenerator() {
245242
did_write_anything = true;
246243
}
247244

248-
var li = paragraph.li,
249-
level = paragraph.level + (li ? 1 : 0),
250-
lic = paragraph.in_license_block;
245+
var li = paragraph.li;
246+
var level = paragraph.level + (li ? 1 : 0);
247+
var lic = paragraph.in_license_block;
251248

252-
var rtf = "\\pard";
249+
var rtf = '\\pard';
253250
rtf += '\\sa150\\sl300\\slmult1';
254251
if (level > 0)
255252
rtf += '\\li' + (level * 240);
@@ -290,18 +287,19 @@ function RtfGenerator() {
290287
function rtfEscape(string) {
291288
return string
292289
.replace(/[\\\{\}]/g, function(m) {
293-
return '\\' + m;
290+
return '\\' + m;
294291
})
295292
.replace(/\t/g, function() {
296293
return '\\tab ';
297294
})
295+
// eslint-disable-next-line no-control-regex
298296
.replace(/[\x00-\x1f\x7f-\xff]/g, function(m) {
299297
return '\\\'' + toHex(m.charCodeAt(0), 2);
300298
})
301299
.replace(/\ufeff/g, '')
302300
.replace(/[\u0100-\uffff]/g, function(m) {
303301
return '\\u' + toHex(m.charCodeAt(0), 4) + '?';
304-
});
302+
});
305303
}
306304

307305
function emitHeader() {
@@ -317,12 +315,12 @@ function RtfGenerator() {
317315
inherits(RtfGenerator, Stream);
318316

319317

320-
var stdin = process.stdin,
321-
stdout = process.stdout,
322-
line_splitter = new LineSplitter(),
323-
paragraph_parser = new ParagraphParser(),
324-
unwrapper = new Unwrapper(),
325-
rtf_generator = new RtfGenerator();
318+
const stdin = process.stdin;
319+
const stdout = process.stdout;
320+
const line_splitter = new LineSplitter();
321+
const paragraph_parser = new ParagraphParser();
322+
const unwrapper = new Unwrapper();
323+
const rtf_generator = new RtfGenerator();
326324

327325
stdin.setEncoding('utf-8');
328326
stdin.resume();

vcbuild.bat

+2-1
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,8 @@ goto jslint
342342
:jslint
343343
if not defined jslint goto exit
344344
echo running jslint
345-
%config%\node tools\eslint\bin\eslint.js benchmark lib src test tools\doc tools\eslint-rules --rulesdir tools\eslint-rules
345+
<<<<<<< d1e2db2a13ddc9fb2f8cd1400b52656910d7374f
346+
%config%\node tools\eslint\bin\eslint.js benchmark lib src test tools --rulesdir tools\eslint-rules
346347
goto exit
347348

348349
:create-msvs-files-failed

0 commit comments

Comments
 (0)