middleman-core 3.1.5 → 3.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c57d497044df7725a8dbf742d1ad1145ddb43f81
4
- data.tar.gz: a44fcf58e1c0b9aa89df85bb0495b95b1474a182
3
+ metadata.gz: ef753f5b00f4988ae300a75042c40b029cdec327
4
+ data.tar.gz: 79cbd2f81eded854ad3a5556064a4ef4426b86d3
5
5
  SHA512:
6
- metadata.gz: f1a07b30081dedb39503aca5d0f0a983f1c1c54ca55a8a82eb4bd418a34eabc6ea00626cb7fe47ebfa133856969d7a2d2ee7de3b03c1fafc3d98a4ed0a5342e9
7
- data.tar.gz: c640e8874882a1a991355cab16380407f0a164b35fb18bb8c41550effabcc53c76f942e02d714dc67618798aa3d12796aad7940685a59ddaa45e0ba448587fff
6
+ metadata.gz: 5673c38132a41e5b75f473e9a6ceedc8ae9edf291fa07290fd9fbc24bfd63ab91206c3267e45424cdfa6290b8a58fb1a8b3019cc15eff8debf2fd06e705baba0
7
+ data.tar.gz: fa31465e107a5d86bdd26b280da9001b2c5736bbceb96a69556a937b19bf1cf5d1a60566d93861d8c166692d5a96d7538b70e5db90234b666e12c0b81fdfc976
@@ -20,7 +20,7 @@ Feature: Assets get a file hash appended to their and references to them are upd
20
20
  | images/100px.gif |
21
21
  | javascripts/application.js |
22
22
  | stylesheets/site.css |
23
-
23
+
24
24
  And the file "javascripts/application-1d8d5276.js" should contain "img.src = '/images/100px-5fd6fb90.jpg'"
25
25
  And the file "stylesheets/site-50eaa978.css" should contain "background-image: url('../images/100px-5fd6fb90.jpg')"
26
26
  And the file "index.html" should contain 'href="apple-touch-icon.png"'
@@ -33,7 +33,7 @@ Feature: Assets get a file hash appended to their and references to them are upd
33
33
  And the file "other/index.html" should contain 'href="../stylesheets/site-50eaa978.css"'
34
34
  And the file "other/index.html" should contain 'src="../javascripts/application-1d8d5276.js"'
35
35
  And the file "other/index.html" should contain 'src="../images/100px-5fd6fb90.jpg"'
36
-
36
+
37
37
  Scenario: Hashed assets work in preview server
38
38
  Given the Server is running at "asset-hash-app"
39
39
  When I go to "/"
@@ -54,7 +54,7 @@ Feature: Assets get a file hash appended to their and references to them are upd
54
54
  When I go to "/stylesheets/site-50eaa978.css"
55
55
  Then I should see "background-image: url('../images/100px-5fd6fb90.jpg')"
56
56
 
57
- Scenario: Enabling an asset host still produces hashed files and references
57
+ Scenario: Enabling an asset host still produces hashed files and references
58
58
  Given the Server is running at "asset-hash-host-app"
59
59
  When I go to "/"
60
60
  Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
@@ -132,4 +132,18 @@ Feature: Assets get a file hash appended to their and references to them are upd
132
132
  | images/100px-5fd6fb90.jpg |
133
133
  | images/100px-5fd6fb90.gif |
134
134
  | javascripts/application-1d8d5276.js |
135
- | stylesheets/site.css |
135
+ | stylesheets/site.css |
136
+
137
+ # @wip Currently broken, we should move all asset-host functionality out of Compass and into something more similar to asset_hash with Rack-based rewrites
138
+ # Scenario: Enabling an asset host and referencing assets in CSS with URL fragments are rewritten correctly
139
+ # Given a successfully built app at "asset-hash-host-app"
140
+ # When I cd to "build"
141
+
142
+ # Then the following files should exist:
143
+ # | images/100px-5fd6fb90.jpg |
144
+ # | stylesheets/fragment-c058ecb2.css |
145
+ # And the following files should not exist:
146
+ # | images/100px.jpg |
147
+
148
+ # And the file "stylesheets/fragment-c058ecb2.css" should contain "http://middlemanapp.com/images/100px-5fd6fb90.jpg#test"
149
+ # And the file "stylesheets/fragment-c058ecb2.css" should not contain "http://middlemanapp.com/images/100px.jpg#test"
@@ -9,6 +9,7 @@ Feature: Directory Index
9
9
  | a_folder/needs_index/index.html |
