Skip to content

Commit 9ad951d

Browse files
authored
Updating stylint config (#1578)
* Updating stylint config * Remove needless disables
1 parent 386dfa0 commit 9ad951d

27 files changed

+39
-129
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
"prettier": "2.3.2",
6363
"semver": "7.3.5",
6464
"stylelint": "13.13.1",
65-
"stylelint-config-primer": "11.1.0",
65+
"stylelint-config-primer": "11.1.1",
6666
"stylelint-scss": "3.20.1",
6767
"table": "6.7.1"
6868
},

script/remove-needless-disables

Lines changed: 9 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,11 @@
1-
#!/usr/bin/env node
2-
const stylelint = require('stylelint')
3-
const {readFileSync, writeFileSync} = require('fs')
1+
#!/bin/bash
2+
set -e
43

5-
const files = process.argv.slice(2)
6-
if (files.length === 0) {
7-
files.push('src/**/*.scss')
8-
}
4+
disables=$(stylelint src --quiet --report-needless-disables -f unix | grep '^/')
95

10-
// we use an empty "marker" to delineate removed lines
11-
const REMOVED = `===REMOVED@${Date.now()}===`
12-
13-
stylelint.lint({files, reportNeedlessDisables: true}).then(({needlessDisables}) => {
14-
for (const {source, ranges} of needlessDisables) {
15-
const lines = readFileSync(source, 'utf8').split(/\n/)
16-
let offset = 0
17-
for (const {start, unusedRule} of ranges) {
18-
let index = start - 1
19-
let line = lines[index]
20-
let disable = parseDisableComment(line)
21-
if (!disable) {
22-
console.warn(`unable to parse disable on line ${start}: ${lines[start - 1]}; trying previous line...`)
23-
index--
24-
line = lines[index]
25-
disable = parseDisableComment(line)
26-
if (!disable) {
27-
console.warn(`unable to parse disable on line ${index + 1}: ${lines}`)
28-
continue
29-
}
30-
}
31-
32-
const rules = new Set(disable.rules)
33-
rules.delete(unusedRule)
34-
35-
if (rules.size === 0) {
36-
console.log(`- ${line}`)
37-
lines[index] = REMOVED
38-
} else {
39-
const replacement = line.replace(disable.content, `${disable.type} ${Array.from(rules).join(', ')}`)
40-
lines[index] = replacement
41-
console.log(`- ${line}`)
42-
console.log(`+ ${replacement}`)
43-
}
44-
}
45-
const output = lines.filter(line => line !== REMOVED).join('\n')
46-
writeFileSync(source, output, 'utf8')
47-
}
48-
})
49-
50-
function parseDisableComment(str) {
51-
const match = str.match(/(stylelint-disable((-next)?-line)?)\s+(.+)$/)
52-
return match
53-
? {
54-
content: match[0],
55-
type: match[1],
56-
rules: match[4].split(/,\s+/)
57-
}
58-
: false
59-
}
6+
while IFS= read -r line; do
7+
case $line in
8+
(*:*:*:*) file=${line%:*}
9+
esac
10+
echo $file
11+
done < <(echo "$disables")

src/alerts/flash.scss

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@
6969
border-color: var(--color-alert-info-border);
7070

7171
.octicon {
72-
// stylelint-disable-next-line primer/colors
7372
color: var(--color-alert-info-icon);
7473
}
7574
}
@@ -80,7 +79,6 @@
8079
border-color: var(--color-alert-warn-border);
8180

8281
.octicon {
83-
// stylelint-disable-next-line primer/colors
8482
color: var(--color-alert-warn-icon);
8583
}
8684
}
@@ -91,7 +89,6 @@
9189
border-color: var(--color-alert-error-border);
9290

9391
.octicon {
94-
// stylelint-disable-next-line primer/colors
9592
color: var(--color-alert-error-icon);
9693
}
9794
}
@@ -102,7 +99,6 @@
10299
border-color: var(--color-alert-success-border);
103100

104101
.octicon {
105-
// stylelint-disable-next-line primer/colors
106102
color: var(--color-alert-success-icon);
107103
}
108104
}

src/avatars/avatar-stack.scss

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
// stylelint-disable-next-line primer/spacing
3434
margin-right: -11px;
3535
background-color: var(--color-bg-canvas);
36-
border-right: $border-width $border-style var(--color-bg-canvas); // stylelint-disable-line primer/borders
36+
border-right: $border-width $border-style var(--color-bg-canvas);
3737
// stylelint-disable-next-line primer/borders
3838
border-radius: $border-radius-1;
3939
transition: margin 0.1s ease-in-out;
@@ -97,13 +97,11 @@
9797

9898
&::before {
9999
width: 17px;
100-
// stylelint-disable-next-line primer/colors
101100
background: var(--color-avatar-stack-fade-more);
102101
}
103102

