From d213981a24c72f1b441f91906bce5c0da0336180 Mon Sep 17 00:00:00 2001 From: Florian Thomas Date: Wed, 17 Feb 2016 22:27:38 +0100 Subject: [PATCH 01/58] Fix warnings This removes the following warnings: - /lib/jekyll/configuration.rb:151: warning: instance variable @default_config_file not initialized - /lib/jekyll/converter.rb:12: warning: instance variable @highlighter_prefix not initialized - /lib/jekyll/converter.rb:24: warning: instance variable @highlighter_suffix not initialized - /lib/jekyll/converters/markdown.rb:9: warning: instance variable @setup not initialized - /lib/jekyll/converters/markdown/kramdown_parser.rb:60: warning: instance variable @highlighter not initialized - /lib/jekyll/frontmatter_defaults.rb:97: warning: shadowing outer local variable - path - /lib/jekyll/plugin.rb:66: warning: instance variable @safe not initialized - /lib/jekyll/regenerator.rb:147: warning: instance variable @disabled not initialized - /test/test_convertible.rb:40: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_filters.rb:154: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_new_command.rb:84: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_site.rb:234: warning: assigned but unused variable - site - /test/test_site.rb:240: warning: assigned but unused variable - site - /test/test_site.rb:522: warning: assigned but unused variable - source - /test/test_tags.rb:153: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:425: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:449: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:496: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:496: warning: instance variable @result not initialized - /test/test_tags.rb:511: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:773: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_tags.rb:773: warning: instance variable @result not initialized - /test/test_tags.rb:788: warning: ambiguous first argument; put parentheses or a space even after `/' operator - /test/test_url.rb:66: warning: shadowing outer local variable - doc - /lib/jekyll/url.rb:119:in `escape_path': warning: URI.escape is obsolete --- lib/jekyll/configuration.rb | 2 +- lib/jekyll/converter.rb | 8 ++++++-- lib/jekyll/converters/markdown.rb | 2 +- .../converters/markdown/kramdown_parser.rb | 1 + lib/jekyll/frontmatter_defaults.rb | 4 ++-- lib/jekyll/plugin.rb | 2 +- lib/jekyll/regenerator.rb | 8 +++++--- test/test_convertible.rb | 2 +- test/test_filters.rb | 2 +- test/test_new_command.rb | 2 +- test/test_site.rb | 5 ++--- test/test_tags.rb | 16 +++++++++------- test/test_url.rb | 4 ++-- 13 files changed, 33 insertions(+), 25 deletions(-) diff --git a/lib/jekyll/configuration.rb b/lib/jekyll/configuration.rb index 0f8618a1..1ef67ae6 100644 --- a/lib/jekyll/configuration.rb +++ b/lib/jekyll/configuration.rb @@ -148,7 +148,7 @@ module Jekyll Jekyll.logger.info "Configuration file:", file next_config rescue SystemCallError - if @default_config_file + if @default_config_file ||= nil Jekyll.logger.warn "Configuration file:", "none" {} else diff --git a/lib/jekyll/converter.rb b/lib/jekyll/converter.rb index c30f4944..f9d2ce16 100644 --- a/lib/jekyll/converter.rb +++ b/lib/jekyll/converter.rb @@ -8,7 +8,9 @@ module Jekyll # # Returns the String prefix. def self.highlighter_prefix(highlighter_prefix = nil) - @highlighter_prefix = highlighter_prefix if highlighter_prefix + if !defined?(@highlighter_prefix) || !highlighter_prefix.nil? + @highlighter_prefix = highlighter_prefix + end @highlighter_prefix end @@ -20,7 +22,9 @@ module Jekyll # # Returns the String suffix. def self.highlighter_suffix(highlighter_suffix = nil) - @highlighter_suffix = highlighter_suffix if highlighter_suffix + if !defined?(@highlighter_suffix) || !highlighter_suffix.nil? + @highlighter_suffix = highlighter_suffix + end @highlighter_suffix end diff --git a/lib/jekyll/converters/markdown.rb b/lib/jekyll/converters/markdown.rb index aed906d7..6e44b3b2 100644 --- a/lib/jekyll/converters/markdown.rb +++ b/lib/jekyll/converters/markdown.rb @@ -6,7 +6,7 @@ module Jekyll safe true def setup - return if @setup + return if @setup ||= false unless (@parser = get_processor) Jekyll.logger.error "Invalid Markdown processor given:", @config["markdown"] Jekyll.logger.info "", "Custom processors are not loaded in safe mode" if @config["safe"] diff --git a/lib/jekyll/converters/markdown/kramdown_parser.rb b/lib/jekyll/converters/markdown/kramdown_parser.rb index 93605cdd..4d84a5bc 100644 --- a/lib/jekyll/converters/markdown/kramdown_parser.rb +++ b/lib/jekyll/converters/markdown/kramdown_parser.rb @@ -18,6 +18,7 @@ module Jekyll Jekyll::External.require_with_graceful_fail "kramdown" @main_fallback_highlighter = config["highlighter"] || "rouge" @config = config["kramdown"] || {} + @highlighter = nil setup end diff --git a/lib/jekyll/frontmatter_defaults.rb b/lib/jekyll/frontmatter_defaults.rb index 877f517e..22df50f2 100644 --- a/lib/jekyll/frontmatter_defaults.rb +++ b/lib/jekyll/frontmatter_defaults.rb @@ -94,8 +94,8 @@ module Jekyll return true if !scope.key?('path') || scope['path'].empty? scope_path = Pathname.new(scope['path']) - Pathname.new(sanitize_path(path)).ascend do |path| - if path.to_s == scope_path.to_s + Pathname.new(sanitize_path(path)).ascend do |ascended_path| + if ascended_path.to_s == scope_path.to_s return true end end diff --git a/lib/jekyll/plugin.rb b/lib/jekyll/plugin.rb index e2a95168..1fb91058 100644 --- a/lib/jekyll/plugin.rb +++ b/lib/jekyll/plugin.rb @@ -60,7 +60,7 @@ module Jekyll # # Returns the safety Boolean. def self.safe(safe = nil) - if safe + if !defined?(@safe) || !safe.nil? @safe = safe end @safe || false diff --git a/lib/jekyll/regenerator.rb b/lib/jekyll/regenerator.rb index 20522350..830ea914 100644 --- a/lib/jekyll/regenerator.rb +++ b/lib/jekyll/regenerator.rb @@ -1,6 +1,8 @@ module Jekyll class Regenerator attr_reader :site, :metadata, :cache + attr_accessor :disabled + private :disabled, :disabled= def initialize(site) @site = site @@ -115,7 +117,7 @@ module Jekyll # # Returns nothing. def add_dependency(path, dependency) - return if metadata[path].nil? || @disabled + return if metadata[path].nil? || disabled unless metadata[path]["deps"].include? dependency metadata[path]["deps"] << dependency @@ -144,8 +146,8 @@ module Jekyll # # Returns a Boolean (true for disabled, false for enabled). def disabled? - @disabled = !site.incremental? if @disabled.nil? - @disabled + self.disabled = !site.incremental? if disabled.nil? + disabled end private diff --git a/test/test_convertible.rb b/test/test_convertible.rb index 524ecdf4..517f5c3b 100644 --- a/test/test_convertible.rb +++ b/test/test_convertible.rb @@ -37,7 +37,7 @@ class TestConvertible < JekyllUnitTest out = capture_stderr do @convertible.read_yaml(@base, 'exploit_front_matter.erb') end - refute_match /undefined class\/module DoesNotExist/, out + refute_match(/undefined class\/module DoesNotExist/, out) end should "not parse if there is encoding error in file" do diff --git a/test/test_filters.rb b/test/test_filters.rb index ca7cd49d..8fd24c55 100644 --- a/test/test_filters.rb +++ b/test/test_filters.rb @@ -151,7 +151,7 @@ class TestFilters < JekyllUnitTest end should "format a time with xmlschema" do - assert_match /2014-05-10T00:10:07/, @filter.date_to_xmlschema(@time_as_numeric) + assert_match(/2014-05-10T00:10:07/, @filter.date_to_xmlschema(@time_as_numeric)) end should "format a time according to RFC-822" do diff --git a/test/test_new_command.rb b/test/test_new_command.rb index f0d2a389..90462904 100644 --- a/test/test_new_command.rb +++ b/test/test_new_command.rb @@ -81,7 +81,7 @@ class TestNewCommand < JekyllUnitTest should 'force created folder' do capture_stdout { Jekyll::Commands::New.process(@args) } output = capture_stdout { Jekyll::Commands::New.process(@args, '--force') } - assert_match /New jekyll site installed in/, output + assert_match(/New jekyll site installed in/, output) end end diff --git a/test/test_site.rb b/test/test_site.rb index c06c218e..ddd54655 100644 --- a/test/test_site.rb +++ b/test/test_site.rb @@ -231,13 +231,13 @@ class TestSite < JekyllUnitTest context 'error handling' do should "raise if destination is included in source" do assert_raises Jekyll::Errors::FatalException do - site = Site.new(site_configuration('destination' => source_dir)) + Site.new(site_configuration('destination' => source_dir)) end end should "raise if destination is source" do assert_raises Jekyll::Errors::FatalException do - site = Site.new(site_configuration('destination' => File.join(source_dir, ".."))) + Site.new(site_configuration('destination' => File.join(source_dir, ".."))) end end end @@ -519,7 +519,6 @@ class TestSite < JekyllUnitTest contacts_html = @site.pages.find { |p| p.name == "contacts.html" } @site.process - source = @site.in_source_dir(contacts_html.path) dest = File.expand_path(contacts_html.destination(@site.dest)) mtime1 = File.stat(dest).mtime.to_i # first run must generate dest file diff --git a/test/test_tags.rb b/test/test_tags.rb index f263e9d8..0dd8cac8 100644 --- a/test/test_tags.rb +++ b/test/test_tags.rb @@ -150,7 +150,7 @@ CONTENT end should "not cause a markdown error" do - refute_match /markdown\-html\-error/, @result + refute_match(/markdown\-html\-error/, @result) end should "render markdown with pygments" do @@ -422,7 +422,7 @@ CONTENT end should "not cause an error" do - refute_match /markdown\-html\-error/, @result + refute_match(/markdown\-html\-error/, @result) end should "have the url to the \"complex\" post from 2008-11-21" do @@ -446,7 +446,7 @@ CONTENT end should "not cause an error" do - refute_match /markdown\-html\-error/, @result + refute_match(/markdown\-html\-error/, @result) end should "have the url to the \"complex\" post from 2008-11-21" do @@ -493,7 +493,8 @@ title: Include symlink CONTENT create_post(content, {'permalink' => 'pretty', 'source' => source_dir, 'destination' => dest_dir, 'read_posts' => true, 'safe' => true }) end - refute_match /SYMLINK TEST/, @result + @result ||= '' + refute_match(/SYMLINK TEST/, @result) end should "not expose the existence of symlinked files" do @@ -508,7 +509,7 @@ title: Include symlink CONTENT create_post(content, {'permalink' => 'pretty', 'source' => source_dir, 'destination' => dest_dir, 'read_posts' => true, 'safe' => true }) end - assert_match /should exist and should not be a symlink/, ex.message + assert_match(/should exist and should not be a symlink/, ex.message) end end @@ -770,7 +771,8 @@ title: Include symlink CONTENT create_post(content, {'permalink' => 'pretty', 'source' => source_dir, 'destination' => dest_dir, 'read_posts' => true, 'safe' => true }) end - refute_match /SYMLINK TEST/, @result + @result ||= '' + refute_match(/SYMLINK TEST/, @result) end should "not expose the existence of symlinked files" do @@ -785,7 +787,7 @@ title: Include symlink CONTENT create_post(content, {'permalink' => 'pretty', 'source' => source_dir, 'destination' => dest_dir, 'read_posts' => true, 'safe' => true }) end - assert_match /should exist and should not be a symlink/, ex.message + assert_match(/should exist and should not be a symlink/, ex.message) end end end diff --git a/test/test_url.rb b/test/test_url.rb index 578e8962..99ee5e61 100644 --- a/test/test_url.rb +++ b/test/test_url.rb @@ -63,12 +63,12 @@ class TestURL < JekyllUnitTest }, }) site.read - doc = site.collections["methods"].docs.find do |doc| + matching_doc = site.collections["methods"].docs.find do |doc| doc.relative_path == "_methods/escape-+ #%20[].md" end assert_equal '/methods/escape-+-20/escape-20.html', URL.new( :template => '/methods/:title/:name:output_ext', - :placeholders => doc.url_placeholders + :placeholders => matching_doc.url_placeholders ).to_s end From 06ab708edfaf9161b91e12e7940f9f0144d23062 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Sun, 27 Mar 2016 21:41:23 -0500 Subject: [PATCH 02/58] Don't blindly assume the last-system. As it was we assumed that any system that wasn't Windows or OS X must be Linux but the reality of that can be very unlikely. BSD is popular in some places and it's not Linux and this would cause an error there. If we do not know the launcher for a platform we should ship an error and have the user file a bug if they feel it necessary and skip the launch otherwise. --- lib/jekyll/commands/serve.rb | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/lib/jekyll/commands/serve.rb b/lib/jekyll/commands/serve.rb index 69ea8ba7..1ca28a4c 100644 --- a/lib/jekyll/commands/serve.rb +++ b/lib/jekyll/commands/serve.rb @@ -127,15 +127,12 @@ module Jekyll private def launch_browser(server, opts) - command = - if Utils::Platforms.windows? - "start" - elsif Utils::Platforms.osx? - "open" - else - "xdg-open" - end - system command, server_address(server, opts) + address = server_address(server, opts) + return system "start", address if Utils::Platforms.windows? + return system "xdg-open", address if Utils::Platforms.linux? + return system "open", address if Utils::Platforms.osx? + Jekyll.logger.error "Refusing to launch browser; " \ + "Platform launcher unknown." end # Keep in our area with a thread or detach the server as requested From f80321ecacdb0e4e0abd3ee96e3d8d0a5f42c132 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Sun, 27 Mar 2016 22:22:35 -0500 Subject: [PATCH 03/58] Update Rake. Update Rake and disable verbosity when running the specs because we have some deprecated usage (for now -- however, see: jekyll/jekyll#4719) and because Rouge, and Liquid throw out thousands (probably hyperbolic) of warnigns when the specs are being ran. We need upstream to fix their problems while we fix ours or we'll all have a bad day, not that we aren't already. --- Gemfile | 2 +- test/helper.rb | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index b27211cb..5a080750 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,7 @@ source "https://rubygems.org" gemspec :name => "jekyll" -gem "rake", "~> 10.1" +gem "rake", "~> 11.0" group :development do gem "launchy", "~> 2.3" gem "rubocop", :branch => :master, :github => "bbatsov/rubocop" diff --git a/test/helper.rb b/test/helper.rb index 78b1f78b..ade8b77d 100644 --- a/test/helper.rb +++ b/test/helper.rb @@ -1,3 +1,10 @@ +$stdout.puts "# -------------------------------------------------------------" +$stdout.puts "# SPECS AND TESTS ARE RUNNING WITH WARNINGS OFF." +$stdout.puts "# SEE: https://github.com/Shopify/liquid/issues/730" +$stdout.puts "# SEE: https://github.com/jekyll/jekyll/issues/4719" +$stdout.puts "# -------------------------------------------------------------" +$VERBOSE = nil + def jruby? defined?(RUBY_ENGINE) && RUBY_ENGINE == 'jruby' end From d576d7bfae4f0bb556b03a5607a91bba103db011 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enes=20G=C3=B6n=C3=BClta=C5=9F?= Date: Wed, 30 Mar 2016 17:16:25 +0300 Subject: [PATCH 04/58] Added an explicit rerun note --- site/_docs/configuration.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/site/_docs/configuration.md b/site/_docs/configuration.md index 9956cb77..02800690 100644 --- a/site/_docs/configuration.md +++ b/site/_docs/configuration.md @@ -450,6 +450,18 @@ defaults: layout: "default" {% endhighlight %} +
+
Please stop and rerun `jekyll serve` command.
+