10
10
  | leave_me_alone.html |
11
11
  | wildcard_leave_me_alone.html |
12
+ | evil spaces/index.html |
12
13
  | regular/index.html |
13
14
  | .htaccess |
14
15
  | .htpasswd |
@@ -16,6 +17,7 @@ Feature: Directory Index
16
17
  Then the following files should not exist:
17
18
  | egular/index/index.html |
18
19
  | needs_index.html |
20
+ | evil spaces.html |
19
21
  | a_folder/needs_index.html |
20
22
  | leave_me_alone/index.html |
21
23
  | wildcard_leave_me_alone/index.html |
@@ -23,12 +25,19 @@ Feature: Directory Index
23
25
  And the file "a_folder/needs_index/index.html" should contain "Indexable"
24
26
  And the file "leave_me_alone.html" should contain "Stay away"
25
27
  And the file "regular/index.html" should contain "Regular"
28
+ And the file "evil spaces/index.html" should contain "Spaces"
29
+
26
30
 
27
31
  Scenario: Preview normal file
28
32
  Given the Server is running at "indexable-app"
29
33
  When I go to "/needs_index/"
30
34
  Then I should see "Indexable"
31
35
 
36
+ Scenario: Preview normal file with spaces in filename
37
+ Given the Server is running at "indexable-app"
38
+ When I go to "/evil%20spaces/"
39
+ Then I should see "Spaces"
40
+
32
41
  Scenario: Preview normal file subdirectory
33
42
  Given the Server is running at "indexable-app"
34
43
  When I go to "/a_folder/needs_index/"
@@ -47,6 +56,7 @@ Feature: Directory Index
47
56
  explicit_link_to: <%= link_to "Explicit", "/needs_index/index.html" %>
48
57
  unknown_link_to: <%= link_to "Unknown", "/unknown.html" %>
49
58
  relative_link_to: <%= link_to "Relative", "needs_index.html" %>
59
+ link_to_with_spaces: <%= link_to "Spaces", "/evil%20spaces.html" %>
50
60
  """
51
61
  And a file named "source/link_to/sub.html.erb" with:
52
62
  """
@@ -54,6 +64,7 @@ Feature: Directory Index
54
64
  explicit_link_to: <%= link_to "Explicit", "/needs_index/index.html" %>
55
65
  unknown_link_to: <%= link_to "Unknown", "/unknown.html" %>
56
66
  relative_link_to: <%= link_to "Relative", "../needs_index.html" %>