104103
&::after {
105104
width: 14px;
106-
// stylelint-disable-next-line primer/colors
107105
background: var(--color-avatar-stack-fade);
108106
}
109107
}
@@ -123,7 +121,6 @@
123121
}
124122

125123
.avatar.avatar-more {
126-
// stylelint-disable-next-line primer/colors
127124
background: var(--color-avatar-stack-fade);
128125

129126
&::before {
@@ -141,6 +138,6 @@
141138
// stylelint-disable-next-line primer/spacing
142139
margin-left: -11px;
143140
border-right: 0;
144-
border-left: $border-width $border-style var(--color-bg-canvas); // stylelint-disable-line primer/borders
141+
border-left: $border-width $border-style var(--color-bg-canvas);
145142
}
146143
}

src/blankslate/blankslate.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
margin-right: $spacer-1;
2828
margin-bottom: $spacer-2;
2929
margin-left: $spacer-1;
30-
// stylelint-disable-next-line primer/colors
3130
color: var(--color-icon-secondary);
3231
}
3332

src/branch-name/branch-name.scss

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
.octicon {
1515
// stylelint-disable-next-line primer/spacing
1616
margin: 1px -2px 0 0;
17-
// stylelint-disable-next-line primer/colors
1817
color: var(--color-branch-name-icon);
1918
}
2019
}
@@ -26,7 +25,6 @@ a.branch-name {
2625
background-color: var(--color-branch-name-link-bg);
2726

2827
.octicon {
29-
// stylelint-disable-next-line primer/colors
3028
color: var(--color-branch-name-link-icon);
3129
}
3230
}

src/buttons/button.scss

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
cursor: default;
2929

3030
.octicon {
31-
// stylelint-disable-next-line primer/colors
3231
color: var(--color-icon-tertiary);
3332
}
3433
}
@@ -158,7 +157,6 @@
158157
}
159158

160159
.octicon {
161-
// stylelint-disable-next-line primer/colors
162160
color: var(--color-btn-primary-icon);
163161
}
164162
}
@@ -223,7 +221,6 @@
223221
color: var(--color-btn-danger-text);
224222

225223
.octicon {
226-
// stylelint-disable-next-line primer/colors
227224
color: var(--color-btn-danger-icon);
228225
}
229226

@@ -239,7 +236,6 @@
239236
}
240237

241238
.octicon {
242-
// stylelint-disable-next-line primer/colors
243239
color: var(--color-btn-danger-hover-icon);
244240
}
245241
}

src/dropdown/dropdown.scss

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@
5454
&::after {
5555
// stylelint-disable-next-line primer/borders
5656
border: 7px $border-style transparent;
57-
// stylelint-disable-next-line primer/borders
5857
border-bottom-color: var(--color-bg-overlay);
5958
}
6059

@@ -161,7 +160,6 @@
161160
right: -14px;
162161
left: auto;
163162
border-color: transparent;
164-
// stylelint-disable-next-line primer/borders
165163
border-left-color: var(--color-bg-overlay);
166164
}
167165
}
@@ -184,7 +182,6 @@
184182
top: 11px;
185183
left: -14px;
186184
border-color: transparent;
187-
// stylelint-disable-next-line primer/borders
188185
border-right-color: var(--color-bg-overlay);
189186
}
190187
}

src/forms/form-control.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,6 @@ textarea.form-control {
130130
// stylelint-disable-next-line primer/spacing
131131
padding: 2px $spacer-1;
132132
font-style: normal;
133-
// stylelint-disable-next-line primer/colors
134133
background: var(--color-attention-subtle, var(--color-auto-yellow-1));
135134
border-radius: $border-radius;
136135
}

src/forms/form-group.scss

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@
195195
background-image: linear-gradient(var(--color-input-tooltip-success-bg), var(--color-input-tooltip-success-bg));
196196
border-color: var(--color-input-tooltip-success-border);
197197

198-
&::after { border-bottom-color: var(--color-input-tooltip-success-bg); } // stylelint-disable-line primer/borders
198+
&::after { border-bottom-color: var(--color-input-tooltip-success-bg); }
199199
&::before { border-bottom-color: var(--color-input-tooltip-success-border); }
200200
}
201201
}
@@ -211,7 +211,7 @@
211211
background-image: linear-gradient(var(--color-input-tooltip-warning-bg), var(--color-input-tooltip-warning-bg));
212212
border-color: var(--color-input-tooltip-warning-border);
213213

214-
&::after { border-bottom-color: var(--color-input-tooltip-warning-bg); } // stylelint-disable-line primer/borders
214+
&::after { border-bottom-color: var(--color-input-tooltip-warning-bg); }
215215
&::before { border-bottom-color: var(--color-input-tooltip-warning-border); }
216216
}
217217
}
@@ -231,7 +231,7 @@
231231
background-image: linear-gradient(var(--color-input-tooltip-error-bg), var(--color-input-tooltip-error-bg));
232232
border-color: var(--color-input-tooltip-error-border);
233233

