Skip to content

Commit 3af510f

Browse files
authored
Merge pull request #84 from 0xdevalias/jekyll-4-x-upgrade
Upgrade Jekyll to 4.x + associated cleanup
2 parents 102b94e + 618e30d commit 3af510f

28 files changed

+150
-361
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
_site
66
.jekyll-metadata
77
.sass-cache
8+
.jekyll-cache/Jekyll

Gemfile

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,26 @@
11
source 'https://rubygems.org'
22

3-
gem 'jekyll','~>3.8.0'
4-
gem 'redcarpet'
3+
gem 'jekyll','~>4.1.0'
54

65
# LSI (related posts)
7-
# Note: You need to install nmatrix and narray first, and/or export NMATRIX=1 NARRAY=1 before running bundle install, otherwise gsl won't use them
8-
gem 'narray'
6+
# Note: You need to install one of nmatrix or narray first, and export NMATRIX=1 or NARRAY=1 before running bundle install
7+
# otherwise gsl won't use them. Note that you can only use one or the other, not both.
8+
# see https://github.com/SciRuby/rb-gsl#nmatrix-and-narray-usage
9+
#
10+
# Both of these seem to be extremely outdated, see:
11+
# https://github.com/0xdevalias/devalias.net/issues/83
12+
# https://github.com/jekyll/classifier-reborn/issues/192
13+
# https://github.com/SciRuby/rb-gsl/issues/63
914
gem 'nmatrix'
10-
gem 'gsl'
15+
gem 'gsl' # Note: you need to install a compatible version (eg. 2.1) of gsl first: brew install gsl@2.1
1116
gem 'classifier-reborn'
1217

1318
group :jekyll_plugins do
14-
gem 'jekyll-admin'
19+
# gem 'jekyll-admin' # using outdated 1.4.x version of sinatra, see https://github.com/jekyll/jekyll-admin/issues/601
20+
gem 'jekyll-commonmark'
1521
gem 'jekyll-compose'
1622
gem 'jekyll-paginate'
23+
gem 'jekyll-postfiles'
1724
gem 'jekyll-redirect-from'
1825
gem 'jekyll-sitemap'
1926
gem 'jekyll-seo-tag'
@@ -24,7 +31,7 @@ group :jekyll_plugins do
2431
gem 'jekyll_version_plugin'
2532
gem 'jekyll-deploy'
2633
# gem 'jekyll-crosspost-to-medium'
27-
gem 'jekyll-webmention_io'
34+
# gem 'jekyll-webmention_io' # incompatible with jekyll 4, see https://github.com/aarongustafson/jekyll-webmention_io/issues/130
2835
gem 'jekyll-time-to-read'
2936
gem 'jekyll-twitter-plugin'
3037
end

Gemfile.lock