67
+ link_to_with_spaces: <%= link_to "Spaces", "../evil%20spaces.html" %>
57
68
  """
58
69
  And the Server is running at "indexable-app"
59
70
  When I go to "/link_to/"
@@ -61,8 +72,11 @@ Feature: Directory Index
61
72
  Then I should see 'explicit_link_to: <a href="/needs_index/index.html">Explicit</a>'
62
73
  Then I should see 'unknown_link_to: <a href="/unknown.html">Unknown</a>'
63
74
  Then I should see 'relative_link_to: <a href="/needs_index/">Relative</a>'
75
+ Then I should see 'link_to_with_spaces: <a href="/evil%20spaces/">Spaces</a>'
64
76
  When I go to "/link_to/sub/"
65
77
  Then I should see 'link_to: <a href="/needs_index/">Needs Index</a>'
66
78
  Then I should see 'explicit_link_to: <a href="/needs_index/index.html">Explicit</a>'
67
79
  Then I should see 'unknown_link_to: <a href="/unknown.html">Unknown</a>'
68
- Then I should see 'relative_link_to: <a href="/needs_index/">Relative</a>'
80
+ Then I should see 'relative_link_to: <a href="/needs_index/">Relative</a>'
81
+ Then I should see 'link_to_with_spaces: <a href="/evil%20spaces/">Spaces</a>'
82
+
@@ -0,0 +1,36 @@
1
+ Feature: Markdown (Kramdown) support
2
+ In order to test included Kramdown support
3
+
4
+ Scenario: Kramdown smartypants extension
5
+ Given a fixture app "markdown-app"
6
+ And a file named "config.rb" with:
7
+ """
8
+ set :markdown_engine, :kramdown
9
+ set :markdown, :smartypants => true
10
+ """
11
+ Given the Server is running at "markdown-app"
12
+ When I go to "/smarty_pants.html"
13
+ Then I should see "“Hello”"
14
+
15
+ Scenario: Kramdown uses our link_to and image_tag helpers
16
+ Given a fixture app "markdown-app"
17
+ And a file named "config.rb" with:
18
+ """
19
+ set :markdown_engine, :kramdown
20
+ activate :automatic_image_sizes
21
+ activate :directory_indexes
22
+ """
23
+ And a file named "source/link_and_image.html.markdown" with:
24
+ """
25
+ [A link](/smarty_pants.html)
26
+
27
+ ![image](blank.gif)
28
+
29
+ [Mail me](mailto:ben@benhollis.net)
30
+ """
31
+ Given the Server is running at "markdown-app"
32
+ When I go to "/link_and_image/"
33
+ Then I should see "/smarty_pants/"
34
+ Then I should see 'width="1"'
35
+ And I should see 'height="1"'
36
+ And I should see 'src="/images/blank.gif"'
@@ -0,0 +1,41 @@
1
+ Feature: Markdown support in Haml (Kramdown)
2
+ In order to test support of the Haml markdown filter
3
+
4
+ Scenario: Markdown filter in Haml works (with Kramdown)
5
+ Given a fixture app "markdown-in-haml-app"
6
+ And a file named "config.rb" with:
7
+ """
8
+ set :markdown_engine, :kramdown
9
+ activate :directory_indexes
10
+ """
11
+ And a file named "source/markdown_filter.html.haml" with:
12
+ """
13
+ :markdown
14
+ # H1
15
+
16
+ paragraph
17
+ """
18
+ Given the Server is running at "markdown-in-haml-app"
19
+ When I go to "/markdown_filter/"
20
+ Then I should see ">H1</h1>"
21
+ Then I should see "<p>paragraph</p>"
22
+
23
+
24
+ Scenario: Markdown filter in Haml uses our link_to and image_tag helpers (with Kramdown)
25
+ Given a fixture app "markdown-in-haml-app"
26
+ And a file named "config.rb" with:
27
+ """
28
+ set :markdown_engine, :kramdown
29
+ activate :directory_indexes
30
+ """
31
+ And a file named "source/link_and_image.html.haml" with:
32
+ """
33
+ :markdown
34
+ [A link](/link_target.html)
35
+
36
+ ![image](blank.gif)
37
+ """
38
+ Given the Server is running at "markdown-in-haml-app"
39
+ When I go to "/link_and_image/"
40
+ Then I should see "/link_target/"
41
+ Then I should see 'src="/images/blank.gif"'
@@ -1,6 +1,6 @@
1
1
  @nojava
2
- Feature: Markdown support
3
- In order to test included Maruku support
2
+ Feature: Markdown (Redcarpet) support
3
+ In order to test included Redcarpet support
4
4
 
5
5
  Scenario: Redcarpet 2 extensions
6
6
  Given a fixture app "markdown-app"
@@ -18,7 +18,7 @@ Feature: Markdown support in Haml
18
18
  """
19
19
  Given the Server is running at "markdown-in-haml-app"
20
20
  When I go to "/markdown_filter/"
21
- Then I should see "<h1>H1</h1>"
21
+ Then I should see ">H1</h1>"
22
22
  Then I should see "<p>paragraph</p>"
23
23
 
24
24
 
@@ -0,0 +1,4 @@
1
+ #main {
2
+ padding: 50px;
3
+ background-image: image-url('100px.jpg#test');
4
+ }
@@ -119,7 +119,7 @@ module Middleman::Cli
119
119
  # @return [String] The full path of the file that was written
120
120
  def render_to_file(resource)
121
121
  build_dir = self.class.shared_instance.config[:build_dir]
