jekyll 4.2.0 → 4.2.1

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.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +350 -347
  3. data/LICENSE +21 -21
  4. data/README.markdown +86 -86
  5. data/exe/jekyll +57 -57
  6. data/lib/blank_template/_config.yml +3 -3
  7. data/lib/blank_template/_layouts/default.html +12 -12
  8. data/lib/blank_template/_sass/main.scss +9 -9
  9. data/lib/blank_template/assets/css/main.scss +4 -4
  10. data/lib/blank_template/index.md +8 -8
  11. data/lib/jekyll/cache.rb +190 -190
  12. data/lib/jekyll/cleaner.rb +111 -111
  13. data/lib/jekyll/collection.rb +309 -309
  14. data/lib/jekyll/command.rb +105 -105
  15. data/lib/jekyll/commands/build.rb +93 -93
  16. data/lib/jekyll/commands/clean.rb +45 -45
  17. data/lib/jekyll/commands/doctor.rb +177 -177
  18. data/lib/jekyll/commands/help.rb +34 -34
  19. data/lib/jekyll/commands/new.rb +169 -169
  20. data/lib/jekyll/commands/new_theme.rb +40 -40
  21. data/lib/jekyll/commands/serve/live_reload_reactor.rb +122 -122
  22. data/lib/jekyll/commands/serve/livereload_assets/livereload.js +1183 -1183
  23. data/lib/jekyll/commands/serve/servlet.rb +202 -202
  24. data/lib/jekyll/commands/serve/websockets.rb +81 -81
  25. data/lib/jekyll/commands/serve.rb +362 -365
  26. data/lib/jekyll/configuration.rb +313 -313
  27. data/lib/jekyll/converter.rb +54 -54
  28. data/lib/jekyll/converters/identity.rb +41 -41
  29. data/lib/jekyll/converters/markdown/kramdown_parser.rb +199 -199
  30. data/lib/jekyll/converters/markdown.rb +113 -113
  31. data/lib/jekyll/converters/smartypants.rb +70 -70
  32. data/lib/jekyll/convertible.rb +257 -260
  33. data/lib/jekyll/deprecator.rb +50 -50
  34. data/lib/jekyll/document.rb +544 -544
  35. data/lib/jekyll/drops/collection_drop.rb +20 -20
  36. data/lib/jekyll/drops/document_drop.rb +70 -70
  37. data/lib/jekyll/drops/drop.rb +293 -293
  38. data/lib/jekyll/drops/excerpt_drop.rb +19 -19
  39. data/lib/jekyll/drops/jekyll_drop.rb +32 -32
  40. data/lib/jekyll/drops/site_drop.rb +66 -66
  41. data/lib/jekyll/drops/static_file_drop.rb +14 -14
  42. data/lib/jekyll/drops/unified_payload_drop.rb +26 -26
  43. data/lib/jekyll/drops/url_drop.rb +140 -140
  44. data/lib/jekyll/entry_filter.rb +121 -121
  45. data/lib/jekyll/errors.rb +20 -20
  46. data/lib/jekyll/excerpt.rb +201 -201
  47. data/lib/jekyll/external.rb +79 -79
  48. data/lib/jekyll/filters/date_filters.rb +110 -110
  49. data/lib/jekyll/filters/grouping_filters.rb +64 -64
  50. data/lib/jekyll/filters/url_filters.rb +98 -98
  51. data/lib/jekyll/filters.rb +535 -535
  52. data/lib/jekyll/frontmatter_defaults.rb +240 -240
  53. data/lib/jekyll/generator.rb +5 -5
  54. data/lib/jekyll/hooks.rb +107 -107
  55. data/lib/jekyll/inclusion.rb +32 -32
  56. data/lib/jekyll/layout.rb +67 -67
  57. data/lib/jekyll/liquid_extensions.rb +22 -22
  58. data/lib/jekyll/liquid_renderer/file.rb +77 -77
  59. data/lib/jekyll/liquid_renderer/table.rb +55 -55
  60. data/lib/jekyll/liquid_renderer.rb +80 -80
  61. data/lib/jekyll/log_adapter.rb +151 -151
  62. data/lib/jekyll/mime.types +866 -866
  63. data/lib/jekyll/page.rb +217 -217
  64. data/lib/jekyll/page_excerpt.rb +25 -25
  65. data/lib/jekyll/page_without_a_file.rb +14 -14
  66. data/lib/jekyll/path_manager.rb +74 -74
  67. data/lib/jekyll/plugin.rb +92 -92
  68. data/lib/jekyll/plugin_manager.rb +115 -115
  69. data/lib/jekyll/profiler.rb +58 -58
  70. data/lib/jekyll/publisher.rb +23 -23
  71. data/lib/jekyll/reader.rb +192 -192
  72. data/lib/jekyll/readers/collection_reader.rb +23 -23
  73. data/lib/jekyll/readers/data_reader.rb +79 -79
  74. data/lib/jekyll/readers/layout_reader.rb +62 -62
  75. data/lib/jekyll/readers/page_reader.rb +25 -25
  76. data/lib/jekyll/readers/post_reader.rb +85 -85
  77. data/lib/jekyll/readers/static_file_reader.rb +25 -25
  78. data/lib/jekyll/readers/theme_assets_reader.rb +52 -52
  79. data/lib/jekyll/regenerator.rb +195 -195
  80. data/lib/jekyll/related_posts.rb +52 -52
  81. data/lib/jekyll/renderer.rb +265 -265
  82. data/lib/jekyll/site.rb +551 -551
  83. data/lib/jekyll/static_file.rb +208 -208
  84. data/lib/jekyll/stevenson.rb +60 -60
  85. data/lib/jekyll/tags/highlight.rb +110 -110
  86. data/lib/jekyll/tags/include.rb +275 -270
  87. data/lib/jekyll/tags/link.rb +42 -42
  88. data/lib/jekyll/tags/post_url.rb +106 -106
  89. data/lib/jekyll/theme.rb +86 -86
  90. data/lib/jekyll/theme_builder.rb +121 -121
  91. data/lib/jekyll/url.rb +167 -167
  92. data/lib/jekyll/utils/ansi.rb +57 -57
  93. data/lib/jekyll/utils/exec.rb +26 -26
  94. data/lib/jekyll/utils/internet.rb +37 -37
  95. data/lib/jekyll/utils/platforms.rb +67 -67
  96. data/lib/jekyll/utils/thread_event.rb +31 -31
  97. data/lib/jekyll/utils/win_tz.rb +75 -75
  98. data/lib/jekyll/utils.rb +367 -367
  99. data/lib/jekyll/version.rb +5 -5
  100. data/lib/jekyll.rb +195 -195
  101. data/lib/site_template/.gitignore +5 -5
  102. data/lib/site_template/404.html +25 -25
  103. data/lib/site_template/_config.yml +55 -55
  104. data/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb +29 -29
  105. data/lib/site_template/about.markdown +18 -18
  106. data/lib/site_template/index.markdown +6 -6
  107. data/lib/theme_template/CODE_OF_CONDUCT.md.erb +74 -74
  108. data/lib/theme_template/Gemfile +4 -4
  109. data/lib/theme_template/LICENSE.txt.erb +21 -21
  110. data/lib/theme_template/README.md.erb +52 -52
  111. data/lib/theme_template/_layouts/default.html +1 -1
  112. data/lib/theme_template/_layouts/page.html +5 -5
  113. data/lib/theme_template/_layouts/post.html +5 -5
  114. data/lib/theme_template/example/_config.yml.erb +1 -1
  115. data/lib/theme_template/example/_post.md +12 -12
  116. data/lib/theme_template/example/index.html +14 -14
  117. data/lib/theme_template/example/style.scss +7 -7
  118. data/lib/theme_template/gitignore.erb +6 -6
  119. data/lib/theme_template/theme.gemspec.erb +16 -16
  120. data/rubocop/jekyll/assert_equal_literal_actual.rb +149 -149
  121. data/rubocop/jekyll/no_p_allowed.rb +23 -23
  122. data/rubocop/jekyll/no_puts_allowed.rb +23 -23
  123. data/rubocop/jekyll.rb +5 -5
  124. metadata +3 -3
