jekyll-docs 3.9.0 → 4.0.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.
Files changed (225) hide show
  1. checksums.yaml +4 -4
  2. data/lib/jekyll-docs.rb +3 -3
  3. data/site/404.html +10 -7
  4. data/site/css/screen.css +3 -1
  5. data/site/css/screen.css.map +28 -0
  6. data/site/docs/assets/index.html +412 -453
  7. data/site/docs/code_of_conduct/index.html +447 -501
  8. data/site/docs/collections/index.html +487 -674
  9. data/site/docs/community/bug/index.html +603 -0
  10. data/site/docs/community/index.html +635 -0
  11. data/site/docs/conduct/index.html +447 -515
  12. data/site/docs/configuration/default/index.html +682 -0
  13. data/site/docs/configuration/environments/index.html +641 -0
  14. data/site/docs/configuration/front-matter-defaults/index.html +738 -0
  15. data/site/docs/configuration/incremental-regeneration/index.html +631 -0
  16. data/site/docs/configuration/index.html +405 -1230
  17. data/site/docs/configuration/liquid/index.html +616 -0
  18. data/site/docs/configuration/markdown/index.html +766 -0
  19. data/site/docs/configuration/options/index.html +1011 -0
  20. data/site/docs/configuration/webrick/index.html +615 -0
  21. data/site/docs/continuous-integration/buddyworks/index.html +393 -479
  22. data/site/docs/continuous-integration/circleci/index.html +465 -481
  23. data/site/docs/continuous-integration/travis-ci/index.html +450 -507
  24. data/site/docs/contributing/index.html +425 -514
  25. data/site/docs/datafiles/index.html +411 -453
  26. data/site/docs/deployment-methods/index.html +9 -871
  27. data/site/docs/deployment/automated/index.html +663 -0
  28. data/site/docs/deployment/index.html +607 -0
  29. data/site/docs/deployment/manual/index.html +631 -0
  30. data/site/docs/deployment/third-party/index.html +639 -0
  31. data/site/docs/drafts/index.html +9 -634
  32. data/site/docs/extras/index.html +9 -687
  33. data/site/docs/front-matter/index.html +799 -0
  34. data/site/docs/frontmatter/index.html +9 -819
  35. data/site/docs/github-pages/index.html +407 -475
  36. data/site/docs/history/index.html +1370 -1154
  37. data/site/docs/home/index.html +9 -627
  38. data/site/docs/includes/index.html +425 -501
  39. data/site/docs/index.html +630 -9
  40. data/site/docs/installation/index.html +403 -540
  41. data/site/docs/installation/macos/index.html +716 -0
  42. data/site/docs/installation/other-linux/index.html +613 -0
  43. data/site/docs/installation/ubuntu/index.html +623 -0
  44. data/site/docs/installation/windows/index.html +733 -0
  45. data/site/docs/layouts/index.html +726 -0
  46. data/site/docs/liquid/filters/index.html +1169 -0
  47. data/site/docs/liquid/index.html +615 -0
  48. data/site/docs/liquid/tags/index.html +728 -0
  49. data/site/docs/maintaining/affinity-team-captain/index.html +395 -479
  50. data/site/docs/maintaining/avoiding-burnout/index.html +391 -475
  51. data/site/docs/maintaining/becoming-a-maintainer/index.html +391 -475
  52. data/site/docs/maintaining/index.html +391 -486
  53. data/site/docs/maintaining/merging-a-pull-request/index.html +406 -490
  54. data/site/docs/maintaining/releasing-a-new-version/index.html +409 -485
  55. data/site/docs/maintaining/reviewing-a-pull-request/index.html +392 -476
  56. data/site/docs/maintaining/special-labels/index.html +397 -481
  57. data/site/docs/maintaining/triaging-an-issue/index.html +394 -478
  58. data/site/docs/markdown-101/index.html +601 -0
  59. data/site/docs/migrations/index.html +396 -440
  60. data/site/docs/pages/index.html +408 -482
  61. data/site/docs/pagination/index.html +450 -509
  62. data/site/docs/permalinks/index.html +552 -587
  63. data/site/docs/plugins/commands/index.html +656 -0
  64. data/site/docs/plugins/converters/index.html +685 -0
  65. data/site/docs/plugins/filters/index.html +624 -0
  66. data/site/docs/plugins/generators/index.html +697 -0
  67. data/site/docs/plugins/hooks/index.html +838 -0
  68. data/site/docs/plugins/index.html +415 -1565
  69. data/site/docs/plugins/installation/index.html +681 -0
  70. data/site/docs/plugins/tags/index.html +699 -0
  71. data/site/docs/plugins/your-first-plugin/index.html +741 -0
  72. data/site/docs/posts/index.html +491 -627
  73. data/site/docs/quickstart/index.html +9 -645
  74. data/site/docs/resources/index.html +9 -761
  75. data/site/docs/ruby-101/index.html +640 -0
  76. data/site/docs/sites/index.html +9 -696
  77. data/site/docs/static-files/index.html +401 -433
  78. data/site/docs/step-by-step/01-setup/index.html +771 -0
  79. data/site/docs/step-by-step/02-liquid/index.html +756 -0
  80. data/site/docs/step-by-step/03-front-matter/index.html +730 -0
  81. data/site/docs/step-by-step/04-layouts/index.html +770 -0
  82. data/site/docs/step-by-step/05-includes/index.html +768 -0
  83. data/site/docs/step-by-step/06-data-files/index.html +738 -0
  84. data/site/docs/step-by-step/07-assets/index.html +773 -0
  85. data/site/docs/step-by-step/08-blogging/index.html +835 -0
  86. data/site/docs/step-by-step/09-collections/index.html +932 -0
  87. data/site/docs/step-by-step/10-deployment/index.html +842 -0
  88. data/site/docs/structure/index.html +411 -430
  89. data/site/docs/support/index.html +392 -476
  90. data/site/docs/templates/index.html +9 -1232
  91. data/site/docs/themes/index.html +487 -521
  92. data/site/docs/troubleshooting/index.html +443 -520
  93. data/site/docs/upgrading/0-to-2/index.html +437 -523
  94. data/site/docs/upgrading/2-to-3/index.html +422 -507
  95. data/site/docs/upgrading/3-to-4/index.html +765 -0
  96. data/site/docs/upgrading/index.html +395 -478
  97. data/site/docs/usage/index.html +409 -506
  98. data/site/docs/variables/index.html +504 -652
  99. data/site/docs/windows/index.html +9 -784
  100. data/site/feed.xml +269 -188
  101. data/site/feed/release.xml +324 -0
  102. data/site/fonts/lato-v14-latin-300.woff +0 -0
  103. data/site/fonts/lato-v14-latin-300.woff2 +0 -0
  104. data/site/fonts/lato-v14-latin-300italic.woff +0 -0
  105. data/site/fonts/lato-v14-latin-300italic.woff2 +0 -0
  106. data/site/fonts/lato-v14-latin-700.woff +0 -0
  107. data/site/fonts/lato-v14-latin-700.woff2 +0 -0
  108. data/site/fonts/lato-v14-latin-700italic.woff +0 -0
  109. data/site/fonts/lato-v14-latin-700italic.woff2 +0 -0
  110. data/site/fonts/lato-v14-latin-900.woff +0 -0
  111. data/site/fonts/lato-v14-latin-900.woff2 +0 -0
  112. data/site/fonts/lato-v14-latin-900italic.woff +0 -0
  113. data/site/fonts/lato-v14-latin-900italic.woff2 +0 -0
  114. data/site/fonts/lato-v14-latin-italic.woff +0 -0
  115. data/site/fonts/lato-v14-latin-italic.woff2 +0 -0
  116. data/site/fonts/lato-v14-latin-regular.woff +0 -0
  117. data/site/fonts/lato-v14-latin-regular.woff2 +0 -0
  118. data/site/help/index.html +9 -247
  119. data/site/img/forestry-logo.svg +19 -0
  120. data/site/img/jekyll-og.png +0 -0
  121. data/site/img/spacer.gif +0 -0
  122. data/site/index.html +56 -29
  123. data/site/jekyllconf/index.html +62 -35
  124. data/site/latest_version.txt +1 -1
  125. data/site/news/2013/05/05/jekyll-1-0-0-released/index.html +180 -115
  126. data/site/news/2013/05/08/jekyll-1-0-1-released/index.html +182 -117
  127. data/site/news/2013/05/12/jekyll-1-0-2-released/index.html +183 -118
  128. data/site/news/2013/06/07/jekyll-1-0-3-released/index.html +184 -119
  129. data/site/news/2013/07/14/jekyll-1-1-0-released/index.html +183 -118
  130. data/site/news/2013/07/24/jekyll-1-1-1-released/index.html +180 -115
  131. data/site/news/2013/07/25/jekyll-1-0-4-released/index.html +182 -117
  132. data/site/news/2013/07/25/jekyll-1-1-2-released/index.html +182 -117
  133. data/site/news/2013/09/06/jekyll-1-2-0-released/index.html +185 -120
  134. data/site/news/2013/09/14/jekyll-1-2-1-released/index.html +183 -118
  135. data/site/news/2013/10/28/jekyll-1-3-0-rc1-released/index.html +180 -115
  136. data/site/news/2013/11/04/jekyll-1-3-0-released/index.html +189 -124
  137. data/site/news/2013/11/26/jekyll-1-3-1-released/index.html +181 -116
  138. data/site/news/2013/12/07/jekyll-1-4-0-released/index.html +181 -116
  139. data/site/news/2013/12/09/jekyll-1-4-1-released/index.html +180 -115
  140. data/site/news/2013/12/16/jekyll-1-4-2-released/index.html +182 -117
  141. data/site/news/2014/01/13/jekyll-1-4-3-released/index.html +181 -116
  142. data/site/news/2014/03/24/jekyll-1-5-0-released/index.html +181 -116
  143. data/site/news/2014/03/27/jekyll-1-5-1-released/index.html +181 -116
  144. data/site/news/2014/05/06/jekyll-turns-2-0-0/index.html +184 -119
  145. data/site/news/2014/05/08/jekyll-2-0-3-released/index.html +180 -115
  146. data/site/news/2014/06/04/jekyll-stickers-1-dollar-stickermule/index.html +181 -116
  147. data/site/news/2014/06/28/jekyll-turns-21-i-mean-2-1-0/index.html +185 -120
  148. data/site/news/2014/07/01/jekyll-2-1-1-released/index.html +182 -117
  149. data/site/news/2014/07/29/jekyll-2-2-0-released/index.html +181 -116
  150. data/site/news/2014/08/10/jekyll-2-3-0-released/index.html +189 -124
  151. data/site/news/2014/09/09/jekyll-2-4-0-released/index.html +187 -122
  152. data/site/news/2014/11/05/jekylls-midlife-crisis-jekyll-turns-2-5-0/index.html +188 -123
  153. data/site/news/2014/11/09/jekyll-2-5-1-released/index.html +180 -115
  154. data/site/news/2014/11/12/jekyll-2-5-2-released/index.html +182 -117
  155. data/site/news/2014/12/17/alfredxing-welcome-to-jekyll-core/index.html +179 -114
  156. data/site/news/2014/12/22/jekyll-2-5-3-released/index.html +180 -115
  157. data/site/news/2015/01/20/jekyll-meet-and-greet/index.html +179 -114
  158. data/site/news/2015/01/24/jekyll-3-0-0-beta1-released/index.html +180 -115
  159. data/site/news/2015/02/26/introducing-jekyll-talk/index.html +180 -115
  160. data/site/news/2015/10/26/jekyll-3-0-released/index.html +185 -120
  161. data/site/news/2015/11/17/jekyll-3-0-1-released/index.html +184 -119
  162. data/site/news/2016/01/20/jekyll-3-0-2-released/index.html +182 -117
  163. data/site/news/2016/01/24/jekyll-3-1-0-released/index.html +186 -121
  164. data/site/news/2016/01/28/jekyll-3-1-1-released/index.html +183 -118
  165. data/site/news/2016/02/08/jekyll-3-0-3-released/index.html +181 -116
  166. data/site/news/2016/02/19/jekyll-3-1-2-released/index.html +182 -117
  167. data/site/news/2016/03/10/making-it-easier-to-contribute-to-jekyll/index.html +179 -114
  168. data/site/news/2016/04/19/jekyll-3-0-4-released/index.html +181 -116
  169. data/site/news/2016/04/19/jekyll-3-1-3-released/index.html +181 -116
  170. data/site/news/2016/04/26/jekyll-3-0-5-released/index.html +180 -115
  171. data/site/news/2016/05/18/jekyll-3-1-4-released/index.html +186 -121
  172. data/site/news/2016/05/18/jekyll-3-1-5-released/index.html +181 -116
  173. data/site/news/2016/05/19/jekyll-3-1-6-released/index.html +181 -116
  174. data/site/news/2016/06/03/update-on-jekyll-s-google-summer-of-code-projects/index.html +179 -114
  175. data/site/news/2016/07/26/jekyll-3-2-0-released/index.html +184 -119
  176. data/site/news/2016/08/02/jekyll-3-2-1-released/index.html +180 -115
  177. data/site/news/2016/08/24/jekyll-admin-initial-release/index.html +179 -114
  178. data/site/news/2016/10/06/jekyll-3-3-is-here/index.html +207 -142
  179. data/site/news/2016/11/14/jekyll-3-3-1-released/index.html +181 -116
  180. data/site/news/2017/01/18/jekyll-3-4-0-released/index.html +183 -118
  181. data/site/news/2017/03/02/jekyll-3-4-1-released/index.html +181 -116
  182. data/site/news/2017/03/09/jekyll-3-4-2-released/index.html +189 -124
  183. data/site/news/2017/03/21/jekyll-3-4-3-released/index.html +190 -125
  184. data/site/news/2017/06/15/jekyll-3-5-0-released/index.html +187 -122
  185. data/site/news/2017/07/17/jekyll-3-5-1-released/index.html +182 -117
  186. data/site/news/2017/08/12/jekyll-3-5-2-released/index.html +185 -120
  187. data/site/news/2017/09/21/jekyll-3-6-0-released/index.html +181 -116
  188. data/site/news/2017/10/19/diversity-open-source/index.html +181 -116
  189. data/site/news/2017/10/21/jekyll-3-6-2-released/index.html +183 -118
  190. data/site/news/2018/01/02/jekyll-3-7-0-released/index.html +184 -119
  191. data/site/news/2018/01/25/jekyll-3-7-2-released/index.html +189 -124
  192. data/site/news/2018/02/19/meet-jekyll-s-new-lead-developer/index.html +180 -115
  193. data/site/news/2018/02/24/jekyll-3-7-3-released/index.html +185 -120
  194. data/site/news/2018/04/19/development-update/index.html +699 -0
  195. data/site/news/2018/04/19/jekyll-3-8-0-released/index.html +715 -0
  196. data/site/news/2018/05/01/jekyll-3-8-1-released/index.html +182 -117
  197. data/site/news/2018/05/19/jekyll-3-8-2-released/index.html +181 -116
  198. data/site/news/2018/06/05/jekyll-3-8-3-released/index.html +183 -118
  199. data/site/news/2018/08/01/jekyll-sponsoring/index.html +748 -0
  200. data/site/news/2018/09/19/security-fixes-for-3-6-3-7-3-8/index.html +692 -0
  201. data/site/news/2018/11/04/jekyll-3-8-5-released/index.html +682 -0
  202. data/site/news/2019/03/18/jekyll-4-0-0-pre-alpha1-released/index.html +710 -0
  203. data/site/news/2019/07/02/jekyll-3-8-6-released/index.html +180 -115
  204. data/site/news/2019/07/20/jekyll-4-0-0-pre-beta1-released/index.html +11 -0
  205. data/site/news/2019/08/04/jekyll-4-0-0-pre-beta1-released/index.html +708 -0
  206. data/site/news/2019/08/20/jekyll-4-0-0-released/index.html +809 -0
  207. data/site/news/index.html +976 -326
  208. data/site/news/releases/index.html +820 -321
  209. data/site/{philosophy.html → philosophy/index.html} +1 -1
  210. data/site/redirects.json +1 -1
  211. data/site/resources/index.html +332 -0
  212. data/site/showcase/index.html +844 -0
  213. data/site/sitemap.xml +256 -81
  214. data/site/team/index.html +63 -77
  215. data/site/tutorials/cache-api/index.html +418 -0
  216. data/site/tutorials/convert-site-to-jekyll/index.html +155 -124
  217. data/site/tutorials/custom-404-page/index.html +76 -43
  218. data/site/tutorials/home/index.html +64 -37
  219. data/site/tutorials/navigation/index.html +186 -103
  220. data/site/tutorials/orderofinterpretation/index.html +80 -53
  221. data/site/tutorials/using-jekyll-with-bundler/index.html +80 -51
  222. data/site/tutorials/video-walkthroughs/index.html +62 -35
  223. metadata +102 -13
  224. data/site/community/index.html +0 -11
  225. data/site/docs/continuous-integration/index.html +0 -681
