jekyll 1.5.1 → 2.0.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of jekyll might be problematic. Click here for more details.

Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.markdown +6 -6
  3. data/History.markdown +99 -23
  4. data/README.markdown +7 -3
  5. data/Rakefile +5 -5
  6. data/bin/jekyll +101 -116
  7. data/features/embed_filters.feature +13 -0
  8. data/features/include_tag.feature +11 -0
  9. data/features/markdown.feature +3 -3
  10. data/features/site_configuration.feature +34 -3
  11. data/features/step_definitions/jekyll_steps.rb +47 -34
  12. data/features/support/env.rb +25 -28
  13. data/jekyll.gemspec +38 -18
  14. data/lib/jekyll.rb +7 -15
  15. data/lib/jekyll/commands/build.rb +2 -0
  16. data/lib/jekyll/commands/serve.rb +11 -1
  17. data/lib/jekyll/configuration.rb +22 -6
  18. data/lib/jekyll/converter.rb +16 -16
  19. data/lib/jekyll/converters/markdown.rb +30 -15
  20. data/lib/jekyll/converters/markdown/maruku_parser.rb +4 -5
  21. data/lib/jekyll/converters/markdown/redcarpet_parser.rb +34 -3
  22. data/lib/jekyll/converters/sass.rb +58 -0
  23. data/lib/jekyll/converters/textile.rb +2 -2
  24. data/lib/jekyll/convertible.rb +25 -6
  25. data/lib/jekyll/core_ext.rb +0 -35
  26. data/lib/jekyll/deprecator.rb +2 -2
  27. data/lib/jekyll/entry_filter.rb +61 -25
  28. data/lib/jekyll/excerpt.rb +8 -6
  29. data/lib/jekyll/filters.rb +46 -2
  30. data/lib/jekyll/layout_reader.rb +40 -0
  31. data/lib/jekyll/mime.types +19 -9
  32. data/lib/jekyll/page.rb +6 -4
  33. data/lib/jekyll/post.rb +11 -18
  34. data/lib/jekyll/site.rb +34 -32
  35. data/lib/jekyll/tags/highlight.rb +26 -4
  36. data/lib/jekyll/tags/include.rb +29 -17
  37. data/lib/jekyll/tags/post_url.rb +10 -1
  38. data/lib/jekyll/url.rb +0 -2
  39. data/lib/site_template/_config.yml +1 -1
  40. data/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb +1 -1
  41. data/lib/site_template/css/main.css +8 -1
  42. data/script/bootstrap +2 -0
  43. data/script/branding +11 -0
  44. data/script/cibuild +5 -0
  45. data/script/rebund +140 -0
  46. data/site/_config.yml +2 -2
  47. data/site/_data/docs.yml +44 -0
  48. data/site/{css → _includes/css}/gridism.css +0 -0
  49. data/site/_includes/css/normalize.css +1 -0
  50. data/site/{css → _includes/css}/pygments.css +2 -0
  51. data/site/{css → _includes/css}/style.css +10 -0
  52. data/site/_includes/docs_contents.html +4 -12
  53. data/site/_includes/docs_contents_mobile.html +4 -17
  54. data/site/_includes/docs_option.html +1 -1
  55. data/site/_includes/docs_ul.html +2 -2
  56. data/site/_includes/footer.html +1 -1
  57. data/site/_includes/top.html +1 -4
  58. data/site/_layouts/news_item.html +2 -2
  59. data/site/_posts/2013-07-24-jekyll-1-1-1-released.markdown +4 -4
  60. data/site/_posts/2013-09-14-jekyll-1-2-1-released.markdown +1 -1
  61. data/site/_posts/2013-10-28-jekyll-1-3-0-rc1-released.markdown +1 -1
  62. data/site/_posts/2013-12-09-jekyll-1-4-1-released.markdown +20 -0
  63. data/site/_posts/2014-01-13-jekyll-1-4-3-released.markdown +1 -2
  64. data/site/css/screen.css +27 -0
  65. data/site/docs/assets.md +46 -0
  66. data/site/docs/configuration.md +18 -4
  67. data/site/docs/contributing.md +2 -2
  68. data/site/docs/datafiles.md +6 -6
  69. data/site/docs/deployment-methods.md +5 -0
  70. data/site/docs/extras.md +38 -2
  71. data/site/docs/frontmatter.md +2 -1
  72. data/site/docs/history.md +0 -22
  73. data/site/docs/installation.md +7 -7
  74. data/site/docs/migrations.md +1 -1
  75. data/site/docs/plugins.md +11 -2
  76. data/site/docs/posts.md +25 -4
  77. data/site/docs/sites.md +1 -1
  78. data/site/docs/structure.md +1 -1
  79. data/site/docs/templates.md +13 -8
  80. data/site/docs/troubleshooting.md +8 -5
  81. data/site/docs/usage.md +11 -0
  82. data/site/docs/variables.md +18 -0
  83. data/site/docs/windows.md +44 -0
  84. data/test/helper.rb +5 -8
  85. data/test/source/_includes/include.html +1 -0
  86. data/test/source/_includes/sig.markdown +2 -2
  87. data/test/source/_posts/2013-12-17-include-variable-filters.markdown +21 -0
  88. data/test/source/_posts/2013-12-20-properties.text +11 -0
  89. data/test/source/_sass/_grid.scss +1 -0
  90. data/test/source/css/main.scss +4 -0
  91. data/test/source/js/coffeescript.coffee +10 -0
  92. data/test/source/properties.html +8 -0
  93. data/test/source/unpublished.html +7 -0
  94. data/test/test_coffeescript.rb +49 -0
  95. data/test/test_configuration.rb +29 -18
  96. data/test/test_convertible.rb +7 -9
  97. data/test/test_core_ext.rb +0 -22
  98. data/test/test_entry_filter.rb +36 -2
  99. data/test/test_excerpt.rb +43 -1
  100. data/test/test_filters.rb +44 -5
  101. data/test/test_generated_site.rb +5 -1
  102. data/test/test_layout_reader.rb +17 -0
  103. data/test/test_page.rb +28 -10
  104. data/test/test_post.rb +32 -15
  105. data/test/test_redcarpet.rb +19 -3
  106. data/test/test_sass.rb +122 -0
  107. data/test/test_site.rb +56 -7
  108. data/test/test_tags.rb +102 -51
  109. metadata +154 -80
  110. data/site/_posts/2014-03-24-jekyll-1-5-0-released.markdown +0 -19
  111. data/site/_posts/2014-03-27-jekyll-1-5-1-released.markdown +0 -26
  112. data/site/css/normalize.css +0 -1
  113. data/test/source/_posts/2014-01-06-permalink-traversal.md +0 -5
  114. data/test/source/exploit.md +0 -5
  115. data/test/test_path_sanitization.rb +0 -18