Lines changed: 74 additions & 128 deletions
Original file line numberDiff line numberDiff line change
@@ -1,186 +1,132 @@
11
GEM
22
remote: https://rubygems.org/
33
specs:
4-
addressable (2.5.2)
5-
public_suffix (>= 2.0.2, < 4.0)
6-
backports (3.11.3)
4+
addressable (2.7.0)
5+
public_suffix (>= 2.0.2, < 5.0)
6+
backports (3.18.1)
77
classifier-reborn (2.2.0)
88
fast-stemmer (~> 1.0)
99
colorator (1.1.0)
10-
concurrent-ruby (1.0.5)
11-
domain_name (0.5.20180417)
12-
unf (>= 0.0.5, < 1.0.0)
10+
commonmarker (0.21.0)
11+
ruby-enum (~> 0.5)
12+
concurrent-ruby (1.1.6)
1313
em-websocket (0.5.1)
1414
eventmachine (>= 0.12.9)
1515
http_parser.rb (~> 0.6.0)
16-
eventmachine (1.2.5)
17-
execjs (2.7.0)
18-
faraday (0.15.0)
16+
eventmachine (1.2.7)
17+
faraday (1.0.1)
1918
multipart-post (>= 1.2, < 3)
2019
fast-stemmer (1.0.2)
21-
ffi (1.9.23)
20+
ffi (1.13.1)
2221
forwardable-extended (2.6.0)
2322
gsl (2.1.0.3)
24-
htmlbeautifier (1.3.1)
25-
http (2.2.2)
26-
addressable (~> 2.3)
27-
http-cookie (~> 1.0)
28-
http-form_data (~> 1.0.1)
29-
http_parser.rb (~> 0.6.0)
30-
http-cookie (1.0.3)
31-
domain_name (~> 0.5)
32-
http-form_data (1.0.3)
3323
http_parser.rb (0.6.0)
34-
httparty (0.15.7)
35-
multi_xml (>= 0.5.2)
36-
i18n (0.9.5)
24+
i18n (1.8.4)
3725
concurrent-ruby (~> 1.0)
38-
jekyll (3.8.0)
26+
jekyll (4.1.1)
3927
addressable (~> 2.4)
4028
colorator (~> 1.0)
4129
em-websocket (~> 0.5)
42-
i18n (~> 0.7)
43-
jekyll-sass-converter (~> 1.0)
30+
i18n (~> 1.0)
31+
jekyll-sass-converter (~> 2.0)
4432
jekyll-watch (~> 2.0)
45-
kramdown (~> 1.14)
33+
kramdown (~> 2.1)
34+
kramdown-parser-gfm (~> 1.0)
4635
liquid (~> 4.0)
47-
mercenary (~> 0.3.3)
36+
mercenary (~> 0.4.0)
4837
pathutil (~> 0.9)
49-
rouge (>= 1.7, < 4)
38+
rouge (~> 3.0)
5039
safe_yaml (~> 1.0)
51-
jekyll-admin (0.8.0)
52-
addressable (~> 2.4)
53-
jekyll (~> 3.3)
54-
sinatra (~> 1.4)
55-
sinatra-contrib (~> 1.4)
56-
jekyll-compose (0.8.0)
57-
jekyll (~> 3.0)
40+
terminal-table (~> 1.8)
41+
jekyll-commonmark (1.3.1)
42+
commonmarker (~> 0.14)
43+
jekyll (>= 3.7, < 5.0)
44+
jekyll-compose (0.12.0)
45+
jekyll (>= 3.7, < 5.0)
5846
jekyll-deploy (0.0.2)
59-
jekyll-feed (0.9.3)
60-
jekyll (~> 3.3)
47+
jekyll-feed (0.15.0)
48+
jekyll (>= 3.7, < 5.0)
6149
jekyll-gist (1.5.0)
6250
octokit (~> 4.2)
63-
jekyll-github-metadata (2.9.4)
64-
jekyll (~> 3.1)
51+
jekyll-github-metadata (2.13.0)
52+
jekyll (>= 3.4, < 5.0)
6553
octokit (~> 4.0, != 4.4.0)
6654
jekyll-paginate (1.1.0)
67-
jekyll-redirect-from (0.13.0)
68-
jekyll (~> 3.3)
69-
jekyll-sass-converter (1.5.2)
70-
sass (~> 3.4)
71-
jekyll-seo-tag (2.4.0)
72-
jekyll (~> 3.3)
73-
jekyll-sitemap (1.2.0)
74-
jekyll (~> 3.3)
55+
jekyll-postfiles (3.1.0)
56+
jekyll (>= 3.8.6, < 5)
57+
jekyll-redirect-from (0.16.0)
58+
jekyll (>= 3.3, < 5.0)
59+
jekyll-sass-converter (2.1.0)
60+
sassc (> 2.0.1, < 3.0)
61+
jekyll-seo-tag (2.6.1)
62+
jekyll (>= 3.3, < 5.0)
63+
jekyll-sitemap (1.4.0)
64+
jekyll (>= 3.7, < 5.0)
7565
jekyll-time-to-read (0.1.2)
7666
jekyll
77-
jekyll-twitter-plugin (2.0.0)
78-
jekyll-watch (2.0.0)
67+
jekyll-twitter-plugin (2.1.0)
68+
jekyll-watch (2.2.1)
7969
listen (~> 3.0)
80-
jekyll-webmention_io (2.9.1)
81-
htmlbeautifier (~> 1.1)
82-
http (~> 2.0)
83-
jekyll (>= 2.0, < 4.0)
84-
json (~> 2.0)
85-
openssl (~> 2.0)
86-
string_inflection (~> 0.1)
87-
uglifier (~> 3.2)
88-
webmention (~> 0.1.6)
8970
jekyll_version_plugin (2.0.0)
90-
json (2.1.0)
91-
kramdown (1.16.2)
92-
link_header (0.0.8)
93-
liquid (4.0.0)
94-
listen (3.1.5)
95-
rb-fsevent (~> 0.9, >= 0.9.4)
96-
rb-inotify (~> 0.9, >= 0.9.7)
97-
ruby_dep (~> 1.2)
98-
mercenary (0.3.6)
99-
mini_portile2 (2.3.0)
100-
multi_json (1.13.1)
101-
multi_xml (0.6.0)
102-
multipart-post (2.0.0)
103-
narray (0.6.1.2)
71+
kramdown (2.3.0)
72+
rexml
73+
kramdown-parser-gfm (1.1.0)
74+
kramdown (~> 2.0)
75+
liquid (4.0.3)
76+
listen (3.2.1)
77+
rb-fsevent (~> 0.10, >= 0.10.3)
78+
rb-inotify (~> 0.9, >= 0.9.10)
79+
mercenary (0.4.0)
80+
multipart-post (2.1.1)
10481
nmatrix (0.2.4)
10582
packable (~> 1.3, >= 1.3.5)
106-
nokogiri (1.8.2)
107-
mini_portile2 (~> 2.3.0)
108-
octokit (4.8.0)
83+
octokit (4.18.0)
84+
faraday (>= 0.9)
10985
sawyer (~> 0.8.0, >= 0.5.3)
110-
openssl (2.1.0)
111-
packable (1.3.9)
86+
packable (1.3.14)
11287
backports
113-
pathutil (0.16.1)
88+
pathutil (0.16.2)
11489
forwardable-extended (~> 2.6)
115-
public_suffix (3.0.2)
116-
rack (1.6.9)
117-
rack-protection (1.5.5)
118-
rack
119-
rack-test (1.0.0)
120-
rack (>= 1.0, < 3)
121-
rb-fsevent (0.10.3)
122-
rb-inotify (0.9.10)
123-
ffi (>= 0.5.0, < 2)
124-
redcarpet (3.4.0)
125-
rouge (3.1.1)
126-
ruby_dep (1.5.0)
127-
safe_yaml (1.0.4)
128-
sass (3.5.6)
129-
sass-listen (~> 4.0.0)
130-
sass-listen (4.0.0)
131-
rb-fsevent (~> 0.9, >= 0.9.4)
132-
rb-inotify (~> 0.9, >= 0.9.7)
133-
sawyer (0.8.1)
134-
addressable (>= 2.3.5, < 2.6)
135-
faraday (~> 0.8, < 1.0)
136-
sinatra (1.4.8)
137-
rack (~> 1.5)
138-
rack-protection (~> 1.4)
139-
tilt (>= 1.3, < 3)
140-
sinatra-contrib (1.4.7)
141-
backports (>= 2.0)
142-
multi_json
143-
rack-protection
144-
rack-test
145-
sinatra (~> 1.4.0)
146-
tilt (>= 1.3, < 3)
147-
string_inflection (0.1.2)
148-
tilt (2.0.8)
149-
uglifier (3.2.0)
150-
execjs (>= 0.3.0, < 3)
151-
unf (0.1.4)
152-
unf_ext
153-
unf_ext (0.0.7.5)
154-
webmention (0.1.6)
155-
httparty (~> 0.15.5)
156-
json
157-
link_header (~> 0.0.8)
158-
nokogiri
90+
public_suffix (4.0.5)
91+
rb-fsevent (0.10.4)
92+
rb-inotify (0.10.1)
93+
ffi (~> 1.0)
94+
rexml (3.2.4)
95+
rouge (3.21.0)
96+
ruby-enum (0.8.0)
97+
i18n
98+
safe_yaml (1.0.5)
99+
sassc (2.4.0)
100+
ffi (~> 1.9)
101+
sawyer (0.8.2)
102+
addressable (>= 2.3.5)
103+
faraday (> 0.8, < 2.0)
104+
terminal-table (1.8.0)
105+
unicode-display_width (~> 1.1, >= 1.1.1)
106+
unicode-display_width (1.7.0)
159107