@@ -0,0 +1,765 @@
1
+ <!DOCTYPE HTML>
2
+ <html lang="en-US">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <meta name="generator" content="Jekyll v4.0.0">
7
+ <link type="application/atom+xml" rel="alternate" href="https://jekyllrb.com/feed.xml" title="Jekyll • Simple, blog-aware, static sites" />
8
+ <link type="application/atom+xml" rel="alternate" href="/feed/release.xml" title="Jekyll releases posts" />
9
+ <link rel="alternate" type="application/atom+xml" title="Recent commits to Jekyll’s master branch" href="https://github.com/jekyll/jekyll/commits/master.atom">
10
+ <link rel="preload" href="/fonts/lato-v14-latin-300.woff2" as="font" type="font/woff2" crossorigin />
11
+ <link rel="preload" href="/fonts/lato-v14-latin-700.woff2" as="font" type="font/woff2" crossorigin />
12
+ <link rel="preload" href="/css/screen.css" as="style">
13
+ <link rel="stylesheet" href="/css/screen.css">
14
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
15
+ <!-- Begin Jekyll SEO tag v2.6.1 -->
16
+ <title>Upgrading from 3.x to 4.x | Jekyll • Simple, blog-aware, static sites</title>
17
+ <meta name="generator" content="Jekyll v4.0.0" />
18
+ <meta property="og:title" content="Upgrading from 3.x to 4.x" />
19
+ <meta property="og:locale" content="en_US" />
20
+ <meta name="description" content="A few things have changed in Jekyll 4." />
21
+ <meta property="og:description" content="A few things have changed in Jekyll 4." />
22
+ <link rel="canonical" href="https://jekyllrb.com/docs/upgrading/3-to-4/" />
23
+ <meta property="og:url" content="https://jekyllrb.com/docs/upgrading/3-to-4/" />
24
+ <meta property="og:site_name" content="Jekyll • Simple, blog-aware, static sites" />
25
+ <meta property="og:image" content="https://jekyllrb.com/img/jekyll-og.png" />
26
+ <meta property="og:type" content="article" />
27
+ <meta property="article:published_time" content="2019-09-11T07:30:27-07:00" />
28
+ <meta name="twitter:card" content="summary_large_image" />
29
+ <meta property="twitter:image" content="https://jekyllrb.com/img/jekyll-og.png" />
30
+ <meta property="twitter:title" content="Upgrading from 3.x to 4.x" />
31
+ <meta name="twitter:site" content="@jekyllrb" />
32
+ <meta name="google-site-verification" content="onQcXpAvtHBrUI5LlroHNE_FP0b2qvFyPq7VZw36iEY" />
33
+ <script type="application/ld+json">
34
+ {"description":"A few things have changed in Jekyll 4.","@type":"BlogPosting","mainEntityOfPage":{"@type":"WebPage","@id":"https://jekyllrb.com/docs/upgrading/3-to-4/"},"headline":"Upgrading from 3.x to 4.x","dateModified":"2019-09-11T07:30:27-07:00","url":"https://jekyllrb.com/docs/upgrading/3-to-4/","datePublished":"2019-09-11T07:30:27-07:00","image":"https://jekyllrb.com/img/jekyll-og.png","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://jekyllrb.com/img/logo-2x.png"}},"@context":"https://schema.org"}</script>
35
+ <!-- End Jekyll SEO tag -->
36
+
37
+ <!--[if lt IE 9]>
38
+ <script src="/js/html5shiv.min.js"></script>
39
+ <script src="/js/respond.min.js"></script>
40
+ <![endif]-->
41
+ </head>
42
+
43
+
44
+ <body class="wrap">
45
+ <header>
46
+ <div class="flexbox">
47
+ <div class="center-on-mobiles">
48
+ <h1>
49
+ <a href="/" class="logo">
50
+ <span class="sr-only">Jekyll</span>
51
+ <img src="/img/logo-2x.png" width="140" height="65" alt="Jekyll Logo">
52
+ </a>
53
+ </h1>
54
+ </div>
55
+ <nav class="main-nav hide-on-mobiles">
56
+ <ul>
57
+
58
+ <li>
59
+ <a href="/">Home</a>
60
+ </li>
61
+
62
+ <li class="current">
63
+ <a href="/docs/">Docs</a>
64
+ </li>
65
+
66
+ <li>
67
+ <a href="/resources/">Resources</a>
68
+ </li>
69
+
70
+ <li>
71
+ <a href="/showcase/">Showcase</a>
72
+ </li>
73
+
74
+ <li>
75
+ <a href="/news/">News</a>
76
+ </li>
77
+
78
+ </ul>
79
+
80
+ </nav>
81
+ <div class="search hide-on-mobiles">
82
+ <input type="text" id="docsearch-input" placeholder="Search the docs…">
83
+
84
+ </div>
85
+ <div class="meta hide-on-mobiles">
86
+ <ul>
87
+ <li>
88
+ <a href="https://github.com/jekyll/jekyll/releases/tag/v4.0.0">v4.0.0</a>
89
+ </li>
90
+ <li>
91
+ <a href="https://github.com/jekyll/jekyll">GitHub</a>
92
+ </li>
93
+ </ul>
94
+ </div>
95
+ </div>
96
+ <nav class="mobile-nav show-on-mobiles">
97
+ <ul>
98
+
99
+ <li>
100
+ <a href="/">Home</a>
101
+ </li>
102
+
103
+ <li class="current">
104
+ <a href="/docs/">Docs</a>
105
+ </li>
106
+
107
+ <li>
108
+ <a href="/resources/">Resources</a>
109
+ </li>
110
+
111
+
112
+ <li>
113
+ <a href="/news/">News</a>
114
+ </li>
115
+
116
+ <li>
117
+ <a href="https://github.com/jekyll/jekyll">GitHub</a>
118
+ </li>
119
+ </ul>
120
+
121
+ </nav>
122
+ </header>
123
+
124
+
125
+ <section class="docs">
126
+ <div class="grid">
127
+
128
+ <div class="docs-nav-mobile unit whole show-on-mobiles">
129
+ <select onchange="if (this.value) window.location.href=this.value">
130
+ <option value="">Navigate the docs…</option>
131
+
132
+ <optgroup label="Getting Started">
133
+
134
+
135
+ <option value="/docs/">
136
+ Quickstart
137
+ </option>
138
+
139
+
140
+ <option value="/docs/ruby-101/">
141
+ Ruby 101
142
+ </option>
143
+
144
+
145
+ <option value="/docs/installation/">
146
+ Installation
147
+ </option>
148
+
149
+
150
+ <option value="/docs/community/">
151
+ Community
152
+ </option>
153
+
154
+
155
+ <option value="/docs/step-by-step/01-setup/">
156
+ Step by Step Tutorial
157
+ </option>
158
+
159
+ </optgroup>
160
+
161
+ <optgroup label="Build">
162
+
163
+
164
+ <option value="/docs/usage/">
165
+ Command Line Usage
166
+ </option>
167
+
168
+
169
+ <option value="/docs/configuration/">
170
+ Configuration
171
+ </option>
172
+
173
+ </optgroup>
174
+
175
+ <optgroup label="Content">
176
+
177
+
178
+ <option value="/docs/pages/">
179
+ Pages
180
+ </option>
181
+
182
+
183
+ <option value="/docs/posts/">
184
+ Posts
185
+ </option>
186
+
187
+
188
+ <option value="/docs/front-matter/">
189
+ Front Matter
190
+ </option>
191
+
192
+
193
+ <option value="/docs/collections/">
194
+ Collections
195
+ </option>
196
+
197
+
198
+ <option value="/docs/datafiles/">
199
+ Data Files
200
+ </option>
201
+
202
+
203
+ <option value="/docs/assets/">
204
+ Assets
205
+ </option>
206
+
207
+
208
+ <option value="/docs/static-files/">
209
+ Static Files
210
+ </option>
211
+
212
+ </optgroup>
213
+
214
+ <optgroup label="Site Structure">
215
+
216
+
217
+ <option value="/docs/structure/">
218
+ Directory Structure
219
+ </option>
220
+
221
+
222
+ <option value="/docs/liquid/">
223
+ Liquid
224
+ </option>
225
+
226
+
227
+ <option value="/docs/variables/">
228
+ Variables
229
+ </option>
230
+
231
+
232
+ <option value="/docs/includes/">
233
+ Includes
234
+ </option>
235
+
236
+
237
+ <option value="/docs/layouts/">
238
+ Layouts
239
+ </option>
240
+
241
+
242
+ <option value="/docs/permalinks/">
243
+ Permalinks
244
+ </option>
245
+
246
+
247
+ <option value="/docs/themes/">
248
+ Themes
249
+ </option>
250
+
251
+
252
+ <option value="/docs/pagination/">
253
+ Pagination
254
+ </option>
255
+
256
+ </optgroup>
257
+
258
+ <optgroup label="Guides">
259
+
260
+
261
+ <option value="/docs/plugins/">
262
+ Plugins
263
+ </option>
264
+
265
+
266
+ <option value="/docs/migrations/">
267
+ Blog Migrations
268
+ </option>
269
+
270
+
271
+ <option value="/docs/upgrading/">
272
+ Upgrading
273
+ </option>
274
+
275
+
276
+ <option value="/docs/deployment/">
277
+ Deployment
278
+ </option>
279
+
280
+ </optgroup>
281
+
282
+ </select>
283
+ </div>
284
+
285
+
286
+ <div class="unit four-fifths">
287
+ <article>
288
+ <div class="improve right hide-on-mobiles">
289
+ <a data-proofer-ignore href="https://github.com/jekyll/jekyll/edit/master/docs/_docs/upgrading/3-to-4.md"><i class="fa fa-pencil"></i> &nbsp;Improve this page</a>
290
+ </div>
291
+ <h1>Upgrading from 3.x to 4.x</h1>
292
+ <p>A few things have changed in Jekyll 4.</p>
293
+
294
+ <p>Before we dive in, you need to have at least Ruby 2.4.0
295
+ installed.</p>
296
+
297
+ <p>Run the following in your terminal to check</p>
298
+
299
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre class="highlight"><code>ruby <span class="nt">-v</span>
300
+ ruby 2.6.3p62 <span class="o">(</span>2019-04-16 revision 67580<span class="o">)</span>
301
+ </code></pre></div></div>
302
+
303
+ <p>If you’re using a supported Ruby version &gt; 2.4.0, go ahead
304
+ and fetch the latest version of Jekyll:</p>
305
+
306
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre class="highlight"><code>gem update jekyll
307
+ </code></pre></div></div>
308
+
309
+ <div class="note warning">
310
+ <h5><code>post_url</code> Tag and Baseurl</h5>
311
+ <p>&nbsp;</p>
312
+ <p>
313
+ The <code>post_url</code> tag now incorporates the <code>relative_url</code> filter within itself
314
+ and therefore automatically prepends your site's <code>baseurl</code> to the post's <code>url</code>
315
+ value.
316
+ </p>
317
+ <p>
318
+ Please ensure that you change all instances of the <code>post_url</code> usage as following:
319
+ </p>
320
+
321
+
322
+ <figure class="highlight"><pre><code class="language-diff" data-lang="diff"><span class="gd">- {{ site.baseurl }}/{% post_url 2018-03-20-hello-world.markdown %}
323
+ </span><span class="gi">+ {% post_url 2018-03-20-hello-world.markdown %}</span></code></pre></figure>
324
+
325
+ </div>
326
+
327
+ <h2 id="template-rendering">Template rendering</h2>
328
+
329
+ <p>We’ve slightly altered the way Jekyll parses and renders your various templates
330
+ to improve the overall build times. Jekyll now parses a template once, caches it
331
+ internally and then renders the parsed template multiple times as required by
332
+ your pages and documents.</p>
333
+
334
+ <p>The downside to this is that some of the community-authored plugins may not work
335
+ as they previously used to.</p>
336
+
337
+ <h2 id="for-plugin-authors">For plugin authors</h2>
338
+
339
+ <ul>
340
+ <li>
341
+ <p>If your plugin depends on the following code: <code class="highlighter-rouge">site.liquid_renderer.file(path).parse(content)</code>,
342
+ note that the return value (<code class="highlighter-rouge">template</code>, an instance of <em><code class="highlighter-rouge">Liquid::Template</code></em>), from that line will
343
+ always be the <strong>same object</strong> for a given <code class="highlighter-rouge">path</code>. <br />
344
+ The <em><code class="highlighter-rouge">template</code></em> instance is then rendered as previously, with respect to the <code class="highlighter-rouge">payload</code> passed to it.
345
+ You’ll therefore have to ensure that <em><code class="highlighter-rouge">payload</code></em> is not memoized or cached in your plugin instance.</p>
346
+ </li>
347
+ <li>
348
+ <p>If its a requirement that <code class="highlighter-rouge">template</code> you get from the above step <em>be different</em> at all times,
349
+ you can invoke <em><code class="highlighter-rouge">Liquid::Template</code></em> directly:</p>
350
+
351
+ <div class="language-diff highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="gd">- template = site.liquid_renderer.file(path).parse(content)
352
+ </span><span class="gi">+ template = Liquid::Template.parse(content)
353
+ </span></code></pre></div> </div>
354
+ </li>
355
+ </ul>
356
+
357
+ <h2 id="exclusion-changes">Exclusion changes</h2>
358
+
359
+ <p>We’ve enhanced our default exclusion array.
360
+ It now looks like the following:</p>
361
+
362
+ <div class="language-yaml highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1"># default excludes</span>
363
+ <span class="na">exclude</span><span class="pi">:</span>
364
+ <span class="pi">-</span> <span class="s">.sass-cache/</span>
365
+ <span class="pi">-</span> <span class="s">.jekyll-cache/</span>
366
+ <span class="pi">-</span> <span class="s">gemfiles/</span>
367
+ <span class="pi">-</span> <span class="s">Gemfile</span>
368
+ <span class="pi">-</span> <span class="s">Gemfile.lock</span>
369
+ <span class="pi">-</span> <span class="s">node_modules/</span>
370
+ <span class="pi">-</span> <span class="s">vendor/bundle/</span>
371
+ <span class="pi">-</span> <span class="s">vendor/cache/</span>
372
+ <span class="pi">-</span> <span class="s">vendor/gems/</span>
373
+ <span class="pi">-</span> <span class="s">vendor/ruby/</span>
374
+ </code></pre></div></div>
375
+
376
+ <p>What’s new is that this array <strong>does not get overridden by the <code class="highlighter-rouge">exclude</code> array
377
+ in the user’s config file anymore</strong>. The user’s exclude entries simply get
378
+ <strong>added</strong> to the above default array (if the entry isn’t already excluded).</p>
379
+
380
+ <p>To forcibly “process” directories or files that have been excluded, list them
381
+ in the <code class="highlighter-rouge">include</code> array instead:</p>
382
+
383
+ <div class="language-yaml highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1"># overrides your excluded items configuration and the default include array ([".htaccess"])</span>
384
+ <span class="na">include</span><span class="pi">:</span>
385
+ <span class="pi">-</span> <span class="s">.htaccess</span>
386
+ <span class="pi">-</span> <span class="s">node_modules/uglifier/index.js</span>
387
+ </code></pre></div></div>
388
+
389
+ <p>The above configuration directs Jekyll to handle only
390
+ <code class="highlighter-rouge">node_modules/uglifier/index.js</code> while ignoring every other file in the
391
+ <code class="highlighter-rouge">node_modules</code> directory since that directory is “excluded” by default.</p>
392
+
393
+ <p>Note that the default <code class="highlighter-rouge">include</code> array still gets overridden by the <code class="highlighter-rouge">include</code>
394
+ array in your config file. So, be sure to add <code class="highlighter-rouge">.htaccess</code> to the list if you
395
+ need that file to be present in the generated site.</p>
396
+
397
+ <h2 id="kramdown-v2">Kramdown v2</h2>
398
+
399
+ <p>Jekyll has dropped support for <code class="highlighter-rouge">kramdown-1.x</code> entirely.</p>
400
+
401
+ <p>From <a href="https://kramdown.gettalong.org/news.html#kramdown-200-released"><code class="highlighter-rouge">v2.0</code> onwards</a>
402
+ kramdown requires specific extensions to be additionally installed to use
403
+ certain features are desired outside of kramdown’s core functionality.</p>
404
+
405
+ <p>Out of all the extensions listed in the report linked above, gem
406
+ <code class="highlighter-rouge">kramdown-parser-gfm</code> is automatically installed along with Jekyll 4.0. The
407
+ remaining extensions will have to be manually installed by the user depending on
408
+ desired funtionality, by listing the extension’s gem-name in their <code class="highlighter-rouge">Gemfile</code>.</p>
409
+
410
+ <p>Notes:</p>
411
+ <ul>
412
+ <li>
413
+ <p><code class="highlighter-rouge">kramdown-converter-pdf</code> will be ignored by Jekyll Core. To have Jekyll convert Markdown to PDF
414
+ you’ll have to depend on a plugin that subclasses <code class="highlighter-rouge">Jekyll::Converter</code> with the
415
+ <a href="/docs/plugins/converters/">required methods</a>.</p>
416
+
417
+ <p>For example:</p>
418
+
419
+ <div class="language-ruby highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">module</span> <span class="nn">Jekyll</span>
420
+ <span class="no">External</span><span class="p">.</span><span class="nf">require_with_graceful_fail</span> <span class="s2">"kramdown-converter-pdf"</span>
421
+
422
+ <span class="k">class</span> <span class="nc">Markdown2PDF</span> <span class="o">&lt;</span> <span class="no">Converter</span>
423
+ <span class="n">safe</span> <span class="kp">true</span>
424
+ <span class="n">priority</span> <span class="ss">:low</span>
425
+
426
+ <span class="k">def</span> <span class="nf">matches</span><span class="p">(</span><span class="n">ext</span><span class="p">)</span>
427
+ <span class="c1"># match only files that have an extension exactly ".markdown"</span>
428
+ <span class="n">ext</span> <span class="o">=~</span> <span class="sr">/^\.markdown$/</span>
429
+ <span class="k">end</span>
430
+
431
+ <span class="k">def</span> <span class="nf">convert</span><span class="p">(</span><span class="n">content</span><span class="p">)</span>
432
+ <span class="no">Kramdown</span><span class="o">::</span><span class="no">Document</span><span class="p">.</span><span class="nf">new</span><span class="p">(</span><span class="n">content</span><span class="p">).</span><span class="nf">to_pdf</span>
433
+ <span class="k">end</span>
434
+
435
+ <span class="k">def</span> <span class="nf">output_ext</span>
436
+ <span class="s2">".pdf"</span>
437
+ <span class="k">end</span>
438
+ <span class="k">end</span>
439
+ <span class="k">end</span>
440
+ </code></pre></div> </div>
441
+ </li>
442
+ <li>
443
+ <p>Vendors that provide a versioned Jekyll Environment Image (e.g. Docker Image, GitHub Pages, etc)
444
+ will have to manually whitelist kramdown’s extension gems in their distributions for Jekyll 4.0.</p>
445
+ </li>
446
+ </ul>
447
+
448
+ <h2 id="deprecated-configuration-options">Deprecated Configuration Options</h2>
449
+
450
+ <p>Jekyll 4.0 has dropped support for all legacy configuration options that were deprecated over multiple
451
+ releases in the previous series.</p>
452
+
453
+ <p>To that end, we shall no longer output a deprecation warning when we encounter a legacy config key nor
454
+ shall we gracefully assign their values to the newer counterparts. Depending on the key, it shall either
455
+ be ignored or raise an <code class="highlighter-rouge">InvalidConfigurationError</code> error if the key is still valid but the associated
456
+ value is not of the valid type.</p>
457
+
458
+ </article>
459
+ </div>
460
+
461
+ <div class="unit one-fifth hide-on-mobiles">
462
+ <aside>
463
+
464
+ <h4>Getting Started</h4>
465
+ <ul>
466
+
467
+
468
+ <li>
469
+ <a href="/docs/">
470
+ Quickstart
471
+ </a>
472
+ </li>
473
+
474
+
475
+ <li>
476
+ <a href="/docs/ruby-101/">
477
+ Ruby 101
478
+ </a>
479
+ </li>
480
+
481
+
482
+ <li>
483
+ <a href="/docs/installation/">
484
+ Installation
485
+ </a>
486
+ </li>
487
+
488
+
489
+ <li>
490
+ <a href="/docs/community/">
491
+ Community
492
+ </a>
493
+ </li>
494
+
495
+
496
+ <li>
497
+ <a href="/docs/step-by-step/01-setup/">
498
+ Step by Step Tutorial
499
+ </a>
500
+ </li>
501
+
502
+ </ul>
503
+
504
+ <h4>Build</h4>
505
+ <ul>
506
+
507
+
508
+ <li>
509
+ <a href="/docs/usage/">
510
+ Command Line Usage
511
+ </a>
512
+ </li>
513
+
514
+
515
+ <li>
516
+ <a href="/docs/configuration/">
517
+ Configuration
518
+ </a>
519
+ </li>
520
+
521
+ </ul>
522
+
523
+ <h4>Content</h4>
524
+ <ul>
525
+
526
+
527
+ <li>
528
+ <a href="/docs/pages/">
529
+ Pages
530
+ </a>
531
+ </li>
532
+
533
+
534
+ <li>
535
+ <a href="/docs/posts/">
536
+ Posts
537
+ </a>
538
+ </li>
539
+
540
+
541
+ <li>
542
+ <a href="/docs/front-matter/">
543
+ Front Matter
544
+ </a>
545
+ </li>
546
+
547
+
548
+ <li>
549
+ <a href="/docs/collections/">
550
+ Collections
551
+ </a>
552
+ </li>
553
+
554
+
555
+ <li>
556
+ <a href="/docs/datafiles/">
557
+ Data Files
558
+ </a>
559
+ </li>
560
+
561
+
562
+ <li>
563
+ <a href="/docs/assets/">
564
+ Assets
565
+ </a>
566
+ </li>
567
+
568
+
569
+ <li>
570
+ <a href="/docs/static-files/">
571
+ Static Files
572
+ </a>
573
+ </li>
574
+
575
+ </ul>
576
+
577
+ <h4>Site Structure</h4>
578
+ <ul>
579
+
580
+
581
+ <li>
582
+ <a href="/docs/structure/">
583
+ Directory Structure
584
+ </a>
585
+ </li>
586
+
587
+
588
+ <li>
589
+ <a href="/docs/liquid/">
590
+ Liquid
591
+ </a>
592
+ </li>
593
+
594
+
595
+ <li>
596
+ <a href="/docs/variables/">
597
+ Variables
598
+ </a>
599
+ </li>
600
+
601
+
602
+ <li>
603
+ <a href="/docs/includes/">
604
+ Includes
605
+ </a>
606
+ </li>
607
+
608
+
609
+ <li>
610
+ <a href="/docs/layouts/">
611
+ Layouts
612
+ </a>
613
+ </li>
614
+
615
+
616
+ <li>
617
+ <a href="/docs/permalinks/">
618
+ Permalinks
619
+ </a>
620
+ </li>
621
+
622
+
623
+ <li>
624
+ <a href="/docs/themes/">
625
+ Themes
626
+ </a>
627
+ </li>
628
+
629
+
630
+ <li>
631
+ <a href="/docs/pagination/">
632
+ Pagination
633
+ </a>
634
+ </li>
635
+
636
+ </ul>
637
+
638
+ <h4>Guides</h4>
639
+ <ul>
640
+
641
+
642
+ <li>
643
+ <a href="/docs/plugins/">
644
+ Plugins
645
+ </a>
646
+ </li>
647
+
648
+
649
+ <li>
650
+ <a href="/docs/migrations/">
651
+ Blog Migrations
652
+ </a>
653
+ </li>
654
+
655
+
656
+ <li>
657
+ <a href="/docs/upgrading/">
658
+ Upgrading
659
+ </a>
660
+ </li>
661
+
662
+
663
+ <li>
664
+ <a href="/docs/deployment/">
665
+ Deployment
666
+ </a>
667
+ </li>
668
+
669
+ </ul>
670
+
671
+ </aside>
672
+ </div>
673
+
674
+
675
+ <div class="clear"></div>
676
+
677
+ </div>
678
+ </section>
679
+
680
+
681
+ <footer>
682
+ <div class="grid">
683
+ <div class="unit one-third center-on-mobiles">
684
+ <p>Jekyll is lovingly maintained by the <a href="/team/">core team</a> of volunteers. </p>
685
+ <p>The contents of this website are <br />&copy;&nbsp;2019 under the terms of the <a href="https://github.com/jekyll/jekyll/blob/master/LICENSE">MIT&nbsp;License</a>.</p>
686
+ </div>
687
+ <div class="unit two-thirds align-right center-on-mobiles">
688
+ <p>
689
+ Proudly hosted by
690
+ <a href="https://github.com">
691
+ <img src="/img/footer-logo.png" width="100" height="30" alt="GitHub • Social coding">
692
+ </a>
693
+ </p>
694
+ </div>
695
+ <div class="unit two-thirds align-right center-on-mobiles">
696
+ <p>
697
+ Jekyll is funded thanks to its
698
+ <a href="https://github.com/jekyll/jekyll#sponsors">
699
+ sponsors!
700
+ </a>
701
+ </p>
702
+ </div>
703
+ </div>
704
+ </footer>
705
+
706
+ <script>
707
+ var anchorForId = function (id) {
708
+ var anchor = document.createElement("a");
709
+ anchor.className = "header-link";
710
+ anchor.href = "#" + id;
711
+ anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
712
+ anchor.title = "Permalink";
713
+ return anchor;
714
+ };
715
+
716
+ var linkifyAnchors = function (level, containingElement) {
717
+ var headers = containingElement.getElementsByTagName("h" + level);
718
+ for (var h = 0; h < headers.length; h++) {
719
+ var header = headers[h];
720
+
721
+ if (typeof header.id !== "undefined" && header.id !== "") {
722
+ header.appendChild(anchorForId(header.id));
723
+ }
724
+ }
725
+ };
726
+
727
+ document.onreadystatechange = function () {
728
+ if (this.readyState === "complete") {
729
+ var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
730
+ if (!contentBlock) {
731
+ return;
732
+ }
733
+ for (var level = 1; level <= 6; level++) {
734
+ linkifyAnchors(level, contentBlock);
735
+ }
736
+ }
737
+ };
738
+ </script>
739
+
740
+
741
+ <!-- Google Analytics (https://www.google.com/analytics) -->
742
+ <script>
743
+ !function(j,e,k,y,l,L){j.GoogleAnalyticsObject=y,j[y]||(j[y]=function(){
744
+ (j[y].q=j[y].q||[]).push(arguments)}),j[y].l=+new Date,l=e.createElement(k),
745
+ L=e.getElementsByTagName(k)[0],l.src='https://www.google-analytics.com/analytics.js',
746
+ L.parentNode.insertBefore(l,L)}(window,document,'script','ga');
747
+
748
+ ga('create', 'UA-50755011-1', 'jekyllrb.com');
749
+ ga('send', 'pageview');
750
+
751
+ </script>
752
+
753
+
754
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
755
+ <script type="text/javascript"> docsearch({
756
+ apiKey: '50fe39c839958dfad797000f33e2ec17',
757
+ indexName: 'jekyllrb',
758
+ inputSelector: '#docsearch-input',
759
+ enhancedSearchInput: true,
760
+ debug: false // Set debug to true if you want to inspect the dropdown
761
+ });
762
+ </script>
763
+
764
+ </body>
765
+ </html>