@@ -58,3 +58,16 @@ Feature: Embed filters
58
58
  Then the _site directory should exist
59
59
  And I should see "By <p><em>Obi-wan</em></p>" in "_site/2009/03/27/star-wars.html"
60
60
 
61
+ Scenario: Sort by an arbitrary variable
62
+ Given I have a _layouts directory
63
+ And I have the following page:
64
+ | title | layout | value | content |
65
+ | Page-1 | default | 8 | Something |
66
+ And I have the following page:
67
+ | title | layout | value | content |
68
+ | Page-2 | default | 6 | Something |
69
+ And I have a default layout that contains "{{ site.pages | sort:'value' | map:'title' | join:', ' }}"
70
+ When I run jekyll
71
+ Then the _site directory should exist
72
+ And I should see exactly "Page-2, Page-1" in "_site/page-1.html"
73
+ And I should see exactly "Page-2, Page-1" in "_site/page-2.html"
@@ -55,3 +55,14 @@ Feature: Include tags
55
55
  When I run jekyll
56
56
  Then the _site directory should exist
57
57
  And I should see "one two" in "_site/index.html"
58
+
59
+ Scenario: Include a file with variables and filters
60
+ Given I have an _includes directory
61
+ And I have an "_includes/one.html" file that contains "one included"
62
+ And I have a configuration file with:
63
+ | key | value |
64
+ | include_file | one |
65
+ And I have an "index.html" page that contains "{% include {{ site.include_file | append: '.html' }} %}"
66
+ When I run jekyll
67
+ Then the _site directory should exist
68
+ And I should see "one included" in "_site/index.html"
@@ -13,8 +13,8 @@ Feature: Markdown
13
13
  When I run jekyll
14
14
  Then the _site directory should exist
15
15
  And I should see "Index" in "_site/index.html"