data/.rubocop.yml CHANGED
@@ -1,347 +1,350 @@
1
- ---
2
- inherit_from: .rubocop_todo.yml
3
-
4
- require:
5
- - rubocop-performance
6
- - ./rubocop/jekyll
7
-
8
- Jekyll/NoPutsAllowed:
9
- Exclude:
10
- - rake/*.rake
11
-
12
- AllCops:
13
- TargetRubyVersion: 2.4
14
- Include:
15
- - lib/**/*.rb
16
- - test/**/*.rb
17
- Exclude:
18
- - bin/**/*
19
- - exe/**/*
20
- - benchmark/**/*
21
- - script/**/*
22
- - vendor/**/*
23
- - tmp/**/*
24
-
25
- Layout/BeginEndAlignment:
26
- Enabled: true
27
- Layout/EmptyComment:
28
- Enabled: false
29
- Layout/EmptyLinesAroundAttributeAccessor:
30
- Enabled: true
31
- Layout/EndAlignment:
32
- Severity: error
33
- Layout/HashAlignment:
34
- EnforcedHashRocketStyle: table
35
- Layout/IndentationWidth:
36
- Severity: error
37
- Layout/FirstArrayElementIndentation:
38
- EnforcedStyle: consistent
39
- Layout/FirstHashElementIndentation:
40
- EnforcedStyle: consistent
41
- Layout/LineLength:
42
- Exclude:
43
- - !ruby/regexp /features\/.*.rb/
44
- - Rakefile
45
- - rake/*.rake
46
- - Gemfile
47
- Max: 100
48
- Severity: warning
49
- Layout/MultilineMethodCallIndentation:
50
- EnforcedStyle: indented
51
- Layout/MultilineOperationIndentation:
52
- EnforcedStyle: indented
53
- Layout/SpaceAroundMethodCallOperator:
54
- Enabled: true
55
- Layout/SpaceInsideHashLiteralBraces:
56
- Enabled: true
57
- Exclude:
58
- - test/**/*.rb
59
-
60
- Lint/BinaryOperatorWithIdenticalOperands:
61
- Enabled: true
62
- Lint/ConstantDefinitionInBlock:
63
- Enabled: true
64
- Exclude:
65
- - test/**/*.rb
66
- Lint/DeprecatedOpenSSLConstant:
67
- Enabled: true
68
- Lint/DuplicateBranch:
69
- Enabled: true
70
- Lint/DuplicateElsifCondition:
71
- Enabled: true
72
- Lint/DuplicateRegexpCharacterClassElement:
73
- Enabled: true
74
- Lint/DuplicateRescueException:
75
- Enabled: true
76
- Lint/DuplicateRequire:
77
- Enabled: true
78
- Lint/EmptyBlock:
79
- Enabled: true
80
- Lint/EmptyClass:
81
- Enabled: true
82
- Lint/EmptyConditionalBody:
83
- Enabled: true
84
- Lint/EmptyFile:
85
- Enabled: true
86
- Lint/FloatComparison:
87
- Enabled: true
88
- Lint/HashCompareByIdentity:
89
- Enabled: true
90
- Lint/IdentityComparison:
91
- Enabled: true
92
- Lint/MissingSuper:
93
- Enabled: false
94
- Lint/MixedRegexpCaptureTypes:
95
- Enabled: false
96
- Lint/NestedPercentLiteral:
97
- Exclude:
98
- - test/test_site.rb
99
- Lint/NoReturnInBeginEndBlocks:
100
- Enabled: true
101
- Lint/OutOfRangeRegexpRef:
102
- Enabled: true
103
- Lint/RaiseException:
104
- Enabled: true
105
- Lint/RedundantSafeNavigation:
106
- Enabled: true
107
- Lint/SelfAssignment:
108
- Enabled: true
109
- Lint/StructNewOverride:
110
- Enabled: true
111
- Lint/ToEnumArguments:
112
- Enabled: false
113
- Lint/TopLevelReturnWithArgument:
114
- Enabled: true
115
- Lint/TrailingCommaInAttributeDeclaration:
116
- Enabled: true
117
- Lint/UnmodifiedReduceAccumulator:
118
- Enabled: true
119
- Lint/UnreachableCode:
120
- Severity: error
121
- Lint/UnreachableLoop:
122
- Enabled: true
123
- Lint/UselessMethodDefinition:
124
- Enabled: true
125
- Lint/UselessTimes:
126
- Enabled: true
127
- Lint/Void:
128
- Exclude:
129
- - lib/jekyll/site.rb
130
-
131
- Metrics/AbcSize:
132
- Max: 23
133
- Metrics/BlockLength:
134
- Exclude:
135
- - test/**/*.rb
136
- - lib/jekyll/configuration.rb
137
- - rake/*.rake
138
- Metrics/ClassLength:
139
- Exclude:
140
- - !ruby/regexp /features\/.*.rb$/
141
- - !ruby/regexp /test\/.*.rb$/
142
- - lib/jekyll/document.rb
143
- - lib/jekyll/site.rb
144
- - lib/jekyll/commands/serve.rb
145
- - lib/jekyll/configuration.rb
146
- Max: 240
147
- Metrics/CyclomaticComplexity:
148
- Exclude:
149
- - lib/jekyll/utils.rb
150
- - lib/jekyll/commands/serve.rb
151
- Max: 11
152
- Metrics/MethodLength:
153
- CountComments: false
154
- Max: 20
155
- Severity: error
156
- Metrics/ModuleLength:
157
- Max: 240
158
- Exclude:
159
- - lib/jekyll/filters.rb
160
- Metrics/ParameterLists:
161
- Max: 4
162
- Metrics/PerceivedComplexity:
163
- Max: 13
164
-
165
- Naming/FileName:
166
- Enabled: false
167
- Naming/HeredocDelimiterNaming:
168
- Exclude:
169
- - test/**/*.rb
170
- Naming/MemoizedInstanceVariableName:
171
- Exclude:
172
- - lib/jekyll/convertible.rb
173
- - lib/jekyll/drops/site_drop.rb
174
- - lib/jekyll/drops/unified_payload_drop.rb
175
- - lib/jekyll/page_without_a_file.rb
176
-
177
- Performance/AncestorsInclude:
178
- Enabled: false
179
- Performance/ArraySemiInfiniteRangeSlice:
180
- Enabled: true
181
- Performance/BigDecimalWithNumericArgument:
182
- Enabled: true
183
- Performance/BlockGivenWithExplicitBlock:
184
- Enabled: true
185
- Performance/ChainArrayAllocation:
186
- Enabled: true
187
- Performance/CollectionLiteralInLoop:
188
- Enabled: true
189
- Performance/ConstantRegexp:
190
- Enabled: true
191
- Performance/MethodObjectAsBlock:
192
- Enabled: true
193
- Performance/RedundantSortBlock:
194
- Enabled: true
195
- Performance/RedundantStringChars:
196
- Enabled: true
197
- Performance/ReverseFirst:
198
- Enabled: true
199
- Performance/SortReverse:
200
- Enabled: false
201
- Performance/Squeeze:
202
- Enabled: true
203
- Performance/StringInclude:
204
- Enabled: true
205
- Exclude:
206
- - lib/jekyll/utils/platforms.rb
207
- Performance/Sum:
208
- Enabled: true
209
-
210
- Security/MarshalLoad:
211
- Exclude:
212
- - !ruby/regexp /test\/.*.rb$/
213
- - lib/jekyll/regenerator.rb
214
- Security/YAMLLoad:
215
- Exclude:
216
- - !ruby/regexp /features\/.*.rb/
217
- - !ruby/regexp /test\/.*.rb$/
218
-
219
- Style/ArgumentsForwarding:
220
- Enabled: false
221
- Style/ArrayCoercion:
222
- Enabled: true
223
- Style/AccessModifierDeclarations:
224
- Enabled: false
225
- Style/AccessorGrouping:
226
- Enabled: false
227
- Style/Alias:
228
- EnforcedStyle: prefer_alias_method
229
- Style/AndOr:
230
- Severity: error
231
- Style/BisectedAttrAccessor:
232
- Enabled: true
233
- Style/CaseLikeIf:
234
- Enabled: true
235
- Style/ClassAndModuleChildren:
236
- Exclude:
237
- - test/**/*.rb
238
- Style/ClassEqualityComparison:
239
- Enabled: true
240
- Style/CollectionCompact:
241
- Enabled: true
242
- Style/CombinableLoops:
243
- Enabled: true
244
- Style/Documentation:
245
- Enabled: false
246
- Style/DocumentDynamicEvalDefinition:
247
- Enabled: true
248
- Style/DoubleNegation:
249
- Enabled: false
250
- Style/ExponentialNotation:
251
- Enabled: true
252
- Style/ExplicitBlockArgument:
253
- Enabled: false
254
- Style/FormatStringToken:
255
- Exclude:
256
- - lib/jekyll/utils/ansi.rb
257
- - lib/jekyll/liquid_renderer/table.rb
258
- - lib/jekyll/profiler.rb
259
- Style/FrozenStringLiteralComment:
260
- EnforcedStyle: always
261
- Style/GlobalStdStream:
262
- Enabled: true
263
- Style/GuardClause:
264
- Enabled: false
265
- Style/HashAsLastArrayItem:
266
- Enabled: true
267
- Style/HashEachMethods:
268
- Enabled: true
269
- Style/HashLikeCase:
270
- Enabled: true
271
- Style/HashSyntax:
272
- EnforcedStyle: hash_rockets
273
- Severity: error
274
- Style/HashTransformKeys:
275
- Enabled: false
276
- Style/HashTransformValues:
277
- Enabled: true
278
- Style/KeywordParametersOrder:
279
- Enabled: true
280
- Style/MixinUsage:
281
- Exclude:
282
- - test/helper.rb
283
- Style/ModuleFunction:
284
- Enabled: false
285
- Style/MultilineTernaryOperator:
286
- Severity: error
287
- Style/NegatedIfElseCondition:
288
- Enabled: true
289
- Style/NilLambda:
290
- Enabled: true
291
- Style/OptionalBooleanParameter:
292
- Enabled: true
293
- Style/PercentLiteralDelimiters:
294
- PreferredDelimiters:
295
- "%q": "{}"
296
- "%Q": "{}"
297
- "%r": "!!"
298
- "%s": "()"
299
- "%w": "()"
300
- "%W": "()"
301
- "%x": "()"
302
- Style/RedundantArgument:
303
- Enabled: true
304
- Style/RedundantAssignment:
305
- Enabled: true
306
- Style/RedundantFetchBlock:
307
- Enabled: false
308
- Style/RedundantFileExtensionInRequire:
309
- Enabled: true
310
- Style/RedundantRegexpCharacterClass:
311
- Enabled: true
312
- Style/RedundantRegexpEscape:
313
- Enabled: true
314
- Style/RedundantSelfAssignment:
315
- Enabled: true
316
- Style/RegexpLiteral:
317
- EnforcedStyle: percent_r
318
- Style/RescueModifier:
319
- Enabled: false
320
- Style/SafeNavigation:
321
- Exclude:
322
- - lib/jekyll/document.rb
323
- Style/SignalException:
324
- EnforcedStyle: only_raise
325
- Style/SingleArgumentDig:
326
- Enabled: true
327
- Style/SlicingWithRange:
328
- Enabled: false
329
- Style/SoleNestedConditional:
330
- Enabled: true
331
- Style/StringLiterals:
332
- EnforcedStyle: double_quotes
333
- Style/StringConcatenation:
334
- Enabled: true
335
- Exclude:
336
- - lib/jekyll/commands/*.rb
337
- - test/**/*.rb
338
- Style/StringLiteralsInInterpolation:
339
- EnforcedStyle: double_quotes
340
- Style/SwapValues:
341
- Enabled: true
342
- Style/SymbolArray:
343
- EnforcedStyle: brackets
344
- Style/TrailingCommaInArrayLiteral:
345
- EnforcedStyleForMultiline: consistent_comma
346
- Style/TrailingCommaInHashLiteral:
347
- EnforcedStyleForMultiline: consistent_comma
1
+ ---
2
+ inherit_from: .rubocop_todo.yml
3
+
4
+ require:
5
+ - rubocop-performance
6
+ - ./rubocop/jekyll
7
+
8
+ Jekyll/NoPutsAllowed:
9
+ Exclude:
10
+ - rake/*.rake
11
+
12
+ AllCops:
13
+ SuggestExtensions: false
14
+ TargetRubyVersion: 2.4
15
+ Include:
16
+ - lib/**/*.rb
17
+ - test/**/*.rb
18
+ Exclude:
19
+ - bin/**/*
20
+ - exe/**/*
21
+ - benchmark/**/*
22
+ - script/**/*
23
+ - vendor/**/*
24
+ - tmp/**/*
25
+
26
+ Layout/BeginEndAlignment:
27
+ Enabled: true
28
+ Layout/EmptyComment:
29
+ Enabled: false
30
+ Layout/EmptyLinesAroundAttributeAccessor:
31
+ Enabled: true
32
+ Layout/EndAlignment:
33
+ Severity: error
34
+ Layout/HashAlignment:
35
+ EnforcedHashRocketStyle: table
36
+ Layout/IndentationWidth:
37
+ Severity: error
38
+ Layout/FirstArrayElementIndentation:
39
+ EnforcedStyle: consistent
40
+ Layout/FirstHashElementIndentation:
41
+ EnforcedStyle: consistent
42
+ Layout/LineLength:
43
+ Exclude:
44
+ - !ruby/regexp /features\/.*.rb/
45
+ - Rakefile
46
+ - rake/*.rake
47
+ - Gemfile
48
+ Max: 100
49
+ Severity: warning
50
+ Layout/MultilineMethodCallIndentation:
51
+ EnforcedStyle: indented
52
+ Layout/MultilineOperationIndentation:
53
+ EnforcedStyle: indented
54
+ Layout/SpaceAroundMethodCallOperator:
55
+ Enabled: true
56
+ Layout/SpaceInsideHashLiteralBraces:
57
+ Enabled: true
58
+ Exclude:
59
+ - test/**/*.rb
60
+
61
+ Lint/BinaryOperatorWithIdenticalOperands:
62
+ Enabled: true
63
+ Lint/ConstantDefinitionInBlock:
64
+ Enabled: true
65
+ Exclude:
66
+ - test/**/*.rb
67
+ Lint/DeprecatedOpenSSLConstant:
68
+ Enabled: true
69
+ Lint/DuplicateBranch:
70
+ Enabled: true
71
+ Lint/DuplicateElsifCondition:
72
+ Enabled: true
73
+ Lint/DuplicateRegexpCharacterClassElement:
74
+ Enabled: true
75
+ Lint/DuplicateRescueException:
76
+ Enabled: true
77
+ Lint/DuplicateRequire:
78
+ Enabled: true
79
+ Lint/EmptyBlock:
80
+ Enabled: true
81
+ Lint/EmptyClass:
82
+ Enabled: true
83
+ Lint/EmptyConditionalBody:
84
+ Enabled: true
85
+ Lint/EmptyFile:
86
+ Enabled: true
87
+ Lint/FloatComparison:
88
+ Enabled: true
89
+ Lint/HashCompareByIdentity:
90
+ Enabled: true
91
+ Lint/IdentityComparison:
92
+ Enabled: true
93
+ Lint/MissingSuper:
94
+ Enabled: false
95
+ Lint/MixedRegexpCaptureTypes:
96
+ Enabled: false
97
+ Lint/NestedPercentLiteral:
98
+ Exclude:
99
+ - test/test_site.rb
100
+ Lint/NoReturnInBeginEndBlocks:
101
+ Enabled: true
102
+ Lint/OutOfRangeRegexpRef:
103
+ Enabled: true
104
+ Lint/RaiseException:
105
+ Enabled: true
106
+ Lint/RedundantSafeNavigation:
107
+ Enabled: true
108
+ Lint/SelfAssignment:
109
+ Enabled: true
110
+ Lint/StructNewOverride:
111
+ Enabled: true
112
+ Lint/ToEnumArguments:
113
+ Enabled: false
114
+ Lint/TopLevelReturnWithArgument:
115
+ Enabled: true
116
+ Lint/TrailingCommaInAttributeDeclaration:
117
+ Enabled: true
118
+ Lint/UnmodifiedReduceAccumulator:
119
+ Enabled: true
120
+ Lint/UnreachableCode:
121
+ Severity: error
122
+ Lint/UnreachableLoop:
123
+ Enabled: true
124
+ Lint/UselessMethodDefinition:
125
+ Enabled: true
126
+ Lint/UselessTimes:
127
+ Enabled: true
128
+ Lint/Void:
129
+ Exclude:
130
+ - lib/jekyll/site.rb
131
+
132
+ Metrics/AbcSize:
133
+ Max: 23
134
+ Metrics/BlockLength:
135
+ Exclude:
136
+ - test/**/*.rb
137
+ - lib/jekyll/configuration.rb
138
+ - rake/*.rake
139
+ Metrics/ClassLength:
140
+ Exclude:
141
+ - !ruby/regexp /features\/.*.rb$/
142
+ - !ruby/regexp /test\/.*.rb$/
143
+ - lib/jekyll/document.rb
144
+ - lib/jekyll/site.rb
145
+ - lib/jekyll/commands/serve.rb
146
+ - lib/jekyll/configuration.rb
147
+ Max: 240
148
+ Metrics/CyclomaticComplexity:
149
+ Exclude:
150
+ - lib/jekyll/utils.rb
151
+ - lib/jekyll/commands/serve.rb
152
+ Max: 11
153
+ Metrics/MethodLength:
154
+ CountComments: false
155
+ Max: 20
156
+ Severity: error
157
+ Metrics/ModuleLength:
158
+ Max: 240
159
+ Exclude:
160
+ - lib/jekyll/filters.rb
161
+ Metrics/ParameterLists:
162
+ Max: 4
163
+ Metrics/PerceivedComplexity:
164
+ Max: 13
165
+
166
+ Naming/FileName:
167
+ Enabled: false
168
+ Naming/HeredocDelimiterNaming:
169
+ Exclude:
170
+ - test/**/*.rb
171
+ Naming/MemoizedInstanceVariableName:
172
+ Exclude:
173
+ - lib/jekyll/convertible.rb
174
+ - lib/jekyll/drops/site_drop.rb
175
+ - lib/jekyll/drops/unified_payload_drop.rb
176
+ - lib/jekyll/page_without_a_file.rb
177
+
178
+ Performance/AncestorsInclude:
179
+ Enabled: false
180
+ Performance/ArraySemiInfiniteRangeSlice:
181
+ Enabled: true
182
+ Performance/BigDecimalWithNumericArgument:
183
+ Enabled: true
184
+ Performance/BlockGivenWithExplicitBlock:
185
+ Enabled: true
186
+ Performance/ChainArrayAllocation:
187
+ Enabled: true
188
+ Performance/CollectionLiteralInLoop:
189
+ Enabled: true
190
+ Performance/ConstantRegexp:
191
+ Enabled: true
192
+ Performance/MethodObjectAsBlock:
193
+ Enabled: true
194
+ Performance/RedundantSortBlock:
195
+ Enabled: true
196
+ Performance/RedundantStringChars:
197
+ Enabled: true
198
+ Performance/ReverseFirst:
199
+ Enabled: true
200
+ Performance/SortReverse:
201
+ Enabled: false
202
+ Performance/Squeeze:
203
+ Enabled: true
204
+ Performance/StringInclude:
205
+ Enabled: true
206
+ Exclude:
207
+ - lib/jekyll/utils/platforms.rb
208
+ Performance/Sum:
209
+ Enabled: true
210
+
211
+ Security/MarshalLoad:
212
+ Exclude:
213
+ - !ruby/regexp /test\/.*.rb$/
214
+ - lib/jekyll/regenerator.rb
215
+ Security/YAMLLoad:
216
+ Exclude:
217
+ - !ruby/regexp /features\/.*.rb/
218
+ - !ruby/regexp /test\/.*.rb$/
219
+
220
+ Style/ArgumentsForwarding:
221
+ Enabled: false
222
+ Style/ArrayCoercion:
223
+ Enabled: true
224
+ Style/AccessModifierDeclarations:
225
+ Enabled: false
226
+ Style/AccessorGrouping:
227
+ Enabled: false
228
+ Style/Alias:
229
+ EnforcedStyle: prefer_alias_method
230
+ Style/AndOr:
231
+ Severity: error
232
+ Style/BisectedAttrAccessor:
233
+ Enabled: true
234
+ Style/CaseLikeIf:
235
+ Enabled: true
236
+ Style/ClassAndModuleChildren:
237
+ Exclude:
238
+ - test/**/*.rb
239
+ Style/ClassEqualityComparison:
240
+ Enabled: true
241
+ Style/CollectionCompact:
242
+ Enabled: true
243
+ Style/CombinableLoops:
244
+ Enabled: true
245
+ Style/Documentation:
246
+ Enabled: false
247
+ Style/DocumentDynamicEvalDefinition:
248
+ Enabled: true
249
+ Style/DoubleNegation:
250
+ Enabled: false
251
+ Style/ExponentialNotation:
252
+ Enabled: true
253
+ Style/ExplicitBlockArgument:
254
+ Enabled: false
255
+ Style/FormatStringToken:
256
+ Exclude:
257
+ - lib/jekyll/utils/ansi.rb
258
+ - lib/jekyll/liquid_renderer/table.rb
259
+ - lib/jekyll/profiler.rb
260
+ Style/FrozenStringLiteralComment:
261
+ EnforcedStyle: always
262
+ Style/GlobalStdStream:
263
+ Enabled: true
264
+ Style/GuardClause:
265
+ Enabled: false
266
+ Style/HashAsLastArrayItem:
267
+ Enabled: true
268
+ Style/HashEachMethods:
269
+ Enabled: true
270
+ Style/HashLikeCase:
271
+ Enabled: true
272
+ Style/HashSyntax:
273
+ EnforcedStyle: hash_rockets
274
+ Severity: error
275
+ Style/HashTransformKeys:
276
+ Enabled: false
277
+ Style/HashTransformValues:
278
+ Enabled: true
279
+ Style/KeywordParametersOrder:
280
+ Enabled: true
281
+ Style/MixinUsage:
282
+ Exclude:
283
+ - test/helper.rb
284
+ Style/ModuleFunction:
285
+ Enabled: false
286
+ Style/MultilineTernaryOperator:
287
+ Severity: error
288
+ Style/NegatedIfElseCondition:
289
+ Enabled: true
290
+ Style/NilLambda:
291
+ Enabled: true
292
+ Style/OptionalBooleanParameter:
293
+ Enabled: true
294
+ Style/PercentLiteralDelimiters:
295
+ PreferredDelimiters:
296
+ "%q": "{}"
297
+ "%Q": "{}"
298
+ "%r": "!!"
299
+ "%s": "()"
300
+ "%w": "()"
301
+ "%W": "()"
302
+ "%x": "()"
303
+ Style/RedundantArgument:
304
+ Enabled: true
305
+ Style/RedundantAssignment:
306
+ Enabled: true
307
+ Style/RedundantBegin:
308
+ Enabled: false
309
+ Style/RedundantFetchBlock:
310
+ Enabled: false
311
+ Style/RedundantFileExtensionInRequire:
312
+ Enabled: true
313
+ Style/RedundantRegexpCharacterClass:
314
+ Enabled: true
315
+ Style/RedundantRegexpEscape:
316
+ Enabled: true
317
+ Style/RedundantSelfAssignment:
318
+ Enabled: true
319
+ Style/RegexpLiteral:
320
+ EnforcedStyle: percent_r
321
+ Style/RescueModifier:
322
+ Enabled: false
323
+ Style/SafeNavigation:
324
+ Exclude:
325
+ - lib/jekyll/document.rb
326
+ Style/SignalException:
327
+ EnforcedStyle: only_raise
328
+ Style/SingleArgumentDig:
329
+ Enabled: true
330
+ Style/SlicingWithRange:
331
+ Enabled: false
332
+ Style/SoleNestedConditional:
333
+ Enabled: true
334
+ Style/StringLiterals:
335
+ EnforcedStyle: double_quotes
336
+ Style/StringConcatenation:
337
+ Enabled: true
338
+ Exclude:
339
+ - lib/jekyll/commands/*.rb
340
+ - test/**/*.rb
341
+ Style/StringLiteralsInInterpolation:
342
+ EnforcedStyle: double_quotes
343
+ Style/SwapValues:
344
+ Enabled: true
345
+ Style/SymbolArray:
346
+ EnforcedStyle: brackets
347
+ Style/TrailingCommaInArrayLiteral:
348
+ EnforcedStyleForMultiline: consistent_comma
349
+ Style/TrailingCommaInHashLiteral:
350
+ EnforcedStyleForMultiline: consistent_comma