160108
PLATFORMS
161109
ruby
162110

163111
DEPENDENCIES
164112
classifier-reborn
165113
gsl
166-
jekyll (~> 3.8.0)
167-
jekyll-admin
114+
jekyll (~> 4.1.0)
115+
jekyll-commonmark
168116
jekyll-compose
169117
jekyll-deploy
170118
jekyll-feed
171119
jekyll-gist
172120
jekyll-github-metadata
173121
jekyll-paginate
122+
jekyll-postfiles
174123
jekyll-redirect-from
175124
jekyll-seo-tag
176125
jekyll-sitemap
177126
jekyll-time-to-read
178127
jekyll-twitter-plugin
179-
jekyll-webmention_io
180128
jekyll_version_plugin
181-
narray
182129
nmatrix
183-
redcarpet
184130

185131
BUNDLED WITH
186-
1.16.1
132+
2.1.4

PUBLISHING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,5 @@ Some useful commands to remember:
1111

1212
## Build & Deploy
1313

14-
* `jekyll build --lsi`
15-
* `jekyll deploy`
14+
* `bin/build`
15+
* `bin/deploy`

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ Feel free to create an issue/pull request for any typo's/bugs you might find :)
1010

1111
* Link to other posts
1212
* `[other post]({% post_url 2017-01-01-other-post %})`
13+
* Embed an image with [jekyll-postfiles](https://github.com/nhoizey/jekyll-postfiles#how-does-it-work)
14+
* create a folder under `_posts` named the same as your post's markdown file
15+
* add any images for your post there, along with the post's markdown file
16+
* use a relative markdown image tag to reference and embed the images
17+
* eg. `![a title or something](foo.jpg)`
1318
* Embed a gist with [jekyll-gist](https://github.com/jekyll/jekyll-gist)
1419
* `{% gist foo/12345678901234567890 %} `
1520
* Embed a tweet with [jekyll-twitter-plugin](https://github.com/rob-murray/jekyll-twitter-plugin)

_config.yml

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ github_branch: 'master'
4444
# base_url: https://twitter.com
4545

4646
# https://github.com/jekyll/github-metadata
47-
repository: alias1/devalias.net
47+
repository: 0xdevalias/devalias.net
4848

4949
#google_site_verification: ""
5050
# webmaster_verifications:
@@ -76,30 +76,26 @@ defaults:
7676
navigation: True
7777

7878
# Conversion
79-
markdown: redcarpet
80-
redcarpet:
81-
extensions:
82-
- "tables"
83-
- "autolink"
84-
- "strikethrough"
85-
- "space_after_headers"
86-
#- "with_toc_data"
87-
- "fenced_code_blocks"
79+
# https://jekyllrb.com/docs/configuration/markdown/
80+
# https://github.com/jekyll/jekyll-commonmark#configuration
81+
markdown: CommonMark
82+
83+
commonmark:
84+
options: ["UNSAFE", "FOOTNOTES", "STRIKETHROUGH_DOUBLE_TILDE", "VALIDATE_UTF8", "GITHUB_PRE_LANG", "HARDBREAKS"]
85+
extensions: ["autolink", "strikethrough", "table", "tasklist"]
86+
8887
lsi: false # Index for related posts (enabled by command line)
8988

9089
keep_files:
9190
- .git
9291
- .nojekyll # To prevent GitHub re-processing
9392

9493
exclude:
95-
- "Gemfile"
96-
- "Gemfile.lock"
9794
- "PUBLISHING.md"
9895
- "README.md"
9996
- "TODO.txt"
10097
- "ojekyll.txt"
10198
- "bin/"
102-
- ".jekyll-cache/"
10399

104100
# TODO: Enable these checks + fix any errors associated with them
105101
# liquid:

0 commit comments

Comments
 (0)