122
- output_file = File.join(build_dir, resource.destination_path)
122
+ output_file = File.join(build_dir, resource.destination_path.gsub('%20', ' '))
123
123
 
124
124
  if resource.binary?
125
125
  if !File.exists?(output_file)
@@ -236,7 +236,7 @@ module Middleman::Cli
236
236
  @cleaning_queue = []
237
237
  return unless File.exist?(@destination)
238
238
 
239
- paths = ::Middleman::Util.all_files_under(@destination)
239
+ paths = ::Middleman::Util.all_files_under(@destination).map(&:realpath)
240
240
  @cleaning_queue += paths.select do |path|
241
241
  path.to_s !~ /\/\./ || path.to_s =~ /\.(htaccess|htpasswd)/
242
242
  end
@@ -0,0 +1,41 @@
1
+ require "kramdown"
2
+
3
+ module Middleman
4
+ module Renderers
5
+
6
+ # Our own Kramdown Tilt template that simply uses our custom renderer.
7
+ class KramdownTemplate < ::Tilt::KramdownTemplate
8
+ def evaluate(scope, locals, &block)
9
+ @output ||= begin
10
+ output, warnings = MiddlemanKramdownHTML.convert(@engine.root, @engine.options)
11
+ @engine.warnings.concat(warnings)
12
+ output
13
+ end
14
+ end
15
+ end
16
+
17
+ # Custom Kramdown renderer that uses our helpers for images and links
18
+ class MiddlemanKramdownHTML < ::Kramdown::Converter::Html
19
+ cattr_accessor :middleman_app
20
+
21
+ def convert_img(el, indent)
22
+ attrs = el.attr.dup
23
+ link = attrs.delete('src')
24
+ middleman_app.image_tag(link, attrs)
25
+ end
26
+
27
+ def convert_a(el, indent)
28
+ content = inner(el, indent)
29
+ attr = el.attr.dup
30
+ if attr['href'] =~ /\Amailto:/
31
+ mail_addr = attr['href'].sub(/\Amailto:/, '')
32
+ attr['href'] = obfuscate('mailto') << ":" << obfuscate(mail_addr)
33
+ content = obfuscate(content) if content == mail_addr
34
+ end
35
+
36
+ link = attr.delete('href')
37
+ middleman_app.link_to(content, link, attr)
38
+ end
39
+ end
40
+ end
41
+ end
@@ -23,13 +23,18 @@ module Middleman
23
23
 
24
24
  # Once configuration is parsed
25
25
  app.after_configuration do
26
+ markdown_exts = %w(markdown mdown md mkd mkdn)
26
27
 
27
28
  begin
28
29
  # Look for the user's preferred engine
29
30
  if config[:markdown_engine] == :redcarpet
30
31
  require "middleman-core/renderers/redcarpet"
31
- ::Tilt.prefer(::Middleman::Renderers::RedcarpetTemplate)
32
+ ::Tilt.prefer(::Middleman::Renderers::RedcarpetTemplate, *markdown_exts)
32
33
  MiddlemanRedcarpetHTML.middleman_app = self
34
+ elsif config[:markdown_engine] == :kramdown
35
+ require "middleman-core/renderers/kramdown"
36
+ ::Tilt.prefer(::Middleman::Renderers::KramdownTemplate, *markdown_exts)
37
+ MiddlemanKramdownHTML.middleman_app = self
33
38
  elsif !config[:markdown_engine].nil?
34
39
  # Map symbols to classes
35
40
  markdown_engine_klass = if config[:markdown_engine].is_a? Symbol
@@ -41,7 +46,7 @@ module Middleman
41
46
  end
42
47
 
43
48
  # Tell tilt to use that engine
44
- ::Tilt.prefer(markdown_engine_klass)
49
+ ::Tilt.prefer(markdown_engine_klass, *markdown_exts)
45
50
  end
46
51
  rescue LoadError
47
52
  logger.warn "Requested Markdown engine (#{config[:markdown_engine]}) not found. Maybe the gem needs to be installed and required?"
@@ -77,7 +77,7 @@ module Middleman
77
77
  def template?
78
78
  true
79
79
  end
80
-
80
+
81
81
  def render(*args, &block)
