datalog-theme 0.10.1 → 0.11.0
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/CHANGELOG.md +127 -0
- data/CITATION.cff +2 -2
- data/README.md +4 -2
- data/_data/i18n/en.yml +55 -3
- data/_data/i18n/es.yml +55 -3
- data/_data/i18n/pt.yml +55 -3
- data/_includes/analytics/dashboard.html +24 -9
- data/_includes/components/academic-dashboard.html +168 -133
- data/_includes/components/author-bio.html +7 -5
- data/_includes/components/author-list.html +6 -5
- data/_includes/components/citation-tools.html +2 -1
- data/_includes/components/content-provenance.html +19 -1
- data/_includes/components/correction-report.html +15 -8
- data/_includes/components/hero.html +22 -15
- data/_includes/components/package-index.html +121 -0
- data/_includes/components/package-install.html +27 -50
- data/_includes/components/post-list.html +14 -0
- data/_includes/components/responsive-image.html +15 -21
- data/_includes/footer.html +1 -1
- data/_includes/head.html +70 -11
- data/_includes/layouts/default/article.html +76 -46
- data/_includes/meta/dataset-json.html +171 -0
- data/_includes/meta/math-config.html +15 -1
- data/_includes/meta/package-json.html +69 -0
- data/_includes/meta/person-json.html +36 -13
- data/_includes/meta/publisher.html +15 -0
- data/_includes/meta/schema.html +108 -23
- data/_includes/meta/scholarly.html +10 -5
- data/_includes/post/related-posts.html +17 -43
- data/_includes/scripts.html +2 -2
- data/_includes/search/index-data.json +10 -1
- data/_includes/search/page.html +11 -6
- data/_layouts/archive.html +67 -0
- data/_layouts/dataset.html +2 -1
- data/_layouts/default.html +13 -11
- data/_layouts/docs.html +53 -0
- data/_layouts/home.html +30 -1
- data/_layouts/notebook.html +5 -1
- data/_layouts/package.html +38 -21
- data/_layouts/portfolio.html +1 -0
- data/_layouts/post.html +21 -62
- data/_layouts/project.html +2 -1
- data/_layouts/research.html +14 -2
- data/_plugins/analytics_dashboard.rb +4 -1
- data/_plugins/archive.rb +114 -0
- data/_plugins/authors.rb +50 -1
- data/_plugins/citation_exports.rb +12 -1
- data/_plugins/config_validator.rb +77 -2
- data/_plugins/correction_fallback.rb +110 -0
- data/_plugins/image_optimizer.rb +129 -22
- data/_plugins/math_preprocessor.rb +7 -48
- data/_plugins/notebook_converter.rb +44 -5
- data/_plugins/packages.rb +84 -0
- data/_plugins/page_dates.rb +37 -0
- data/_plugins/references.rb +16 -2
- data/_plugins/related_posts.rb +149 -0
- data/_plugins/search_sections.rb +110 -0
- data/_plugins/site_identity.rb +42 -0
- data/_plugins/social_cards.rb +17 -0
- data/_sass/_academic-dashboard.scss +18 -30
- data/_sass/_base.scss +2 -0
- data/_sass/_components.scss +21 -23
- data/_sass/_docs.scss +143 -0
- data/_sass/_features.scss +6 -0
- data/_sass/_layout.scss +65 -6
- data/_sass/_mathematical.scss +61 -19
- data/_sass/_notebooks.scss +1 -32
- data/_sass/_package-docs.scss +6 -9
- data/_sass/_post-components.scss +23 -23
- data/_sass/_print.scss +1 -1
- data/_sass/_search-page.scss +75 -0
- data/_sass/_search.scss +17 -26
- data/_sass/_syntax-highlighting.scss +23 -1
- data/_sass/_theme.scss +1 -0
- data/_sass/_utilities.scss +87 -40
- data/_sass/_variables.scss +31 -29
- data/assets/css/main.scss +2 -1
- data/assets/js/dist/academic.js +1 -1
- data/assets/js/dist/analytics-dashboard.js +1 -1
- data/assets/js/dist/chunks/chunk-TNVD6UAM.js +1 -0
- data/assets/js/dist/comments.js +1 -1
- data/assets/js/dist/contact.js +1 -1
- data/assets/js/dist/core.js +1 -1
- data/assets/js/dist/corrections.js +5 -1
- data/assets/js/dist/loader.js +1 -1
- data/assets/js/dist/math.js +2 -1
- data/assets/js/dist/moderation.js +1 -1
- data/assets/js/dist/reactions.js +1 -1
- data/assets/js/dist/search.js +1 -1
- data/assets/js/dist/sources.json +20 -16
- data/assets/js/dist/subscriptions.js +1 -1
- data/assets/js/loader.js +6 -2
- data/lib/datalog/audit/checks.rb +269 -0
- data/lib/datalog/audit/known_keys.rb +61 -0
- data/lib/datalog/audit/site_reader.rb +118 -0
- data/lib/datalog/audit/source_file.rb +85 -0
- data/lib/datalog/audit.rb +145 -0
- data/lib/datalog/citations/bibtex.rb +200 -0
- data/lib/datalog/citations/entry.rb +333 -0
- data/lib/datalog/citations/markup.rb +79 -0
- data/lib/datalog/cli.rb +164 -89
- data/lib/datalog/critical_css.rb +126 -21
- data/lib/datalog/latex_speech/words.json +88 -0
- data/lib/datalog/latex_speech.rb +355 -0
- data/lib/datalog/packages/command.rb +51 -0
- data/lib/datalog/packages/refresh.rb +187 -0
- data/lib/datalog/packages.rb +177 -0
- data/lib/datalog/plugin_system.rb +5 -0
- data/lib/datalog/plugins/citations.rb +325 -109
- data/lib/datalog/site_config.rb +26 -0
- data/lib/datalog/social_cards/font.rb +286 -0
- data/lib/datalog/social_cards/fonts/IBMPlexSans-Regular.ttf +0 -0
- data/lib/datalog/social_cards/fonts/IBMPlexSerif-SemiBold.ttf +0 -0
- data/lib/datalog/social_cards/fonts/OFL.txt +92 -0
- data/lib/datalog/social_cards/geometry.rb +51 -0
- data/lib/datalog/social_cards/outline.rb +54 -0
- data/lib/datalog/social_cards/plain_text.rb +258 -0
- data/lib/datalog/social_cards/template.rb +322 -0
- data/lib/datalog/social_cards/template.svg +17 -0
- data/lib/datalog/social_cards/typesetter.rb +178 -0
- data/lib/datalog/social_cards.rb +369 -0
- data/lib/datalog/theme/updater.rb +307 -0
- data/lib/datalog/theme/version.rb +1 -1
- metadata +44 -7
- data/_includes/components/enhanced-code-block.html +0 -212
- data/_includes/components/performance-monitor.html +0 -170
- data/_includes/components/viz-table-fallback.html +0 -19
- data/_plugins/datalog_bibliography.rb +0 -21
- data/assets/js/dist/chunks/chunk-WIRUK3OZ.js +0 -1
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "bundler"
|
|
4
|
+
require "fileutils"
|
|
5
|
+
require "json"
|
|
6
|
+
require "open3"
|
|
7
|
+
require "pathname"
|
|
8
|
+
require "shellwords"
|
|
9
|
+
require "tmpdir"
|
|
10
|
+
require "yaml"
|
|
11
|
+
require_relative "../site_config"
|
|
12
|
+
|
|
13
|
+
module Datalog
|
|
14
|
+
module Theme
|
|
15
|
+
# Runs an upgrade from either a published gem or a path-installed checkout.
|
|
16
|
+
# A checkout is moved only after its worktree and target tag are checked.
|
|
17
|
+
class Updater
|
|
18
|
+
class Error < StandardError; end
|
|
19
|
+
|
|
20
|
+
COPY_FILES = %w[assets/js/loader.js _data/js_manifest.json _data/cdn-integrity.yml].freeze
|
|
21
|
+
CONFIG_DIRS = %w[layouts_dir includes_dir plugins_dir].freeze
|
|
22
|
+
|
|
23
|
+
def initialize(root:, options:, report:, execute:, available:)
|
|
24
|
+
@root = File.expand_path(root)
|
|
25
|
+
@options = options
|
|
26
|
+
@report = report
|
|
27
|
+
@execute = execute
|
|
28
|
+
@available = available
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def run
|
|
32
|
+
theme = checkout_path
|
|
33
|
+
return update_gem unless theme
|
|
34
|
+
|
|
35
|
+
update_checkout(theme)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
private
|
|
39
|
+
|
|
40
|
+
def report(message)
|
|
41
|
+
@report.call(message)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def checkout_path
|
|
45
|
+
gemfile = File.join(@root, "Gemfile")
|
|
46
|
+
return unless File.file?(gemfile)
|
|
47
|
+
|
|
48
|
+
definition = Bundler::Dsl.evaluate(gemfile, File.join(@root, "Gemfile.lock"), {})
|
|
49
|
+
dependency = definition.dependencies.find { |item| item.name == "datalog-theme" }
|
|
50
|
+
source = dependency&.source
|
|
51
|
+
return unless source.is_a?(Bundler::Source::Path)
|
|
52
|
+
|
|
53
|
+
path = File.expand_path(source.path.to_s, @root)
|
|
54
|
+
return path if File.exist?(File.join(path, ".git")) && git("rev-parse", "--show-toplevel", dir: path) == path
|
|
55
|
+
|
|
56
|
+
nil
|
|
57
|
+
rescue Bundler::BundlerError => e
|
|
58
|
+
raise Error, "Cannot read the site's Gemfile: #{e.message}"
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def update_checkout(theme)
|
|
62
|
+
current = current_tag(theme)
|
|
63
|
+
raise Error, "Theme checkout is not at a release tag; check out one before updating" unless current
|
|
64
|
+
unless git("status", "--porcelain", dir: theme).empty?
|
|
65
|
+
raise Error, "Theme checkout has local changes; commit or discard them first"
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
tags = available_tags(theme)
|
|
69
|
+
target = choose_tag(tags, current)
|
|
70
|
+
newer = tags.select { |tag| version(tag) > version(current) }.sort_by { |tag| version(tag) }
|
|
71
|
+
report("Releases after #{current}: #{newer.join(', ')}") unless newer.empty?
|
|
72
|
+
if target == current && !submodule_needs_stage?(theme)
|
|
73
|
+
report("DataLog theme is already at #{current}.")
|
|
74
|
+
return check_current(theme)
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
report("Update #{theme} from #{current} to #{target}.")
|
|
78
|
+
if @options[:dry_run]
|
|
79
|
+
report("Dry run: fetch tags, check out #{target}, build bundles, install gems, " \
|
|
80
|
+
"check the site and stage the submodule.")
|
|
81
|
+
return 0
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
raise Error, "npm is required to build a path-installed theme" unless @available.call("npm")
|
|
85
|
+
|
|
86
|
+
git("fetch", "--tags", "origin", dir: theme) if remote?(theme)
|
|
87
|
+
git("checkout", "--detach", target, dir: theme)
|
|
88
|
+
run!("npm ci", theme)
|
|
89
|
+
run!("npm run build:js", theme)
|
|
90
|
+
run!("bundle install", @root)
|
|
91
|
+
changelog(File.join(theme, "CHANGELOG.md"), current, target)
|
|
92
|
+
check_site!(theme)
|
|
93
|
+
build_site if @options[:build]
|
|
94
|
+
stage_submodule(theme, target)
|
|
95
|
+
report("Theme updated to #{target}. Review the changes before committing; nothing was committed or pushed.")
|
|
96
|
+
2
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# Already at the release asked for, the checkout still has to be one a
|
|
100
|
+
# site can build from: its bundles are rebuilt when they were never built
|
|
101
|
+
# or were built from other sources, the site gets the same checks as after
|
|
102
|
+
# an update, and --build builds it. Nothing changes the release, so the
|
|
103
|
+
# answer stays 0, "already current".
|
|
104
|
+
def check_current(theme)
|
|
105
|
+
require_relative "installed_files"
|
|
106
|
+
stale = InstalledFiles.stale_bundle_reasons(theme)
|
|
107
|
+
if @options[:dry_run]
|
|
108
|
+
report("Dry run: rebuild the theme bundles (#{stale.first}).") unless stale.empty?
|
|
109
|
+
report("Dry run: check the site#{' and build it' if @options[:build]}.")
|
|
110
|
+
return 0
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
unless stale.empty?
|
|
114
|
+
raise Error, "npm is required to build a path-installed theme" unless @available.call("npm")
|
|
115
|
+
|
|
116
|
+
report("The theme's bundles need building: #{stale.first}.")
|
|
117
|
+
run!("npm ci", theme)
|
|
118
|
+
run!("npm run build:js", theme)
|
|
119
|
+
end
|
|
120
|
+
check_site!(theme)
|
|
121
|
+
build_site if @options[:build]
|
|
122
|
+
0
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
def check_site!(theme)
|
|
126
|
+
issues = preflight(theme)
|
|
127
|
+
return if issues.empty?
|
|
128
|
+
|
|
129
|
+
issues.each { |issue| report("Check: #{issue}") }
|
|
130
|
+
raise Error, "Resolve the #{issues.size} site check(s) above before building"
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
def update_gem
|
|
134
|
+
if @options[:to] && @options[:to] != "latest"
|
|
135
|
+
raise Error, "--to with a version requires a path-installed Git checkout"
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
gemfile = File.join(@root, "Gemfile")
|
|
139
|
+
before = locked_version
|
|
140
|
+
if File.file?(gemfile)
|
|
141
|
+
run!("bundle update datalog-theme", @root, "Bundler could not update datalog-theme.")
|
|
142
|
+
else
|
|
143
|
+
report("No Gemfile detected—skipping Bundler update")
|
|
144
|
+
end
|
|
145
|
+
update_site_npm
|
|
146
|
+
return 0 if @options[:dry_run]
|
|
147
|
+
|
|
148
|
+
after = locked_version
|
|
149
|
+
changelog(gem_changelog, "v#{before}", "v#{after}") if before && after && before != after
|
|
150
|
+
build_site if @options[:build]
|
|
151
|
+
report("Theme dependencies are up to date!")
|
|
152
|
+
before && after && before != after ? 2 : 0
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
def update_site_npm
|
|
156
|
+
return unless File.file?(File.join(@root, "package.json"))
|
|
157
|
+
|
|
158
|
+
if @available.call("npm")
|
|
159
|
+
run!("npm install", @root, "npm could not install the site's packages.")
|
|
160
|
+
else
|
|
161
|
+
report("Node.js tooling not available—skipping npm install")
|
|
162
|
+
end
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
def run!(command, dir, error = "#{command} failed")
|
|
166
|
+
report(@options[:dry_run] ? "Would run #{command} in #{dir}" : "Running #{command} in #{dir}")
|
|
167
|
+
return if @options[:dry_run]
|
|
168
|
+
|
|
169
|
+
env = command.start_with?("bundle ") ? { "BUNDLE_GEMFILE" => File.join(@root, "Gemfile") } : {}
|
|
170
|
+
return if @execute.call(env, command, dir)
|
|
171
|
+
|
|
172
|
+
raise Error, error
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
def build_site
|
|
176
|
+
Dir.mktmpdir("datalog-update-build") do |destination|
|
|
177
|
+
command = "bundle exec jekyll build --disable-disk-cache --destination #{Shellwords.escape(destination)}"
|
|
178
|
+
run!(command, @root, "The site build failed after updating the theme")
|
|
179
|
+
end
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
def available_tags(theme)
|
|
183
|
+
local = git("tag", "--list", dir: theme).lines.map(&:strip)
|
|
184
|
+
remote = if remote?(theme)
|
|
185
|
+
git("ls-remote", "--refs", "--tags", "origin", dir: theme).lines.map do |line|
|
|
186
|
+
line.split("refs/tags/").last&.strip
|
|
187
|
+
end
|
|
188
|
+
else
|
|
189
|
+
[]
|
|
190
|
+
end
|
|
191
|
+
(local + remote).compact.uniq.select { |tag| version(tag) }
|
|
192
|
+
end
|
|
193
|
+
|
|
194
|
+
def choose_tag(tags, current)
|
|
195
|
+
requested = @options[:to] || "latest"
|
|
196
|
+
stable = tags.reject { |tag| version(tag).prerelease? }
|
|
197
|
+
target = requested == "latest" ? stable.max_by { |tag| version(tag) } : requested
|
|
198
|
+
raise Error, "Release tag #{requested.inspect} was not found" unless target && tags.include?(target)
|
|
199
|
+
if version(target) < version(current)
|
|
200
|
+
raise Error, "#{target} is older than #{current}; an update cannot downgrade the theme"
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
target
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
def current_tag(theme)
|
|
207
|
+
tags = git("tag", "--points-at", "HEAD", dir: theme).lines.map(&:strip)
|
|
208
|
+
tags.select { |tag| version(tag) }.max_by { |tag| version(tag) }
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
def version(tag)
|
|
212
|
+
value = tag.to_s.delete_prefix("v")
|
|
213
|
+
Gem::Version.new(value) if tag.to_s.start_with?("v") && Gem::Version.correct?(value)
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
def remote?(theme)
|
|
217
|
+
!git("remote", "get-url", "origin", dir: theme, optional: true).nil?
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
def git(*args, dir:, optional: false)
|
|
221
|
+
output, error, status = Open3.capture3("git", "-C", dir, *args)
|
|
222
|
+
return output.strip if status.success?
|
|
223
|
+
return if optional
|
|
224
|
+
|
|
225
|
+
raise Error, "git #{args.join(' ')} failed in #{dir}: #{error.strip}"
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
def stage_submodule(theme, target)
|
|
229
|
+
relative = Pathname.new(theme).relative_path_from(Pathname.new(@root)).to_s
|
|
230
|
+
tracked = git("ls-files", "--stage", "--", relative, dir: @root, optional: true).to_s
|
|
231
|
+
if tracked.start_with?("160000 ")
|
|
232
|
+
git("add", "--", relative, dir: @root)
|
|
233
|
+
report("Staged submodule #{relative}. Commit it when ready: " \
|
|
234
|
+
"git commit -m \"Update the DataLog theme to #{target}\"")
|
|
235
|
+
else
|
|
236
|
+
report("Theme checkout is not a tracked submodule; stage its pointer in your site repository yourself.")
|
|
237
|
+
end
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
def submodule_needs_stage?(theme)
|
|
241
|
+
relative = Pathname.new(theme).relative_path_from(Pathname.new(@root)).to_s
|
|
242
|
+
tracked = git("ls-files", "--stage", "--", relative, dir: @root, optional: true).to_s
|
|
243
|
+
tracked.start_with?("160000 ") && tracked.split[1] != git("rev-parse", "HEAD", dir: theme)
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
def locked_version
|
|
247
|
+
file = File.join(@root, "Gemfile.lock")
|
|
248
|
+
return unless File.file?(file)
|
|
249
|
+
|
|
250
|
+
Bundler::LockfileParser.new(Bundler.read_file(file)).specs.find { |spec| spec.name == "datalog-theme" }&.version
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
def gem_changelog
|
|
254
|
+
output, = Open3.capture2({ "BUNDLE_GEMFILE" => File.join(@root, "Gemfile") },
|
|
255
|
+
"bundle", "info", "--path", "datalog-theme", chdir: @root)
|
|
256
|
+
File.join(output.strip, "CHANGELOG.md")
|
|
257
|
+
rescue Errno::ENOENT
|
|
258
|
+
nil
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
def changelog(file, from, to)
|
|
262
|
+
return unless file && File.file?(file)
|
|
263
|
+
|
|
264
|
+
File.read(file).scan(/^## \[([^\]]+)\][^\n]*\n(.*?)(?=^## \[|\z)/m).reverse_each do |name, body|
|
|
265
|
+
next unless version("v#{name}") && version("v#{name}") > version(from) && version("v#{name}") <= version(to)
|
|
266
|
+
|
|
267
|
+
body.scan(/^### (Removed|Changed|Deprecated)\s*\n(.*?)(?=^### |\z)/m) do |heading, contents|
|
|
268
|
+
report("#{name} — #{heading}\n#{contents.strip}")
|
|
269
|
+
end
|
|
270
|
+
end
|
|
271
|
+
end
|
|
272
|
+
|
|
273
|
+
def preflight(theme)
|
|
274
|
+
require_relative "installed_files"
|
|
275
|
+
config = SiteConfig.load(File.join(@root, "_config.yml"))
|
|
276
|
+
issues = InstalledFiles.stale_bundle_reasons(theme)
|
|
277
|
+
issues.concat(stale_copies(theme))
|
|
278
|
+
CONFIG_DIRS.each do |key|
|
|
279
|
+
issues << "#{key} points into the theme checkout" if points_into_theme?(config[key], theme)
|
|
280
|
+
end
|
|
281
|
+
sass = config["sass"].is_a?(Hash) ? config["sass"]["sass_dir"] : nil
|
|
282
|
+
issues << "sass.sass_dir points into the theme checkout" if points_into_theme?(sass, theme)
|
|
283
|
+
issues
|
|
284
|
+
end
|
|
285
|
+
|
|
286
|
+
def points_into_theme?(value, theme)
|
|
287
|
+
return false unless value.is_a?(String) && !value.empty?
|
|
288
|
+
|
|
289
|
+
path = File.expand_path(value, @root)
|
|
290
|
+
path == theme || path.start_with?("#{theme}#{File::SEPARATOR}")
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
def stale_copies(theme)
|
|
294
|
+
files = COPY_FILES + Dir.glob("assets/js/dist/**/*", base: theme).select do |path|
|
|
295
|
+
File.file?(File.join(theme, path))
|
|
296
|
+
end
|
|
297
|
+
files.filter_map do |relative|
|
|
298
|
+
own = File.join(@root, relative)
|
|
299
|
+
source = File.join(theme, relative)
|
|
300
|
+
next unless File.file?(source) && File.file?(own)
|
|
301
|
+
|
|
302
|
+
"#{relative} differs from the theme's file" unless FileUtils.compare_file(own, source)
|
|
303
|
+
end
|
|
304
|
+
end
|
|
305
|
+
end
|
|
306
|
+
end
|
|
307
|
+
end
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
module Datalog
|
|
4
4
|
module Theme
|
|
5
|
-
VERSION = "0.
|
|
5
|
+
VERSION = "0.11.0" unless const_defined?(:VERSION)
|
|
6
6
|
# The Ruby the gem installs on, for the gemspec and `datalog check`. The
|
|
7
7
|
# release workflow rewrites every quoted version assigned to a name ending
|
|
8
8
|
# in VERSION in this file, so this name must not end that way.
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: datalog-theme
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.11.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Diogo Ribeiro
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-10-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: jekyll
|
|
@@ -308,7 +308,6 @@ files:
|
|
|
308
308
|
- _includes/components/content-provenance.html
|
|
309
309
|
- _includes/components/correction-report.html
|
|
310
310
|
- _includes/components/difficulty-badge.html
|
|
311
|
-
- _includes/components/enhanced-code-block.html
|
|
312
311
|
- _includes/components/enhanced-toc.html
|
|
313
312
|
- _includes/components/hero.html
|
|
314
313
|
- _includes/components/license-link.html
|
|
@@ -316,9 +315,10 @@ files:
|
|
|
316
315
|
- _includes/components/math-fallback.html
|
|
317
316
|
- _includes/components/moderation-inbox.html
|
|
318
317
|
- _includes/components/open-science-badges.html
|
|
318
|
+
- _includes/components/package-index.html
|
|
319
319
|
- _includes/components/package-install.html
|
|
320
|
-
- _includes/components/performance-monitor.html
|
|
321
320
|
- _includes/components/post-hero.html
|
|
321
|
+
- _includes/components/post-list.html
|
|
322
322
|
- _includes/components/reactions.html
|
|
323
323
|
- _includes/components/reading-list.html
|
|
324
324
|
- _includes/components/reading-mode-toggle.html
|
|
@@ -334,7 +334,6 @@ files:
|
|
|
334
334
|
- _includes/components/subscribe-form.html
|
|
335
335
|
- _includes/components/subscription-manage.html
|
|
336
336
|
- _includes/components/visualization-card.html
|
|
337
|
-
- _includes/components/viz-table-fallback.html
|
|
338
337
|
- _includes/components/webmentions.html
|
|
339
338
|
- _includes/critical-css/default.html
|
|
340
339
|
- _includes/critical-css/home.html
|
|
@@ -349,9 +348,11 @@ files:
|
|
|
349
348
|
- _includes/helpers/date-format.html
|
|
350
349
|
- _includes/helpers/link-with-icon.html
|
|
351
350
|
- _includes/layouts/default/article.html
|
|
351
|
+
- _includes/meta/dataset-json.html
|
|
352
352
|
- _includes/meta/dynamic-services-config.html
|
|
353
353
|
- _includes/meta/language-attributes.html
|
|
354
354
|
- _includes/meta/math-config.html
|
|
355
|
+
- _includes/meta/package-json.html
|
|
355
356
|
- _includes/meta/person-json.html
|
|
356
357
|
- _includes/meta/publisher.html
|
|
357
358
|
- _includes/meta/schema.html
|
|
@@ -364,8 +365,10 @@ files:
|
|
|
364
365
|
- _includes/search/page.html
|
|
365
366
|
- _includes/skip-link.html
|
|
366
367
|
- _includes/toc.html
|
|
368
|
+
- _layouts/archive.html
|
|
367
369
|
- _layouts/dataset.html
|
|
368
370
|
- _layouts/default.html
|
|
371
|
+
- _layouts/docs.html
|
|
369
372
|
- _layouts/home.html
|
|
370
373
|
- _layouts/notebook.html
|
|
371
374
|
- _layouts/package.html
|
|
@@ -375,12 +378,13 @@ files:
|
|
|
375
378
|
- _layouts/project.html
|
|
376
379
|
- _layouts/research.html
|
|
377
380
|
- _plugins/analytics_dashboard.rb
|
|
381
|
+
- _plugins/archive.rb
|
|
378
382
|
- _plugins/authors.rb
|
|
379
383
|
- _plugins/citation_exports.rb
|
|
380
384
|
- _plugins/config_validator.rb
|
|
385
|
+
- _plugins/correction_fallback.rb
|
|
381
386
|
- _plugins/critical_css_check.rb
|
|
382
387
|
- _plugins/csp_generator.rb
|
|
383
|
-
- _plugins/datalog_bibliography.rb
|
|
384
388
|
- _plugins/datalog_comments.rb
|
|
385
389
|
- _plugins/datalog_slides.rb
|
|
386
390
|
- _plugins/front_matter_compat.rb
|
|
@@ -390,10 +394,13 @@ files:
|
|
|
390
394
|
- _plugins/licenses.rb
|
|
391
395
|
- _plugins/math_preprocessor.rb
|
|
392
396
|
- _plugins/notebook_converter.rb
|
|
397
|
+
- _plugins/packages.rb
|
|
398
|
+
- _plugins/page_dates.rb
|
|
393
399
|
- _plugins/plugin_loader.rb
|
|
394
400
|
- _plugins/publications_generator.rb
|
|
395
401
|
- _plugins/reading_time.rb
|
|
396
402
|
- _plugins/references.rb
|
|
403
|
+
- _plugins/related_posts.rb
|
|
397
404
|
- _plugins/reproducibility.rb
|
|
398
405
|
- _plugins/responsive_content.rb
|
|
399
406
|
- _plugins/revisions.rb
|
|
@@ -402,7 +409,10 @@ files:
|
|
|
402
409
|
- _plugins/search_code_blocks.rb
|
|
403
410
|
- _plugins/search_normalizer.rb
|
|
404
411
|
- _plugins/search_pages.rb
|
|
412
|
+
- _plugins/search_sections.rb
|
|
405
413
|
- _plugins/series.rb
|
|
414
|
+
- _plugins/site_identity.rb
|
|
415
|
+
- _plugins/social_cards.rb
|
|
406
416
|
- _plugins/sri_filter.rb
|
|
407
417
|
- _plugins/statements.rb
|
|
408
418
|
- _plugins/toc_filter.rb
|
|
@@ -411,6 +421,7 @@ files:
|
|
|
411
421
|
- _sass/_base.scss
|
|
412
422
|
- _sass/_comments-thread.scss
|
|
413
423
|
- _sass/_components.scss
|
|
424
|
+
- _sass/_docs.scss
|
|
414
425
|
- _sass/_features.scss
|
|
415
426
|
- _sass/_font-fallbacks.scss
|
|
416
427
|
- _sass/_header.scss
|
|
@@ -452,8 +463,8 @@ files:
|
|
|
452
463
|
- assets/js/dist/academic.js
|
|
453
464
|
- assets/js/dist/analytics-dashboard.js
|
|
454
465
|
- assets/js/dist/chunks/chunk-PATLC23F.js
|
|
466
|
+
- assets/js/dist/chunks/chunk-TNVD6UAM.js
|
|
455
467
|
- assets/js/dist/chunks/chunk-VZ5WKQVA.js
|
|
456
|
-
- assets/js/dist/chunks/chunk-WIRUK3OZ.js
|
|
457
468
|
- assets/js/dist/comments.js
|
|
458
469
|
- assets/js/dist/contact.js
|
|
459
470
|
- assets/js/dist/core.js
|
|
@@ -473,18 +484,44 @@ files:
|
|
|
473
484
|
- bin/datalog
|
|
474
485
|
- datalog-theme.gemspec
|
|
475
486
|
- lib/datalog-theme.rb
|
|
487
|
+
- lib/datalog/audit.rb
|
|
488
|
+
- lib/datalog/audit/checks.rb
|
|
489
|
+
- lib/datalog/audit/known_keys.rb
|
|
490
|
+
- lib/datalog/audit/site_reader.rb
|
|
491
|
+
- lib/datalog/audit/source_file.rb
|
|
492
|
+
- lib/datalog/citations/bibtex.rb
|
|
493
|
+
- lib/datalog/citations/entry.rb
|
|
494
|
+
- lib/datalog/citations/markup.rb
|
|
476
495
|
- lib/datalog/cli.rb
|
|
477
496
|
- lib/datalog/critical_css.rb
|
|
497
|
+
- lib/datalog/latex_speech.rb
|
|
498
|
+
- lib/datalog/latex_speech/words.json
|
|
499
|
+
- lib/datalog/packages.rb
|
|
500
|
+
- lib/datalog/packages/command.rb
|
|
501
|
+
- lib/datalog/packages/refresh.rb
|
|
478
502
|
- lib/datalog/plugin_system.rb
|
|
479
503
|
- lib/datalog/plugin_system/dependency_resolver.rb
|
|
480
504
|
- lib/datalog/plugins/citations.rb
|
|
481
505
|
- lib/datalog/plugins/comments.rb
|
|
482
506
|
- lib/datalog/plugins/search.rb
|
|
483
507
|
- lib/datalog/plugins/slides.rb
|
|
508
|
+
- lib/datalog/site_config.rb
|
|
484
509
|
- lib/datalog/slug.rb
|
|
510
|
+
- lib/datalog/social_cards.rb
|
|
511
|
+
- lib/datalog/social_cards/font.rb
|
|
512
|
+
- lib/datalog/social_cards/fonts/IBMPlexSans-Regular.ttf
|
|
513
|
+
- lib/datalog/social_cards/fonts/IBMPlexSerif-SemiBold.ttf
|
|
514
|
+
- lib/datalog/social_cards/fonts/OFL.txt
|
|
515
|
+
- lib/datalog/social_cards/geometry.rb
|
|
516
|
+
- lib/datalog/social_cards/outline.rb
|
|
517
|
+
- lib/datalog/social_cards/plain_text.rb
|
|
518
|
+
- lib/datalog/social_cards/template.rb
|
|
519
|
+
- lib/datalog/social_cards/template.svg
|
|
520
|
+
- lib/datalog/social_cards/typesetter.rb
|
|
485
521
|
- lib/datalog/theme/installed_files.rb
|
|
486
522
|
- lib/datalog/theme/package.rb
|
|
487
523
|
- lib/datalog/theme/repository_checkout.rb
|
|
524
|
+
- lib/datalog/theme/updater.rb
|
|
488
525
|
- lib/datalog/theme/version.rb
|
|
489
526
|
- lib/datalog/warning_filter.rb
|
|
490
527
|
homepage: https://github.com/DiogoRibeiro7/analytics-blog-jekyll
|