16
- And I should see "<h1 id=\"my_title\">My Title</h1>" in "_site/2009/03/27/hackers.html"
17
- And I should see "<h1 id=\"my_title\">My Title</h1>" in "_site/index.html"
16
+ And I should see "<h1 id=\"my-title\">My Title</h1>" in "_site/2009/03/27/hackers.html"
17
+ And I should see "<h1 id=\"my-title\">My Title</h1>" in "_site/index.html"
18
18
 
19
19
  Scenario: Markdown in pagination on index
20
20
  Given I have a configuration file with "paginate" set to "5"
@@ -26,7 +26,7 @@ Feature: Markdown
26
26
  When I run jekyll
27
27
  Then the _site directory should exist
28
28
  And I should see "Index" in "_site/index.html"
29
- And I should see "<h1 id=\"my_title\">My Title</h1>" in "_site/index.html"
29
+ And I should see "<h1 id=\"my-title\">My Title</h1>" in "_site/index.html"
30
30
 
31
31
  Scenario: Maruku fenced codeblocks
32
32
  Given I have a configuration file with "markdown" set to "maruku"
@@ -91,11 +91,19 @@ Feature: Site configuration
91
91
  And I should see "<a href=\"http://google.com\">Google</a>" in "_site/index.html"
92
92
 
93
93
  Scenario: Highlight code with pygments
94
- Given I have an "index.html" file that contains "{% highlight ruby %} puts 'Hello world!' {% endhighlight %}"
95
- And I have a configuration file with "pygments" set to "true"
94
+ Given I have an "index.html" page that contains "{% highlight ruby %} puts 'Hello world!' {% endhighlight %}"
96
95
  When I run jekyll
97
96
  Then the _site directory should exist
98
- And I should see "puts 'Hello world!'" in "_site/index.html"
97
+ And I should see "Hello world!" in "_site/index.html"
98
+ And I should see "class=\"highlight\"" in "_site/index.html"
99
+
100
+ Scenario: Highlight code with rouge
101
+ Given I have an "index.html" page that contains "{% highlight ruby %} puts 'Hello world!' {% endhighlight %}"
102
+ And I have a configuration file with "highlighter" set to "rouge"
103
+ When I run jekyll
104
+ Then the _site directory should exist
105
+ And I should see "Hello world!" in "_site/index.html"
106
+ And I should see "class=\"highlight\"" in "_site/index.html"
99
107
 
100
108
  Scenario: Set time and no future dated posts
101
109
  Given I have a _layouts directory
@@ -233,3 +241,26 @@ Feature: Site configuration
233
241
  Then the _site directory should exist
234
242
  And I should see "Whatever" in "_site/index.html"
235
243
  And I should see "this is a test" in "_site/test.txt"
244
+
245
+ Scenario: Add an empty whitelist to restrict all gems
246
+ Given I have an "index.html" file that contains "Whatever"
247
+ And I have a configuration file with:
248
+ | key | value |
249
+ | gems | [jekyll_test_plugin] |
250
+ | whitelist | [] |
251
+ When I run jekyll in safe mode
252
+ Then the _site directory should exist
253
+ And I should see "Whatever" in "_site/index.html"
254
+ And the "_site/test.txt" file should not exist
255
+
256
+ Scenario: Add a whitelist to restrict some gems but allow others
257
+ Given I have an "index.html" file that contains "Whatever"
258
+ And I have a configuration file with:
259
+ | key | value |
260
+ | gems | [jekyll_test_plugin, jekyll_test_plugin_malicious] |
261
+ | whitelist | [jekyll_test_plugin] |
262
+ When I run jekyll in safe mode
263
+ Then the _site directory should exist
264
+ And I should see "Whatever" in "_site/index.html"
265
+ And the "_site/test.txt" file should exist
266
+ And I should see "this is a test" in "_site/test.txt"
@@ -1,9 +1,32 @@
1
+ def file_content_from_hash(input_hash)
2
+ matter_hash = input_hash.reject { |k, v| k == "content" }
3
+ matter = matter_hash.map { |k, v| "#{k}: #{v}\n" }.join.chomp
4
+
5
+ content = if input_hash['input'] && input_hash['filter']
6
+ "{{ #{input_hash['input']} | #{input_hash['filter']} }}"
7
+ else
8
+ input_hash['content']
9
+ end
10
+
11
+ <<EOF
12
+ ---
13
+ #{matter}
14
+ ---
15
+ #{content}
16
+ EOF
17
+ end
18
+
19
+
1
20
  Before do
