From 2744b66fac72a401acca609d0f268111ccbf146a Mon Sep 17 00:00:00 2001 From: Pat Hawks Date: Fri, 16 Aug 2013 20:30:26 -0700 Subject: [PATCH 1/4] Expose Jekyll version to templates Make available `site.version` to liquid --- lib/jekyll/site.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/jekyll/site.rb b/lib/jekyll/site.rb index f7a8c379..a7291fd3 100644 --- a/lib/jekyll/site.rb +++ b/lib/jekyll/site.rb @@ -312,6 +312,7 @@ module Jekyll def site_payload {"site" => self.config.merge({ "time" => self.time, + "version" => Jekyll.VERSION, "posts" => self.posts.sort { |a, b| b <=> a }, "pages" => self.pages, "html_pages" => self.pages.reject { |page| !page.html? }, From 32e55e77176e9efe55b76e61234fd10fc2463e85 Mon Sep 17 00:00:00 2001 From: Pat Hawks Date: Fri, 16 Aug 2013 21:01:09 -0700 Subject: [PATCH 2/4] Use proper Ruby syntax for constant --- lib/jekyll/site.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/jekyll/site.rb b/lib/jekyll/site.rb index a7291fd3..c445f302 100644 --- a/lib/jekyll/site.rb +++ b/lib/jekyll/site.rb @@ -312,7 +312,7 @@ module Jekyll def site_payload {"site" => self.config.merge({ "time" => self.time, - "version" => Jekyll.VERSION, + "version" => Jekyll::VERSION, "posts" => self.posts.sort { |a, b| b <=> a }, "pages" => self.pages, "html_pages" => self.pages.reject { |page| !page.html? }, From b7e34175d01d2b44b0138915f25c06ed1a1d9f1a Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Fri, 30 Aug 2013 18:54:03 -0400 Subject: [PATCH 3/4] Put version under 'jekyll' namespace. --- lib/jekyll/site.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/jekyll/site.rb b/lib/jekyll/site.rb index 993eb2a7..f4a5bd0d 100644 --- a/lib/jekyll/site.rb +++ b/lib/jekyll/site.rb @@ -266,9 +266,9 @@ module Jekyll # "tags" - The Hash of tag values and Posts. # See Site#post_attr_hash for type info. def site_payload - {"site" => self.config.merge({ + {"jekyll" => { "version" => Jekyll::VERSION }, + "site" => self.config.merge({ "time" => self.time, - "version" => Jekyll::VERSION, "posts" => self.posts.sort { |a, b| b <=> a }, "pages" => self.pages, "html_pages" => self.pages.reject { |page| !page.html? }, From 4fafdfccf3a974fdcb4574bd65210833ab9a08e6 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Fri, 30 Aug 2013 18:59:35 -0400 Subject: [PATCH 4/4] Add cucumber test for `jekyll.version`. --- features/site_data.feature | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/features/site_data.feature b/features/site_data.feature index ccb349c6..9ab94056 100644 --- a/features/site_data.feature +++ b/features/site_data.feature @@ -99,3 +99,9 @@ Feature: Site data When I run jekyll Then the _site directory should exist And I should see "http://mysite.com" in "_site/index.html" + + Scenario: Access Jekyll version via jekyll.version + Given I have an "index.html" page that contains "{{ jekyll.version }}" + When I run jekyll + Then the _site directory should exist + And I should see "\d+\.\d+\.\d+" in "_site/index.html"