82
82
  url = ::Middleman::Util.url_for(store.app, @request_path, :relative => false, :find_resource => true)
83
83
 
@@ -89,6 +89,7 @@ module Middleman
89
89
  <head>
90
90
  <meta http-equiv=refresh content="0; url=#{url}" />
91
91
  <meta name="robots" content="noindex,follow" />
92
+ <meta http-equiv="cache-control" content="no-cache" />
92
93
  </head>
93
94
  <body>
94
95
  </body>
@@ -38,7 +38,7 @@ module Middleman
38
38
  def initialize(store, path, source_file=nil)
39
39
  @store = store
40
40
  @app = @store.app
41
- @path = path
41
+ @path = path.gsub(' ', '%20') # handle spaces in filenames
42
42
  @source_file = source_file
43
43
 
44
44
  @destination_paths = [@path]
@@ -153,6 +153,7 @@ module Middleman
153
153
  def self.url_for(app, path_or_resource, options={})
154
154
  # Handle Resources and other things which define their own url method
155
155
  url = path_or_resource.respond_to?(:url) ? path_or_resource.url : path_or_resource
156
+ url = url.gsub(' ', '%20')
156
157
 
157
158
  begin
158
159
  uri = URI(url)
@@ -1,5 +1,5 @@
1
1
  module Middleman
2
2
  # Current Version
3
3
  # @return [String]
4
- VERSION = '3.1.5' unless const_defined?(:VERSION)
4
+ VERSION = '3.1.6' unless const_defined?(:VERSION)
5
5
  end
@@ -34,7 +34,7 @@ class Middleman::CoreExtensions::Compass < ::Middleman::Extension
34
34
 
35
35
  # Disable this initially, the cache_buster extension will
36
36
  # re-enable it if requested.
37
- compass_config.asset_cache_buster :none
37
+ compass_config.asset_cache_buster { |_| nil }
38
38
 
39
39
  # Disable this initially, the relative_assets extension will
40
40
 
@@ -13,7 +13,7 @@ if !defined?(::Padrino::Helpers)
13
13
  require 'vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/support_lite'
14
14
  require 'vendored-middleman-deps/padrino-helpers-0.11.2/lib/padrino-helpers'
15
15
  end
16
-
16
+
17
17
  class Padrino::Helpers::OutputHelpers::ErbHandler
18
18
  # Force Erb capture not to use safebuffer
19
19
  def capture_from_template(*args, &block)
@@ -176,11 +176,15 @@ class Middleman::CoreExtensions::DefaultHelpers < ::Middleman::Extension
176
176
  if path.include?('//') or path.start_with?('data:')
177
177
  path
178
178
  else # rewrite paths to use their destination path
179
- path = File.join(prefix, path)
180
- if resource = sitemap.find_resource_by_path(path)
179
+ if resource = sitemap.find_resource_by_destination_path(url_for(path))
181
180
  resource.url
182
181
  else
183
- File.join(config[:http_prefix], path)
182
+ path = File.join(prefix, path)
183
+ if resource = sitemap.find_resource_by_path(path)
184
+ resource.url
185
+ else
186
+ File.join(config[:http_prefix], path)
187
+ end
184
188
  end
185
189
  end
186
190
  end
@@ -32,7 +32,7 @@ Gem::Specification.new do |s|
32
32
  s.add_dependency("activesupport", ["~> 3.2.6"])
33
33
 
34
34
  # Watcher
35
- s.add_dependency("listen", ["~> 1.2.2"])
35
+ s.add_dependency("listen", ["~> 1.1"])
36
36
 
37
37
  # i18n
38
38
  s.add_dependency("i18n", ["~> 0.6.1"])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.5
4
+ version: 3.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Reynolds
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-07 00:00:00.000000000 Z
12
+ date: 2013-10-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -107,14 +107,14 @@ dependencies:
107
107
  requirements:
108
108
  - - ~>
109
109
  - !ruby/object:Gem::Version
110
- version: 1.2.2
110
+ version: '1.1'
111
111
  type: :runtime
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ~>
116
116
  - !ruby/object:Gem::Version
117
- version: 1.2.2
117
+ version: '1.1'
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: i18n
120
120
  requirement: !ruby/object:Gem::Requirement