2
- FileUtils.rm_rf(TEST_DIR)
3
21
  FileUtils.mkdir(TEST_DIR)
4
22
  Dir.chdir(TEST_DIR)
5
23
  end
6
24
 
25
+ After do
26
+ FileUtils.rm_rf(TEST_DIR)
27
+ FileUtils.rm_rf(JEKYLL_COMMAND_OUTPUT_FILE)
28
+ end
29
+
7
30
  World(Test::Unit::Assertions)
8
31
 
9
32
  Given /^I have a blank site in "(.*)"$/ do |path|
@@ -58,42 +81,28 @@ Given /^I have an? (.*) directory$/ do |dir|
58
81
  FileUtils.mkdir_p(dir)
59
82
  end
60
83
 
61
- Given /^I have the following (draft|post)s?(?: (in|under) "([^"]+)")?:$/ do |status, direction, folder, table|
62
- table.hashes.each do |post|
63
- title = slug(post['title'])
64
- ext = post['type'] || 'textile'
84
+ Given /^I have the following (draft|page|post)s?(?: (in|under) "([^"]+)")?:$/ do |status, direction, folder, table|
85
+ table.hashes.each do |input_hash|
86
+ title = slug(input_hash['title'])
87
+ ext = input_hash['type'] || 'textile'
65
88
  before, after = location(folder, direction)
66
89
 
67
- if "draft" == status
68
- folder_post = '_drafts'
90
+ case status
91
+ when "draft"
92
+ dest_folder = '_drafts'
93
+ filename = "#{title}.#{ext}"
94
+ when "page"
95
+ dest_folder = ''
69
96
  filename = "#{title}.#{ext}"
70
- elsif "post" == status
71
- parsed_date = Time.xmlschema(post['date']) rescue Time.parse(post['date'])
72
- folder_post = '_posts'
97
+ when "post"
98
+ parsed_date = Time.xmlschema(input_hash['date']) rescue Time.parse(input_hash['date'])
99
+ dest_folder = '_posts'
73
100
  filename = "#{parsed_date.strftime('%Y-%m-%d')}-#{title}.#{ext}"
74
101
  end
75
102
 
76
- path = File.join(before, folder_post, after, filename)
77
-
78
- matter_hash = {}
79
- %w(title layout tag tags category categories published author path date permalink).each do |key|
80
- matter_hash[key] = post[key] if post[key]
81
- end
82
- matter = matter_hash.map { |k, v| "#{k}: #{v}\n" }.join.chomp
83
-
84
- content = if post['input'] && post['filter']
85
- "{{ #{post['input']} | #{post['filter']} }}"
86
- else
87
- post['content']
88
- end
89
-
103
+ path = File.join(before, dest_folder, after, filename)
90
104
  File.open(path, 'w') do |f|
91
- f.write <<EOF
92
- ---
93
- #{matter}
94
- ---
95
- #{content}
96
- EOF
105
+ f.write file_content_from_hash(input_hash)
97
106
  end
98
107
  end
99
108
  end
@@ -123,19 +132,23 @@ end
123
132
 
124
133
 
125
134
  When /^I run jekyll$/ do
126
- run_jekyll
135
+ run_jekyll_build
136
+ end
137
+
138
+ When /^I run jekyll in safe mode$/ do
139
+ run_jekyll_build("--safe")
127
140
  end
128
141
 
129
142
  When /^I run jekyll with drafts$/ do
130
- run_jekyll(:drafts => true)
143
+ run_jekyll_build("--drafts")
131
144
  end
132
145
 
133
146
  When /^I call jekyll new with test_blank --blank$/ do
134
- call_jekyll_new(:path => "test_blank", :blank => true)
147
+ run_jekyll_new("test_blank --blank")
135
148
  end
136
149
 
137
150
  When /^I debug jekyll$/ do
138
- run_jekyll(:debug => true)
151
+ run_jekyll_build("--verbose")
139
152
  end
140
153
 
141
154
  When /^I change "(.*)" to contain "(.*)"$/ do |file, text|
@@ -1,7 +1,5 @@
1
- if RUBY_VERSION > '1.9'
2
- require 'coveralls'
3
- Coveralls.wear_merged!
4
- end
1
+ require 'coveralls'
2
+ Coveralls.wear_merged!
5
3
 
6
4
  require 'fileutils'
7
5
  require 'rr'
