Releases: jekyll/jekyll
Releases · jekyll/jekyll
v4.2.0
Minor Enhancements
- Warn on command-line with permalink conflict (#8342)
- Supress warning issued for redirect pages (#8347)
- Enhance detection of conflicting destination URLs (#8459)
- Add
:post_convert
hook to modify HTML content before layout (#8368) - Allow triggering
:post_convert
events atomically (#8465) - Debug reading Page and Layout objects (#8100)
- Do not reset
site.url
tohttp://localhost:4000
by default (#7253) - Add custom debug strings for Jekyll objects (#8473)
- Debug reading data files in a site (#8481)
Bug Fixes
- Replace nested conditional with guard clauses (#8294)
- Fix: security bump (#8349)
- Fix path matching regex in post_url Liquid tag (#8375)
- Enable
Performance/ChainArrayAllocation
cop (#8404) - Enable Lint/NoReturnInBeginEndBlocks Cop (#8457)
- Generate items from
site.include
list only once (#8463) - Explicitly return nil after site process phase (#8472)
Optimization Fixes
- Implement custom delegators for drop methods (#8183)
- Handle
nil
argument toJekyll.sanitized_path
(#8415) - Cache
Jekyll.sanitized_path
(#8424) - Memoize array of drop getter method names (#8421)
- Reduce string allocations from the
link
tag (#8387) - Optimize parsing of parameters in
include
tag (#8192) - Stash documents
write?
attribute in a variable (#8389) - Reduce string allocations from generating doc URLs (#8392)
- Check if site is in incremental mode optimally (#8401)
- Utilize flexibility of
Site#in_dest_dir
(#8403) - Reduce allocations from rendering item as liquid (#8406)
- Compute relative_path of pages using PathManager (#8408)
- Reduce allocation from
normalize_whitespace
filter (#8400) - Use
Regexp#match?
whenMatchData
is not required (#8427) - Check default front matter scope against symbols (#8393)
- Stash frequently used
Drop
setter keys for reuse (#8394) - Memoize defaults computed for Convertibles (#8451)
- Reduce array allocations from merging categories (#8453)
- Memoize destination of pages, documents and staticfiles (#8458)
- Reduce allocations from computing item property (#8485)
- Optimize
Page#dir
with a private method (#8489) - Stash attribute hash for Liquid computed for pages (#8497)
Development Fixes
- Update cucumber gem to version 4.1 (#8278)
- Move permalink styles data to constant (#8282)
- Update rubocop gem to 0.87.1 (#8287)
- Update RuboCop to-do file (#8296)
- Fix
rake console
generating LoadError (#8312) - Configure Performance cops (#8369)
- Update rubocop gem to 0.90.0 (#8313)
- Refactor
Jekyll::Utils::Platforms
(#7236) - Bump RuboCop to v0.91.x (#8391)
- Add workflow to build and profile third-party repo (#8398)
- Bump RuboCop to v0.92.x
- Update cucumber gem version to 5.1.2 (#8413)
- Fix test suite compatibility with JRuby (#8418)
- chore(deps): bump Rubocop to 0.93.0 (#8430)
- Use Ruby 2.7.1 in GitHub Actions (#8444)
- Test that Liquid expressions are not deeply evaled (#8292)
- Test rendering arbitrary Liquid variables by default (#7414)
- Migrate TravisCI jobs to GitHub Actions (#8492)
Documentation
- Update pointer to special permalink variables for collections (#8274)
- Fix special treatment for 'page 1' in docs of pagination (#8230)
- Add Formcake to forms section (#8283)
- Add a note on the rendering process in the docs (#8291)
- Add refactoring type to PULL_REQUEST_TEMPLATE (#8297)
- Update resources.md (#7864)
- Extra apostrophes in an URL (#8319)
- Clarify target of subordinate clause (#8320)
- Cherry-pick commits from conflicting branch
docs-40
- Update documentation on third party site (#8352)
- Update default.md with info requested in #8314 (#8353)
- Clarify description of
safe
option (#8354) - Simplifying the Git post-receive hook-example (#8358)
- Add missing doc for build and serve commands (#8365)
- Docs Review: Getting Started (#8372)
- Add note about rebooting system after installation (#8359)
- Use data file to render table at
/docs/configuration/options/#global-configuration
(#8377) - Use data file(s) to render table(s) at
/docs/configuration/options/
(#8380) - Improve maintainability of config option data (#8383)
- Remove CircleCI v1 docs (#8410)
- Remove
NOKOGIRI_USE_SYSTEM_LIBRARIES
from Travis CI docs (#8409) - Add links to all Jekyll themes on GitHub tagged with #jekyll-theme (#8447)
- Document initializing project Gemfile from scratch (#8450)
- Document installation of additional dependencies for installing Jekyll on Fedora (#8456)
- Improve documentation on Hooks in Jekyll (#8467)
- Build docs site with GitHub Actions (#8201)
- Add link to Assets page from
_sass
section in_docs/structure.md
(#8486)
Site Enhancements
- Fix rendering of showcase images (#8504)
v3.9.0
v4.1.1
- Fix grammar in documentation section (#8265)
Development Fixes
Bug Fixes
- Disable page excerpts by default (#8222)
- Revert introduction of PageDrop (#8221)
- Don't generate excerpts for non-html pages (#8234)
- Make page excerpts consistent with doc excerpts (#8236)
Documentation
- Replace deprecated 'show' command with 'info' (#8235)
- Change name to ▲Vercel (#8247)
- Add language and examples to describe how to use the configuration op… (#8249)
- Fix missing yaml front matter colon and adjust/add clarifying language. (#8250)
- correct typo (#8261)
- Allow hyperlinks to specific filter documentation (#8231)
- Update link to Netlify step-by-step guide (#8264)
Site Enhancements
v4.1.0
Minor Enhancements
- serve: add support for ECC certificates (#7768)
- Update item_property to recognize integers (#7878)
- Include _config.yml in a new theme's gemspec (#7865)
- Add an option to easily disable disk-cache (#7928)
- Optimize markdown parsing with Kramdown by reusing the options and parser objects (#8013)
- Add PageDrop to provide Liquid templates with data (#7992)
- Optimize
Kramdown::JekyllDocument#to_html
calls (#8041) - Reduce Jekyll::Renderer instances during a build (#7570)
- Configure default language for syntax-highlighting (#8035)
- Remove dev dependencies from new theme-gem gemspec (#8042)
- Allow disabling import of theme configuration (#8131)
- Allow excerpts to be generated for Page objects (#7642)
- Profile various stages of a site's build process (#6760)
- Add find filters to optimize where-first chains (#8171)
- Make number_of_words respect CJK characters (#7813)
- Initialize static files' data hash only if needed (#8188)
Bug Fixes
- Memoize absolute_url and relative_url filters (#7793)
- Fix documentation comment for Jekyll::Converters::Identity (#7883)
- Optimize Jekyll::Filters#item_property (#7696)
- Allow multiple binary operators in where_exp filter (#8047)
- Fix documents custom-ordering logic (#8028)
- Use
layout.path
when rendering the Liquid layout (#8069) - Reduce array allocations from
StaticFile#path
(#8083) - Simplify
Jekyll::Renderer#validate_layout
(#8064) - Add static file's basename to its url_placeholder (#7908)
- Clear cached Liquid template scope before render (#7967)
- Add slugified_categories URL placeholder (#8094)
- Cache URLFilter results of string inputs per site (#7990)
- Use platforms instead of install_if (#8140)
- Config include trailing slash (#8113)
- Allow extensionless document in a strict site (#7950)
- Improve path normalization in liquid_renderer (#8075)
- Switch slugify regex to support more Unicode character groups (#8167)
- Check if entry is a directory once per enumerator (#8177)
- Filter out exclusively excluded entries sooner (#7482)
v4.0.1
v3.8.7
v4.0.0
Major Enhancements
- Drop ruby 2.3 (#7454)
- Drop support for Ruby 2.1 and 2.2 (#6560)
- Drop support for older versions of Rouge (#6978)
- Drop support for pygments as syntax-highlighter (#7118)
- Drop support for Redcarpet (#6987)
- Drop support for rdiscount (#6988)
- Drop support for
jekyll-watch-1.4.0
and older (#7287) - Incorporate
relative_url
filter inlink
tag (#6727) - Upgrade kramdown dependency to v2.x (#7492)
- Upgrade jekyll-sass-converter to v2.x - Sassc + sourcemaps (#7778)
- Upgrade i18n to v1.x (#6931)
- Add
Jekyll::Cache
class to handle caching on disk (#7169) - Cache converted markdown (#7159)
- Cache: Do not dump undumpable objects (#7190)
- Cache matched defaults sets for given parameters (#6888)
- Ignore cache directory (#7184)
- Add
Site#in_cache_dir
helper method (#7160) - Remove 'cache_dir' during
jekyll clean
(#7158) - Cache parsed Liquid templates in memory (#7136)
- Only read layouts from source_dir or theme_dir (#6788)
- Allow custom sorting of collection documents (#7427)
- Always exclude certain paths from being processed (#7188)
- Remove Jekyll::Utils#strip_heredoc in favor of a Ruby > 2.3 built in (#7584)
- Incorporate
relative_url
withinpost_url
tag (#7589) - Remove patch to modify config for kramdown (#7699)
Minor Enhancements
- Enhance
--blank
scaffolding (#7310) - Use
jekyll-compose
if installed (#6932) - Disable Liquid via front matter (#6824)
- Configure cache_dir (#7232)
- ISO week date drops (#5981)
- Fix custom 404 page for GitHub pages (#7132)
- Load config file from within current theme-gem (#7304)
- Suggest re-running command with
--trace
on fail (#6551) - Support for binary operators in where_exp filter (#6998)
- Automatically load
_config.toml
(#7299) - Add vendor folder to a newly installed site's .gitignore (#6968)
- Output Jekyll Version while debugging (#7173)
- Memoize computing excerpt's relative_path (#6951)
- Skip processing posts that can not be read (#7302)
- Memoize the return value of Site#documents (#7273)
- Cache globbed paths in front matter defaults (#7345)
- Cache computed item property (#7301)
- Cleanup Markdown converter (#7519)
- Do not process Liquid in post excerpt when disabled in front matter (#7146)
- Liquefied link tag (#6269)
- Update item_property to return numbers as numbers instead of strings (#6608)
- Use
.markdown
extension for page templates (#7126) - Add support for
*.xhtml
files (#6854) - Allow i18n v0.9.5 and higher (#7044)
- Ignore permission error of /proc/version (#7267)
- Strip extra slashes via
Jekyll.sanitized_path
(#7182) - Site template: remove default config for markdown (#7285)
- Add a custom inspect string for StaticFile objects (#7422)
- Remind user to include gem in the Gemfile on error (#7476)
- Search Front matter defaults for Page objects with relative_path (#7261)
- Lock use of
tzinfo
gem to v1.x (#7521, #7562) - Utilize absolute paths of user-provided file paths (#7450)
- Detect
nil
and empty values in objects withwhere
filter (#7580) - Initialize mutations for Drops only if necessary (#7657)
- Reduce Array allocations via Jekyll::Cleaner (#7659)
- Encode and unencode urls only as required (#7654)
- Reduce string allocations with better alternatives (#7643)
- Reduce allocations from Jekyll::Document instances (#7625)
- Add
type
attribute to Document instances (#7406) - Reduce allocations from where-filter (#7653)
- Memoize SiteDrop#documents to reduce allocations (#7697)
- Add PathManager class to cache interim paths (#7732)
- Remove warnings and fixes for deprecated config (#7440)
- Delegate --profile tabulation to
terminal-table
(#7627)
Bug Fixes
- Security: fix
include
bypass ofEntryFilter#filter
symlink check (#7226) - Theme gems: ensure directories aren't symlinks (#7419)
- Add call to unused method
validate_options
incommands/serve.rb
(#7122) - Check if scope applies to type before given path (#7263)
- Document two methods, simplify one of the methods (#7270)
- Check key in collections only if it isn't "posts" (#7277)
- Interpolate Jekyll::Page subclass on inspection (#7203)
- Measure the no. of times a template gets rendered (#7316)
- Reduce array traversal in Jekyll::Reader (#7157)
- Re-implement handling Liquid blocks in excerpts (#7250)
- Documents should be able to render their date (#7404)
- Fix Interpreter warning from Jekyll::Renderer (#7448)
- Loggers should accept both numbers and symbols (#6967)
- Replace regex arg to :gsub with a string arg (#7189)
- Dont write static files from unrendered collection (#7410)
- Excerpt handling of custom and intermediate tags (#7382)
- Change future post loglevel to warn to help user narrow down issues (#7527)
- Handle files with trailing dots in their basename (#7315)
- Fix unnecessary allocations via StaticFileReader (#7572)
- Don't check if site URL is absolute if it is nil (#7498)
- Avoid unnecessary duplication of pages array (#7272)
- Memoize Site#post_attr_hash (#7276)
- Memoize Document#excerpt_separator (#7569)
- Optimize Document::DATE_FILENAME_MATCHER to match valid filenames (#7292)
- Escape valid special chars in a site's path name (#7568)
- Replace
name
in Page#inspect with relative_path (#7434) - Log a warning when the slug is empty (#7357)
- Push Markdown link refs to excerpt only as required (#7577)
- Fix broken include_relative usage in excerpt (#7633)
- Initialize and reset glob_cache only as necessary (#7658)
- Revert memoizing Site#docs_to_write and #documents (#7684)
- Backport #7684 for v3.8.x: Revert memoizing Site#docs_to_write and refactor #documents (#7689)
- Backport #7213 and #7633 for v3.8.x: Fix broken include_relative usage in excerpt (#7690)
- Don't read symlinks in site.include in safe mode (#7711)
- Replace
String#=~
withString#match?
(#7723) - Update log output for an invalid theme directory (#7679)
- Remove configuration of theme sass files from Core (#7290)
- Actually conditionally include liquid-c (#7792)
- Test number_like regex on stringified property (#7788)
Development Fixes
- Upgrade liquid-c to v4.0 (#7375)
- Bump RuboCop to v0.71.0 (#7687)
- Target Ruby 2.4 syntax (#7583)
- Fix: RuboCop offenses (#7769)
- Use communicative method parameters (#7566)
- Scan
assert_equal
methods and rectify any offenses with a custom RuboCop cop (#7130) - CI: Test with Ruby 2.6 (#7438)
- CI: Test with Ruby 2.6 on AppVeyor (#7518)
- CI: Update RuboCop config (#7050)
- CI: Add a script to profile docs (#7540)
- CI(Appveyor): shallow clone with 5 last commits (#7312)
- CI: Test with oldest and latest Ruby only (#7412)
- CI: Update excludes for CodeClimate Analyses (#7365)
- CI: Lock Travis to Bundler-1.16.2 (#7144)
- CI: Bump tested version of JRuby to 9.2.7.0 (#7612)
- CI: Do not install docs on updating gems on Travis (#7706)
- Update gemspec (#7425)
- deps: relax version constraint on classifier-reborn gem (#7471)
- deps: update yajl-ruby (#7278)
- deps: bump yajl-ruby to v1.4.0 (#6976)
- Create symlink only if target is accessible (#7429)
- Switch to
:install_if
for wdm gem (#7372) - Add cucumber feature to test include_relative tag (#7213)
- Small benchmark refactoring (#7211)
- Fix incorrectly passed arguments to assert_equal (#7134)
- fix up refute_equal call (#7133)
- Fix RuboCop offences in test files (#7128)
- Use assert_include (#7093)
- Remember to release docs gem (#7066)
- Useless privates removed (#6768)
- Load Rouge for TestKramdown (#7007)
- Update instructions for releasing docs Gem (#6975)
- We are not using Ruby 2.2 anymore (#6977)
- Remove unnecessary Jekyll::Page constant (#6770)
- Remove unused error class (#6511)
- Add a Cucumber feature for post_url tag (#7586)
- Generate a "TOTAL" row for build-profile table (#7614)
- Refactor Jekyll::Cache (#7532)
- Store list of expected extnames in a constant (#7638)
- Profile allocations from a build session (#7646)
- Update small typo in contributing.md (#7671)
- Remove override to Jekyll::Document#respond_to? (#7695)
- Update TestTags in sync with Rouge v3.4 (#7709)
- Use regexp to filter special entries (#7702)
- Reduce Array objects generated from utility method (#7749)
- Update mime.types (#7756)
- Replace redundant Array#map with Array#each (#7761)
- Reduce allocations by using #each_with_object (#7758)
- Memoize fallback_data for Drop (#7728)
- Use String#end_with? to check if entry is a backup (#7701)
Documentation
- Refactor docs (#7205)
- Add a link to Giraffe Academy's tutorial (#7325)
- Do not advise users to install Jekyll outside of Bundler (#6927)
- Remove documentation for using Redcarpet (#6990)
- Install Docs that Work on MacOS 10.14 (#7561)
- Add Installation Instructions for Ubuntu (#6925)
- Don't prompt for sudo when installing with Ubuntu WSL (#6781)
- Installation instructions for Fedora (#7198)
- Update Windows install docs (#6926)
- List all standard liquid filters (#7333)
- List all static files variables (#7002)
- Improve how to include Rouge stylesheets (#7752)
- Mention CommonMark plugins (#7418)
- Add TSV to list of supported _data files. (#7168)
- How to deploy using pre-push git hook (#7179)
- Hosting with AWS Amplify (#7510)
- CircleCI deployment through CircleCI v2 (#7024)
- GitHub Pages: use themes from other repos (#7112)
- Document page.dir and page.name (#7373)
- Document custom tag blocks (#7359)
- Document converter methods (#7289)
- Document
{{ page.collection }}
(#7430) - Document Jekyll Filters with YAML data (#7335)
- Document where Jekyll looks for layouts in a site (#7564)
- plugin: liquid tag jekyll-flickr (#694...
v4.0.0.pre.beta1
Major Enhancements
- Drop ruby 2.3 (#7454)
- Drop support for Ruby 2.1 and 2.2 (#6560)
- Drop support for older versions of Rouge (#6978)
- Drop support for pygments as syntax-highlighter (#7118)
- Drop support for Redcarpet (#6987)
- Drop support for rdiscount (#6988)
- Drop support for
jekyll-watch-1.4.0
and older (#7287) - Incorporate
relative_url
filter inlink
tag (#6727) - Upgrade kramdown dependency to v2.x (#7492)
- Upgrade i18n to v1.x (#6931)
- Add
Jekyll::Cache
class to handle caching on disk (#7169) - Cache converted markdown (#7159)
- Cache: Do not dump undumpable objects (#7190)
- Cache matched defaults sets for given parameters (#6888)
- Ignore cache directory (#7184)
- Add
Site#in_cache_dir
helper method (#7160) - Remove 'cache_dir' during
jekyll clean
(#7158) - Cache parsed Liquid templates in memory (#7136)
- Only read layouts from source_dir or theme_dir (#6788)
- Allow custom sorting of collection documents (#7427)
- Always exclude certain paths from being processed (#7188)
- Remove Jekyll::Utils#strip_heredoc in favor of a Ruby > 2.3 built in (#7584)
- Incorporate
relative_url
withinpost_url
tag (#7589) - Remove patch to modify config for kramdown (#7699)
Bug Fixes
- Security: fix
include
bypass ofEntryFilter#filter
symlink check (#7226) - Theme gems: ensure directories aren't symlinks (#7419)
- Add call to unused method
validate_options
incommands/serve.rb
(#7122) - Check if scope applies to type before given path (#7263)
- Document two methods, simplify one of the methods (#7270)
- Check key in collections only if it isn't "posts" (#7277)
- Interpolate Jekyll::Page subclass on inspection (#7203)
- Measure the no. of times a template gets rendered (#7316)
- Reduce array traversal in Jekyll::Reader (#7157)
- Re-implement handling Liquid blocks in excerpts (#7250)
- Documents should be able to render their date (#7404)
- Fix Interpreter warning from Jekyll::Renderer (#7448)
- Loggers should accept both numbers and symbols (#6967)
- Replace regex arg to :gsub with a string arg (#7189)
- Dont write static files from unrendered collection (#7410)
- Excerpt handling of custom and intermediate tags (#7382)
- Change future post loglevel to warn to help user narrow down issues (#7527)
- Handle files with trailing dots in their basename (#7315)
- Fix unnecessary allocations via StaticFileReader (#7572)
- Don't check if site URL is absolute if it is nil (#7498)
- Avoid unnecessary duplication of pages array (#7272)
- Memoize Site#post_attr_hash (#7276)
- Memoize Document#excerpt_separator (#7569)
- Optimize Document::DATE_FILENAME_MATCHER to match valid filenames (#7292)
- Escape valid special chars in a site's path name (#7568)
- Replace
name
in Page#inspect with relative_path (#7434) - Log a warning when the slug is empty (#7357)
- Push Markdown link refs to excerpt only as required (#7577)
- Fix broken include_relative usage in excerpt (#7633)
- Initialize and reset glob_cache only as necessary (#7658)
- Revert memoizing Site#docs_to_write and #documents (#7684)
- Backport #7684 for v3.8.x: Revert memoizing Site#docs_to_write and refactor #documents (#7689)
- Backport #7213 and #7633 for v3.8.x: Fix broken include_relative usage in excerpt (#7690)
- Don't read symlinks in site.include in safe mode (#7711)
- Replace
String#=~
withString#match?
(#7723) - Update log output for an invalid theme directory (#7679)
Minor Enhancements
- Enhance
--blank
scaffolding (#7310) - Fix custom 404 page for GitHub pages (#7132)
- Load config file from within current theme-gem (#7304)
- Use
jekyll-compose
if installed (#6932) - Suggest re-running command with
--trace
on fail (#6551) - Support for binary operators in where_exp filter (#6998)
- Automatically load
_config.toml
(#7299) - Add vendor folder to a newly installed site's .gitignore (#6968)
- Output Jekyll Version while debugging (#7173)
- Memoize computing excerpt's relative_path (#6951)
- Skip processing posts that can not be read (#7302)
- Memoize the return value of Site#documents (#7273)
- Cache globbed paths in front matter defaults (#7345)
- Cache computed item property (#7301)
- Cleanup Markdown converter (#7519)
- Disable Liquid via front matter (#6824)
- Do not process Liquid in post excerpt when disabled in front matter (#7146)
- Liquefied link tag (#6269)
- Update item_property to return numbers as numbers instead of strings (#6608)
- Use
.markdown
extension for page templates (#7126) - Add support for
*.xhtml
files (#6854) - Allow i18n v0.9.5 and higher (#7044)
- Ignore permission error of /proc/version (#7267)
- Strip extra slashes via
Jekyll.sanitized_path
(#7182) - Site template: remove default config for markdown (#7285)
- Add a custom inspect string for StaticFile objects (#7422)
- Remind user to include gem in the Gemfile on error (#7476)
- Search Front matter defaults for Page objects with relative_path (#7261)
- Configure cache_dir (#7232)
- Lock use of
tzinfo
gem to v1.x (#7521, #7562) - Utilize absolute paths of user-provided file paths (#7450)
- ISO week date drops (#5981)
- Detect
nil
and empty values in objects withwhere
filter (#7580) - Initialize mutations for Drops only if necessary (#7657)
- Reduce Array allocations via Jekyll::Cleaner (#7659)
- Encode and unencode urls only as required (#7654)
- Reduce string allocations with better alternatives (#7643)
- Reduce allocations from Jekyll::Document instances (#7625)
- Add
type
attribute to Document instances (#7406) - Reduce allocations from where-filter (#7653)
- Memoize SiteDrop#documents to reduce allocations (#7697)
- Add PathManager class to cache interim paths (#7732)
- Remove warnings and fixes for deprecated config (#7440)
Development Fixes
- Use communicative method parameters (#7566)
- Scan
assert_equal
methods and rectify any offenses with a custom RuboCop cop (#7130) - Add a script to profile docs with CI (#7540)
- Test with Ruby 2.6 on AppVeyor (#7518)
- Update gemspec (#7425)
- Upgrade liquid-c to v4.0 (#7375)
- Bump RuboCop to v0.63.x (#7489)
- Bump RuboCop to v0.62.x (#7449)
- Bump RuboCop to v0.61.x (#7401)
- Bump RuboCop to v0.60.x (#7338)
- Bump RuboCop to v0.59.0 (#7237)
- Bump RuboCop to v0.57.x (#7078)
- Relax version constraint on classifier-reborn gem (#7471)
- Test with Ruby v2.6 (#7438)
- Create symlink only if target is accessible (#7429)
- Test with oldest and latest Ruby only (#7412)
- Switch to
:install_if
for wdm gem (#7372) - Update excludes for CodeClimate Analyses (#7365)
- CI(Appveyor): shallow clone with 5 last commits (#7312)
- update yajl-ruby (#7278)
- Add cucumber feature to test include_relative tag (#7213)
- Small benchmark refactoring (#7211)
- Lock Travis to Bundler-1.16.2 (#7144)
- Fix incorrectly passed arguments to assert_equal (#7134)
- fix up refute_equal call (#7133)
- Fix RuboCop offences in test files (#7128)
- Use assert_include (#7093)
- Remember to release docs gem (#7066)
- Update RuboCop's config (#7050)
- Useless privates removed (#6768)
- Load Rouge for TestKramdown (#7007)
- yajl-ruby update to v1.4.0 (#6976)
- Update instructions for releasing docs Gem (#6975)
- We are not using Ruby 2.2 anymore (#6977)
- Remove unnecessary Jekyll::Page constant (#6770)
- Remove unused error class (#6511)
- Add a Cucumber feature for post_url tag (#7586)
- Bump tested version of JRuby to 9.2.7.0 (#7612)
- Generate a "TOTAL" row for build-profile table (#7614)
- Target Ruby 2.4 syntax in RuboCop scans (#7583)
- Bump RuboCop to v0.68.x (#7637)
- Refactor Jekyll::Cache (#7532)
- Store list of expected extnames in a constant (#7638)
- Bump RuboCop to v0.69.x (#7656)
- Profile allocations from a build session (#7646)
- Update small typo in contributing.md (#7671)
- Bump RuboCop to v0.70.x (#7678)
- Remove override to Jekyll::Document#respond_to? (#7695)
- Do not install docs on updating gems on Travis (#7706)
- Update TestTags in sync with Rouge v3.4 (#7709)
- Bump RuboCop to v0.71.0 (#7687)
- Use regexp to filter special entries (#7702)
- Reduce Array objects generated from utility method (#7749)
- Update mime.types (#7756)
- Replace redundant Array#map with Array#each (#7761)
- Fix: rubocop offenses (#7769)
Documentation
- Add Installation Instructions for Ubuntu (#6925)
- add liquid tag jekyll-flickr (#6946)
- Updated copy - fixed casing of SaaS on resources page. (#6949)
- Do not advise users to install Jekyll outside of Bundler (#6927)
- Don't prompt for sudo when installing with Ubuntu WSL (#6781)
- Fix typo (#6969)
- Add version number for group_by_exp doc (#6956)
- Update Windows install docs (#6926)
- Remove documentation for using Redcarpet (#6990)
- Updated nginx configuration for custom-404-page documentation (#6994)
- List all static files variables (#7002)
- Document that _drafts need to be contained within the custom collection directory (#6985)
- Change for passive voice. (#7005)
- Added the CAT plugin to the plugin list (#7011)
- Updated to supported version (#7031)
- Clarify definition of 'draft' (#7037)
- Listed the jekyll-target-blank plugin in plugins list. (#7046)
- Typo (#7058)
- Add Hints for some Improved Travis Config in Doc (#7049)
- Added plugin json-get. (#7086)
- Update travis-ci.md to point out "this is an example Gemfile" (#7089)
- Adding
jekyll-info
plugin (#7091) - GitHub enables you to use themes from other repos (#7112)
- Updates to CODE OF CONDUCT (v1.4.0) (#7105)
- Instructions to view theme’s files under Linux (#7095)
- Add jekyll-xml-source (#7114)
- Add the jekyll-...
v3.8.6
Bug Fixes
- Update log output for an invalid theme directory (#7734)
- Memoize
SiteDrop#documents
to reduce allocations (#7722) - Excerpt handling of custom and intermediate tags (#7467)
- Escape valid special chars in a site's path name (#7573)
- Revert memoizing
Site#docs_to_write
and refactor#documents
(#7689) - Fix broken
include_relative
usage in excerpt (#7690) - Install platform-specific gems as required (3c06609)
Security Fixes
- Theme gems: ensure directories aren't symlinks (#7424)
v4.0.0.pre.alpha1
Major Enhancements
- Drop ruby 2.3 (#7454)
- Drop support for Ruby 2.1 and 2.2 (#6560)
- Drop support for older versions of Rouge (#6978)
- Drop support for pygments as syntax-highlighter (#7118)
- Drop support for Redcarpet (#6987)
- Drop support for rdiscount (#6988)
- Drop support for
jekyll-watch-1.4.0
and older (#7287) - Incorporate
relative_url
filter inlink
tag (#6727) - Refactor
highlight
tag to behave like theraw
tag (#6821) - Upgrade kramdown dependency to v2.x (#7492)
- Upgrade i18n to v1.x (#6931)
- Add
Jekyll::Cache
class to handle caching on disk (#7169) - Cache converted markdown (#7159)
- Cache: Do not dump undumpable objects (#7190)
- Cache matched defaults sets for given parameters (#6888)
- Ignore cache directory (#7184)
- Add
Site#in_cache_dir
helper method (#7160) - Remove 'cache_dir' during
jekyll clean
(#7158) - Cache parsed Liquid templates in memory (#7136)
- Only read layouts from source_dir or theme_dir (#6788)
- Allow custom sorting of collection documents (#7427)
- Always exclude certain paths from being processed (#7188)
Bug Fixes
- Security: fix
include
bypass ofEntryFilter#filter
symlink check (#7226) - Theme gems: ensure directories aren't symlinks (#7419)
- Add call to unused method
validate_options
incommands/serve.rb
(#7122) - Check if scope applies to type before given path (#7263)
- Document two methods, simplify one of the methods (#7270)
- Check key in collections only if it isn't "posts" (#7277)
- Interpolate Jekyll::Page subclass on inspection (#7203)
- Measure the no. of times a template gets rendered (#7316)
- Reduce array traversal in Jekyll::Reader (#7157)
- Re-implement handling Liquid blocks in excerpts (#7250)
- Documents should be able to render their date (#7404)
- Fix Interpreter warning from Jekyll::Renderer (#7448)
- Loggers should accept both numbers and symbols (#6967)
- Replace regex arg to :gsub with a string arg (#7189)
- Dont write static files from unrendered collection (#7410)
- Excerpt handling of custom and intermediate tags (#7382)
- Change future post loglevel to warn to help user narrow down issues (#7527)
- Handle files with trailing dots in their basename (#7315)
- Fix unnecessary allocations via StaticFileReader (#7572)
- Don't check if site URL is absolute if it is nil (#7498)
- Avoid unnecessary duplication of pages array (#7272)
- Memoize Site#post_attr_hash (#7276)
- Memoize Document#excerpt_separator (#7569)
- Optimize Document::DATE_FILENAME_MATCHER to match valid filenames (#7292)
- Escape valid special chars in a site's path name (#7568)
- Replace
name
in Page#inspect with relative_path (#7434) - Log a warning when the slug is empty (#7357)
- Push Markdown link refs to excerpt only as required (#7577)
Minor Enhancements
- Enhance
--blank
scaffolding (#7310) - Fix custom 404 page for GitHub pages (#7132)
- Load config file from within current theme-gem (#7304)
- Use
jekyll-compose
if installed (#6932) - Suggest re-running command with
--trace
on fail (#6551) - Support for binary operators in where_exp filter (#6998)
- Automatically load
_config.toml
(#7299) - Add vendor folder to a newly installed site's .gitignore (#6968)
- Output Jekyll Version while debugging (#7173)
- Memoize computing excerpt's relative_path (#6951)
- Skip processing posts that can not be read (#7302)
- Memoize the return value of Site#documents (#7273)
- Cache globbed paths in front matter defaults (#7345)
- Cache computed item property (#7301)
- Cleanup Markdown converter (#7519)
- Disable Liquid via front matter (#6824)
- Do not process Liquid in post excerpt when disabled in front matter (#7146)
- Liquefied link tag (#6269)
- Update item_property to return numbers as numbers instead of strings (#6608)
- Use
.markdown
extension for page templates (#7126) - Add support for
*.xhtml
files (#6854) - Allow i18n v0.9.5 and higher (#7044)
- Ignore permission error of /proc/version (#7267)
- Strip extra slashes via
Jekyll.sanitized_path
(#7182) - Site template: remove default config for markdown (#7285)
- Add a custom inspect string for StaticFile objects (#7422)
- Remind user to include gem in the Gemfile on error (#7476)
- Search Front matter defaults for Page objects with relative_path (#7261)
- Configure cache_dir (#7232)
- Lock use of
tzinfo
gem to v1.x (#7521, #7562) - Utilize absolute paths of user-provided file paths (#7450)
Development Fixes
- Use communicative method parameters (#7566)
- Scan
assert_equal
methods and rectify any offenses with a custom RuboCop cop (#7130) - Add a script to profile docs with CI (#7540)
- Test with Ruby 2.6 on AppVeyor (#7518)
- Update gemspec (#7425)
- Upgrade liquid-c to v4.0 (#7375)
- Bump RuboCop to v0.63.x (#7489)
- Bump RuboCop to v0.62.x (#7449)
- Bump RuboCop to v0.61.x (#7401)
- Bump RuboCop to v0.60.x (#7338)
- Bump RuboCop to v0.59.0 (#7237)
- Bump RuboCop to v0.57.x (#7078)
- Relax version constraint on classifier-reborn gem (#7471)
- Test with Ruby v2.6 (#7438)
- Create symlink only if target is accessible (#7429)
- Test with oldest and latest Ruby only (#7412)
- Switch to
:install_if
for wdm gem (#7372) - Update excludes for CodeClimate Analyses (#7365)
- CI(Appveyor): shallow clone with 5 last commits (#7312)
- update yajl-ruby (#7278)
- Add cucumber feature to test include_relative tag (#7213)
- Small benchmark refactoring (#7211)
- Lock Travis to Bundler-1.16.2 (#7144)
- Fix incorrectly passed arguments to assert_equal (#7134)
- fix up refute_equal call (#7133)
- Fix RuboCop offences in test files (#7128)
- Use assert_include (#7093)
- Remember to release docs gem (#7066)
- Update RuboCop's config (#7050)
- Useless privates removed (#6768)
- Load Rouge for TestKramdown (#7007)
- yajl-ruby update to v1.4.0 (#6976)
- Update instructions for releasing docs Gem (#6975)
- We are not using Ruby 2.2 anymore (#6977)
- Remove unnecessary Jekyll::Page constant (#6770)
- Remove unused error class (#6511)
Documentation
- Add Installation Instructions for Ubuntu (#6925)
- add liquid tag jekyll-flickr (#6946)
- Updated copy - fixed casing of SaaS on resources page. (#6949)
- Do not advise users to install Jekyll outside of Bundler (#6927)
- Don't prompt for sudo when installing with Ubuntu WSL (#6781)
- Fix typo (#6969)
- Add version number for group_by_exp doc (#6956)
- Update Windows install docs (#6926)
- Remove documentation for using Redcarpet (#6990)
- Updated nginx configuration for custom-404-page documentation (#6994)
- List all static files variables (#7002)
- Document that _drafts need to be contained within the custom collection directory (#6985)
- Change for passive voice. (#7005)
- Added the CAT plugin to the plugin list (#7011)
- Updated to supported version (#7031)
- Clarify definition of 'draft' (#7037)
- Listed the jekyll-target-blank plugin in plugins list. (#7046)
- Typo (#7058)
- Add Hints for some Improved Travis Config in Doc (#7049)
- Added plugin json-get. (#7086)
- Update travis-ci.md to point out "this is an example Gemfile" (#7089)
- Adding
jekyll-info
plugin (#7091) - GitHub enables you to use themes from other repos (#7112)
- Updates to CODE OF CONDUCT (v1.4.0) (#7105)
- Instructions to view theme’s files under Linux (#7095)
- Add jekyll-xml-source (#7114)
- Add the jekyll-firstimage filter plugin (#7127)
- Use a real theme in the example (#7125)
- Update docs about post creation (#7138)
- Add DEV Community's Jekyll tag to community page (#7139)
- Initialize upgrading doc for v4.0 (#7140)
- Add version badge for date filters with ordinal (#7162)
- Add closing tags for <a> (#7163)
- Add TSV to list of supported _data files. (#7168)
- Corrected sample usage of postfiles (#7181)
- Add missing html end tag for code example in section 'For loops' (#7199)
- Resolve "Unable to locate package ruby2.4" error (#7196)
- Installation instructions for Fedora (#7198)
- New docs (#7205)
- List all standard liquid filters (#7333)
- Correct stylesheet url in tutorial step 7 (#7210)
- Add some minor improvements to image loading in Showcase page (#7214)
- Fix minor grammatical error (#7215)
- Add developer.spotify.com to the Jekyll Showcase (#7217)
- Removes quotes from markdown for assets (#7223)
- Clarified front matter requirement (#7234)
- Minor whitespace fixes (#7238)
- Explicit location of where to create blog.html (#7241)
- Fix a small grammar error/typo in the docs (#7260)
- Reference the build command options that allows multiple config files (#7266)
- Update 10-deployment.md (#7268)
- Add more issue template(s) and pull request template (#7269)
- Suggest sites use OpenSSL instead of GnuTLS for their site's CI (#7010)
- Fix broken Contributors link in README.markdown (#7200)
- Add title tag to item in RSS template (#7282)
- More inclusive writing (#7283)
- Document converter methods (#7289)
- Add link tag to item in RSS template (#7291)
- Add Isomer to showcase (#7300)
- Added missing semicolon (#7306)
- "This restricts you..." to "This restricts your" (#7307)
- Add a link to Giraffe Academy's tutorial (#7325)
- Grammar correction (#7327)
- Document Jekyll Filters with YAML data (#7335)
- Remove redundant instruction comment (#7342)
- Minimize rendering count (#7343)
- Update posts.md (#7360)
- Add info how to deploy using pre-push git hook (#7179)
...