jekyll 4.2.2 → 4.3.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.
- checksums.yaml +4 -4
- data/.rubocop.yml +150 -26
- data/README.markdown +16 -19
- data/lib/jekyll/cache.rb +3 -7
- data/lib/jekyll/cleaner.rb +1 -1
- data/lib/jekyll/collection.rb +1 -0
- data/lib/jekyll/commands/build.rb +2 -13
- data/lib/jekyll/commands/clean.rb +1 -2
- data/lib/jekyll/commands/doctor.rb +13 -13
- data/lib/jekyll/commands/new.rb +5 -9
- data/lib/jekyll/commands/new_theme.rb +3 -4
- data/lib/jekyll/commands/serve/live_reload_reactor.rb +3 -6
- data/lib/jekyll/commands/serve/mime_types_charset.json +71 -0
- data/lib/jekyll/commands/serve/servlet.rb +13 -9
- data/lib/jekyll/commands/serve.rb +23 -18
- data/lib/jekyll/configuration.rb +2 -2
- data/lib/jekyll/converters/markdown/kramdown_parser.rb +13 -15
- data/lib/jekyll/deprecator.rb +1 -1
- data/lib/jekyll/document.rb +2 -3
- data/lib/jekyll/drops/document_drop.rb +4 -0
- data/lib/jekyll/drops/excerpt_drop.rb +4 -0
- data/lib/jekyll/drops/theme_drop.rb +36 -0
- data/lib/jekyll/drops/unified_payload_drop.rb +6 -2
- data/lib/jekyll/entry_filter.rb +2 -6
- data/lib/jekyll/excerpt.rb +5 -6
- data/lib/jekyll/external.rb +17 -21
- data/lib/jekyll/filters.rb +11 -14
- data/lib/jekyll/frontmatter_defaults.rb +2 -4
- data/lib/jekyll/hooks.rb +2 -2
- data/lib/jekyll/layout.rb +8 -20
- data/lib/jekyll/mime.types +146 -73
- data/lib/jekyll/page.rb +2 -4
- data/lib/jekyll/path_manager.rb +7 -7
- data/lib/jekyll/plugin_manager.rb +12 -4
- data/lib/jekyll/profiler.rb +0 -3
- data/lib/jekyll/reader.rb +18 -1
- data/lib/jekyll/readers/data_reader.rb +45 -11
- data/lib/jekyll/renderer.rb +8 -10
- data/lib/jekyll/site.rb +52 -21
- data/lib/jekyll/static_file.rb +6 -9
- data/lib/jekyll/tags/highlight.rb +13 -9
- data/lib/jekyll/tags/include.rb +4 -4
- data/lib/jekyll/tags/post_url.rb +5 -5
- data/lib/jekyll/theme.rb +6 -2
- data/lib/jekyll/theme_builder.rb +1 -1
- data/lib/jekyll/url.rb +1 -1
- data/lib/jekyll/utils/ansi.rb +1 -1
- data/lib/jekyll/utils/win_tz.rb +18 -47
- data/lib/jekyll/utils.rb +10 -6
- data/lib/jekyll/version.rb +1 -1
- data/lib/jekyll.rb +1 -1
- data/lib/site_template/_config.yml +1 -1
- data/lib/theme_template/README.md.erb +1 -3
- metadata +59 -13
data/lib/jekyll/utils.rb
CHANGED
@@ -128,7 +128,8 @@ module Jekyll
|
|
128
128
|
# Returns the parsed date if successful, throws a FatalException
|
129
129
|
# if not
|
130
130
|
def parse_date(input, msg = "Input could not be parsed.")
|
131
|
-
|
131
|
+
@parse_date_cache ||= {}
|
132
|
+
@parse_date_cache[input] ||= Time.parse(input).localtime
|
132
133
|
rescue ArgumentError
|
133
134
|
raise Errors::InvalidDateError, "Invalid date '#{input}': #{msg}"
|
134
135
|
end
|
@@ -143,7 +144,7 @@ module Jekyll
|
|
143
144
|
false
|
144
145
|
end
|
145
146
|
|
146
|
-
# Determine whether the given content string contains Liquid Tags or
|
147
|
+
# Determine whether the given content string contains Liquid Tags or Variables
|
147
148
|
#
|
148
149
|
# Returns true is the string contains sequences of `{%` or `{{`
|
149
150
|
def has_liquid_construct?(content)
|
@@ -265,7 +266,7 @@ module Jekyll
|
|
265
266
|
template
|
266
267
|
end
|
267
268
|
|
268
|
-
# Work the same way as Dir.glob but
|
269
|
+
# Work the same way as Dir.glob but separating the input into two parts
|
269
270
|
# ('dir' + '/' + 'pattern') to make sure the first part('dir') does not act
|
270
271
|
# as a pattern.
|
271
272
|
#
|
@@ -287,7 +288,7 @@ module Jekyll
|
|
287
288
|
# patterns - the patterns (or the pattern) which will be applied under the dir
|
288
289
|
# flags - the flags which will be applied to the pattern
|
289
290
|
#
|
290
|
-
# Returns matched
|
291
|
+
# Returns matched paths
|
291
292
|
def safe_glob(dir, patterns, flags = 0)
|
292
293
|
return [] unless Dir.exist?(dir)
|
293
294
|
|
@@ -303,12 +304,15 @@ module Jekyll
|
|
303
304
|
# and a given param
|
304
305
|
def merged_file_read_opts(site, opts)
|
305
306
|
merged = (site ? site.file_read_opts : {}).merge(opts)
|
306
|
-
|
307
|
+
|
308
|
+
# always use BOM when reading UTF-encoded files
|
309
|
+
if merged[:encoding]&.downcase&.start_with?("utf-")
|
307
310
|
merged[:encoding] = "bom|#{merged[:encoding]}"
|
308
311
|
end
|
309
|
-
if merged["encoding"]
|
312
|
+
if merged["encoding"]&.downcase&.start_with?("utf-")
|
310
313
|
merged["encoding"] = "bom|#{merged["encoding"]}"
|
311
314
|
end
|
315
|
+
|
312
316
|
merged
|
313
317
|
end
|
314
318
|
|
data/lib/jekyll/version.rb
CHANGED
data/lib/jekyll.rb
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
# For technical reasons, this file is *NOT* reloaded automatically when you use
|
9
9
|
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
|
10
10
|
#
|
11
|
-
# If you need help with YAML syntax, here are some quick references for you:
|
11
|
+
# If you need help with YAML syntax, here are some quick references for you:
|
12
12
|
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
|
13
13
|
# https://learnxinyminutes.com/docs/yaml/
|
14
14
|
#
|
@@ -6,7 +6,6 @@ To experiment with this code, add some sample content and run `bundle exec jekyl
|
|
6
6
|
|
7
7
|
TODO: Delete this and the text above, and describe your gem
|
8
8
|
|
9
|
-
|
10
9
|
## Installation
|
11
10
|
|
12
11
|
Add this line to your Jekyll site's `Gemfile`:
|
@@ -35,7 +34,7 @@ TODO: Write usage instructions here. Describe your available layouts, includes,
|
|
35
34
|
|
36
35
|
## Contributing
|
37
36
|
|
38
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]
|
37
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/<%= theme_name %>. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](https://www.contributor-covenant.org/) code of conduct.
|
39
38
|
|
40
39
|
## Development
|
41
40
|
|
@@ -49,4 +48,3 @@ To add a custom directory to your theme-gem, please edit the regexp in `<%= them
|
|
49
48
|
## License
|
50
49
|
|
51
50
|
The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
52
|
-
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Preston-Werner
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date: 2022-
|
13
|
+
date: 2022-10-26 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: addressable
|
@@ -72,16 +72,22 @@ dependencies:
|
|
72
72
|
name: jekyll-sass-converter
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
|
-
- - "
|
75
|
+
- - ">="
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: '2.0'
|
78
|
+
- - "<"
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '4.0'
|
78
81
|
type: :runtime
|
79
82
|
prerelease: false
|
80
83
|
version_requirements: !ruby/object:Gem::Requirement
|
81
84
|
requirements:
|
82
|
-
- - "
|
85
|
+
- - ">="
|
83
86
|
- !ruby/object:Gem::Version
|
84
87
|
version: '2.0'
|
88
|
+
- - "<"
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '4.0'
|
85
91
|
- !ruby/object:Gem::Dependency
|
86
92
|
name: jekyll-watch
|
87
93
|
requirement: !ruby/object:Gem::Requirement
|
@@ -103,6 +109,9 @@ dependencies:
|
|
103
109
|
- - "~>"
|
104
110
|
- !ruby/object:Gem::Version
|
105
111
|
version: '2.3'
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: 2.3.1
|
106
115
|
type: :runtime
|
107
116
|
prerelease: false
|
108
117
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -110,6 +119,9 @@ dependencies:
|
|
110
119
|
- - "~>"
|
111
120
|
- !ruby/object:Gem::Version
|
112
121
|
version: '2.3'
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 2.3.1
|
113
125
|
- !ruby/object:Gem::Dependency
|
114
126
|
name: kramdown-parser-gfm
|
115
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -142,16 +154,22 @@ dependencies:
|
|
142
154
|
name: mercenary
|
143
155
|
requirement: !ruby/object:Gem::Requirement
|
144
156
|
requirements:
|
145
|
-
- - "
|
157
|
+
- - ">="
|
146
158
|
- !ruby/object:Gem::Version
|
147
|
-
version: 0.
|
159
|
+
version: 0.3.6
|
160
|
+
- - "<"
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: '0.5'
|
148
163
|
type: :runtime
|
149
164
|
prerelease: false
|
150
165
|
version_requirements: !ruby/object:Gem::Requirement
|
151
166
|
requirements:
|
152
|
-
- - "
|
167
|
+
- - ">="
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: 0.3.6
|
170
|
+
- - "<"
|
153
171
|
- !ruby/object:Gem::Version
|
154
|
-
version: 0.
|
172
|
+
version: '0.5'
|
155
173
|
- !ruby/object:Gem::Dependency
|
156
174
|
name: pathutil
|
157
175
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,16 +188,22 @@ dependencies:
|
|
170
188
|
name: rouge
|
171
189
|
requirement: !ruby/object:Gem::Requirement
|
172
190
|
requirements:
|
173
|
-
- - "
|
191
|
+
- - ">="
|
174
192
|
- !ruby/object:Gem::Version
|
175
193
|
version: '3.0'
|
194
|
+
- - "<"
|
195
|
+
- !ruby/object:Gem::Version
|
196
|
+
version: '5.0'
|
176
197
|
type: :runtime
|
177
198
|
prerelease: false
|
178
199
|
version_requirements: !ruby/object:Gem::Requirement
|
179
200
|
requirements:
|
180
|
-
- - "
|
201
|
+
- - ">="
|
181
202
|
- !ruby/object:Gem::Version
|
182
203
|
version: '3.0'
|
204
|
+
- - "<"
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '5.0'
|
183
207
|
- !ruby/object:Gem::Dependency
|
184
208
|
name: safe_yaml
|
185
209
|
requirement: !ruby/object:Gem::Requirement
|
@@ -196,18 +220,38 @@ dependencies:
|
|
196
220
|
version: '1.0'
|
197
221
|
- !ruby/object:Gem::Dependency
|
198
222
|
name: terminal-table
|
223
|
+
requirement: !ruby/object:Gem::Requirement
|
224
|
+
requirements:
|
225
|
+
- - ">="
|
226
|
+
- !ruby/object:Gem::Version
|
227
|
+
version: '1.8'
|
228
|
+
- - "<"
|
229
|
+
- !ruby/object:Gem::Version
|
230
|
+
version: '4.0'
|
231
|
+
type: :runtime
|
232
|
+
prerelease: false
|
233
|
+
version_requirements: !ruby/object:Gem::Requirement
|
234
|
+
requirements:
|
235
|
+
- - ">="
|
236
|
+
- !ruby/object:Gem::Version
|
237
|
+
version: '1.8'
|
238
|
+
- - "<"
|
239
|
+
- !ruby/object:Gem::Version
|
240
|
+
version: '4.0'
|
241
|
+
- !ruby/object:Gem::Dependency
|
242
|
+
name: webrick
|
199
243
|
requirement: !ruby/object:Gem::Requirement
|
200
244
|
requirements:
|
201
245
|
- - "~>"
|
202
246
|
- !ruby/object:Gem::Version
|
203
|
-
version: '
|
247
|
+
version: '1.7'
|
204
248
|
type: :runtime
|
205
249
|
prerelease: false
|
206
250
|
version_requirements: !ruby/object:Gem::Requirement
|
207
251
|
requirements:
|
208
252
|
- - "~>"
|
209
253
|
- !ruby/object:Gem::Version
|
210
|
-
version: '
|
254
|
+
version: '1.7'
|
211
255
|
description: Jekyll is a simple, blog aware, static site generator.
|
212
256
|
email:
|
213
257
|
- maintainers@jekyllrb.com
|
@@ -241,6 +285,7 @@ files:
|
|
241
285
|
- lib/jekyll/commands/serve.rb
|
242
286
|
- lib/jekyll/commands/serve/live_reload_reactor.rb
|
243
287
|
- lib/jekyll/commands/serve/livereload_assets/livereload.js
|
288
|
+
- lib/jekyll/commands/serve/mime_types_charset.json
|
244
289
|
- lib/jekyll/commands/serve/servlet.rb
|
245
290
|
- lib/jekyll/commands/serve/websockets.rb
|
246
291
|
- lib/jekyll/configuration.rb
|
@@ -259,6 +304,7 @@ files:
|
|
259
304
|
- lib/jekyll/drops/jekyll_drop.rb
|
260
305
|
- lib/jekyll/drops/site_drop.rb
|
261
306
|
- lib/jekyll/drops/static_file_drop.rb
|
307
|
+
- lib/jekyll/drops/theme_drop.rb
|
262
308
|
- lib/jekyll/drops/unified_payload_drop.rb
|
263
309
|
- lib/jekyll/drops/url_drop.rb
|
264
310
|
- lib/jekyll/entry_filter.rb
|
@@ -357,7 +403,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
357
403
|
requirements:
|
358
404
|
- - ">="
|
359
405
|
- !ruby/object:Gem::Version
|
360
|
-
version: 2.
|
406
|
+
version: 2.5.0
|
361
407
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
362
408
|
requirements:
|
363
409
|
- - ">="
|