@@ -10,24 +8,33 @@ require 'time'
10
8
 
11
9
  TEST_DIR = File.join('/', 'tmp', 'jekyll')
12
10
  JEKYLL_PATH = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'jekyll')
11
+ JEKYLL_COMMAND_OUTPUT_FILE = File.join('/', 'tmp', 'jekyll_output.txt')
13
12
 
14
- def run_jekyll(opts = {})
15
- command = JEKYLL_PATH.clone
16
- command << " build --trace"
17
- command << " --drafts" if opts[:drafts]
18
- command << " >> /dev/null 2>&1" if opts[:debug].nil?
19
- system command
13
+ def jekyll_output_file
14
+ JEKYLL_COMMAND_OUTPUT_FILE
15
+ end
16
+
17
+ def jekyll_run_output
18
+ File.read(jekyll_output_file)
20
19
  end
21
20
 
22
- def call_jekyll_new(opts = {})
23
- command = JEKYLL_PATH.clone
24
- command << " new --trace"
25
- command << " #{opts[:path]}" if opts[:path]
26
- command << " --blank" if opts[:blank]
27
- command << " >> /dev/null 2>&1" if opts[:debug].nil?
21
+ def run_jekyll(args, output_file)
22
+ command = "#{JEKYLL_PATH} #{args} > #{jekyll_output_file} 2>&1"
28
23
  system command
29
24
  end
30
25
 
26
+ def run_jekyll_build(build_args = "")
27
+ if !run_jekyll("build #{build_args}", jekyll_output_file) || build_args.eql?("--verbose")
28
+ puts jekyll_run_output
29
+ end
30
+ end
31
+
32
+ def run_jekyll_new(new_args = "")
33
+ unless run_jekyll("new #{new_args}", jekyll_output_file)
34
+ puts jekyll_run_output
35
+ end
36
+ end
37
+
31
38
  def slug(title)
32
39
  title.downcase.gsub(/[^\w]/, " ").strip.gsub(/\s+/, '-')
33
40
  end
@@ -47,15 +54,8 @@ def file_contents(path)
47
54
  end
48
55
 
49
56
  def seconds_agnostic_datetime(datetime = Time.now)