@@ -195,6 +195,8 @@ files:
195
195
  - features/layouts_dir.feature
196
196
  - features/liquid.feature
197
197
  - features/markdown.feature
198
+ - features/markdown_kramdown.feature
199
+ - features/markdown_kramdown_in_haml.feature
198
200
  - features/markdown_redcarpet.feature
199
201
  - features/markdown_redcarpet_in_haml.feature
200
202
  - features/minify_css.feature
@@ -260,6 +262,7 @@ files:
260
262
  - fixtures/asset-hash-host-app/source/index.html.erb
261
263
  - fixtures/asset-hash-host-app/source/layout.erb
262
264
  - fixtures/asset-hash-host-app/source/other.html.erb
265
+ - fixtures/asset-hash-host-app/source/stylesheets/fragment.css.scss
263
266
  - fixtures/asset-hash-host-app/source/stylesheets/site.css.scss
264
267
  - fixtures/asset-hash-host-app/source/subdir/index.html.erb
265
268
  - fixtures/asset-host-app/config.rb
@@ -525,6 +528,7 @@ files:
525
528
  - fixtures/indexable-app/source/.htpasswd
526
529
  - fixtures/indexable-app/source/.nojekyll
527
530
  - fixtures/indexable-app/source/a_folder/needs_index.html
531
+ - fixtures/indexable-app/source/evil spaces.html
528
532
  - fixtures/indexable-app/source/leave_me_alone.html
529
533
  - fixtures/indexable-app/source/needs_index.html
530
534
  - fixtures/indexable-app/source/regular/index.html
@@ -955,6 +959,7 @@ files:
955
959
  - lib/middleman-core/renderers/coffee_script.rb
956
960
  - lib/middleman-core/renderers/erb.rb
957
961
  - lib/middleman-core/renderers/haml.rb
962
+ - lib/middleman-core/renderers/kramdown.rb
958
963
  - lib/middleman-core/renderers/less.rb
959
964
  - lib/middleman-core/renderers/liquid.rb
960
965
  - lib/middleman-core/renderers/markdown.rb
@@ -1359,7 +1364,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1359
1364
  version: '0'
1360
1365
  requirements: []
1361
1366
  rubyforge_project:
1362
- rubygems_version: 2.0.3
1367
+ rubygems_version: 2.0.2
1363
1368
  signing_key:
1364
1369
  specification_version: 4
1365
1370
  summary: Hand-crafted frontend development
@@ -1415,6 +1420,8 @@ test_files:
1415
1420
  - features/layouts_dir.feature
1416
1421
  - features/liquid.feature
1417
1422
  - features/markdown.feature
1423
+ - features/markdown_kramdown.feature
1424
+ - features/markdown_kramdown_in_haml.feature
1418
1425
  - features/markdown_redcarpet.feature
1419
1426
  - features/markdown_redcarpet_in_haml.feature
1420
1427
  - features/minify_css.feature
@@ -1480,6 +1487,7 @@ test_files:
1480
1487
  - fixtures/asset-hash-host-app/source/index.html.erb
1481
1488
  - fixtures/asset-hash-host-app/source/layout.erb
1482
1489
  - fixtures/asset-hash-host-app/source/other.html.erb
1490
+ - fixtures/asset-hash-host-app/source/stylesheets/fragment.css.scss
1483
1491
  - fixtures/asset-hash-host-app/source/stylesheets/site.css.scss
1484
1492
  - fixtures/asset-hash-host-app/source/subdir/index.html.erb
1485
1493
  - fixtures/asset-host-app/config.rb
@@ -1745,6 +1753,7 @@ test_files:
1745
1753
  - fixtures/indexable-app/source/.htpasswd
1746
1754
  - fixtures/indexable-app/source/.nojekyll
1747
1755
  - fixtures/indexable-app/source/a_folder/needs_index.html
1756
+ - fixtures/indexable-app/source/evil spaces.html
1748
1757
  - fixtures/indexable-app/source/leave_me_alone.html
1749
1758
  - fixtures/indexable-app/source/needs_index.html
1750
1759
  - fixtures/indexable-app/source/regular/index.html