234-
&::after { border-bottom-color: var(--color-input-tooltip-error-bg); } // stylelint-disable-line primer/borders
234+
&::after { border-bottom-color: var(--color-input-tooltip-error-bg); }
235235
&::before { border-bottom-color: var(--color-input-tooltip-error-border); }
236236
}
237237
}

src/forms/form-validation.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,6 @@ p.explain {
345345
.octicon {
346346
// stylelint-disable-next-line primer/spacing
347347
margin-right: 5px;
348-
// stylelint-disable-next-line primer/colors
349348
color: var(--color-icon-tertiary);
350349
}
351350

src/header/header.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424

2525
.Header-link {
2626
font-weight: $font-weight-bold;
27-
// stylelint-disable-next-line primer/colors
2827
color: var(--color-header-logo);
2928
white-space: nowrap;
3029

src/layout/layout.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,6 @@
121121
width: 1px;
122122
// stylelint-disable-next-line primer/spacing
123123
margin-right: -1px;
124-
// stylelint-disable-next-line primer/colors
125124
background: var(--color-border-primary);
126125
}
127126

src/markdown/markdown-body.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@
7676
height: $em-spacer-3;
7777
padding: 0;
7878
margin: $spacer-4 0;
79-
// stylelint-disable-next-line primer/colors
8079
background-color: var(--color-border-primary);
8180
border: 0;
8281
}

src/navigation/menu.scss

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,15 +61,13 @@
6161
left: 0;
6262
width: 2px;
6363
content: "";
64-
// stylelint-disable-next-line primer/colors
6564
background-color: var(--color-menu-border-active);
6665
}
6766
}
6867

6968
.octicon {
7069
width: 16px;
7170
margin-right: $spacer-2;
72-
// stylelint-disable-next-line primer/colors
7371
color: var(--color-icon-tertiary);
7472
text-align: center;
7573
}
@@ -81,7 +79,6 @@
8179

8280
.menu-warning {
8381
float: right;
84-
// stylelint-disable-next-line primer/colors
8582
color: var(--color-icon-warning);
8683
}
8784

src/navigation/sidenav.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@
6565

6666
// Bar on the left
6767
&::before {
68-
// stylelint-disable-next-line primer/colors
6968
background-color: var(--color-sidenav-border-active);
7069
}
7170
}

src/navigation/subnav.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,6 @@
8080
top: 9px;
8181
left: 8px;
8282
display: block;
83-
// stylelint-disable-next-line primer/colors
8483
color: var(--color-icon-tertiary);
8584
text-align: center;
8685
pointer-events: none;

src/navigation/tabnav.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@
5353

5454
.octicon {
5555
margin-right: $spacer-1;
56-
// stylelint-disable-next-line primer/colors
5756
color: var(--color-icon-tertiary);
5857
}
5958

src/navigation/underline-nav.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@
6767

6868
.UnderlineNav-octicon {
6969
margin-right: $spacer-1;
70-
// stylelint-disable-next-line primer/colors
7170
color: var(--color-underlinenav-icon);
7271
}
7372

src/popover/popover.scss

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
margin-left: -$spacer-2;
3333
// stylelint-disable-next-line primer/borders
3434
border: 7px $border-style transparent;
35-
// stylelint-disable-next-line primer/borders
3635
border-bottom-color: var(--color-bg-overlay);
3736
}
3837

@@ -59,7 +58,6 @@
5958

6059
&::after {
6160
bottom: -14px;
62-
// stylelint-disable-next-line primer/borders
6361
border-top-color: var(--color-bg-overlay);
6462
}
6563
}
@@ -138,7 +136,6 @@
138136

139137
&::after {
140138
right: -14px;
141-
// stylelint-disable-next-line primer/borders
142139
border-left-color: var(--color-bg-overlay);
143140
}
144141
}
@@ -154,7 +151,6 @@
154151

155152
&::after {
156153
left: -14px;
157-
// stylelint-disable-next-line primer/borders
158154
border-right-color: var(--color-bg-overlay);
159155
}
160156
}

src/progress/progress.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
display: flex;
55
height: 8px;
66
overflow: hidden;
7-
// stylelint-disable-next-line primer/colors
87
background-color: var(--color-neutral-muted, var(--color-auto-gray-2));
98
border-radius: $border-radius;
109
outline: 1px solid transparent; // Support Firefox custom colors

src/select-menu/select-menu.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,6 @@ $SelectMenu-max-height: 480px !default;
126126
padding: $spacer-3;
127127
margin: -$spacer-3;
128128
line-height: 1;
129-
// stylelint-disable-next-line primer/colors
130129
color: var(--color-icon-tertiary);
131130
background-color: transparent;
132131
border: 0;

0 commit comments

Comments
 (0)