50
- pieces = datetime.to_s.split(" ")
51
- if pieces.size == 6 # Ruby 1.8.7
52
- date = pieces[0..2].join(" ")
53
- time = seconds_agnostic_time(pieces[3])
54
- zone = pieces[4..5].join(" ")
55
- else # Ruby 1.9.1 or greater
56
- date, time, zone = pieces
57
- time = seconds_agnostic_time(time)
58
- end
57
+ date, time, zone = datetime.to_s.split(" ")
58
+ time = seconds_agnostic_time(time)
59
59
  [
60
60
  Regexp.escape(date),
61
61
  "#{time}:\\d{2}",
@@ -70,6 +70,3 @@ def seconds_agnostic_time(time)
70
70
  hour, minutes, _ = time.split(":")
71
71
  "#{hour}:#{minutes}"
72
72
  end
73
-
74
- # work around "invalid option: --format" cucumber bug (see #296)
75
- Test::Unit.run = true if RUBY_VERSION < '1.9'
@@ -2,11 +2,12 @@ Gem::Specification.new do |s|
2
2
  s.specification_version = 2 if s.respond_to? :specification_version=
3
3
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
4
4
  s.rubygems_version = '1.3.5'
5
+ s.required_ruby_version = '>= 1.9.2'
5
6
 
6
7
  s.name = 'jekyll'
7
- s.version = '1.5.1'
8
+ s.version = '2.0.0.alpha.1'
8
9
  s.license = 'MIT'
9
- s.date = '2014-03-28'
10
+ s.date = '2014-02-13'
10
11
  s.rubyforge_project = 'jekyll'
11
12
 
12
13
  s.summary = "A simple, blog aware, static site generator."
@@ -14,7 +15,7 @@ Gem::Specification.new do |s|
14
15
 
15
16
  s.authors = ["Tom Preston-Werner"]
16
17
  s.email = 'tom@mojombo.com'
17
- s.homepage = 'http://github.com/mojombo/jekyll'
18
+ s.homepage = 'http://github.com/jekyll/jekyll'
18
19
 
19
20
  s.require_paths = %w[lib]
20
21
 
@@ -28,20 +29,22 @@ Gem::Specification.new do |s|
28
29
  s.add_runtime_dependency('listen', "~> 1.3")
29
30
  s.add_runtime_dependency('maruku', "0.7.0")
30
31
  s.add_runtime_dependency('pygments.rb', "~> 0.5.0")
31
- s.add_runtime_dependency('commander', "~> 4.1.3")
32
+ s.add_runtime_dependency('mercenary', "~> 0.2.0")
32
33
  s.add_runtime_dependency('safe_yaml', "~> 1.0")
33
34
  s.add_runtime_dependency('colorator', "~> 0.1")
34
- s.add_runtime_dependency('redcarpet', "~> 2.3.0")
35
+ s.add_runtime_dependency('redcarpet', "~> 3.0")
35
36
  s.add_runtime_dependency('toml', '~> 0.1.0')
37
+ s.add_runtime_dependency('sass', '~> 3.2')
38
+ s.add_runtime_dependency('jekyll-coffeescript', '~> 1.0')
36
39
 
37
40
  s.add_development_dependency('rake', "~> 10.1")
38
41
  s.add_development_dependency('rdoc', "~> 3.11")
39
42
  s.add_development_dependency('redgreen', "~> 1.2")
40
- s.add_development_dependency('shoulda', "~> 3.3.2")
43
+ s.add_development_dependency('shoulda', "~> 3.5")
41
44
  s.add_development_dependency('rr', "~> 1.1")
42
- s.add_development_dependency('cucumber', "1.3.11")
45
+ s.add_development_dependency('cucumber', "~> 1.3")
43
46
  s.add_development_dependency('RedCloth', "~> 4.2")
44
- s.add_development_dependency('kramdown', "~> 1.2")
47
+ s.add_development_dependency('kramdown', "~> 1.3")
45
48
  s.add_development_dependency('rdiscount', "~> 1.6")
46
49
  s.add_development_dependency('launchy', "~> 2.3")
47
50
  s.add_development_dependency('simplecov', "~> 0.7")
@@ -50,6 +53,8 @@ Gem::Specification.new do |s|
50
53
  s.add_development_dependency('mime-types', "~> 1.5")
51
54
  s.add_development_dependency('activesupport', '~> 3.2.13')
52
55
  s.add_development_dependency('jekyll_test_plugin')
56
+ s.add_development_dependency('jekyll_test_plugin_malicious')
57
+ s.add_development_dependency('rouge', '~> 1.3')
53
58
 
54
59
  # = MANIFEST =
55
60
  s.files = %w[
@@ -91,6 +96,7 @@ Gem::Specification.new do |s|
91
96
  lib/jekyll/converters/markdown/maruku_parser.rb
92
97
  lib/jekyll/converters/markdown/rdiscount_parser.rb
93
98
  lib/jekyll/converters/markdown/redcarpet_parser.rb
99
+ lib/jekyll/converters/sass.rb
94
100
  lib/jekyll/converters/textile.rb
95
101
  lib/jekyll/convertible.rb
96
102
  lib/jekyll/core_ext.rb
@@ -103,6 +109,7 @@ Gem::Specification.new do |s|
103
109
  lib/jekyll/generator.rb
104
110
  lib/jekyll/generators/pagination.rb
105
111
  lib/jekyll/layout.rb
112
+ lib/jekyll/layout_reader.rb
106
113
  lib/jekyll/mime.types
107
114
  lib/jekyll/page.rb
108
115
  lib/jekyll/plugin.rb
@@ -125,11 +132,19 @@ Gem::Specification.new do |s|
125
132
  lib/site_template/css/syntax.css
126
133
  lib/site_template/index.html
127
134
  script/bootstrap
135
+ script/branding
136
+ script/cibuild
137
+ script/rebund
128
138
  site/.gitignore
129
139
  site/CNAME
130
140
  site/README
131
141
  site/_config.yml
142
+ site/_data/docs.yml
132
143
  site/_includes/analytics.html
144
+ site/_includes/css/gridism.css
145
+ site/_includes/css/normalize.css
146
+ site/_includes/css/pygments.css
147
+ site/_includes/css/style.css
133
148
  site/_includes/docs_contents.html
134
149
  site/_includes/docs_contents_mobile.html
135
150
  site/_includes/docs_option.html
@@ -160,14 +175,11 @@ Gem::Specification.new do |s|
160
175
  site/_posts/2013-11-04-jekyll-1-3-0-released.markdown
161
176
  site/_posts/2013-11-26-jekyll-1-3-1-released.markdown
162
177
  site/_posts/2013-12-07-jekyll-1-4-0-released.markdown
178
+ site/_posts/2013-12-09-jekyll-1-4-1-released.markdown
163
179
  site/_posts/2013-12-16-jekyll-1-4-2-released.markdown
164
180
  site/_posts/2014-01-13-jekyll-1-4-3-released.markdown
165
- site/_posts/2014-03-24-jekyll-1-5-0-released.markdown
166
- site/_posts/2014-03-27-jekyll-1-5-1-released.markdown
167
- site/css/gridism.css
168
- site/css/normalize.css
169
- site/css/pygments.css
170
- site/css/style.css
181
+ site/css/screen.css
182
+ site/docs/assets.md
171
183
  site/docs/configuration.md
172
184
  site/docs/contributing.md
173
185
  site/docs/datafiles.md
@@ -195,6 +207,7 @@ Gem::Specification.new do |s|
195
207
  site/docs/upgrading.md
196
208
  site/docs/usage.md
197
209
  site/docs/variables.md
210
+ site/docs/windows.md
198
211
  site/favicon.png
199
212
  site/feed.xml
200
213
  site/freenode.txt
@@ -221,9 +234,9 @@ Gem::Specification.new do |s|
221
234
  test/source/_data/languages.yml
222
235
  test/source/_data/members.yaml
223
236
  test/source/_data/products.yml
237
+ test/source/_includes/include.html
224
238
  test/source/_includes/params.html
225
239
  test/source/_includes/sig.markdown
226
- test/source/_includes/tmp
227
240
  test/source/_layouts/default.html
228
241
  test/source/_layouts/post/simple.html
229
242
  test/source/_layouts/simple.html
@@ -261,26 +274,32 @@ Gem::Specification.new do |s|
261
274
  test/source/_posts/2013-05-10-number-category.textile
262
275
  test/source/_posts/2013-07-22-post-excerpt-with-layout.markdown
263
276
  test/source/_posts/2013-08-01-mkdn-extension.mkdn
264
- test/source/_posts/2014-01-06-permalink-traversal.md
277
+ test/source/_posts/2013-12-17-include-variable-filters.markdown
278
+ test/source/_posts/2013-12-20-properties.text
265
279
  test/source/_posts/es/2008-11-21-nested.textile
280
+ test/source/_sass/_grid.scss
266
281
  test/source/about.html
267
282
  test/source/category/_posts/2008-9-23-categories.textile
268
283
  test/source/contacts.html
269
284
  test/source/contacts/bar.html
270
285
  test/source/contacts/index.html
286
+ test/source/css/main.scss
271
287
  test/source/css/screen.css
272
288
  test/source/deal.with.dots.html
273
- test/source/exploit.md
274
289
  test/source/foo/_posts/bar/2008-12-12-topical-post.textile
275
290
  test/source/index.html
291
+ test/source/js/coffeescript.coffee
276
292
  test/source/products.yml
293
+ test/source/properties.html
277
294
  test/source/sitemap.xml
278
295
  test/source/symlink-test/_data
279
296
  test/source/symlink-test/symlinked-dir
280
297
  test/source/symlink-test/symlinked-file
298
+ test/source/unpublished.html
281
299
  test/source/win/_posts/2009-05-24-yaml-linebreak.markdown
282
300
  test/source/z_category/_posts/2008-9-23-categories.textile
283
301
  test/suite.rb
302
+ test/test_coffeescript.rb
284
303
  test/test_command.rb
285
304
  test/test_configuration.rb
286
305
  test/test_convertible.rb
@@ -290,15 +309,16 @@ Gem::Specification.new do |s|
290
309
  test/test_filters.rb
291
310
  test/test_generated_site.rb
292
311
  test/test_kramdown.rb
312
+ test/test_layout_reader.rb
293
313
  test/test_new_command.rb
294
314
  test/test_page.rb
295
315
  test/test_pager.rb
296
- test/test_path_sanitization.rb
297
316
  test/test_post.rb
298
317
  test/test_rdiscount.rb
299
318
  test/test_redcarpet.rb
300
319
  test/test_redcloth.rb
301
320
  test/test_related_posts.rb
321
+ test/test_sass.rb
302
322
  test/test_site.rb
303
323
  test/test_tags.rb
304
324
  test/test_url.rb