diff --git a/History.markdown b/History.markdown index 81707ad61..6f5f70e1e 100644 --- a/History.markdown +++ b/History.markdown @@ -1,4 +1,4 @@ -## HEAD +## 4.2.0 / 2020-12-14 ### Minor Enhancements diff --git a/docs/_config.yml b/docs/_config.yml index 260193a55..1c6c11519 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,5 +1,5 @@ --- -version: 4.1.1 +version: 4.2.0 name: Jekyll • Simple, blog-aware, static sites description: Transform your plain text into static websites and blogs url: https://jekyllrb.com diff --git a/docs/_docs/history.md b/docs/_docs/history.md index 4a58710d8..a258a9a54 100644 --- a/docs/_docs/history.md +++ b/docs/_docs/history.md @@ -4,6 +4,117 @@ permalink: "/docs/history/" note: This file is autogenerated. Edit /History.markdown instead. --- +## 4.2.0 / 2020-12-14 +{: #v4-2-0} + +### Minor Enhancements +{: #minor-enhancements-v4-2-0} + +- Warn on command-line with permalink conflict ([#8342]({{ site.repository }}/issues/8342)) +- Supress warning issued for redirect pages ([#8347]({{ site.repository }}/issues/8347)) +- Enhance detection of conflicting destination URLs ([#8459]({{ site.repository }}/issues/8459)) +- Add `:post_convert` hook to modify HTML content before layout ([#8368]({{ site.repository }}/issues/8368)) +- Allow triggering `:post_convert` events atomically ([#8465]({{ site.repository }}/issues/8465)) +- Debug reading Page and Layout objects ([#8100]({{ site.repository }}/issues/8100)) +- Do not reset `site.url` to `http://localhost:4000` by default ([#7253]({{ site.repository }}/issues/7253)) +- Add custom debug strings for Jekyll objects ([#8473]({{ site.repository }}/issues/8473)) +- Debug reading data files in a site ([#8481]({{ site.repository }}/issues/8481)) + +### Bug Fixes +{: #bug-fixes-v4-2-0} + +- Replace nested conditional with guard clauses ([#8294]({{ site.repository }}/issues/8294)) +- Fix: security bump ([#8349]({{ site.repository }}/issues/8349)) +- Fix path matching regex in post_url Liquid tag ([#8375]({{ site.repository }}/issues/8375)) +- Enable `Performance/ChainArrayAllocation` cop ([#8404]({{ site.repository }}/issues/8404)) +- Enable Lint/NoReturnInBeginEndBlocks Cop ([#8457]({{ site.repository }}/issues/8457)) +- Generate items from `site.include` list only once ([#8463]({{ site.repository }}/issues/8463)) +- Explicitly return nil after site process phase ([#8472]({{ site.repository }}/issues/8472)) + +### Optimization Fixes +{: #optimization-fixes-v4-2-0} + +- Implement custom delegators for drop methods ([#8183]({{ site.repository }}/issues/8183)) +- Handle `nil` argument to `Jekyll.sanitized_path` ([#8415]({{ site.repository }}/issues/8415)) +- Cache `Jekyll.sanitized_path` ([#8424]({{ site.repository }}/issues/8424)) +- Memoize array of drop getter method names ([#8421]({{ site.repository }}/issues/8421)) +- Reduce string allocations from the `link` tag ([#8387]({{ site.repository }}/issues/8387)) +- Optimize parsing of parameters in `include` tag ([#8192]({{ site.repository }}/issues/8192)) +- Stash documents `write?` attribute in a variable ([#8389]({{ site.repository }}/issues/8389)) +- Reduce string allocations from generating doc URLs ([#8392]({{ site.repository }}/issues/8392)) +- Check if site is in incremental mode optimally ([#8401]({{ site.repository }}/issues/8401)) +- Utilize flexibility of `Site#in_dest_dir` ([#8403]({{ site.repository }}/issues/8403)) +- Reduce allocations from rendering item as liquid ([#8406]({{ site.repository }}/issues/8406)) +- Compute relative_path of pages using PathManager ([#8408]({{ site.repository }}/issues/8408)) +- Reduce allocation from `normalize_whitespace` filter ([#8400]({{ site.repository }}/issues/8400)) +- Use `Regexp#match?` when `MatchData` is not required ([#8427]({{ site.repository }}/issues/8427)) +- Check default front matter scope against symbols ([#8393]({{ site.repository }}/issues/8393)) +- Stash frequently used `Drop` setter keys for reuse ([#8394]({{ site.repository }}/issues/8394)) +- Memoize defaults computed for Convertibles ([#8451]({{ site.repository }}/issues/8451)) +- Reduce array allocations from merging categories ([#8453]({{ site.repository }}/issues/8453)) +- Memoize destination of pages, documents and staticfiles ([#8458]({{ site.repository }}/issues/8458)) +- Reduce allocations from computing item property ([#8485]({{ site.repository }}/issues/8485)) +- Optimize `Page#dir` with a private method ([#8489]({{ site.repository }}/issues/8489)) +- Stash attribute hash for Liquid computed for pages ([#8497]({{ site.repository }}/issues/8497)) + +### Development Fixes +{: #development-fixes-v4-2-0} + +- Update cucumber gem to version 4.1 ([#8278]({{ site.repository }}/issues/8278)) +- Move permalink styles data to constant ([#8282]({{ site.repository }}/issues/8282)) +- Update rubocop gem to 0.87.1 ([#8287]({{ site.repository }}/issues/8287)) +- Update RuboCop to-do file ([#8296]({{ site.repository }}/issues/8296)) +- Fix `rake console` generating LoadError ([#8312]({{ site.repository }}/issues/8312)) +- Configure Performance cops ([#8369]({{ site.repository }}/issues/8369)) +- Update rubocop gem to 0.90.0 ([#8313]({{ site.repository }}/issues/8313)) +- Refactor `Jekyll::Utils::Platforms` ([#7236]({{ site.repository }}/issues/7236)) +- Bump RuboCop to v0.91.x ([#8391]({{ site.repository }}/issues/8391)) +- Add workflow to build and profile third-party repo ([#8398]({{ site.repository }}/issues/8398)) +- Bump RuboCop to v0.92.x +- Update cucumber gem version to 5.1.2 ([#8413]({{ site.repository }}/issues/8413)) +- Fix test suite compatibility with JRuby ([#8418]({{ site.repository }}/issues/8418)) +- chore(deps): bump Rubocop to 0.93.0 ([#8430]({{ site.repository }}/issues/8430)) +- Use Ruby 2.7.1 in GitHub Actions ([#8444]({{ site.repository }}/issues/8444)) +- Test that Liquid expressions are not deeply evaled ([#8292]({{ site.repository }}/issues/8292)) +- Test rendering arbitrary Liquid variables by default ([#7414]({{ site.repository }}/issues/7414)) +- Migrate TravisCI jobs to GitHub Actions ([#8492]({{ site.repository }}/issues/8492)) + +### Documentation + +- Update pointer to special permalink variables for collections ([#8274]({{ site.repository }}/issues/8274)) +- Fix special treatment for 'page 1' in docs of pagination ([#8230]({{ site.repository }}/issues/8230)) +- Add Formcake to forms section ([#8283]({{ site.repository }}/issues/8283)) +- Add a note on the rendering process in the docs ([#8291]({{ site.repository }}/issues/8291)) +- Add refactoring type to PULL_REQUEST_TEMPLATE ([#8297]({{ site.repository }}/issues/8297)) +- Update resources.md ([#7864]({{ site.repository }}/issues/7864)) +- Extra apostrophes in an URL ([#8319]({{ site.repository }}/issues/8319)) +- Clarify target of subordinate clause ([#8320]({{ site.repository }}/issues/8320)) +- Cherry-pick commits from conflicting branch `docs-40` +- Update documentation on third party site ([#8352]({{ site.repository }}/issues/8352)) +- Update default.md with info requested in [#8314]({{ site.repository }}/issues/8314) ([#8353]({{ site.repository }}/issues/8353)) +- Clarify description of `safe` option ([#8354]({{ site.repository }}/issues/8354)) +- Simplifying the Git post-receive hook-example ([#8358]({{ site.repository }}/issues/8358)) +- Add missing doc for build and serve commands ([#8365]({{ site.repository }}/issues/8365)) +- Docs Review: Getting Started ([#8372]({{ site.repository }}/issues/8372)) +- Add note about rebooting system after installation ([#8359]({{ site.repository }}/issues/8359)) +- Use data file to render table at `/docs/configuration/options/#global-configuration` ([#8377]({{ site.repository }}/issues/8377)) +- Use data file(s) to render table(s) at `/docs/configuration/options/` ([#8380]({{ site.repository }}/issues/8380)) +- Improve maintainability of config option data ([#8383]({{ site.repository }}/issues/8383)) +- Remove CircleCI v1 docs ([#8410]({{ site.repository }}/issues/8410)) +- Remove `NOKOGIRI_USE_SYSTEM_LIBRARIES` from Travis CI docs ([#8409]({{ site.repository }}/issues/8409)) +- Add links to all Jekyll themes on GitHub tagged with #jekyll-theme ([#8447]({{ site.repository }}/issues/8447)) +- Document initializing project Gemfile from scratch ([#8450]({{ site.repository }}/issues/8450)) +- Document installation of additional dependencies for installing Jekyll on Fedora ([#8456]({{ site.repository }}/issues/8456)) +- Improve documentation on Hooks in Jekyll ([#8467]({{ site.repository }}/issues/8467)) +- Build docs site with GitHub Actions ([#8201]({{ site.repository }}/issues/8201)) +- Add link to Assets page from `_sass` section in `_docs/structure.md` ([#8486]({{ site.repository }}/issues/8486)) + +### Site Enhancements +{: #site-enhancements-v4-2-0} + +- Fix rendering of *showcase* images ([#8504]({{ site.repository }}/issues/8504)) + + ## 4.1.1 / 2020-06-24 {: #v4-1-1} diff --git a/docs/_posts/2020-12-14-jekyll-4-2-0-released.markdown b/docs/_posts/2020-12-14-jekyll-4-2-0-released.markdown new file mode 100644 index 000000000..b77ccbf4f --- /dev/null +++ b/docs/_posts/2020-12-14-jekyll-4-2-0-released.markdown @@ -0,0 +1,31 @@ +--- +title: "Jekyll 4.2.0 Released" +date: 2020-12-14 14:12:20 +0530 +author: ashmaroli +version: 4.2.0 +category: release +--- + +Greetings Jekyllers! Jekyll v4.2.0 is out! + +This release gives you a new hook named `:post_convert` that allows modifying rendered HTML contents before they are +placed into the designated layout(s). + +Detecting files that get written into the same destination path has been a part of the diagnostics from `jekyll doctor` +for quite some time now. However, v4.2 has integrated that feature into the build process itself. + +On the topic of log output, the `--verbose` output got a bit more verbose. Instead of just showing *documents* that are +being read, the output will now also show *pages* and *layouts* that are being read into the site. + +Additionally, we have stopped overriding the `site.url` to `http://localhost:4000` in absolute URLs while developing +via `jekyll serve`. + +As always, you can go through [the full list of changes](/docs/history/#v4-2-0) if you are interested in the various +memory-allocation optimizations made to Jekyll. + +Special thanks to our community members who helped improving Jekyll codebase and documentation from v4.1.1: +Adam Alton, Alex Malaszkiewicz, Alexey Pelykh, Brittany Joiner, bytecode1024, Christopher Brown, Chuck Houpt, +Corey Megown, Dan Nemenyi, Enrico Tolotto, fauno, Felix Breidenstein, Francesco Bianco, Frank Taillandier, +Gabriel Staples, iBug, Jacobo Vidal, jaybe@jekyll, jesuslerma, jnozsc, joelkennedy, Joe Marshall, Liam Cooke, +Lou Rectoret, Malathi, m-naumann, Nicholas Paxford, Nikita Skalkin, Parker Moore, Pratyaksh Gautam, Rachel Cheyfitz, +SaintMalik, Seeker, Shannon Kularathna, Steven Xu, Takuya N, Thelonius Kort and Toby Glei. diff --git a/docs/latest_version.txt b/docs/latest_version.txt index 627a3f43a..6aba2b245 100644 --- a/docs/latest_version.txt +++ b/docs/latest_version.txt @@ -1 +1 @@ -4.1.1 +4.2.0 diff --git a/lib/jekyll/version.rb b/lib/jekyll/version.rb index 0f449d031..1b23b987f 100644 --- a/lib/jekyll/version.rb +++ b/lib/jekyll/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Jekyll - VERSION = "4.1.1" + VERSION = "4.2.0" end