Jekyll2020-08-05T11:55:36-07:00https://jekyllrb.com/feed.xmlJekyll • Simple, blog-aware, static sitesTransform your plain text into static websites and blogsJekyll 3.8.6 Released2019-07-02T08:21:02-07:002019-07-02T08:21:02-07:00https://jekyllrb.com/news/2019/07/02/jekyll-3-8-6-released<p>We have another patch release in the 3.8 series! This time, we have one security patch and a handful of bug patches, including:</p> <ul> <li>Filter symlinks from theme gems</li> <li>Fix excerpt handling of some Liquid tags</li> <li>Handle case where a theme directory doesn’t exist</li> <li>A few internal optimizations to reduce memory overhead</li> </ul> <p>… and a few more! You can check out the patches and see all the details in <a href="/docs/history/#v3-8-6">the release notes</a></p> <p>Happy Jekylling!</p>parkrWe have another patch release in the 3.8 series! This time, we have one security patch and a handful of bug patches, including:Jekyll 3.8.3 Released2018-06-05T07:00:00-07:002018-06-05T07:00:00-07:00https://jekyllrb.com/news/2018/06/05/jekyll-3-8-3-released<p>This release fixes a regression in 3.8 where collections with <code class="language-plaintext highlighter-rouge">published: false</code> do not show when using the <code class="language-plaintext highlighter-rouge">--unpublished</code> flag.</p> <p>Thanks to @philipbelesky for reporting and fixing this issue; collections with <code class="language-plaintext highlighter-rouge">published: false</code> now behave the same way as Posts.</p>pathawksThis release fixes a regression in 3.8 where collections with published: false do not show when using the --unpublished flag.Jekyll 3.8.2 Released2018-05-19T08:30:00-07:002018-05-19T08:30:00-07:00https://jekyllrb.com/news/2018/05/19/jekyll-3-8-2-released<p>Hello Jekyllers!!</p> <p>Today we are releasing <code class="language-plaintext highlighter-rouge">v3.8.2</code>, which fixes the way Jekyll generates excerpts for posts when the first paragraph of the post contains Liquid tags that take advantage of <a href="https://shopify.github.io/liquid/basics/whitespace/">Liquid’s whitespace control feature</a>.</p> <p>Big thanks to @kylebarbour, who first reported this issue and also very quickly submitted a fix. Also thanks to @nickskalkin for making sure that we are using the latest version of Rubocop to lint our code.</p>pathawksHello Jekyllers!!Jekyll 3.8.1 Released2018-05-01T09:56:01-07:002018-05-01T09:56:01-07:00https://jekyllrb.com/news/2018/05/01/jekyll-3-8-1-released<p>Happy May Day :tada:</p> <p>The Jekyll team is happy to announce the release of <code class="language-plaintext highlighter-rouge">v3.8.1</code>, which fixes a couple of bugs that were introduced two weeks ago in <code class="language-plaintext highlighter-rouge">v3.8.0</code>. If you have experienced trouble regarding post excerpts or non-published posts, this release should be the remedy. Thanks to @Chaosed0 and @domLocalHeroes for originally reporting these issues, and to @ashmaroli for fixing them so quickly.</p> <p>As a reminder, we have started work on Jekyll 4.0. If there are any features that you would love to see added to Jekyll, or any pain points you would like to see removed, please do add your ideas to the <a href="https://github.com/jekyll/jekyll/issues/6948">Jekyll 4.0 idea list</a>.</p>pathawksHappy May Day :tada:Jekyll 3.7.3 Released2018-02-24T23:32:08-08:002018-02-24T23:32:08-08:00https://jekyllrb.com/news/2018/02/24/jekyll-3-7-3-released<p>Hello Jekyllers!! :wave:</p> <p>We’re pleased to announce the release of <code class="language-plaintext highlighter-rouge">v3.7.3</code> which fixes a bug one might encounter while using <code class="language-plaintext highlighter-rouge">Jekyll - 3.7.x</code> along with a Jekyll plugin that in turn uses the <code class="language-plaintext highlighter-rouge">I18n</code> library.</p> <p>When <a href="/news/2018/01/02/jekyll-3-7-0-released/">v3.7.0</a> enhanced our <code class="language-plaintext highlighter-rouge">slugify</code> filter with a <code class="language-plaintext highlighter-rouge">latin</code> option, we also hardcoded a default fallback locale for the <code class="language-plaintext highlighter-rouge">I18n</code> library to avoid an exception raised in the event the library fails to find any locale. This led to issues with third-party i18n plugins for Jekyll, especially since the default locale got assigned before the plugin was loaded, irrespective of whether the <code class="language-plaintext highlighter-rouge">slugify</code> filter was used.</p> <p>Jekyll will henceforth set the default locale if and only if necessary.</p>ashmaroliHello Jekyllers!! :wave:Meet Jekyll’s New Lead Developer2018-02-19T17:48:09-08:002018-02-19T17:48:09-08:00https://jekyllrb.com/news/2018/02/19/meet-jekyll-s-new-lead-developer<p>Jekyll has a new Lead Developer: <a href="https://liv.cat/">Olivia</a>!</p> <p>After over 5 years of leading Jekyll, many releases from 0.12.1 to 3.6.0, and countless conversations in GitHub Issues, Pull Requests, Jekyll Talk, and more, I am passing on the torch as Lead Developer of Jekyll.</p> <p>Olivia has been working with the Jekyll community for some time now. You may have seen her around in issues and pull requests on the various Jekyll repositories. She started as a contributor, then joined the Core team as our community lead. Olivia joined the Jekyll Core Team with experience in the Node.js community, both online and as a volunteer organizer with JSConf EU.</p> <p>In my conversations with Olivia, it is clear that Jekyll’s vision of simplicity for the user (<a href="/philosophy#1-no-magic">no magic!</a>) and letting users’ <a href="/philosophy#3-content-is-king">content be king</a> will remain a top priority. In just the last few weeks as the transition has been occurring, we have seen some incredible work on performance that will make future versions of Jekyll work better at scale. She will be prioritizing work on innovative improvements to make Jekyll that much better for all of us. Olivia balances an eye for quality with the need for shipping well.</p> <p>When Tom Preston-Werner met me at GitHub HQ 2.0 in January 2013 to pass on the torch, I could never have dreamed of all the amazing experiences this community would share with me over the next 5 years. From visiting @qrush in Buffalo, NY for a hack night on Jekyll to attending a Jekyll planning session hosted by @benbalter at GitHub to Google Summer of Code which gave us jekyll-admin, I am eternally grateful to all of you for the opportunity to lead this excellent community. I’m confident Olivia will continue to lead Jekyll to even greater heights.</p> <p>As always, Happy Jekylling!</p> <p>Parker</p> <p><em>Curious about who else runs this show? <a href="/team/">Check out our excellent team.</a></em></p>parkrJekyll has a new Lead Developer: Olivia!Jekyll 3.7.2 Released2018-01-25T08:52:22-08:002018-01-25T08:52:22-08:00https://jekyllrb.com/news/2018/01/25/jekyll-3-7-2-released<p>Close on the heels of shipping 3.7.0, we were informed of a couple of regressions due to the changes made in that release. In due time, Team Jekyll set out to address those issues as early as possible.</p> <p>Days later here we’re, announcing 3.7.2 (sorry for skipping 3.7.1, RubyGems didn’t want to play nice) that fixes numerous issues! :tada: The highlights being:</p> <ul> <li> <p>A major regression in 3.7.0 was that when a Front Matter Default was configured with a <code class="language-plaintext highlighter-rouge">scope["path"]</code> set to a directory, Jekyll would scan that directory for any subfolders and files, for each document in that <code class="language-plaintext highlighter-rouge">path</code>. Though this is intended, it increases build times in proportion to the size of the directory.</p> <p>We addressed this by having Jekyll scan the directory path only if the user explicitly configures the <code class="language-plaintext highlighter-rouge">scope["path"]</code> using wildcards.</p> <p>Read our <a href="/docs/configuration/#glob-patterns-in-front-matter-defaults">documentation</a> for more details.</p> <p>A huge shout-out to @mmistakes for bringing this to our notice and additionally providing us with a test repository to aid in resolving the issue.</p> </li> <li> <p>Another regression reported was related to our “Custom collections directory” feature introduced in 3.7.0.</p> <p>Users setting <code class="language-plaintext highlighter-rouge">collection_dir</code> to a certain directory would have <em>altered</em> paths to their posts still at the root of their site’s source. This roughly translated to 404 errors on URLs to their posts.</p> <p>Props to @localheinz for bringing this regression to our notice.</p> <p>We decided to resolve this by having Jekyll ignore posts and drafts at the root of the site’s source directory if the user customizes the <code class="language-plaintext highlighter-rouge">collection_dir</code> setting.</p> <p>Ergo, if you set a custom location for your collections, please ensure you move all of your collections into that directory. <strong>This includes posts and drafts as well</strong>. Your links generated by <code class="language-plaintext highlighter-rouge">{% post_url %}</code> or <code class="language-plaintext highlighter-rouge">{% link %}</code> will adapt automatically.</p> </li> <li> <p>We also found out that <code class="language-plaintext highlighter-rouge">gem "wdm"</code> boosts performance while directories are being watched on Windows. So we recommend having it included in your Gemfile for a better development experience on Windows. (Newly generated Gemfiles will hereafter have that gem listed automatically :wink:)</p> </li> </ul> <p>In addition to the above, numerous other minor fixes and documentation updates have been made that should improve your Jekyll experience. All of which, would not have been possible without our wonderful contributors:</p> <p>Alexandr, Andreas Möller, Ashwin Maroli, Chayoung You, Florian Thomas, Frank Taillandier, Hendrik Schneider, Kacper Duras, Olivia, Parker Moore and Paul Robert Lloyd.</p> <p>As always, you can see our full changelog on <a href="/docs/history/">the History page</a>.</p> <p>Happy Jekylling! :sparkles:</p>ashmaroliClose on the heels of shipping 3.7.0, we were informed of a couple of regressions due to the changes made in that release. In due time, Team Jekyll set out to address those issues as early as possible.Jekyll 3.7.0 Released2018-01-02T02:21:40-08:002018-01-02T02:21:40-08:00https://jekyllrb.com/news/2018/01/02/jekyll-3-7-0-released<p>We’re happy to release a new minor for the new year. Here are a few of the latest additions from our contributors:</p> <ul> <li>LiveReload is available as an option during development: with <code class="language-plaintext highlighter-rouge">jekyll serve --livereload</code> no more manual page refresh. A big thanks to @awood for this feature and to @andreyvit, LiveReload author.</li> <li>New <code class="language-plaintext highlighter-rouge">collections_dir</code> configuration option allows you to store all your <a href="/docs/collections">collections</a> in a single folder. Your source root folder should now look cleaner :sparkles: .</li> <li>If you’re using a <a href="/docs/themes/">gem-based theme</a> in coordination with the <code class="language-plaintext highlighter-rouge">--incremental</code> option, you should notice some significant speed during the regeneration process, we did see build time went down <strong>from 12s to 2s</strong> with @mmistakes <a href="https://github.com/mmistakes/minimal-mistakes">minimal-mistakes theme</a> during our tests.</li> <li>Jekyll will now check to determine whether host machine has internet connection.</li> <li>A new <code class="language-plaintext highlighter-rouge">latin</code> option is available to better <a href="/docs/templates/#options-for-the-slugify-filter">handle URLs slugs</a>.</li> <li>And of course many bug fixes and updates to our documentation — which you can now search thanks to our friends @Algolia.</li> <li><a href="/docs/history/#v3-7-0">Full history is here</a>.</li> </ul> <p>This release wouldn’t have been possible without all the following people:</p> <p>Aaron Borden, Alex Tsui, Alex Wood, Alexey Pelykh, Andrew Dassonville, Angelika Tyborska, Ankit Singhaniya, Ashwin Maroli, bellvat, Brandon Dusseau, Chris Finazzo, Doug Beney, Dr. Wolfram Schroers, Edward Shen, Florian Thomas, Frank Taillandier, Gert-jan Theunissen, Goulven Champenois, János Rusiczki, Jed Fox, Johannes Müller, Jon Anning, Jonathan Hooper, Jordon Bedwell, Junko Suzuki, Kacper Duras, Kenton Hansen, Kewin Dousse, Matt Rogers, Maximiliano Kotvinsky, mrHoliday, Olivia, Parker Moore, Pat Hawks, Sebastian Kulig, Vishesh Ruparelia, Xiaoiver and Yashu Mittal.</p> <p>A big thanks to everyone!</p> <p>Oh, one last thing…</p> <h3 id="pray-upgrade-your-ruby">:pray: upgrade your Ruby</h3> <p>Prepare for the next major update, as next major version Jekyll 4.0 will drop support for Ruby 2.1 and 2.2.</p> <blockquote> <p>Ruby 2.2 is now under the state of the security maintenance phase, until the end of the March of 2018. After the date, maintenance of Ruby 2.2 will be ended. We recommend you start planning migration to newer versions of Ruby, such as 2.4 or 2.3. — <a href="https://www.ruby-lang.org/en/news/2017/12/14/ruby-2-2-9-released/">Ruby Core Team</a></p> </blockquote> <p>We strongly encourage you to upgrade to at least Ruby 2.4.x <a href="https://pages.github.com/versions/">like our friends at GitHub Pages</a> or even go with <a href="https://www.ruby-lang.org/en/news/2017/12/25/ruby-2-5-0-released/">Ruby 2.5</a>.</p> <p>Happy new year to all from the Jekyll team!</p>DirtyFWe’re happy to release a new minor for the new year. Here are a few of the latest additions from our contributors:Jekyll 3.6.2 Released2017-10-21T12:31:40-07:002017-10-21T12:31:40-07:00https://jekyllrb.com/news/2017/10/21/jekyll-3-6-2-released<p>3.6.2 is out, it’s a tiny patch release and we invite you to run <code class="language-plaintext highlighter-rouge">bundle update</code> if you want to avoid possible build problems with:</p> <ul> <li>some UTF-8 and UTF-16 encoded files,</li> <li>fully numeric layout names (we convert those to string for you now).</li> </ul> <p>Other changes include updates to our documentation, like this <a href="../tutorials/video-walkthroughs/">complete video series by Giraffe Academy</a> aimed at complete beginners. A big thanks to Mike for this.</p> <p>And if you’re wondering what happened to version 3.6.1, it was just our new release maintainer getting familiar with the release process. 😄</p> <p>We try to release patch releases as quickly as possible and we’re already working on the next minor version 3.7.0 that will allow you to store all your collections in a single directory. Stay tuned.</p> <p>Theme developers are invited to test the brand new <a href="https://github.com/benbalter/jekyll-remote-theme"><code class="language-plaintext highlighter-rouge">jekyll-remote-theme</code></a> plugin and give their feedback to @benbalter. This plugin allows you to use any GitHub hosted theme as a remote theme!</p> <p>Once again, many thanks to our contributors who helped make this release possible: ashmaroli, bellvat, Frank Taillandier, i-give-up, Jan Piotrowski, Maximiliano Kotvinsky, Oliver Steele and Pat Hawks. For some it was their <a href="/news/2017/10/19/diversity-open-source/">first contribution to open-source</a> 👏</p> <p>As it’s been nine years this week that Tom Preston-Werner started this project, I also wanna seize this opportunity to thank <a href="https://github.com/jekyll/jekyll/graphs/contributors">all of the 732 contributors</a> who helped make it possible for Jekyll to power millions of websites around the world today.</p> <p>Happy Birthday Jekyll! 🎂</p>dirtyf3.6.2 is out, it’s a tiny patch release and we invite you to run bundle update if you want to avoid possible build problems with:Diversity in Open Source, and Jekyll’s role in it2017-10-19T12:33:00-07:002017-10-19T12:33:00-07:00https://jekyllrb.com/news/2017/10/19/diversity-open-source<p>Open Source has a problem with diversity. GitHub recently conducted a <a href="http://opensourcesurvey.org/2017">survey</a> which revealed that 95% of the respondents were identifying as male. This is even worse than in the tech industry overall, where the percentage is only about 76%. Every other week, there seems to be another case of a maintainer engaging in targeted harassment against minorities. People somehow deem it completely okay to let these things slide, though.</p> <p>Fortunately, there’s a couple of things we can do to make it easier and more comfortable for people that have never contributed to any open source project before, to contribute to our projects.</p> <h2 id="add-a-code-of-conduct-and-enforce-it">Add a Code of Conduct, and enforce it</h2> <p>This might seem like one of the easiest steps to do, but it actually requires a lot of dedication to pull through with. Basically, a Code of Conduct is a document detailing what is and what isn’t acceptable behavior in your project. A good Code of Conduct also details enforcement procedures, that means how the person violating the Code of Conduct gets dealt with. This is the point at which I’ve seen a looooot of projects fail. It’s easy enough to copy-paste a Code of Conduct into your project, but it’s more important to be clear on how to enforce it. Inconsistent —or worse, nonexistent— enforcement is just going to scare off newcomers even more!</p> <p>The most widely adopted Code of Conduct is the <a href="https://www.contributor-covenant.org/">Contributor Covenant</a>. It’s a very good catch-all document, but it is a bit light in the enforcement section, so I’d recommend to flesh it out by yourself, be it by means of adding contact information or expanding the enforcement rules.</p> <p>No matter which Code of Conduct you pick, the most important thing is to actually <em>read it for yourself</em>. The worst thing in open source is a maintainer that doesn’t know when they’ve violated their own Code of Conduct.</p> <h2 id="document-your-contributing-workflow">Document your contributing workflow</h2> <p>The problem that puts people off the most is incomplete or missing documentation, as revealed through GitHub’s <a href="http://opensourcesurvey.org/2017">open source survey</a>. A very popular myth in programming is that good code explains itself, which might be true, but only for the person writing it. It’s important, especially once you put your project out there for the world to see, to document not only your code, but also the process by which you maintain it. Otherwise, it’s going to be extremely hard for newcomers to even figure out where to begin contributing to your project.</p> <p>Jekyll has <a href="/docs/contributing">an entire section of its docs</a> dedicated to information on how to contribute for this very reason. Every documentation page has a link to directly edit and improve it on GitHub. It’s also important to realize that not all contributions are code. It can be documentation, it can be reviewing pull requests, but it can also just be weighing into issues, and all of this should be recognized in the same way. At Jekyll, out of 397 total merged pull requests in the last year, <strong>204</strong> were documentation pull requests!</p> <h2 id="create-newcomer-friendly-issues">Create newcomer-friendly issues</h2> <p>For most people new to open source, the biggest hurdle is creating their first pull request. That’s why initiatives such as <a href="https://twitter.com/yourfirstpr">YourFirstPR</a> and <a href="http://www.firsttimersonly.com/">First Timers Only</a> were started. Recently, <a href="https://github.com/hoodiehq/first-timers-bot">a GitHub bot that automatically creates first-timer friendly issues</a> was launched, which makes it very easy for maintainers to convert otherwise small or trivial changes into viable pull requests that can be taken on by newcomers! So we decided to give it a shot, and we’ve created a couple of very easy <code class="language-plaintext highlighter-rouge">first timers only</code> issues:</p> <ul> <li><a href="https://github.com/jekyll/jekyll/issues/6437">Issue #6437</a></li> <li><a href="https://github.com/jekyll/jekyll/issues/6438">Issue #6438</a></li> <li><a href="https://github.com/jekyll/jekyll/issues/6439">Issue #6439</a></li> </ul> <p>(There’s also an up-to-date listing of all of our <code class="language-plaintext highlighter-rouge">first timers only</code> issues <a href="https://github.com/jekyll/jekyll/issues?q=is%3Aissue+is%3Aopen+label%3Afirst-time-only">here</a>)</p> <p>These issues are designed to be taken on only by someone who has had little to no exposure to contributing to open source before, and additionally, project maintainers offer support in case a question arises.</p> <p>Jekyll is a very big and popular open source project, and we hope that with these special issues, we can help people who haven’t contributed to open source before to catch a footing in these unsteady waters.</p> <h2 id="be-nice">Be nice</h2> <p>I know this is a cliche and a overused phrase, but really, it works if you pull through with it. Come to terms with the fact that some people aren’t as fast or reliable as you might want to think. Don’t get angry when a contributor takes a day longer than you might like them to. Treat new contributors to your project with respect, but also with hospitality. Think twice before you send that comment with slurs in it.</p> <p>I’ve been contributing to open source for about 4 years now, and I’ve had my fair share of horrible, horrible experiences. But Jekyll has historically been a project that has always valued the people contributing to it over the code itself, and I hope we can keep it that way. I also hope that other project maintainers read this and take inspiration from this post. Every project should be more diverse.</p>oeOpen Source has a problem with diversity. GitHub recently conducted a survey which revealed that 95% of the respondents were identifying as male. This is even worse than in the tech industry overall, where the percentage is only about 76%. Every other week, there seems to be another case of a maintainer engaging in targeted harassment against minorities. People somehow deem it completely okay to let these things slide, though.