+ The _config.yml master configuration file contains global configurations + and variable definitions that are read once at execution time. Changes made to _config.yml + during automatic regeneration are not loaded until the next execution. +

+

+ Note Data Files are included and reloaded during automatic regeneration. +

+
+ Here, we are scoping the `values` to any file that exists in the scopes path. Since the path is set as an empty string, it will apply to **all files** in your project. You probably don't want to set a layout on every file in your project - like css files, for example - so you can also specify a `type` value under the `scope` key. {% highlight yaml %} From 4b471fe9fb27d9e9eab637eacf2adb45aea0c8c1 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Thu, 31 Mar 2016 13:39:08 -0700 Subject: [PATCH 05/58] DocumentDrop: add `#<=>` which sorts by date (falling back to path) --- lib/jekyll/drops/document_drop.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/jekyll/drops/document_drop.rb b/lib/jekyll/drops/document_drop.rb index 69933752..4eb9e50c 100644 --- a/lib/jekyll/drops/document_drop.rb +++ b/lib/jekyll/drops/document_drop.rb @@ -20,6 +20,13 @@ module Jekyll fallback_data['excerpt'].to_s end + def <=>(other) + return nil unless other.is_a? DocumentDrop + cmp = self['date'] <=> other['date'] + cmp = self['path'] <=> other['path'] if cmp.nil? || cmp == 0 + cmp + end + private def_delegator :@obj, :data, :fallback_data end From ba9a28474f6fc1b7a61ff805e934fb0434589922 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Thu, 31 Mar 2016 18:31:18 -0700 Subject: [PATCH 06/58] Update history to reflect merge of #4720 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index d43c99e5..553b8f27 100644 --- a/History.markdown +++ b/History.markdown @@ -37,6 +37,7 @@ * Unify method for copying special files from repo to site (#4601) * Refresh the contributing file (#4596) * change smartify doc from copy/paste of mardownify doc (#4653) + * Update Rake & disable warnings when running tests (#4720) ### Site Enhancements From 7861f127275ac8ab005e7553e98b78059c2efc99 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Thu, 31 Mar 2016 18:37:33 -0700 Subject: [PATCH 07/58] Update history to reflect merge of #4537 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 553b8f27..074b5ad4 100644 --- a/History.markdown +++ b/History.markdown @@ -38,6 +38,7 @@ * Refresh the contributing file (#4596) * change smartify doc from copy/paste of mardownify doc (#4653) * Update Rake & disable warnings when running tests (#4720) + * Fix many warnings (#4537) ### Site Enhancements From df2a92cb39418e0eb457d34b1c53fe70bbda975d Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Thu, 31 Mar 2016 18:40:15 -0700 Subject: [PATCH 08/58] Update history to reflect merge of #4717 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 074b5ad4..aa78d159 100644 --- a/History.markdown +++ b/History.markdown @@ -39,6 +39,7 @@ * change smartify doc from copy/paste of mardownify doc (#4653) * Update Rake & disable warnings when running tests (#4720) * Fix many warnings (#4537) + * Don't blindly assume the last system when determining "open" cmd (#4717) ### Site Enhancements From 2bd3815b42d3733bf086170277b846285700d697 Mon Sep 17 00:00:00 2001 From: Suriyaa Kudo Date: Sun, 3 Apr 2016 10:25:18 +0200 Subject: [PATCH 09/58] Small edits --- .github/CONTRIBUTING.markdown | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/CONTRIBUTING.markdown b/.github/CONTRIBUTING.markdown index e0f278fe..9c3c985d 100644 --- a/.github/CONTRIBUTING.markdown +++ b/.github/CONTRIBUTING.markdown @@ -6,8 +6,8 @@ Hi there! Interested in contributing to Jekyll? We'd love your help. Jekyll is a * If you have a question about using Jekyll, start a discussion on [Jekyll Talk](https://talk.jekyllrb.com). * If you think you've found a bug within a Jekyll plugin, open an issue in that plugin's repository. -* If you think you've found a bug within Jekyll itself, [open an issue](https://github.com/jekyll/jekyll/issues/new) -* More resources are listed on our [Help page](https://jekyllrb.com/help/) +* If you think you've found a bug within Jekyll itself, [open an issue](https://github.com/jekyll/jekyll/issues/new). +* More resources are listed on our [Help page](https://jekyllrb.com/help/). ## Ways to contribute @@ -28,7 +28,7 @@ Whether you're a developer, a designer, or just a Jekyll devotee, there are lots * The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users. -* Pull request are easy and fun. If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/) +* Pull request are easy and fun. If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/). * If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below. @@ -36,7 +36,7 @@ Whether you're a developer, a designer, or just a Jekyll devotee, there are lots Many small changes can be made entirely through the github.com web interface. -1. Navigate to the file within [`jekyll/jekyll`](https://github.com/jekyll/jekyll) that you'd like to edit +1. Navigate to the file within [`jekyll/jekyll`](https://github.com/jekyll/jekyll) that you'd like to edit. 2. Click the pencil icon in the top right corner to edit the file 3. Make your proposed changes 4. Click "Propose file change" @@ -48,8 +48,8 @@ That's it! You'll be automatically subscribed to receive updates as others revie ### Submitting a pull request via Git command line -1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll) -2. Clone the repository lcoally `git clone https://github.com//jekyll` +1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll). +2. Clone the repository lcoally `git clone https://github.com//jekyll`. 3. Create a new, descriptively named branch to contain your change ( `git checkout -b my-awesome-feature` ). 4. Hack away, add tests. Not necessarily in that order. 5. Make sure everything still passes by running `script/cibuild` (see [the tests section](#running-tests-locally) below) From 387c40f667033bf6ed4fac5f2b8001a5932288d0 Mon Sep 17 00:00:00 2001 From: Suriyaa Kudo Date: Sun, 3 Apr 2016 10:28:09 +0200 Subject: [PATCH 10/58] Set protocol of jekyllrb.com to HTTPS --- site/_docs/continuous-integration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/_docs/continuous-integration.md b/site/_docs/continuous-integration.md index 587ecdab..15e49898 100644 --- a/site/_docs/continuous-integration.md +++ b/site/_docs/continuous-integration.md @@ -230,4 +230,4 @@ This entire guide is open-source. Go ahead and [edit it][3] if you have a fix or [ask for help][4] if you run into trouble and need some help. [3]: https://github.com/jekyll/jekyll/edit/master/site/_docs/continuous-integration.md -[4]: http://jekyllrb.com/help/ +[4]: https://jekyllrb.com/help/ From eb4e9dd347a9d036b12165462c6c172b4e3e1f47 Mon Sep 17 00:00:00 2001 From: Alex Hoyau Date: Mon, 4 Apr 2016 19:07:57 +0200 Subject: [PATCH 11/58] more form baas --- site/_docs/resources.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/site/_docs/resources.md b/site/_docs/resources.md index 0e403986..58277d89 100644 --- a/site/_docs/resources.md +++ b/site/_docs/resources.md @@ -16,8 +16,10 @@ Jekyll’s growing use is producing a wide variety of tutorials, frameworks, ext ### Integrations -- [Use FormKeep as a backend for forms (contact forms, hiring forms, etc.)](https://formkeep.com/guides/how-to-make-a-contact-form-in-jekyll?utm_source=github&utm_medium=jekyll-docs&utm_campaign=contact-form-jekyll) -- [Use Simple Form to add a simple contact form](http://getsimpleform.com/) +- Use a saas service as a backend for forms (contact forms, hiring forms, etc.) + - [Formspree (also open source)](http://formspree.io/) + - [FormKeep](https://formkeep.com/guides/how-to-make-a-contact-form-in-jekyll?utm_source=github&utm_medium=jekyll-docs&utm_campaign=contact-form-jekyll) + - [Simple Form](http://getsimpleform.com/) - [Jekyll Bootstrap](http://jekyllbootstrap.com), 0 to Blog in 3 minutes. Provides detailed explanations, examples, and helper-code to make getting started with Jekyll easier. - [Integrating Twitter with Jekyll](http://www.justkez.com/integrating-twitter-with-jekyll/) > “Having migrated Justkez.com to be based on Jekyll, I was pondering how I might include my recent twitterings on the front page of the site. In the WordPress world, this would have been done via a plugin which may or may not have hung the loading of the page, might have employed caching, but would certainly have had some overheads. … Not in Jekyll.” From 7040448b751582e82c3b557f0613fe825d2b2361 Mon Sep 17 00:00:00 2001 From: Alex Wood Date: Mon, 4 Apr 2016 16:23:30 -0400 Subject: [PATCH 12/58] Add entry linking to the Hawkins plugin. --- site/_docs/plugins.md | 1 + 1 file changed, 1 insertion(+) diff --git a/site/_docs/plugins.md b/site/_docs/plugins.md index 8f173cb0..4b31fbd1 100644 --- a/site/_docs/plugins.md +++ b/site/_docs/plugins.md @@ -898,6 +898,7 @@ LESS.js files during generation. - [Jekyll Deploy](https://github.com/vwochnik/jekyll-deploy): Adds a `deploy` sub-command to Jekyll. - [Official Contentful Jekyll Plugin](https://github.com/contentful/jekyll-contentful-data-import): Adds a `contentful` sub-command to Jekyll to import data from Contentful. - [jekyll-paspagon](https://github.com/KrzysiekJ/jekyll-paspagon): Sell your posts in various formats for cryptocurrencies. +- [Hawkins](https://github.com/awood/hawkins): Adds a `liveserve` sub-command to Jekyll that incorporates [LiveReload](http://livereload.com/) into your pages while you preview them. No more hitting the refresh button in your browser! #### Editors From e801d55ddfa8e2541ff8ea2f44062748a8766913 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Mon, 4 Apr 2016 14:54:33 -0700 Subject: [PATCH 13/58] Update history to reflect merge of #4755 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index aa78d159..45ca49ac 100644 --- a/History.markdown +++ b/History.markdown @@ -61,6 +61,7 @@ * Add jekyll-paspagon plugin (#4700) * Bold-italicize note in assets documentation about needing yaml front matter (#4706) * Highlight the `script/` calls in the Contributing documentation (#4712) + * Add Hawkins to the list of third-party plugins (#4755) ## 3.1.2 / 2016-02-19 From 19a84730235ad53400569cddc74787c577adbef9 Mon Sep 17 00:00:00 2001 From: Keegan Mullaney Date: Tue, 5 Apr 2016 16:49:38 +0800 Subject: [PATCH 14/58] fix typo lcoally => locally Changes to be committed: modified: .github/CONTRIBUTING.markdown modified: site/_docs/contributing.md --- .github/CONTRIBUTING.markdown | 2 +- site/_docs/contributing.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/CONTRIBUTING.markdown b/.github/CONTRIBUTING.markdown index 9c3c985d..14976e71 100644 --- a/.github/CONTRIBUTING.markdown +++ b/.github/CONTRIBUTING.markdown @@ -49,7 +49,7 @@ That's it! You'll be automatically subscribed to receive updates as others revie ### Submitting a pull request via Git command line 1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll). -2. Clone the repository lcoally `git clone https://github.com//jekyll`. +2. Clone the repository locally `git clone https://github.com//jekyll`. 3. Create a new, descriptively named branch to contain your change ( `git checkout -b my-awesome-feature` ). 4. Hack away, add tests. Not necessarily in that order. 5. Make sure everything still passes by running `script/cibuild` (see [the tests section](#running-tests-locally) below) diff --git a/site/_docs/contributing.md b/site/_docs/contributing.md index c128ced9..8396a2e9 100644 --- a/site/_docs/contributing.md +++ b/site/_docs/contributing.md @@ -54,7 +54,7 @@ That's it! You'll be automatically subscribed to receive updates as others revie ### Submitting a pull request via Git command line 1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll) -2. Clone the repository lcoally `git clone https://github.com//jekyll` +2. Clone the repository locally `git clone https://github.com//jekyll` 3. Create a new, descriptively named branch to contain your change ( `git checkout -b my-awesome-feature` ). 4. Hack away, add tests. Not necessarily in that order. 5. Make sure everything still passes by running `script/cibuild` (see [the tests section](#running-tests-locally) below) From 6422477c5e2cc07b4bcee57c4b343d222ac32da7 Mon Sep 17 00:00:00 2001 From: nscyclone Date: Tue, 5 Apr 2016 20:51:25 +0300 Subject: [PATCH 15/58] Fixed a typo in 'contributing'. --- .github/CONTRIBUTING.markdown | 2 +- site/_docs/contributing.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/CONTRIBUTING.markdown b/.github/CONTRIBUTING.markdown index 9c3c985d..53aac97c 100644 --- a/.github/CONTRIBUTING.markdown +++ b/.github/CONTRIBUTING.markdown @@ -84,7 +84,7 @@ If your contribution changes any Jekyll behavior, make sure to update the docume #### Tests -* If you're creating a small fix or patch to an existing feature, a simple test if more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need to can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks). +* If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks). * If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate. diff --git a/site/_docs/contributing.md b/site/_docs/contributing.md index c128ced9..0df27c3d 100644 --- a/site/_docs/contributing.md +++ b/site/_docs/contributing.md @@ -89,7 +89,7 @@ If your contribution changes any Jekyll behavior, make sure to update the docume #### Tests -* If you're creating a small fix or patch to an existing feature, a simple test if more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need to can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks). +* If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks). * If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate. From 51f79a4387baf7ee7123be8846eff60030ada5b0 Mon Sep 17 00:00:00 2001 From: Clark Winkelmann Date: Tue, 5 Apr 2016 20:51:33 +0200 Subject: [PATCH 16/58] Fixed the example fork url in CONTRIBUTING --- .github/CONTRIBUTING.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.markdown b/.github/CONTRIBUTING.markdown index 9c3c985d..5b8aba32 100644 --- a/.github/CONTRIBUTING.markdown +++ b/.github/CONTRIBUTING.markdown @@ -54,7 +54,7 @@ That's it! You'll be automatically subscribed to receive updates as others revie 4. Hack away, add tests. Not necessarily in that order. 5. Make sure everything still passes by running `script/cibuild` (see [the tests section](#running-tests-locally) below) 6. Push the branch up ( `git push origin my-awesome-feature` ). -7. Create a pull request by visiting https://github.com//jekyll/ and following the instructions at the top of the screen. +7. Create a pull request by visiting `https://github.com//jekyll` and following the instructions at the top of the screen. ## Proposing updates to the documentation From 41e29948689e2fd74fa0db574b554448b3998513 Mon Sep 17 00:00:00 2001 From: Clark Winkelmann Date: Tue, 5 Apr 2016 20:58:39 +0200 Subject: [PATCH 17/58] Switch second GitHub Pages link to HTTPS This was pretty disturbing --- site/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/index.html b/site/index.html index 950897e0..88da5ec9 100644 --- a/site/index.html +++ b/site/index.html @@ -79,7 +79,7 @@ overview: true

Free hosting with GitHub Pages

Sick of dealing with hosting companies? GitHub Pages are powered by Jekyll, so you can easily deploy your site using GitHub for free—custom domain name and all.

- Learn more about GitHub Pages → + Learn more about GitHub Pages →
From 413783c4e85ce2207efac9812bacf717c428025e Mon Sep 17 00:00:00 2001 From: Shengbin Meng Date: Thu, 7 Apr 2016 00:35:24 +0800 Subject: [PATCH 18/58] Fix a typo in pagination doc --- site/_docs/variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/_docs/variables.md b/site/_docs/variables.md index 33b99fa5..60323886 100644 --- a/site/_docs/variables.md +++ b/site/_docs/variables.md @@ -353,7 +353,7 @@ following is a reference of the available data.

paginator.total_pages

-

Total number of Pages.

+

Total number of pages.

paginator.page

From 071e775a555705315bb00f32879894aa225b0b3b Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 6 Apr 2016 09:58:29 -0700 Subject: [PATCH 19/58] Update history to reflect merge of #4763 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 45ca49ac..6a2fa295 100644 --- a/History.markdown +++ b/History.markdown @@ -62,6 +62,7 @@ * Bold-italicize note in assets documentation about needing yaml front matter (#4706) * Highlight the `script/` calls in the Contributing documentation (#4712) * Add Hawkins to the list of third-party plugins (#4755) + * Fix a typo in pagination doc (#4763) ## 3.1.2 / 2016-02-19 From a473b45e35a15f76f383490aa5777e51240e47af Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 6 Apr 2016 17:14:29 -0700 Subject: [PATCH 20/58] Update history to reflect merge of #4741 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 6a2fa295..08fd583e 100644 --- a/History.markdown +++ b/History.markdown @@ -18,6 +18,7 @@ * Adds `link` Liquid tag to make generation of URL's easier (#4624) * Allow static files to be symlinked in unsafe mode or non-prod environments (#4640) * Add `:after_init` hook & add `Site#config=` to make resetting config easy (#4703) + * DocumentDrop: add `#<=>` which sorts by date (falling back to path) (#4741) ### Bug Fixes From 4528772e2021ca3281fcc7b0bac63a94b1de7754 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 6 Apr 2016 17:15:01 -0700 Subject: [PATCH 21/58] Update history to reflect merge of #4760 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 08fd583e..b2c7cbe7 100644 --- a/History.markdown +++ b/History.markdown @@ -64,6 +64,7 @@ * Highlight the `script/` calls in the Contributing documentation (#4712) * Add Hawkins to the list of third-party plugins (#4755) * Fix a typo in pagination doc (#4763) + * Switch second GitHub Pages link to HTTPS (#4760) ## 3.1.2 / 2016-02-19 From a42d0ad9e9e35be32f3fb75a9f054a12043db38e Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 6 Apr 2016 18:25:00 -0700 Subject: [PATCH 22/58] Update history to reflect merge of #4756 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index b2c7cbe7..5dcd0a05 100644 --- a/History.markdown +++ b/History.markdown @@ -41,6 +41,7 @@ * Update Rake & disable warnings when running tests (#4720) * Fix many warnings (#4537) * Don't blindly assume the last system when determining "open" cmd (#4717) + * Fix "locally" typo in contributing documentation (#4756) ### Site Enhancements From 129a0b6b7db82bc9b5817e43780ba0dddf5e86b2 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Thu, 7 Apr 2016 15:53:32 -0500 Subject: [PATCH 23/58] Do as Ruby maintainers requested. Lets see if anything breaks by using a 2 digit Ruby version number, they are looking for people to see if stuff breaks because this. --- .travis.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.travis.yml b/.travis.yml index 842bfa90..6080cc1e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,7 @@ rvm: - &ruby1 2.3.0 - &ruby2 2.2.4 - &ruby3 2.1.8 + - &ruby4 2.1.10 - &jruby jruby-9.0.4.0 - &rhead ruby-head @@ -17,6 +18,7 @@ matrix: allow_failures: - rvm: *jruby - rvm: *rhead + - rmv: *ruby4 env: matrix: - TEST_SUITE=test From 5e212648f690ec9d8619bec640119881eb12e9f6 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Thu, 7 Apr 2016 15:57:24 -0500 Subject: [PATCH 24/58] 2.1.8 => 2.1.9 --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6080cc1e..e811592f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,7 +8,7 @@ sudo: false rvm: - &ruby1 2.3.0 - &ruby2 2.2.4 - - &ruby3 2.1.8 + - &ruby3 2.1.9 - &ruby4 2.1.10 - &jruby jruby-9.0.4.0 - &rhead ruby-head @@ -18,7 +18,7 @@ matrix: allow_failures: - rvm: *jruby - rvm: *rhead - - rmv: *ruby4 + - rvm: *ruby4 env: matrix: - TEST_SUITE=test From 0daf1f5514d90a3da735afc6d38a07622901194e Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Thu, 7 Apr 2016 16:09:23 -0500 Subject: [PATCH 25/58] Revert moving to 2.1.9 It seems that Travis has made available 2.1.10 which is for double digit testing but skipped 2.1.10 (for some reason.) This reverts us back to 2.1.8 so that we can maintain a working build since we are triggering no known bugs in 2.1 at this time. --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index e811592f..5c0ce205 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,7 +8,7 @@ sudo: false rvm: - &ruby1 2.3.0 - &ruby2 2.2.4 - - &ruby3 2.1.9 + - &ruby3 2.1.8 - &ruby4 2.1.10 - &jruby jruby-9.0.4.0 - &rhead ruby-head From f17d0076e06198481a3e8760feb7e54e95530c10 Mon Sep 17 00:00:00 2001 From: Loren Rogers Date: Thu, 7 Apr 2016 20:28:16 -0400 Subject: [PATCH 26/58] Updates documentation for collections Closes #4687 --- site/_docs/collections.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/site/_docs/collections.md b/site/_docs/collections.md index 87c7c8e9..c1e1e7c2 100644 --- a/site/_docs/collections.md +++ b/site/_docs/collections.md @@ -317,6 +317,16 @@ file, each document has the following attributes:

+ + +

date

+ + +

+ The date of the document's collection. +

+ + From cd1d7afd5981eb5ef1fd1ffa87cb4dc9f26ac367 Mon Sep 17 00:00:00 2001 From: Ankush Menat Date: Fri, 8 Apr 2016 14:19:51 +0530 Subject: [PATCH 27/58] Removed Leonard Lamprecht's website Removed Leonard Lamprecht's website, he isn't using Jekyll for blogging anymore. Ref - https://medium.com/@leo/jekyll-medium-41a058ac2c91#.36e95k7de --- site/_docs/sites.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/site/_docs/sites.md b/site/_docs/sites.md index f0b1a9b2..61fbba13 100644 --- a/site/_docs/sites.md +++ b/site/_docs/sites.md @@ -14,8 +14,6 @@ learning purposes. ([source](https://github.com/github/training-kit)) - [Rasmus Andersson](http://rsms.me/) ([source](https://github.com/rsms/rsms.github.com)) -- [Leonard Lamprecht](http://leo.im) - ([source](https://github.com/leo/leo.github.io)) If you would like to explore more examples, you can find a list of sites and their sources on the ["Sites" page in the Jekyll wiki][jekyll-sites]. From 499339548d1f30655413167e0f1e07aab3b92e28 Mon Sep 17 00:00:00 2001 From: Krzysztof Jurewicz Date: Sat, 9 Apr 2016 13:56:55 +0200 Subject: [PATCH 28/58] Add jekyll-i18n_tags plugin --- site/_docs/plugins.md | 1 + 1 file changed, 1 insertion(+) diff --git a/site/_docs/plugins.md b/site/_docs/plugins.md index 4b31fbd1..21b02816 100644 --- a/site/_docs/plugins.md +++ b/site/_docs/plugins.md @@ -858,6 +858,7 @@ LESS.js files during generation. - [Jekyll Flickr Plugin](https://github.com/lawmurray/indii-jekyll-flickr) by [Lawrence Murray](http://www.indii.org): Embeds Flickr photosets (albums) as a gallery of thumbnails, with lightbox links to larger images. - [jekyll-figure](https://github.com/paulrobertlloyd/jekyll-figure): A liquid tag for Jekyll that generates `
` elements. - [Jekyll Video Embed](https://github.com/eug/jekyll-video-embed): It provides several tags to easily embed videos (e.g. Youtube, Vimeo, UStream and Ted Talks) +- [jekyll-i18n_tags](https://github.com/KrzysiekJ/jekyll-i18n_tags): Translate your templates. #### Collections From 6f000c3807dffee1cfe78f92838b761b36ced4bd Mon Sep 17 00:00:00 2001 From: Kevin Miller Date: Sun, 10 Apr 2016 09:53:50 -0700 Subject: [PATCH 29/58] Made statement about data file format more explicit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The doc read “These files must be YAML files…” then lists a few extensions that are not YAML. --- site/_docs/datafiles.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/_docs/datafiles.md b/site/_docs/datafiles.md index 4fd85b48..474e8e82 100644 --- a/site/_docs/datafiles.md +++ b/site/_docs/datafiles.md @@ -21,8 +21,8 @@ Plugins/themes can also leverage Data Files to set configuration variables. As explained on the [directory structure](../structure/) page, the `_data` folder is where you can store additional data for Jekyll to use when generating -your site. These files must be YAML files -(using either the `.yml`, `.yaml`, `.json` or `csv` extension) and they will be +your site. These files must be YAML, JSON, or CSV files (using either +the `.yml`, `.yaml`, `.json` or `.csv` extension), and they will be accessible via `site.data`. ## Example: List of members From b1a6b21dadc2c75feaf5e21b8599700c7a80160e Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Mon, 11 Apr 2016 12:09:55 -0700 Subject: [PATCH 30/58] Update history to reflect merge of #4781 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 5dcd0a05..76096c22 100644 --- a/History.markdown +++ b/History.markdown @@ -66,6 +66,7 @@ * Add Hawkins to the list of third-party plugins (#4755) * Fix a typo in pagination doc (#4763) * Switch second GitHub Pages link to HTTPS (#4760) + * Explain data file format requirements more clearly in documentation (#4781) ## 3.1.2 / 2016-02-19 From 9880cea6278588d728f4b078df2d625a888d4999 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Mon, 11 Apr 2016 19:16:32 -0700 Subject: [PATCH 31/58] Update history to reflect merge of #4775 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 76096c22..df2642bc 100644 --- a/History.markdown +++ b/History.markdown @@ -67,6 +67,7 @@ * Fix a typo in pagination doc (#4763) * Switch second GitHub Pages link to HTTPS (#4760) * Explain data file format requirements more clearly in documentation (#4781) + * Add jekyll-i18n_tags to list of third-party plugins (#4775) ## 3.1.2 / 2016-02-19 From b0c3e3fa471a6b0b4506760164610b4984e76d07 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Mon, 11 Apr 2016 19:17:20 -0700 Subject: [PATCH 32/58] Update history to reflect merge of #4771 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index df2642bc..97531ac6 100644 --- a/History.markdown +++ b/History.markdown @@ -68,6 +68,7 @@ * Switch second GitHub Pages link to HTTPS (#4760) * Explain data file format requirements more clearly in documentation (#4781) * Add jekyll-i18n_tags to list of third-party plugins (#4775) + * Remove Leonard Lamprecht's website from Sites page (#4771) ## 3.1.2 / 2016-02-19 From 4907b4c9f24110a2dbcc367dc4459a5460a3acb7 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Mon, 11 Apr 2016 19:21:20 -0700 Subject: [PATCH 33/58] Update history to reflect merge of #4769 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 97531ac6..b7709ef1 100644 --- a/History.markdown +++ b/History.markdown @@ -69,6 +69,7 @@ * Explain data file format requirements more clearly in documentation (#4781) * Add jekyll-i18n_tags to list of third-party plugins (#4775) * Remove Leonard Lamprecht's website from Sites page (#4771) + * Updates documentation for collections to include `date` property (#4769) ## 3.1.2 / 2016-02-19 From 1efb1d7a5875b89f4fafcb4e0e6aefa9abff6dcf Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Mon, 21 Mar 2016 11:21:46 -0500 Subject: [PATCH 34/58] Fix #4689: Use SSLEnable instead of EnableSSL and make URL HTTPS. --- lib/jekyll/commands/serve.rb | 13 +++++++------ test/test_commands_serve.rb | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/jekyll/commands/serve.rb b/lib/jekyll/commands/serve.rb index 1ca28a4c..1482dbed 100644 --- a/lib/jekyll/commands/serve.rb +++ b/lib/jekyll/commands/serve.rb @@ -116,11 +116,12 @@ module Jekyll private def server_address(server, opts) - address = server.config[:BindAddress] - baseurl = "#{opts["baseurl"]}/" if opts["baseurl"] - port = server.config[:Port] - - "http://#{address}:#{port}#{baseurl}" + "%{prefix}://%{address}:%{port}%{baseurl}" % { + :prefix => server.config[:SSLEnable] ? "https" : "http", + :baseurl => opts["baseurl"] ? "#{opts["baseurl"]}/" : "", + :address => server.config[:BindAddress], + :port => server.config[:Port] + } end # @@ -182,7 +183,7 @@ module Jekyll source_certificate = Jekyll.sanitized_path(opts[:JekyllOptions]["source"], opts[:JekyllOptions]["ssl_cert"]) opts[:SSLCertificate] = OpenSSL::X509::Certificate.new(File.read(source_certificate)) opts[:SSLPrivateKey ] = OpenSSL::PKey::RSA.new(File.read(source_key)) - opts[:EnableSSL] = true + opts[:SSLEnable] = true end private diff --git a/test/test_commands_serve.rb b/test/test_commands_serve.rb index 9fd3c1db..0db8bdf9 100644 --- a/test/test_commands_serve.rb +++ b/test/test_commands_serve.rb @@ -110,7 +110,7 @@ class TestCommandsServe < JekyllUnitTest "ssl_key" => "bar" }) - assert result[:EnableSSL] + assert result[:SSLEnable] assert_equal result[:SSLPrivateKey ], "c2" assert_equal result[:SSLCertificate], "c1" end From 61b17d3dc8ba74c508d7e60cd746e18b231b4f50 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Tue, 12 Apr 2016 03:02:34 -0500 Subject: [PATCH 35/58] Update History.markdown to reflect the cherry-pick of 2b9e849. --- History.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/History.markdown b/History.markdown index b7709ef1..f5bc23d6 100644 --- a/History.markdown +++ b/History.markdown @@ -22,6 +22,7 @@ ### Bug Fixes + * Cherry Pick: 2b9e849 into Master (Fix SSL options.) * Site Template: Added a default lang attribute (#4633) * Site template: Escape title and description where it is used in HTML (#4606) * Document#date: drafts which have no date should use source file mtime (#4611) @@ -30,6 +31,7 @@ * Ensures related_posts are only set for a post (#4620) * EntryFilter#special?: ignore filenames which begin with '~' (#4491) * Cleaner: `keep_files` should only apply to the beginning of paths, not substrings with index > 0 (#3849) + * Fix #4689: Use SSLEnable instead of EnableSSL and make URL HTTPS. (#4693) ### Development Fixes From 64d1a81968d0e3b4f85528cedee52aaac3bcddcd Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Tue, 12 Apr 2016 13:40:24 -0400 Subject: [PATCH 36/58] Fix history for #4693 & its cherry-pick into master which doesn't need a history line --- History.markdown | 3 +-- site/_docs/contributing.md | 14 +++++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/History.markdown b/History.markdown index f5bc23d6..f37434fc 100644 --- a/History.markdown +++ b/History.markdown @@ -22,7 +22,6 @@ ### Bug Fixes - * Cherry Pick: 2b9e849 into Master (Fix SSL options.) * Site Template: Added a default lang attribute (#4633) * Site template: Escape title and description where it is used in HTML (#4606) * Document#date: drafts which have no date should use source file mtime (#4611) @@ -31,7 +30,7 @@ * Ensures related_posts are only set for a post (#4620) * EntryFilter#special?: ignore filenames which begin with '~' (#4491) * Cleaner: `keep_files` should only apply to the beginning of paths, not substrings with index > 0 (#3849) - * Fix #4689: Use SSLEnable instead of EnableSSL and make URL HTTPS. (#4693) + * Use SSLEnable instead of EnableSSL and make URL HTTPS. (#4693) ### Development Fixes diff --git a/site/_docs/contributing.md b/site/_docs/contributing.md index 3957ab93..4038df0d 100644 --- a/site/_docs/contributing.md +++ b/site/_docs/contributing.md @@ -11,8 +11,8 @@ Hi there! Interested in contributing to Jekyll? We'd love your help. Jekyll is a * If you have a question about using Jekyll, start a discussion on [Jekyll Talk](https://talk.jekyllrb.com). * If you think you've found a bug within a Jekyll plugin, open an issue in that plugin's repository. -* If you think you've found a bug within Jekyll itself, [open an issue](https://github.com/jekyll/jekyll/issues/new) -* More resources are listed on our [Help page](https://jekyllrb.com/help/) +* If you think you've found a bug within Jekyll itself, [open an issue](https://github.com/jekyll/jekyll/issues/new). +* More resources are listed on our [Help page](https://jekyllrb.com/help/). ## Ways to contribute @@ -33,7 +33,7 @@ Whether you're a developer, a designer, or just a Jekyll devotee, there are lots * The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users. -* Pull request are easy and fun. If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/) +* Pull request are easy and fun. If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/). * If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below. @@ -41,7 +41,7 @@ Whether you're a developer, a designer, or just a Jekyll devotee, there are lots Many small changes can be made entirely through the github.com web interface. -1. Navigate to the file within [`jekyll/jekyll`](https://github.com/jekyll/jekyll) that you'd like to edit +1. Navigate to the file within [`jekyll/jekyll`](https://github.com/jekyll/jekyll) that you'd like to edit. 2. Click the pencil icon in the top right corner to edit the file 3. Make your proposed changes 4. Click "Propose file change" @@ -53,13 +53,13 @@ That's it! You'll be automatically subscribed to receive updates as others revie ### Submitting a pull request via Git command line -1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll) -2. Clone the repository locally `git clone https://github.com//jekyll` +1. Fork the project by clicking "Fork" in the top right corner of [`jekyll/jekyll`](https://github.com/jekyll/jekyll). +2. Clone the repository locally `git clone https://github.com//jekyll`. 3. Create a new, descriptively named branch to contain your change ( `git checkout -b my-awesome-feature` ). 4. Hack away, add tests. Not necessarily in that order. 5. Make sure everything still passes by running `script/cibuild` (see [the tests section](#running-tests-locally) below) 6. Push the branch up ( `git push origin my-awesome-feature` ). -7. Create a pull request by visiting https://github.com//jekyll/ and following the instructions at the top of the screen. +7. Create a pull request by visiting `https://github.com//jekyll` and following the instructions at the top of the screen. ## Proposing updates to the documentation From 66c4ff8800f11858a1d4073ae83c4ea30519efbc Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Fri, 5 Feb 2016 20:27:33 +0000 Subject: [PATCH 37/58] Add a where_exp filter for filtering by expression This commit introduces a where_exp filter, which can be used as follows: `{{ array | where_exp: "item", "item == 10" }}` `{{ array | where_exp: "item", "item.field > 10" }}` `{{ site.posts | where_exp: "post", "post contains 'field'" }}` `{{ site.posts | where_exp: "post", "post.array contains 'giraffes'" }}` This permits a variety of use cases, such as reported in: jekyll#4467, jekyll#4385, jekyll#2787. --- lib/jekyll/filters.rb | 36 +++++++++++++++++++++++++ site/_docs/templates.md | 16 ++++++++++++ test/test_filters.rb | 58 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 110 insertions(+) diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index 02523d9c..613726fd 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -1,6 +1,7 @@ require 'uri' require 'json' require 'date' +require 'liquid' module Jekyll module Filters @@ -225,6 +226,26 @@ module Jekyll input.select { |object| Array(item_property(object, property)).map(&:to_s).include?(value.to_s) } end + # Filters an array of objects against an expression + # + # input - the object array + # variable - the variable to assign each item to in the expression + # expression - a Liquid comparison expression passed in as a string + # + # Returns the filtered array of objects + def where_exp(input, variable, expression) + return input unless input.is_a?(Enumerable) + input = input.values if input.is_a?(Hash) + + c = parse_condition(expression) + @context.stack do + input.select do |object| + @context[variable] = object + c.evaluate(@context) + end + end + end + # Sort an array of objects # # input - the object array @@ -363,5 +384,20 @@ module Jekyll end end end + + # Parse a string to a Liquid Condition + def parse_condition(exp) + parser = Liquid::Parser.new(exp) + a = parser.expression + if op = parser.consume?(:comparison) + b = parser.expression + condition = Liquid::Condition.new(a, op, b) + else + condition = Liquid::Condition.new(a) + end + parser.consume(:end_of_string) + + condition + end end end diff --git a/site/_docs/templates.md b/site/_docs/templates.md index 60892505..cb6a145b 100644 --- a/site/_docs/templates.md +++ b/site/_docs/templates.md @@ -88,6 +88,22 @@ common tasks easier.

+ + +

Where Expression

+

Select all the objects in an array where the expression is true.

+ + +

+ {% raw %}{{ site.members | where_exp:"item", +"item.graduation_year == 2014" }}{% endraw %} + {% raw %}{{ site.members | where_exp:"item", +"item.graduation_year < 2014" }}{% endraw %} + {% raw %}{{ site.members | where_exp:"item", +"item.projects includes 'foo'" }}{% endraw %} +

+ +

Group By

diff --git a/test/test_filters.rb b/test/test_filters.rb index ae685872..565e8208 100644 --- a/test/test_filters.rb +++ b/test/test_filters.rb @@ -354,6 +354,64 @@ class TestFilters < JekyllUnitTest end end + context "where_exp filter" do + should "return any input that is not an array" do + assert_equal "some string", @filter.where_exp("some string", "la", "le") + end + + should "filter objects in a hash appropriately" do + hash = {"a"=>{"color"=>"red"}, "b"=>{"color"=>"blue"}} + assert_equal 1, @filter.where_exp(hash, "item", "item.color == 'red'").length + assert_equal [{"color"=>"red"}], @filter.where_exp(hash, "item", "item.color == 'red'") + end + + should "filter objects appropriately" do + assert_equal 2, @filter.where_exp(@array_of_objects, "item", "item.color == 'red'").length + end + + should "stringify during comparison for compatibility with liquid parsing" do + hash = { + "The Words" => {"rating" => 1.2, "featured" => false}, + "Limitless" => {"rating" => 9.2, "featured" => true}, + "Hustle" => {"rating" => 4.7, "featured" => true}, + } + + results = @filter.where_exp(hash, "item", "item.featured == true") + assert_equal 2, results.length + assert_equal 9.2, results[0]["rating"] + assert_equal 4.7, results[1]["rating"] + + results = @filter.where_exp(hash, "item", "item.rating == 4.7") + assert_equal 1, results.length + assert_equal 4.7, results[0]["rating"] + end + + should "filter with other operators" do + assert_equal [3, 4, 5], @filter.where_exp([ 1, 2, 3, 4, 5 ], "n", "n >= 3") + end + + objects = [ + { "id" => "a", "groups" => [1, 2] }, + { "id" => "b", "groups" => [2, 3] }, + { "id" => "c" }, + { "id" => "d", "groups" => [1, 3] } + ] + should "filter with the contains operator over arrays" do + results = @filter.where_exp(objects, "obj", "obj.groups contains 1") + assert_equal 2, results.length + assert_equal "a", results[0]["id"] + assert_equal "d", results[1]["id"] + end + + should "filter with the contains operator over hash keys" do + results = @filter.where_exp(objects, "obj", "obj contains 'groups'") + assert_equal 3, results.length + assert_equal "a", results[0]["id"] + assert_equal "b", results[1]["id"] + assert_equal "d", results[2]["id"] + end + end + context "sort filter" do should "raise Exception when input is nil" do err = assert_raises ArgumentError do From 1ef7653fed25b5ce5ee327b75030122fbe9abdb0 Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Tue, 12 Apr 2016 18:52:34 +0100 Subject: [PATCH 38/58] Fix minor code style recommendations and typos. --- lib/jekyll/filters.rb | 20 ++++++++++---------- site/_docs/templates.md | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index 613726fd..0d55e9ba 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -235,13 +235,13 @@ module Jekyll # Returns the filtered array of objects def where_exp(input, variable, expression) return input unless input.is_a?(Enumerable) - input = input.values if input.is_a?(Hash) + input = input.values if input.is_a?(Hash) # FIXME - c = parse_condition(expression) + condition = parse_condition(expression) @context.stack do input.select do |object| @context[variable] = object - c.evaluate(@context) + condition.evaluate(@context) end end end @@ -388,13 +388,13 @@ module Jekyll # Parse a string to a Liquid Condition def parse_condition(exp) parser = Liquid::Parser.new(exp) - a = parser.expression - if op = parser.consume?(:comparison) - b = parser.expression - condition = Liquid::Condition.new(a, op, b) - else - condition = Liquid::Condition.new(a) - end + left_expr = parser.expression + condition = + if operator = parser.consume?(:comparison) + Liquid::Condition.new(left_expr, operator, parser.expression) + else + Liquid::Condition.new(left_expr) + end parser.consume(:end_of_string) condition diff --git a/site/_docs/templates.md b/site/_docs/templates.md index cb6a145b..663a060d 100644 --- a/site/_docs/templates.md +++ b/site/_docs/templates.md @@ -100,7 +100,7 @@ common tasks easier. {% raw %}{{ site.members | where_exp:"item", "item.graduation_year < 2014" }}{% endraw %} {% raw %}{{ site.members | where_exp:"item", -"item.projects includes 'foo'" }}{% endraw %} +"item.projects contains 'foo'" }}{% endraw %}

From e470cae6da5a50b317627a39bd1f83144b68501f Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Tue, 12 Apr 2016 19:11:59 +0100 Subject: [PATCH 39/58] Fix rubocop warning. --- lib/jekyll/filters.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index 0d55e9ba..16377623 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -389,8 +389,9 @@ module Jekyll def parse_condition(exp) parser = Liquid::Parser.new(exp) left_expr = parser.expression + operator = parser.consume?(:comparison) condition = - if operator = parser.consume?(:comparison) + if operator Liquid::Condition.new(left_expr, operator, parser.expression) else Liquid::Condition.new(left_expr) From 7635d08ecfff5382b35ebcbc066de21c1ea5fdab Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 13 Apr 2016 13:37:29 -0700 Subject: [PATCH 40/58] Update history to reflect merge of #4478 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index f37434fc..96d7938c 100644 --- a/History.markdown +++ b/History.markdown @@ -19,6 +19,7 @@ * Allow static files to be symlinked in unsafe mode or non-prod environments (#4640) * Add `:after_init` hook & add `Site#config=` to make resetting config easy (#4703) * DocumentDrop: add `#<=>` which sorts by date (falling back to path) (#4741) + * Add a where_exp filter for filtering by expression (#4478) ### Bug Fixes From 519c3eb51f0d354606df7c165d80c6b1798f7a4d Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 13 Apr 2016 20:18:12 -0700 Subject: [PATCH 41/58] Update history to reflect merge of #4734 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 96d7938c..773e59b1 100644 --- a/History.markdown +++ b/History.markdown @@ -72,6 +72,7 @@ * Add jekyll-i18n_tags to list of third-party plugins (#4775) * Remove Leonard Lamprecht's website from Sites page (#4771) * Updates documentation for collections to include `date` property (#4769) + * Added an explicit rerun note to configuration.md, defaults section (#4734) ## 3.1.2 / 2016-02-19 From f210cafdf2208ffaa54d58ad27ac9b5424d8e0f2 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Wed, 13 Apr 2016 23:22:05 -0400 Subject: [PATCH 42/58] convertible: use Document::YAML_FRONT_MATTER_REGEXP to parse transformable files --- lib/jekyll/convertible.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/jekyll/convertible.rb b/lib/jekyll/convertible.rb index f58796f0..26c88fd6 100644 --- a/lib/jekyll/convertible.rb +++ b/lib/jekyll/convertible.rb @@ -41,7 +41,7 @@ module Jekyll begin self.content = File.read(site.in_source_dir(base, name), Utils.merged_file_read_opts(site, opts)) - if content =~ /\A(---\s*\n.*?\n?)^((---|\.\.\.)\s*$\n?)/m + if content =~ Document::YAML_FRONT_MATTER_REGEXP self.content = $POSTMATCH self.data = SafeYAML.load(Regexp.last_match(1)) end From bb307bf6c1758597bf23a54748eca2ccc3259b15 Mon Sep 17 00:00:00 2001 From: Hugo Duksis Date: Thu, 14 Apr 2016 18:24:46 +0200 Subject: [PATCH 43/58] Update Rack-Jekyll Heroku deployment blog post url Failed to deploy to heroku by following old blog post but after stumbling up on https://github.com/adaoraul/rack-jekyll/issues/20 managed to do it and would like to avoid the trouble for others. --- site/_docs/deployment-methods.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/_docs/deployment-methods.md b/site/_docs/deployment-methods.md index f10b48b7..4a828ef8 100644 --- a/site/_docs/deployment-methods.md +++ b/site/_docs/deployment-methods.md @@ -186,7 +186,7 @@ script executes. [Rack-Jekyll](https://github.com/adaoraul/rack-jekyll/) is an easy way to deploy your site on any Rack server such as Amazon EC2, Slicehost, Heroku, and so forth. It also can run with [shotgun](https://github.com/rtomayko/shotgun/), [rackup](https://github.com/rack/rack), [mongrel](https://github.com/mongrel/mongrel), [unicorn](https://github.com/defunkt/unicorn/), and [others](https://github.com/adaoraul/rack-jekyll#readme). -Read [this post](http://blog.crowdint.com/2010/08/02/instant-blog-using-jekyll-and-heroku.html) on how to deploy to Heroku using Rack-Jekyll. +Read [this post](http://andycroll.com/ruby/serving-a-jekyll-blog-using-heroku) on how to deploy to Heroku using Rack-Jekyll. ## Jekyll-Admin for Rails From 8144e7620f5b1a2e7e12e97b0a5dae76fd4a7467 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Thu, 14 Apr 2016 14:32:16 -0500 Subject: [PATCH 44/58] Update JRuby to 9.0.5.0; Drop the double digit test. We've tested enough of the double digit stuff, it's only slowing down our specs and we've got an idea about what's going on with it. --- .travis.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5c0ce205..56a8b42c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,8 +9,7 @@ rvm: - &ruby1 2.3.0 - &ruby2 2.2.4 - &ruby3 2.1.8 - - &ruby4 2.1.10 - - &jruby jruby-9.0.4.0 + - &jruby jruby-9.0.5.0 - &rhead ruby-head matrix: @@ -18,7 +17,6 @@ matrix: allow_failures: - rvm: *jruby - rvm: *rhead - - rvm: *ruby4 env: matrix: - TEST_SUITE=test From 1e74c7a54721a84ac30686ae1adda2827d8b94de Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Thu, 14 Apr 2016 20:35:04 -0500 Subject: [PATCH 45/58] Globalize Jekyll's Filters. As it stands Jekyll does not globalize it's filters. So anybody wishing to go into Jekyll's context to process their own Liquid (say in a plugin) may be taken aback when they find out that Jekyll's filters are not available. See: jekyll/jekyll-assets#252. --- lib/jekyll/filters.rb | 4 ++++ lib/jekyll/renderer.rb | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index 16377623..65fc7e41 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -402,3 +402,7 @@ module Jekyll end end end + +Liquid::Template.register_filter( + Jekyll::Filters +) diff --git a/lib/jekyll/renderer.rb b/lib/jekyll/renderer.rb index 7d20d452..b158f421 100644 --- a/lib/jekyll/renderer.rb +++ b/lib/jekyll/renderer.rb @@ -52,7 +52,6 @@ module Jekyll document.trigger_hooks(:pre_render, payload) info = { - :filters => [Jekyll::Filters], :registers => { :site => site, :page => payload['page'] } } From b122148acf1d101be5340f7405e741e0a8839169 Mon Sep 17 00:00:00 2001 From: skim Date: Fri, 15 Apr 2016 09:29:39 +0100 Subject: [PATCH 46/58] updates example domain in config template --- lib/site_template/_config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/site_template/_config.yml b/lib/site_template/_config.yml index e23ad0fe..0f5a6088 100644 --- a/lib/site_template/_config.yml +++ b/lib/site_template/_config.yml @@ -19,7 +19,7 @@ description: > # this means to ignore newlines until "baseurl:" line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description. baseurl: "" # the subpath of your site, e.g. /blog -url: "http://yourdomain.com" # the base hostname & protocol for your site +url: "http://example.com" # the base hostname & protocol for your site twitter_username: jekyllrb github_username: jekyll From b97d9b688e4e865e1f17da6961cd5c1c650969d2 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Fri, 15 Apr 2016 09:14:33 -0700 Subject: [PATCH 47/58] Update history to reflect merge of #4789 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 773e59b1..79ad40ec 100644 --- a/History.markdown +++ b/History.markdown @@ -73,6 +73,7 @@ * Remove Leonard Lamprecht's website from Sites page (#4771) * Updates documentation for collections to include `date` property (#4769) * Added an explicit rerun note to configuration.md, defaults section (#4734) + * Update Rack-Jekyll Heroku deployment blog post url (#4789) ## 3.1.2 / 2016-02-19 From 8257f0abd984797ac98dc4c801c186a7994ea05e Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Fri, 15 Apr 2016 09:15:14 -0700 Subject: [PATCH 48/58] Update history to reflect merge of #4786 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 79ad40ec..271e559e 100644 --- a/History.markdown +++ b/History.markdown @@ -32,6 +32,7 @@ * EntryFilter#special?: ignore filenames which begin with '~' (#4491) * Cleaner: `keep_files` should only apply to the beginning of paths, not substrings with index > 0 (#3849) * Use SSLEnable instead of EnableSSL and make URL HTTPS. (#4693) + * convertible: use Document::YAML_FRONT_MATTER_REGEXP to parse transformable files (#4786) ### Development Fixes From 27366f2e305ecb1f95a9b564058928cf00f81812 Mon Sep 17 00:00:00 2001 From: Jordon Bedwell Date: Fri, 15 Apr 2016 12:02:25 -0500 Subject: [PATCH 49/58] Explicitly require Filters rather than implicitly. --- lib/jekyll.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/jekyll.rb b/lib/jekyll.rb index 6896bb0b..6dc42a92 100644 --- a/lib/jekyll.rb +++ b/lib/jekyll.rb @@ -45,7 +45,6 @@ module Jekyll autoload :Errors, 'jekyll/errors' autoload :Excerpt, 'jekyll/excerpt' autoload :External, 'jekyll/external' - autoload :Filters, 'jekyll/filters' autoload :FrontmatterDefaults, 'jekyll/frontmatter_defaults' autoload :Hooks, 'jekyll/hooks' autoload :Layout, 'jekyll/layout' @@ -77,6 +76,7 @@ module Jekyll require 'jekyll/generator' require 'jekyll/command' require 'jekyll/liquid_extensions' + require "jekyll/filters" class << self # Public: Tells you which Jekyll environment you are building in so you can skip tasks From 6f794ae320bf20a4543d4c8651b41030af0f07ec Mon Sep 17 00:00:00 2001 From: Vincent Wochnik Date: Sat, 16 Apr 2016 14:48:35 +0200 Subject: [PATCH 50/58] Add jekyll-autoprefixer plugin --- site/_docs/plugins.md | 1 + 1 file changed, 1 insertion(+) diff --git a/site/_docs/plugins.md b/site/_docs/plugins.md index 21b02816..17de8fdc 100644 --- a/site/_docs/plugins.md +++ b/site/_docs/plugins.md @@ -900,6 +900,7 @@ LESS.js files during generation. - [Official Contentful Jekyll Plugin](https://github.com/contentful/jekyll-contentful-data-import): Adds a `contentful` sub-command to Jekyll to import data from Contentful. - [jekyll-paspagon](https://github.com/KrzysiekJ/jekyll-paspagon): Sell your posts in various formats for cryptocurrencies. - [Hawkins](https://github.com/awood/hawkins): Adds a `liveserve` sub-command to Jekyll that incorporates [LiveReload](http://livereload.com/) into your pages while you preview them. No more hitting the refresh button in your browser! +- [Jekyll Autoprefixer](https://github.com/vwochnik/jekyll-autoprefixer): Autoprefixer integration for Jekyll #### Editors From adc6a491b99e392b07c6194151e7722b621ee1cf Mon Sep 17 00:00:00 2001 From: Henry Wright Date: Sun, 17 Apr 2016 20:39:20 +0100 Subject: [PATCH 51/58] Fixed typo Add an apostrophe. --- site/_docs/configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/_docs/configuration.md b/site/_docs/configuration.md index 02800690..1ff520de 100644 --- a/site/_docs/configuration.md +++ b/site/_docs/configuration.md @@ -435,7 +435,7 @@ Using [YAML Front Matter](../frontmatter/) is one way that you can specify confi Often times, you will find that you are repeating a lot of configuration options. Setting the same layout in each file, adding the same category - or categories - to a post, etc. You can even add custom variables like author names, which might be the same for the majority of posts on your blog. -Instead of repeating this configuration each time you create a new post or page, Jekyll provides a way to set these defaults in the site configuration. To do this, you can specify site-wide defaults using the `defaults` key in the `_config.yml` file in your projects root directory. +Instead of repeating this configuration each time you create a new post or page, Jekyll provides a way to set these defaults in the site configuration. To do this, you can specify site-wide defaults using the `defaults` key in the `_config.yml` file in your project's root directory. The `defaults` key holds an array of scope/values pairs that define what defaults should be set for a particular file path, and optionally, a file type in that path. From 9315cdb47305b5d09d356c2479def769309d2f5f Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Mon, 18 Apr 2016 14:34:29 -0700 Subject: [PATCH 52/58] Add v3.0.4 and v3.1.3 to the history. --- History.markdown | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/History.markdown b/History.markdown index 271e559e..ecfd306b 100644 --- a/History.markdown +++ b/History.markdown @@ -76,6 +76,11 @@ * Added an explicit rerun note to configuration.md, defaults section (#4734) * Update Rack-Jekyll Heroku deployment blog post url (#4789) +## 3.1.3 / 2016-04-18 + + * Fix defaults for Documents to lookup defaults based on `relative_path` instead of `url` (#4807) + * Use SSLEnable instead of EnableSSL and make URL HTTPS (WEBrick) (#4693) + ## 3.1.2 / 2016-02-19 ### Minor Enhancements @@ -223,6 +228,11 @@ * Add Contentful Extension to list of third-party plugins (#4390) * Correct Minor spelling error (#4394) +## 3.0.4 / 2016-04-18 + + * Fix defaults for Documents to lookup defaults based on `relative_path` instead of `url` (#4806) + * Configuration: allow users to specify a `collections.posts.permalink` directly without `permalink` clobbering it (#4753) + ## 3.0.3 / 2016-02-08 ### Bug Fixes From 4e0937553152a9cf4c0e4385bc0aa6675c8a68bc Mon Sep 17 00:00:00 2001 From: Brian Jones Date: Tue, 19 Apr 2016 13:59:23 -0400 Subject: [PATCH 53/58] Added missing single quote on rsync client side command The rsync command was missing a single quote around the --rsh='ssh -p2222' parameter. --- site/_docs/deployment-methods.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/_docs/deployment-methods.md b/site/_docs/deployment-methods.md index 4a828ef8..7ec7546f 100644 --- a/site/_docs/deployment-methods.md +++ b/site/_docs/deployment-methods.md @@ -142,7 +142,7 @@ Add the `deploy` script to the site source folder: {% highlight bash %} #!/bin/sh -rsync -crvz --rsh=ssh -p2222' --delete-after --delete-excluded @: +rsync -crvz --rsh='ssh -p2222' --delete-after --delete-excluded @: {% endhighlight %} Command line parameters are: From f61ba8abf785475c9c82c9798ee4c792b8668b9a Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Tue, 19 Apr 2016 11:02:18 -0700 Subject: [PATCH 54/58] Update history to reflect merge of #4813 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index ecfd306b..45ecebc1 100644 --- a/History.markdown +++ b/History.markdown @@ -75,6 +75,7 @@ * Updates documentation for collections to include `date` property (#4769) * Added an explicit rerun note to configuration.md, defaults section (#4734) * Update Rack-Jekyll Heroku deployment blog post url (#4789) + * Added missing single quote on rsync client side command (#4813) ## 3.1.3 / 2016-04-18 From 94647af1f4a337a31b2174bc354d0a8b6b3eb716 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 20 Apr 2016 12:31:10 -0700 Subject: [PATCH 55/58] Update history to reflect merge of #4754 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 45ecebc1..0eb499cf 100644 --- a/History.markdown +++ b/History.markdown @@ -76,6 +76,7 @@ * Added an explicit rerun note to configuration.md, defaults section (#4734) * Update Rack-Jekyll Heroku deployment blog post url (#4789) * Added missing single quote on rsync client side command (#4813) + * Organize Form Platforms-as-a-Service into unified list & add FormSpree.io (#4754) ## 3.1.3 / 2016-04-18 From 1ec64f568d2d1f2fada7e16274175150f22affef Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 20 Apr 2016 13:57:26 -0700 Subject: [PATCH 56/58] Update history to reflect merge of #4804 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 0eb499cf..43a57f96 100644 --- a/History.markdown +++ b/History.markdown @@ -77,6 +77,7 @@ * Update Rack-Jekyll Heroku deployment blog post url (#4789) * Added missing single quote on rsync client side command (#4813) * Organize Form Platforms-as-a-Service into unified list & add FormSpree.io (#4754) + * Fixed typo on Configuration page (#4804) ## 3.1.3 / 2016-04-18 From 1d55558956db12cfe1d277623fbfd47025039575 Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 20 Apr 2016 14:03:36 -0700 Subject: [PATCH 57/58] Update history to reflect merge of #4793 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 43a57f96..66b71343 100644 --- a/History.markdown +++ b/History.markdown @@ -33,6 +33,7 @@ * Cleaner: `keep_files` should only apply to the beginning of paths, not substrings with index > 0 (#3849) * Use SSLEnable instead of EnableSSL and make URL HTTPS. (#4693) * convertible: use Document::YAML_FRONT_MATTER_REGEXP to parse transformable files (#4786) + * Example in the site template should be IANA-approved example.com (#4793) ### Development Fixes From 0d89b77dae80a0eb89a637c41c71720d0b13a4ed Mon Sep 17 00:00:00 2001 From: jekyllbot Date: Wed, 20 Apr 2016 14:06:11 -0700 Subject: [PATCH 58/58] Update history to reflect merge of #4792 [ci skip] --- History.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/History.markdown b/History.markdown index 66b71343..14948a56 100644 --- a/History.markdown +++ b/History.markdown @@ -20,6 +20,7 @@ * Add `:after_init` hook & add `Site#config=` to make resetting config easy (#4703) * DocumentDrop: add `#<=>` which sorts by date (falling back to path) (#4741) * Add a where_exp filter for filtering by expression (#4478) + * Globalize Jekyll's Filters. (#4792) ### Bug Fixes