Skip to content

Commit 6196124

Browse files
committed
Update for changes in [email protected]
1 parent 77709f5 commit 6196124

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+94
-98
lines changed

doc/external.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ function rule(ast, file, setting) {
156156
visit(ast, 'code', function (node) {
157157
/* Emit a linting message, only for JS code though. */
158158
if (valid.indexOf(node.lang) !== -1 && node.lang !== pref) {
159-
file.warn(
159+
file.message(
160160
'JavaScript code blocks should use `' + pref + '` as a ' +
161161
'language flag, not `' + node.lang + '`',
162162
node

lib/index.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -151,22 +151,22 @@ function ruleFactory(id, rule, severity, options) {
151151
var fatal = severity === 2;
152152

153153
return function (ast, file, next) {
154-
var scope = file.namespace('remark-lint');
154+
var scope = file.data;
155155

156156
/* Track new messages per file. */
157-
scope.index = file.messages.length;
157+
scope.remarkLintIndex = file.messages.length;
158158

159159
fn(ast, file, options, function (err) {
160160
var messages = file.messages;
161161
var message;
162162

163-
while (scope.index < messages.length) {
164-
message = messages[scope.index];
163+
while (scope.remarkLintIndex < messages.length) {
164+
message = messages[scope.remarkLintIndex];
165165
message.ruleId = id;
166166
message.source = SOURCE;
167167
message.fatal = fatal;
168168

169-
scope.index++;
169+
scope.remarkLintIndex++;
170170
}
171171

172172
next(err);

lib/rules/blockquote-indentation.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ function blockquoteIndentation(ast, file, preferred) {
9191
diff = Math.abs(diff);
9292

9393
if (diff !== 0) {
94-
file.warn(
94+
file.message(
9595
word + ' ' + diff + ' ' + plural('space', diff) +
9696
' between blockquote and content',
9797
position.start(node.children[0])

lib/rules/checkbox-character-style.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ function checkboxCharacterStyle(ast, file, preferred) {
171171
} else if (character !== style) {
172172
stop = initial + value.length;
173173

174-
file.warn(
174+
file.message(
175175
type.charAt(0).toUpperCase() + type.slice(1) +
176176
' checkboxes should use `' + style + '` as a marker',
177177
{

lib/rules/checkbox-content-indent.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ function checkboxContentIndent(ast, file) {
8282
return;
8383
}
8484

85-
file.warn('Checkboxes should be followed by a single character', {
85+
file.message('Checkboxes should be followed by a single character', {
8686
start: location.toPosition(final - value.length + 1),
8787
end: location.toPosition(final)
8888
});

lib/rules/code-block-style.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@ function codeBlockStyle(ast, file, preferred) {
125125

126126
if (STYLES[preferred] !== true) {
127127
file.fail('Invalid code block style `' + preferred + '`: use either `\'consistent\'`, `\'fenced\'`, or `\'indented\'`');
128-
return;
129128
}
130129

131130
visit(ast, 'code', function (node) {
@@ -138,7 +137,7 @@ function codeBlockStyle(ast, file, preferred) {
138137
if (!preferred) {
139138
preferred = current;
140139
} else if (preferred !== current) {
141-
file.warn('Code blocks should be ' + preferred, node);
140+
file.message('Code blocks should be ' + preferred, node);
142141
}
143142
});
144143

lib/rules/definition-case.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ function definitionCase(ast, file) {
6464
label = contents.slice(start, end).match(LABEL)[1];
6565

6666
if (label !== label.toLowerCase()) {
67-
file.warn('Do not use upper-case characters in definition labels', node);
67+
file.message('Do not use upper-case characters in definition labels', node);
6868
}
6969
}
7070
}

lib/rules/definition-spacing.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ function definitionSpacing(ast, file) {
6464
label = contents.slice(start, end).match(LABEL)[1];
6565

6666
if (/[ \t\n]{2,}/.test(label)) {
67-
file.warn('Do not use consecutive white-space in definition labels', node);
67+
file.message('Do not use consecutive white-space in definition labels', node);
6868
}
6969
}
7070
}

lib/rules/emphasis-marker.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,6 @@ function emphasisMarker(ast, file, preferred) {
8484

8585
if (MARKERS[preferred] !== true) {
8686
file.fail('Invalid emphasis marker `' + preferred + '`: use either `\'consistent\'`, `\'*\'`, or `\'_\'`');
87-
return;
8887
}
8988

9089
visit(ast, 'emphasis', function (node) {
@@ -96,7 +95,7 @@ function emphasisMarker(ast, file, preferred) {
9695

9796
if (preferred) {
9897
if (marker !== preferred) {
99-
file.warn('Emphasis should use `' + preferred + '` as a marker', node);
98+
file.message('Emphasis should use `' + preferred + '` as a marker', node);
10099
}
101100
} else {
102101
preferred = marker;

lib/rules/fenced-code-flag.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,10 @@ function fencedCodeFlag(ast, file, preferred) {
110110

111111
if (node.lang) {
112112
if (flags.length && flags.indexOf(node.lang) === -1) {
113-
file.warn('Invalid code-language flag', node);
113+
file.message('Invalid code-language flag', node);
114114
}
115115
} else if (/^ {0,3}([~`])\1{2,}/.test(value) && !allowEmpty) {
116-
file.warn('Missing code-language flag', node);
116+
file.message('Missing code-language flag', node);
117117
}
118118
});
119119
}

lib/rules/fenced-code-marker.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@ function fencedCodeMarker(ast, file, preferred) {
8888

8989
if (MARKERS[preferred] !== true) {
9090
file.fail('Invalid fenced code marker `' + preferred + '`: use either `\'consistent\'`, `` \'`\' ``, or `\'~\'`');
91-
return;
9291
}
9392

9493
visit(ast, 'code', function (node) {
@@ -107,7 +106,7 @@ function fencedCodeMarker(ast, file, preferred) {
107106

108107
if (preferred) {
109108
if (marker !== preferred) {
110-
file.warn('Fenced code should use ' + preferred + ' as a marker', node);
109+
file.message('Fenced code should use ' + preferred + ' as a marker', node);
111110
}
112111
} else {
113112
preferred = marker;

lib/rules/file-extension.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,16 @@ module.exports = fileExtension;
3737
* extension.
3838
*/
3939
function fileExtension(ast, file, preferred) {
40-
var ext = file.extension;
40+
var ext = file.extname;
41+
42+
if (ext) {
43+
ext = ext.slice(1);
44+
}
4145

4246
preferred = typeof preferred === 'string' ? preferred : 'md';
4347

44-
if (ext !== '' && ext !== preferred) {
45-
file.warn('Invalid extension: use `' + preferred + '`');
48+
if (ext && ext !== preferred) {
49+
console.log('e: ', [ext, preferred, file.extname], file);
50+
file.message('Invalid extension: use `' + preferred + '`');
4651
}
4752
}

lib/rules/final-definition.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ function finalDefinition(ast, file) {
5757

5858
if (node.type === 'definition') {
5959
if (last !== null && last > line) {
60-
file.warn('Move definitions to the end of the file (after the node at line `' + last + '`)', node);
60+
file.message('Move definitions to the end of the file (after the node at line `' + last + '`)', node);
6161
}
6262
} else if (last === null) {
6363
last = line;

lib/rules/final-newline.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ function finalNewline(ast, file) {
2727
var last = contents.length - 1;
2828

2929
if (last > -1 && contents.charAt(last) !== '\n') {
30-
file.warn('Missing newline character at end of file');
30+
file.message('Missing newline character at end of file');
3131
}
3232
}

lib/rules/first-heading-level.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ function firstHeadingLevel(ast, file, preferred) {
7070
}
7171

7272
if (node.depth !== style) {
73-
file.warn('First heading level should be `' + style + '`', node);
73+
file.message('First heading level should be `' + style + '`', node);
7474
}
7575

7676
return false;

lib/rules/hard-break-spaces.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ function hardBreakSpaces(ast, file) {
5858
value = contents.slice(start, end).split('\n', 1)[0].replace(/\r$/, '');
5959

6060
if (value.length > 2) {
61-
file.warn('Use two spaces for hard line breaks', node);
61+
file.message('Use two spaces for hard line breaks', node);
6262
}
6363
});
6464
}

lib/rules/heading-increment.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ function headingIncrement(ast, file) {
5252
}
5353

5454
if (prev && depth > prev + 1) {
55-
file.warn('Heading levels should increment by one level at a time', node);
55+
file.message('Heading levels should increment by one level at a time', node);
5656
}
5757

5858
prev = depth;

lib/rules/heading-style.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ function headingStyle(ast, file, preferred) {
9898

9999
if (preferred) {
100100
if (style(node, preferred) !== preferred) {
101-
file.warn('Headings should use ' + preferred, node);
101+
file.message('Headings should use ' + preferred, node);
102102
}
103103
} else {
104104
preferred = style(node, preferred);

lib/rules/link-title-style.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,6 @@ function linkTitleStyle(ast, file, preferred) {
103103

104104
if (MARKERS[preferred] !== true) {
105105
file.fail('Invalid link title style marker `' + preferred + '`: use either `\'consistent\'`, `\'"\'`, `\'\\\'\'`, or `\'()\'`');
106-
return;
107106
}
108107

109108
visit(ast, 'link', validate);
@@ -149,7 +148,7 @@ function linkTitleStyle(ast, file, preferred) {
149148
preferred = character;
150149
} else if (preferred !== character) {
151150
pos = location.toPosition(last + 1);
152-
file.warn('Titles should use `' + (preferred === ')' ? '()' : preferred) + '` as a quote', pos);
151+
file.message('Titles should use `' + (preferred === ')' ? '()' : preferred) + '` as a quote', pos);
153152
}
154153
}
155154
}

lib/rules/list-item-bullet-indent.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ function listItemBulletIndent(ast, file) {
6666
if (indent !== 0) {
6767
initial = start(head);
6868

69-
file.warn('Incorrect indentation before bullet: remove ' + indent + ' ' + plural('space', indent), {
69+
file.message('Incorrect indentation before bullet: remove ' + indent + ' ' + plural('space', indent), {
7070
line: initial.line,
7171
column: initial.column - indent
7272
});

lib/rules/list-item-content-indent.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ function listItemContentIndent(ast, file) {
8787

8888
diff = Math.abs(diff);
8989

90-
file.warn(
90+
file.message(
9191
'Don’t use mixed indentation for children, ' + word +
9292
' ' + diff + ' ' + plural('space', diff),
9393
{

lib/rules/list-item-indent.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,6 @@ function listItemIndent(ast, file, preferred) {
105105

106106
if (STYLES[preferred] !== true) {
107107
file.fail('Invalid list-item indent style `' + preferred + '`: use either `\'tab-size\'`, `\'space\'`, or `\'mixed\'`');
108-
return;
109108
}
110109

111110
visit(ast, 'list', function (node) {
@@ -148,7 +147,7 @@ function listItemIndent(ast, file, preferred) {
148147

149148
diff = Math.abs(diff);
150149

151-
file.warn(
150+
file.message(
152151
'Incorrect list-item indent: ' + word +
153152
' ' + diff + ' ' + plural('space', diff),
154153
start(head)

lib/rules/list-item-spacing.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,12 +111,12 @@ function listItemSpacing(ast, file) {
111111
* match the list's state. */
112112
if (isTight !== isTightList) {
113113
if (type === 'loose') {
114-
file.warn('Missing new line after list item', {
114+
file.message('Missing new line after list item', {
115115
start: end(item),
116116
end: start(next)
117117
});
118118
} else {
119-
file.warn('Extraneous new line after list item', {
119+
file.message('Extraneous new line after list item', {
120120
start: end(item),
121121
end: start(next)
122122
});

lib/rules/maximum-heading-length.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ function maximumHeadingLength(ast, file, preferred) {
5353
}
5454

5555
if (toString(node).length > preferred) {
56-
file.warn('Use headings shorter than `' + preferred + '`', node);
56+
file.message('Use headings shorter than `' + preferred + '`', node);
5757
}
5858
});
5959
}

lib/rules/maximum-line-length.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ function maximumLineLength(ast, file, preferred) {
108108
lineLength = matrix[index].length;
109109

110110
if (lineLength > style) {
111-
file.warn('Line must be at most ' + style + ' characters', {
111+
file.message('Line must be at most ' + style + ' characters', {
112112
line: index + 1,
113113
column: lineLength + 1
114114
});

lib/rules/no-auto-link-without-protocol.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ function noAutoLinkWithoutProtocol(ast, file) {
6464
}
6565

6666
if (initial === head - 1 && final === tail + 1 && !hasProtocol(node)) {
67-
file.warn('All automatic links must start with a protocol', node);
67+
file.message('All automatic links must start with a protocol', node);
6868
}
6969
});
7070
}

lib/rules/no-blockquote-without-caret.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ function noBlockquoteWithoutCaret(ast, file) {
7474
}
7575
}
7676

77-
file.warn('Missing caret in blockquote', {
77+
file.message('Missing caret in blockquote', {
7878
line: line,
7979
column: column
8080
});

lib/rules/no-consecutive-blank-lines.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ function noConsecutiveBlankLines(ast, file) {
118118
diff = Math.abs(diff) - max;
119119

120120
if (diff > 0) {
121-
file.warn('Remove ' + diff + ' ' + plural('line', diff) + ' ' + word + ' node', end);
121+
file.message('Remove ' + diff + ' ' + plural('line', diff) + ' ' + word + ' node', end);
122122
}
123123
}
124124
}

lib/rules/no-duplicate-definitions.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ function noDuplicateDefinitions(ast, file) {
6262
if (duplicate && duplicate.type) {
6363
pos = position.start(duplicate);
6464

65-
file.warn(
65+
file.message(
6666
'Do not use definitions with the same identifier (' +
6767
pos.line + ':' + pos.column + ')',
6868
node

lib/rules/no-duplicate-headings.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ function noDuplicateHeadings(ast, file) {
6161
if (duplicate && duplicate.type === 'heading') {
6262
pos = position.start(duplicate);
6363

64-
file.warn(
64+
file.message(
6565
'Do not use headings with similar content (' +
6666
pos.line + ':' + pos.column + ')',
6767
node

lib/rules/no-emphasis-as-heading.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ function noEmphasisAsHeading(ast, file) {
5858
children.length === 1 &&
5959
(child.type === 'emphasis' || child.type === 'strong')
6060
) {
61-
file.warn('Don’t use emphasis to introduce a section, use a heading', node);
61+
file.message('Don’t use emphasis to introduce a section, use a heading', node);
6262
}
6363
});
6464
}

lib/rules/no-file-name-articles.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@ module.exports = noFileNameArticles;
3333
* @param {File} file - Virtual file.
3434
*/
3535
function noFileNameArticles(ast, file) {
36-
var match = file.filename && file.filename.match(/^(the|an?)\b/i);
36+
var match = file.stem && file.stem.match(/^(the|an?)\b/i);
3737

3838
if (match) {
39-
file.warn('Do not start file names with `' + match[0] + '`');
39+
file.message('Do not start file names with `' + match[0] + '`');
4040
}
4141
}

lib/rules/no-file-name-consecutive-dashes.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ module.exports = noFileNameConsecutiveDashes;
2525
* @param {File} file - Virtual file.
2626
*/
2727
function noFileNameConsecutiveDashes(ast, file) {
28-
if (file.filename && /-{2,}/.test(file.filename)) {
29-
file.warn('Do not use consecutive dashes in a file name');
28+
if (file.stem && /-{2,}/.test(file.stem)) {
29+
file.message('Do not use consecutive dashes in a file name');
3030
}
3131
}

lib/rules/no-file-name-irregular-characters.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@ function noFileNameIrregularCharacters(ast, file, preferred) {
5656
expression = new RegExp('[^' + expression + ']');
5757
}
5858

59-
match = file.filename && file.filename.match(expression);
59+
match = file.stem && file.stem.match(expression);
6060

6161
if (match) {
62-
file.warn('Do not use `' + match[0] + '` in a file name');
62+
file.message('Do not use `' + match[0] + '` in a file name');
6363
}
6464
}

0 commit comments

Comments
 (0)