middleman-core 3.4.1 → 4.0.0.alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (507) hide show
  1. checksums.yaml +4 -4
  2. data/{fixtures/asciidoc-app/config.rb → .gemtest} +0 -0
  3. data/.yardopts +2 -6
  4. data/Rakefile +5 -1
  5. data/features/asset_hash.feature +32 -61
  6. data/features/asset_host.feature +11 -23
  7. data/features/builder.feature +2 -0
  8. data/features/cache_buster.feature +1 -1
  9. data/features/chained_templates.feature +2 -92
  10. data/features/clean_build.feature +0 -18
  11. data/features/cli_init.feature +17 -111
  12. data/features/content_type.feature +2 -5
  13. data/features/custom_layouts.feature +24 -20
  14. data/features/data.feature +0 -28
  15. data/features/directory_index.feature +9 -9
  16. data/features/front-matter-neighbor.feature +0 -32
  17. data/features/front-matter.feature +0 -17
  18. data/features/helpers_content_tag.feature +2 -2
  19. data/features/helpers_form_tag.feature +4 -4
  20. data/features/helpers_link_to.feature +11 -29
  21. data/features/helpers_url_for.feature +11 -11
  22. data/features/i18n_builder.feature +5 -5
  23. data/features/i18n_preview.feature +8 -8
  24. data/features/markdown_kramdown.feature +1 -1
  25. data/features/markdown_kramdown_in_haml.feature +1 -2
  26. data/features/markdown_redcarpet.feature +23 -23
  27. data/features/minify_css.feature +9 -75
  28. data/features/minify_javascript.feature +12 -65
  29. data/features/mount_rack.feature +2 -4
  30. data/features/multiple-sources.feature +27 -0
  31. data/features/proxy_pages.feature +0 -10
  32. data/features/redirects.feature +6 -7
  33. data/features/relative_assets.feature +21 -66
  34. data/features/slim.feature +11 -7
  35. data/features/stylus.feature +1 -1
  36. data/features/support/env.rb +4 -4
  37. data/fixtures/asset-hash-app/config.rb +0 -2
  38. data/fixtures/asset-hash-app/source/index.html.erb +1 -1
  39. data/fixtures/asset-hash-host-app/config.rb +1 -3
  40. data/fixtures/asset-host-app/source/asset_host.html.erb +20 -1
  41. data/fixtures/asset-host-app/source/stylesheets/asset_host.css.sass +47 -2
  42. data/fixtures/auto-css-app/config.rb +8 -10
  43. data/fixtures/auto-js-app/config.rb +8 -10
  44. data/fixtures/basic-data-app/config.rb +2 -4
  45. data/fixtures/cache-buster-app/source/stylesheets/relative_assets.css.sass +0 -1
  46. data/fixtures/cache-buster-app/source/stylesheets/site.css.sass +3 -1
  47. data/fixtures/capture-html-app/config.rb +3 -5
  48. data/fixtures/clean-app/config-complications.rb +4 -6
  49. data/fixtures/clean-app/config.rb +4 -6
  50. data/fixtures/content-for-app/config.rb +3 -5
  51. data/fixtures/custom-layout-app/config.rb +1 -1
  52. data/fixtures/data-app/config.rb +1 -1
  53. data/fixtures/dynamic-pages-app/config.rb +20 -42
  54. data/fixtures/dynamic-pages-app/source/real/index.html.erb +3 -3
  55. data/fixtures/ember-cli-app/config.rb +5 -0
  56. data/fixtures/{compass-sprites-app/config.rb → ember-cli-app/source/javascripts/file.js} +0 -0
  57. data/fixtures/ember-cli-app/test-app/.bowerrc +3 -0
  58. data/fixtures/ember-cli-app/test-app/.gitignore +17 -0
  59. data/fixtures/ember-cli-app/test-app/.jshintrc +32 -0
  60. data/fixtures/ember-cli-app/test-app/Brocfile.js +20 -0
  61. data/fixtures/ember-cli-app/test-app/README.md +25 -0
  62. data/fixtures/ember-cli-app/test-app/app/app.js +14 -0
  63. data/fixtures/{implied-extensions-app/config.rb → ember-cli-app/test-app/app/components/.gitkeep} +0 -0
  64. data/fixtures/{javascript-app/config.rb → ember-cli-app/test-app/app/controllers/.gitkeep} +0 -0
  65. data/fixtures/{more-implied-extensions-app/config.rb → ember-cli-app/test-app/app/helpers/.gitkeep} +0 -0
  66. data/fixtures/ember-cli-app/test-app/app/index.html +26 -0
  67. data/fixtures/{partial-chained_templates-app/config.rb → ember-cli-app/test-app/app/models/.gitkeep} +0 -0
  68. data/fixtures/ember-cli-app/test-app/app/router.js +10 -0
  69. data/fixtures/{preview-server-app/config-empty.rb → ember-cli-app/test-app/app/routes/.gitkeep} +0 -0
  70. data/fixtures/{request-app/config.rb → ember-cli-app/test-app/app/styles/.gitkeep} +0 -0
  71. data/fixtures/ember-cli-app/test-app/app/styles/app.css +3 -0
  72. data/fixtures/{traversal-app/source/.htaccess → ember-cli-app/test-app/app/templates/.gitkeep} +0 -0
  73. data/fixtures/ember-cli-app/test-app/app/templates/application.hbs +3 -0
  74. data/{lib/middleman-core/templates/html5/source/img/.gitignore → fixtures/ember-cli-app/test-app/app/templates/components/.gitkeep} +0 -0
  75. data/{lib/middleman-core/templates/mobile/source/js/script.js → fixtures/ember-cli-app/test-app/app/views/.gitkeep} +0 -0
  76. data/fixtures/ember-cli-app/test-app/bower.json +16 -0
  77. data/fixtures/ember-cli-app/test-app/config/environment.js +38 -0
  78. data/fixtures/ember-cli-app/test-app/package.json +31 -0
  79. data/fixtures/ember-cli-app/test-app/public/.gitkeep +0 -0
  80. data/fixtures/ember-cli-app/test-app/testem.json +6 -0
  81. data/fixtures/ember-cli-app/test-app/tests/.jshintrc +73 -0
  82. data/fixtures/ember-cli-app/test-app/tests/helpers/resolver.js +9 -0
  83. data/fixtures/ember-cli-app/test-app/tests/helpers/start-app.js +30 -0
  84. data/fixtures/ember-cli-app/test-app/tests/index.html +50 -0
  85. data/fixtures/ember-cli-app/test-app/tests/test-helper.js +6 -0
  86. data/fixtures/ember-cli-app/test-app/tests/unit/.gitkeep +0 -0
  87. data/fixtures/env-app/config.rb +0 -0
  88. data/fixtures/env-app/environments/development.rb +1 -0
  89. data/fixtures/env-app/environments/production.rb +2 -0
  90. data/fixtures/env-app/source/index.html.erb +3 -0
  91. data/fixtures/env-app/source/stylesheets/site.css.scss +3 -0
  92. data/fixtures/external-helpers/config.rb +1 -1
  93. data/fixtures/feature-params-app/config.rb +10 -6
  94. data/fixtures/feature-params-app/source/index.html.erb +2 -3
  95. data/fixtures/fonts-app/source/stylesheets/fonts.css.scss +6 -0
  96. data/fixtures/frontmatter-neighbor-app/config.rb +30 -0
  97. data/fixtures/frontmatter-settings-app/config.rb +2 -2
  98. data/fixtures/frontmatter-settings-neighbor-app/config.rb +33 -3
  99. data/fixtures/generator-test/config.rb +5 -10
  100. data/fixtures/glob-app/config.rb +1 -1
  101. data/fixtures/i18n-force-locale/config.rb +2 -4
  102. data/fixtures/i18n-force-locale/source/{index.haml → index.html.haml} +0 -0
  103. data/fixtures/i18n-test-app/source/localizable/{one.en.md → one.en.html.md} +0 -0
  104. data/fixtures/i18n-test-app/source/localizable/{one.es.md → one.es.html.md} +0 -0
  105. data/fixtures/indexable-app/config.rb +2 -2
  106. data/fixtures/indexable-app/source/evil spaces.html +1 -1
  107. data/fixtures/large-build-app/config.rb +1 -5
  108. data/fixtures/large-build-app/source/spaces in file.html.erb +1 -1
  109. data/fixtures/manual-layout-override/config.rb +1 -1
  110. data/fixtures/markdown-app/config.rb +1 -1
  111. data/fixtures/markdown-frontmatter-options-app/config.rb +1 -1
  112. data/fixtures/minify-css-app/source/stylesheets/site.css.sass +3 -1
  113. data/fixtures/more-frontmatter-settings-app/config.rb +1 -1
  114. data/fixtures/more-markdown-app/source/{with_layout.markdown → with_layout.html.markdown} +0 -0
  115. data/fixtures/more-markdown-app/source/{with_layout_erb.markdown.erb → with_layout_erb.html.markdown.erb} +0 -0
  116. data/fixtures/more-traversal-app/config.rb +4 -4
  117. data/fixtures/more-traversal-app/source/layout.erb +1 -1
  118. data/fixtures/multiple-data-sources-app/config.rb +3 -0
  119. data/fixtures/multiple-data-sources-app/data/data.yml +1 -0
  120. data/fixtures/multiple-data-sources-app/data/two.yml +1 -0
  121. data/fixtures/multiple-data-sources-app/data0/one.yml +1 -0
  122. data/fixtures/multiple-data-sources-app/data1/data1.yml +1 -0
  123. data/fixtures/multiple-data-sources-app/data1/one.yml +1 -0
  124. data/fixtures/multiple-data-sources-app/data2/data2.yml +1 -0
  125. data/fixtures/multiple-data-sources-app/data2/two.yml +1 -0
  126. data/fixtures/multiple-data-sources-app/source/index.html.erb +10 -0
  127. data/fixtures/multiple-sources-app/config.rb +3 -0
  128. data/fixtures/multiple-sources-app/source/index.html.erb +1 -0
  129. data/fixtures/multiple-sources-app/source/override-in-two.html.erb +1 -0
  130. data/fixtures/multiple-sources-app/source0/override-in-one.html.erb +1 -0
  131. data/fixtures/multiple-sources-app/source1/index1.html.erb +1 -0
  132. data/fixtures/multiple-sources-app/source1/override-in-one.html.erb +1 -0
  133. data/fixtures/multiple-sources-app/source2/index2.html.erb +1 -0
  134. data/fixtures/multiple-sources-app/source2/override-in-two.html.erb +1 -0
  135. data/fixtures/padrino-helpers-app/source/former_padrino_test.html.erb +3 -3
  136. data/fixtures/page-classes-app/config.rb +2 -4
  137. data/fixtures/page-classes-app/source/2-starts-with-numeric-custom.html.erb +1 -1
  138. data/fixtures/page-helper-layout-block-app/config.rb +1 -1
  139. data/fixtures/partials-app/source/locals.html.erb +1 -1
  140. data/fixtures/partials-app/source/shared/{snippet.erb → _snippet.html.erb} +0 -0
  141. data/fixtures/partials-app/source/sub/index.html.erb +1 -1
  142. data/fixtures/passthrough-app/source/stylesheets/site.css.sass +5 -1
  143. data/fixtures/proxy-pages-app/config.rb +12 -15
  144. data/fixtures/relative-app/source/stylesheets/relative_assets.css.sass +1 -2
  145. data/fixtures/relative-assets-app/source/javascripts/application.js +8 -0
  146. data/fixtures/relative-assets-app/source/relative_image.html.erb +0 -1
  147. data/fixtures/relative-assets-app/source/stylesheets/relative_assets.css.sass +1 -2
  148. data/fixtures/scss-app/source/stylesheets/site_scss.css.scss +3 -1
  149. data/fixtures/stylus-preview-app/source/content.html.erb +4 -0
  150. data/fixtures/traversal-app/config.rb +4 -4
  151. data/fixtures/traversal-app/source/layout.erb +1 -1
  152. data/fixtures/v4-extension-callbacks/config.rb +21 -5
  153. data/fixtures/wildcard-app/config.rb +1 -1
  154. data/fixtures/wildcard-directory-index-app/config.rb +1 -1
  155. data/lib/middleman-core.rb +5 -2
  156. data/lib/middleman-core/application.rb +212 -131
  157. data/lib/middleman-core/builder.rb +255 -0
  158. data/lib/middleman-core/config_context.rb +103 -0
  159. data/lib/middleman-core/configuration.rb +15 -92
  160. data/lib/middleman-core/contracts.rb +149 -0
  161. data/lib/middleman-core/core_extensions.rb +86 -45
  162. data/lib/middleman-core/core_extensions/data.rb +82 -72
  163. data/lib/{middleman-more → middleman-core}/core_extensions/default_helpers.rb +34 -140
  164. data/lib/middleman-core/core_extensions/external_helpers.rb +23 -27
  165. data/lib/middleman-core/core_extensions/file_watcher.rb +59 -169
  166. data/lib/middleman-core/core_extensions/front_matter.rb +72 -131
  167. data/lib/middleman-core/core_extensions/i18n.rb +186 -0
  168. data/lib/middleman-core/core_extensions/rendering.rb +45 -533
  169. data/lib/middleman-core/core_extensions/routing.rb +53 -51
  170. data/lib/middleman-core/core_extensions/show_exceptions.rb +11 -18
  171. data/lib/middleman-core/extension.rb +183 -56
  172. data/lib/middleman-core/extension_manager.rb +80 -0
  173. data/lib/middleman-core/extensions.rb +96 -67
  174. data/lib/middleman-core/extensions/asset_hash.rb +92 -0
  175. data/lib/middleman-core/extensions/asset_host.rb +37 -0
  176. data/lib/{middleman-more → middleman-core}/extensions/automatic_alt_tags.rb +6 -5
  177. data/lib/{middleman-more → middleman-core}/extensions/automatic_image_sizes.rb +9 -13
  178. data/lib/middleman-core/extensions/cache_buster.rb +27 -0
  179. data/lib/{middleman-more → middleman-core}/extensions/directory_indexes.rb +9 -7
  180. data/lib/middleman-core/extensions/external_pipeline.rb +37 -0
  181. data/lib/{middleman-more → middleman-core}/extensions/gzip.rb +10 -3
  182. data/lib/{middleman-more → middleman-core}/extensions/lorem.rb +2 -2
  183. data/lib/middleman-core/extensions/minify_css.rb +86 -0
  184. data/lib/middleman-core/extensions/minify_javascript.rb +93 -0
  185. data/lib/middleman-core/extensions/relative_assets.rb +38 -0
  186. data/lib/middleman-core/file_renderer.rb +139 -0
  187. data/lib/middleman-core/load_paths.rb +21 -28
  188. data/lib/middleman-core/meta_pages.rb +9 -9
  189. data/lib/middleman-core/meta_pages/sitemap_resource.rb +3 -6
  190. data/lib/middleman-core/meta_pages/sitemap_tree.rb +1 -1
  191. data/lib/middleman-core/middleware/inline_url_rewriter.rb +96 -0
  192. data/lib/middleman-core/preview_server.rb +65 -196
  193. data/lib/middleman-core/profiling.rb +14 -15
  194. data/lib/middleman-core/rack.rb +138 -0
  195. data/lib/middleman-core/renderers/coffee_script.rb +10 -13
  196. data/lib/middleman-core/renderers/erb.rb +3 -15
  197. data/lib/middleman-core/renderers/haml.rb +33 -18
  198. data/lib/middleman-core/renderers/kramdown.rb +6 -4
  199. data/lib/middleman-core/renderers/less.rb +12 -18
  200. data/lib/middleman-core/renderers/liquid.rb +22 -18
  201. data/lib/middleman-core/renderers/markdown.rb +36 -49
  202. data/lib/middleman-core/renderers/redcarpet.rb +11 -4
  203. data/lib/middleman-core/renderers/sass.rb +36 -27
  204. data/lib/middleman-core/renderers/sass_functions.rb +116 -0
  205. data/lib/middleman-core/renderers/slim.rb +19 -26
  206. data/lib/middleman-core/renderers/stylus.rb +4 -14
  207. data/lib/middleman-core/sitemap/extensions/ignores.rb +35 -73
  208. data/lib/middleman-core/sitemap/extensions/on_disk.rb +29 -48
  209. data/lib/middleman-core/sitemap/extensions/proxies.rb +111 -133
  210. data/lib/middleman-core/sitemap/extensions/redirects.rb +68 -102
  211. data/lib/middleman-core/sitemap/extensions/request_endpoints.rb +59 -83
  212. data/lib/middleman-core/sitemap/extensions/traversal.rb +14 -15
  213. data/lib/middleman-core/sitemap/resource.rb +99 -71
  214. data/lib/middleman-core/sitemap/store.rb +79 -132
  215. data/lib/middleman-core/sources.rb +310 -0
  216. data/lib/middleman-core/sources/source_watcher.rb +268 -0
  217. data/lib/middleman-core/step_definitions.rb +2 -3
  218. data/lib/middleman-core/step_definitions/builder_steps.rb +15 -13
  219. data/lib/middleman-core/step_definitions/middleman_steps.rb +2 -18
  220. data/lib/middleman-core/step_definitions/server_steps.rb +43 -77
  221. data/lib/middleman-core/template_context.rb +181 -0
  222. data/lib/middleman-core/template_renderer.rb +213 -0
  223. data/lib/middleman-core/util.rb +319 -241
  224. data/lib/middleman-core/util/hash_with_indifferent_access.rb +103 -0
  225. data/lib/middleman-core/version.rb +1 -1
  226. data/lib/middleman/rack.rb +0 -1
  227. data/middleman-core.gemspec +36 -28
  228. data/spec/middleman-core/path_match_spec.rb +37 -0
  229. data/spec/spec_helper.rb +2 -25
  230. metadata +237 -454
  231. data/bin/middleman +0 -18
  232. data/cucumber.yml +0 -2
  233. data/features/asciidoc.feature +0 -155
  234. data/features/cli/preview_server-hook.feature +0 -17
  235. data/features/cli/preview_server.feature +0 -532
  236. data/features/compass-sprites.feature +0 -6
  237. data/features/console.feature +0 -10
  238. data/features/current_page_request_path_backwards.feature +0 -6
  239. data/features/fonts.feature +0 -15
  240. data/features/i18n_link_to.feature +0 -209
  241. data/features/image_srcset_paths.feature +0 -7
  242. data/features/implied_extensions.feature +0 -69
  243. data/features/instance_vars.feature +0 -9
  244. data/features/javascript-testing.feature +0 -18
  245. data/features/more-implied_extensions.feature +0 -44
  246. data/features/partials_dir.feature +0 -30
  247. data/features/queryable.feature +0 -35
  248. data/features/request_params.feature +0 -6
  249. data/features/static_server.feature +0 -6
  250. data/features/step_definitions/page_layout_steps.rb +0 -15
  251. data/features/step_definitions/queryable_steps.rb +0 -212
  252. data/features/support/preserve_mime_types.rb +0 -7
  253. data/features/v3_extensions.feature +0 -20
  254. data/features/working_directory.feature +0 -33
  255. data/fixtures/asciidoc-app/source/_include.adoc +0 -1
  256. data/fixtures/asciidoc-app/source/code.adoc +0 -3
  257. data/fixtures/asciidoc-app/source/custom-attribute.adoc +0 -3
  258. data/fixtures/asciidoc-app/source/gallery.adoc +0 -1
  259. data/fixtures/asciidoc-app/source/hello-no-layout.adoc +0 -2
  260. data/fixtures/asciidoc-app/source/hello-with-front-matter.adoc +0 -5
  261. data/fixtures/asciidoc-app/source/hello-with-layout.adoc +0 -2
  262. data/fixtures/asciidoc-app/source/hello-with-title.adoc +0 -5
  263. data/fixtures/asciidoc-app/source/hello.adoc +0 -4
  264. data/fixtures/asciidoc-app/source/images/tiger.gif +0 -0
  265. data/fixtures/asciidoc-app/source/layouts/default.erb +0 -9
  266. data/fixtures/asciidoc-app/source/master.adoc +0 -3
  267. data/fixtures/asset-hash-app/source/api.json.erb +0 -1
  268. data/fixtures/asset-hash-app/source/fonts/fontawesome-webfont.woff +0 -0
  269. data/fixtures/asset-hash-app/source/fonts/fontawesome-webfont.woff2 +0 -0
  270. data/fixtures/asset-hash-app/source/images/200px.jpg +0 -0
  271. data/fixtures/asset-hash-app/source/images/300px.jpg +0 -0
  272. data/fixtures/asset-hash-app/source/slim.html.slim +0 -8
  273. data/fixtures/asset-hash-app/source/stylesheets/uses_fonts.css +0 -4
  274. data/fixtures/asset-hash-app/source/subdir/api.json.erb +0 -1
  275. data/fixtures/chained-app/source/test.erb.combobreaker.str.erb +0 -8
  276. data/fixtures/clean-app/config-hidden-dir-after.rb +0 -5
  277. data/fixtures/clean-app/config-hidden-dir-before.rb +0 -1
  278. data/fixtures/compass-sprites-app/source/images/icon/arrow_down.png +0 -0
  279. data/fixtures/compass-sprites-app/source/images/icon/arrow_left.png +0 -0
  280. data/fixtures/compass-sprites-app/source/images/icon/arrow_right.png +0 -0
  281. data/fixtures/compass-sprites-app/source/images/icon/arrow_up.png +0 -0
  282. data/fixtures/compass-sprites-app/source/stylesheets/site.css.scss +0 -3
  283. data/fixtures/content-type-app/source/index.php +0 -1
  284. data/fixtures/current-page-app/config.rb +0 -3
  285. data/fixtures/current-page-app/source/request-path.html.erb +0 -1
  286. data/fixtures/default-partials-dir-app/source/_partial.html.erb +0 -1
  287. data/fixtures/default-partials-dir-app/source/index.html.erb +0 -2
  288. data/fixtures/fonts-app/source/stylesheets/fonts.css.sass +0 -5
  289. data/fixtures/frontmatter-app/source/front-matter-auto.erb +0 -6
  290. data/fixtures/frontmatter-app/source/front-matter-pandoc.html.md.erb +0 -13
  291. data/fixtures/frontmatter-app/source/json-front-matter-auto.erb +0 -6
  292. data/fixtures/frontmatter-neighbor-app/source/front-matter-auto.erb +0 -1
  293. data/fixtures/frontmatter-neighbor-app/source/front-matter-auto.erb.frontmatter +0 -4
  294. data/fixtures/frontmatter-neighbor-app/source/json-front-matter-auto.erb +0 -1
  295. data/fixtures/frontmatter-neighbor-app/source/json-front-matter-auto.erb.frontmatter +0 -4
  296. data/fixtures/image-srcset-paths-app/image-srcset-paths.html.erb +0 -1
  297. data/fixtures/image-srcset-paths-app/images/blank.gif +0 -0
  298. data/fixtures/implied-extensions-app/source/index.erb +0 -1
  299. data/fixtures/instance-vars-app/config.rb +0 -7
  300. data/fixtures/instance-vars-app/source/content.html.erb +0 -2
  301. data/fixtures/instance-vars-app/source/layout.erb +0 -1
  302. data/fixtures/javascript-app/source/index.html +0 -17
  303. data/fixtures/minify-css-app/source/inline-css.php +0 -8
  304. data/fixtures/minify-css-app/source/stylesheets/site.xcss.sass +0 -5
  305. data/fixtures/minify-js-app/source/inline-js.php +0 -22
  306. data/fixtures/minify-js-app/source/javascripts/js_test.xjs +0 -8
  307. data/fixtures/more-implied-extensions-app/source/javascripts/app.coffee +0 -1
  308. data/fixtures/more-implied-extensions-app/source/layouts/layout.erb +0 -3
  309. data/fixtures/more-implied-extensions-app/source/stylesheets/style.scss +0 -3
  310. data/fixtures/more-implied-extensions-app/source/stylesheets/style2.sass +0 -3
  311. data/fixtures/more-implied-extensions-app/source/test.haml +0 -4
  312. data/fixtures/more-implied-extensions-app/source/test2.markdown +0 -3
  313. data/fixtures/more-implied-extensions-app/source/test3.slim +0 -3
  314. data/fixtures/more-implied-extensions-app/source/test4.liquid +0 -1
  315. data/fixtures/partials-dir-app/source/index.html.erb +0 -2
  316. data/fixtures/partials-dir-app/source/nested/partials/_partial.html.erb +0 -1
  317. data/fixtures/partials-dir-app/source/partials/_partial.html.erb +0 -1
  318. data/fixtures/plain-app/index.html +0 -1
  319. data/fixtures/preview-server-app/bin/dns_server.rb +0 -33
  320. data/fixtures/preview-server-app/config-complications.rb +0 -11
  321. data/fixtures/preview-server-app/config.rb +0 -11
  322. data/fixtures/preview-server-app/source/index.html.erb +0 -1
  323. data/fixtures/preview-server-app/source/layout.erb +0 -9
  324. data/fixtures/preview-server-app/source/layouts/custom.erb +0 -8
  325. data/fixtures/preview-server-app/source/real.html +0 -1
  326. data/fixtures/preview-server-app/source/real/index.html.erb +0 -5
  327. data/fixtures/preview-server-app/source/should_be_ignored.html +0 -1
  328. data/fixtures/preview-server-app/source/should_be_ignored2.html +0 -1
  329. data/fixtures/preview-server-app/source/should_be_ignored3.html +0 -1
  330. data/fixtures/preview-server-app/source/static.html +0 -1
  331. data/fixtures/preview-server-hook-app/config.rb +0 -19
  332. data/fixtures/preview-server-hook-app/source/index.html.erb +0 -9
  333. data/fixtures/proxy-pages-app/source/real/index-ivars.html.erb +0 -6
  334. data/fixtures/relative-assets-app/source/absolute_image_relative_css.html.erb +0 -9
  335. data/fixtures/relative-assets-app/source/javascripts/app.js +0 -3
  336. data/fixtures/relative-assets-app/source/relative_image_absolute_css.html.erb +0 -9
  337. data/fixtures/request-app/source/index.html.erb +0 -3
  338. data/fixtures/stylus-preview-app/source/layout.erb +0 -1
  339. data/lib/middleman-core/cli.rb +0 -88
  340. data/lib/middleman-core/cli/build.rb +0 -300
  341. data/lib/middleman-core/cli/bundler.rb +0 -39
  342. data/lib/middleman-core/cli/console.rb +0 -52
  343. data/lib/middleman-core/cli/extension.rb +0 -47
  344. data/lib/middleman-core/cli/init.rb +0 -71
  345. data/lib/middleman-core/cli/server.rb +0 -99
  346. data/lib/middleman-core/core_extensions/data/file_loader.rb +0 -71
  347. data/lib/middleman-core/core_extensions/extensions.rb +0 -197
  348. data/lib/middleman-core/core_extensions/request.rb +0 -312
  349. data/lib/middleman-core/dns_resolver.rb +0 -73
  350. data/lib/middleman-core/dns_resolver/basic_network_resolver.rb +0 -52
  351. data/lib/middleman-core/dns_resolver/hosts_resolver.rb +0 -63
  352. data/lib/middleman-core/dns_resolver/local_link_resolver.rb +0 -44
  353. data/lib/middleman-core/dns_resolver/network_resolver.rb +0 -42
  354. data/lib/middleman-core/preview_server/checks.rb +0 -81
  355. data/lib/middleman-core/preview_server/information.rb +0 -273
  356. data/lib/middleman-core/preview_server/network_interface_inventory.rb +0 -65
  357. data/lib/middleman-core/preview_server/server_hostname.rb +0 -39
  358. data/lib/middleman-core/preview_server/server_information.rb +0 -153
  359. data/lib/middleman-core/preview_server/server_information_callback_proxy.rb +0 -35
  360. data/lib/middleman-core/preview_server/server_information_validator.rb +0 -18
  361. data/lib/middleman-core/preview_server/server_ip_address.rb +0 -55
  362. data/lib/middleman-core/preview_server/server_url.rb +0 -63
  363. data/lib/middleman-core/preview_server/tcp_port_prober.rb +0 -29
  364. data/lib/middleman-core/renderers/asciidoc.rb +0 -58
  365. data/lib/middleman-core/sitemap.rb +0 -76
  366. data/lib/middleman-core/sitemap/extensions/content_type.rb +0 -16
  367. data/lib/middleman-core/sitemap/queryable.rb +0 -151
  368. data/lib/middleman-core/step_definitions/commandline_steps.rb +0 -88
  369. data/lib/middleman-core/templates.rb +0 -101
  370. data/lib/middleman-core/templates/default.rb +0 -37
  371. data/lib/middleman-core/templates/default/source/images/background.png +0 -0
  372. data/lib/middleman-core/templates/default/source/images/middleman.png +0 -0
  373. data/lib/middleman-core/templates/default/source/index.html.erb +0 -10
  374. data/lib/middleman-core/templates/default/source/javascripts/all.js +0 -1
  375. data/lib/middleman-core/templates/default/source/layouts/layout.erb +0 -19
  376. data/lib/middleman-core/templates/default/source/stylesheets/all.css +0 -55
  377. data/lib/middleman-core/templates/default/source/stylesheets/normalize.css +0 -375
  378. data/lib/middleman-core/templates/empty.rb +0 -22
  379. data/lib/middleman-core/templates/empty/Gemfile.tt +0 -6
  380. data/lib/middleman-core/templates/extension/Gemfile +0 -18
  381. data/lib/middleman-core/templates/extension/Rakefile +0 -14
  382. data/lib/middleman-core/templates/extension/features/support/env.rb +0 -4
  383. data/lib/middleman-core/templates/extension/gemspec +0 -24
  384. data/lib/middleman-core/templates/extension/gitignore +0 -5
  385. data/lib/middleman-core/templates/extension/lib/lib.rb +0 -38
  386. data/lib/middleman-core/templates/extension/lib/middleman_extension.rb +0 -1
  387. data/lib/middleman-core/templates/html5.rb +0 -29
  388. data/lib/middleman-core/templates/html5/source/.htaccess +0 -542
  389. data/lib/middleman-core/templates/html5/source/404.html +0 -157
  390. data/lib/middleman-core/templates/html5/source/LICENSE.md +0 -19
  391. data/lib/middleman-core/templates/html5/source/README.md +0 -63
  392. data/lib/middleman-core/templates/html5/source/apple-touch-icon-114x114-precomposed.png +0 -0
  393. data/lib/middleman-core/templates/html5/source/apple-touch-icon-144x144-precomposed.png +0 -0
  394. data/lib/middleman-core/templates/html5/source/apple-touch-icon-57x57-precomposed.png +0 -0
  395. data/lib/middleman-core/templates/html5/source/apple-touch-icon-72x72-precomposed.png +0 -0
  396. data/lib/middleman-core/templates/html5/source/apple-touch-icon-precomposed.png +0 -0
  397. data/lib/middleman-core/templates/html5/source/apple-touch-icon.png +0 -0
  398. data/lib/middleman-core/templates/html5/source/crossdomain.xml +0 -15
  399. data/lib/middleman-core/templates/html5/source/css/main.css +0 -298
  400. data/lib/middleman-core/templates/html5/source/css/normalize.css +0 -504
  401. data/lib/middleman-core/templates/html5/source/favicon.ico +0 -0
  402. data/lib/middleman-core/templates/html5/source/humans.txt +0 -15
  403. data/lib/middleman-core/templates/html5/source/index.html.erb +0 -6
  404. data/lib/middleman-core/templates/html5/source/js/main.js +0 -1
  405. data/lib/middleman-core/templates/html5/source/js/plugins.js +0 -14
  406. data/lib/middleman-core/templates/html5/source/js/vendor/jquery-1.8.0.min.js +0 -2
  407. data/lib/middleman-core/templates/html5/source/js/vendor/modernizr-2.6.1.min.js +0 -4
  408. data/lib/middleman-core/templates/html5/source/layouts/layout.erb +0 -40
  409. data/lib/middleman-core/templates/html5/source/robots.txt +0 -3
  410. data/lib/middleman-core/templates/local.rb +0 -27
  411. data/lib/middleman-core/templates/mobile.rb +0 -24
  412. data/lib/middleman-core/templates/mobile/source/404.html +0 -37
  413. data/lib/middleman-core/templates/mobile/source/README.markdown +0 -21
  414. data/lib/middleman-core/templates/mobile/source/crossdomain.xml +0 -25
  415. data/lib/middleman-core/templates/mobile/source/css/style.css +0 -315
  416. data/lib/middleman-core/templates/mobile/source/humans.txt +0 -43
  417. data/lib/middleman-core/templates/mobile/source/img/h/apple-touch-icon.png +0 -0
  418. data/lib/middleman-core/templates/mobile/source/img/h/splash.png +0 -0
  419. data/lib/middleman-core/templates/mobile/source/img/l/apple-touch-icon-precomposed.png +0 -0
  420. data/lib/middleman-core/templates/mobile/source/img/l/apple-touch-icon.png +0 -0
  421. data/lib/middleman-core/templates/mobile/source/img/l/splash.png +0 -0
  422. data/lib/middleman-core/templates/mobile/source/img/m/apple-touch-icon.png +0 -0
  423. data/lib/middleman-core/templates/mobile/source/index.html +0 -92
  424. data/lib/middleman-core/templates/mobile/source/js/libs/modernizr-custom.js +0 -14
  425. data/lib/middleman-core/templates/mobile/source/js/libs/respond.min.js +0 -7
  426. data/lib/middleman-core/templates/mobile/source/js/mylibs/helper.js +0 -171
  427. data/lib/middleman-core/templates/mobile/source/js/plugins.js +0 -20
  428. data/lib/middleman-core/templates/mobile/source/robots.txt +0 -4
  429. data/lib/middleman-core/templates/mobile/source/sitemap.xml +0 -9
  430. data/lib/middleman-core/templates/mobile/source/test/index.html +0 -31
  431. data/lib/middleman-core/templates/mobile/source/test/qunit/qunit.css +0 -148
  432. data/lib/middleman-core/templates/mobile/source/test/qunit/qunit.js +0 -1265
  433. data/lib/middleman-core/templates/mobile/source/test/tests.js +0 -21
  434. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/Readme.PDF +0 -0
  435. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/aspx/aspx1.snippet +0 -31
  436. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/aspx/aspx2.snippet +0 -2
  437. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/aspx/ga.aspx +0 -195
  438. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/aspx/sample.aspx +0 -44
  439. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/jsp/ga.jsp +0 -225
  440. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/jsp/jsp1.snippet +0 -35
  441. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/jsp/jsp2.snippet +0 -2
  442. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/jsp/sample.jsp +0 -51
  443. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/php/ga.php +0 -176
  444. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/php/php1.snippet +0 -30
  445. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/php/php2.snippet +0 -4
  446. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/php/sample.php +0 -44
  447. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/pl/ga.pl +0 -195
  448. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/pl/perl1.snippet +0 -27
  449. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/pl/perl2.snippet +0 -1
  450. data/lib/middleman-core/templates/mobile/source/tools/googleanalyticsformobile/pl/sample.pl +0 -38
  451. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/COPYING +0 -202
  452. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/bookmark_bubble.js +0 -559
  453. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/example/example.html +0 -43
  454. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/example/example.js +0 -57
  455. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/images/arrow.png +0 -0
  456. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/images/close.png +0 -0
  457. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/images/generate_base64_images +0 -33
  458. data/lib/middleman-core/templates/mobile/source/tools/mobile-bookmark-bubble/images/icon_calendar.png +0 -0
  459. data/lib/middleman-core/templates/mobile/source/tools/wspl/README +0 -27
  460. data/lib/middleman-core/templates/mobile/source/tools/wspl/databasefactory.js +0 -45
  461. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbworker.js +0 -324
  462. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbworker_test.html +0 -393
  463. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbworkerstarter.js +0 -32
  464. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapper_gears.js +0 -595
  465. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapper_gears_test.html +0 -404
  466. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapper_html5.js +0 -203
  467. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapper_html5_test.html +0 -468
  468. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapperapi.js +0 -202
  469. data/lib/middleman-core/templates/mobile/source/tools/wspl/dbwrapperapi_test.html +0 -51
  470. data/lib/middleman-core/templates/mobile/source/tools/wspl/gears_resultset.js +0 -71
  471. data/lib/middleman-core/templates/mobile/source/tools/wspl/gears_resultset_test.html +0 -86
  472. data/lib/middleman-core/templates/mobile/source/tools/wspl/gears_transaction.js +0 -196
  473. data/lib/middleman-core/templates/mobile/source/tools/wspl/gears_transaction_test.html +0 -221
  474. data/lib/middleman-core/templates/mobile/source/tools/wspl/gearsutils.js +0 -94
  475. data/lib/middleman-core/templates/mobile/source/tools/wspl/gearsutils_test.html +0 -84
  476. data/lib/middleman-core/templates/mobile/source/tools/wspl/global_functions.js +0 -72
  477. data/lib/middleman-core/templates/mobile/source/tools/wspl/simplenotes/index.html +0 -347
  478. data/lib/middleman-core/templates/mobile/source/tools/wspl/simplenotes/simplenotes.js +0 -503
  479. data/lib/middleman-core/templates/mobile/source/tools/wspl/simplenotes/styles.css +0 -66
  480. data/lib/middleman-core/templates/mobile/source/tools/wspl/simplenotes/template.js +0 -75
  481. data/lib/middleman-core/templates/shared/Gemfile.tt +0 -14
  482. data/lib/middleman-core/templates/shared/config.ru +0 -3
  483. data/lib/middleman-core/templates/shared/config.tt +0 -87
  484. data/lib/middleman-core/templates/shared/gitignore +0 -21
  485. data/lib/middleman-more/core_extensions/compass.rb +0 -75
  486. data/lib/middleman-more/core_extensions/i18n.rb +0 -312
  487. data/lib/middleman-more/extensions/asset_hash.rb +0 -128
  488. data/lib/middleman-more/extensions/asset_host.rb +0 -50
  489. data/lib/middleman-more/extensions/cache_buster.rb +0 -55
  490. data/lib/middleman-more/extensions/minify_css.rb +0 -112
  491. data/lib/middleman-more/extensions/minify_javascript.rb +0 -120
  492. data/lib/middleman-more/extensions/relative_assets.rb +0 -24
  493. data/lib/middleman-more/templates/smacss.rb +0 -29
  494. data/lib/middleman-more/templates/smacss/source/_footer.haml +0 -1
  495. data/lib/middleman-more/templates/smacss/source/index.html.haml +0 -1
  496. data/lib/middleman-more/templates/smacss/source/layouts/layout.haml +0 -13
  497. data/lib/middleman-more/templates/smacss/source/stylesheets/base/README.markdown +0 -11
  498. data/lib/middleman-more/templates/smacss/source/stylesheets/base/base.scss +0 -1
  499. data/lib/middleman-more/templates/smacss/source/stylesheets/base/normalize.scss +0 -375
  500. data/lib/middleman-more/templates/smacss/source/stylesheets/layout/README.markdown +0 -9
  501. data/lib/middleman-more/templates/smacss/source/stylesheets/modules/README.markdown +0 -9
  502. data/lib/middleman-more/templates/smacss/source/stylesheets/states/README.markdown +0 -12
  503. data/lib/middleman-more/templates/smacss/source/stylesheets/style.css.scss +0 -12
  504. data/lib/vendored-middleman-deps/fastimage.rb +0 -287
  505. data/spec/middleman-core/dns_resolver_spec.rb +0 -118
  506. data/spec/middleman-core/preview_server/server_hostname_spec.rb +0 -39
  507. data/spec/middleman-core/preview_server/server_ip_address_spec.rb +0 -43
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 33038072c8408f70a3c27303e4a97b4bafd70bf9
4
- data.tar.gz: b19a56c81c79763fb1521360c02f4f674a2bc16e
3
+ metadata.gz: e3cdf5b5b1dd7eb3048ca5c047e4f322d65f7d75
4
+ data.tar.gz: abc48d95a84f5ea6f0956720d14cd89a2f8afb6b
5
5
  SHA512:
6
- metadata.gz: 7baf9acd082921715a38094c0ef1926348a21d69029648c7e4c96f258ddf68a43aa91f1af989df68486da16d8f9f4a262b8e9412bd809b80d9515dec74b236c0
7
- data.tar.gz: 96d1292ce7c5eb0fabb1f53c48229b9be9dd2afaa7b871685ee6f2dd8543fcc6eba100b46632989f01ae57d9d5c980b73b05c05e0b3dd754ad4b552421cc9053
6
+ metadata.gz: aec26562a300ff23b4a95b99fa81d7b066813a716b0388ab268437844e0ddef14d96646e897d4705f6b70b011497937b7874b99eb37b910a691439b6840f82a6
7
+ data.tar.gz: 76178784355c104abe232162ae142c6269d496eed682b0d4485e55f6102d91798524b22570a9a26e4871858e3c05375f44b1a43f84122ab2e230d6e37a276cc7
File without changes
data/.yardopts CHANGED
@@ -1,10 +1,6 @@
1
1
  lib/**/*.rb
2
2
  --exclude lib/vendored-middleman-deps/
3
3
  --exclude lib/middleman-core/step_definitions
4
- --exclude lib/middleman-core/templates/default/
5
- --exclude lib/middleman-core/templates/html5/
6
- --exclude lib/middleman-core/templates/mobile/
7
- --exclude lib/middleman-core/templates/shared/
8
- --exclude lib/middleman-core/templates/extension/
9
4
  --no-private
10
- --hide-void-return
5
+ --hide-void-return
6
+ --markup=markdown
data/Rakefile CHANGED
@@ -1 +1,5 @@
1
- require_relative '../gem_rake_helper'
1
+ # coding:utf-8
2
+ RAKE_ROOT = __FILE__
3
+ GEM_NAME = ENV['NAME'] || 'middleman-core'
4
+ require 'rubygems'
5
+ require File.expand_path(File.dirname(__FILE__) + '/../gem_rake_helper')
@@ -1,5 +1,5 @@
1
1
  Feature: Assets get a file hash appended to their and references to them are updated
2
- Scenario: Hashed-asset files are produced, and HTML, CSS, JSON and JavaScript gets rewritten to reference the new files
2
+ Scenario: Hashed-asset files are produced, and HTML, CSS, and JavaScript gets rewritten to reference the new files
3
3
  Given a successfully built app at "asset-hash-app"
4
4
  When I cd to "build"
5
5
  Then the following files should exist:
@@ -8,16 +8,12 @@ Feature: Assets get a file hash appended to their and references to them are upd
8
8
  | favicon.ico |
9
9
  | images/100px-1242c368.png |
10
10
  | images/100px-5fd6fb90.jpg |
11
- | images/200px-c11eb203.jpg |
12
- | images/300px-59adce76.jpg |
13
11
  | images/100px-5fd6fb90.gif |
14
12
  | javascripts/application-1d8d5276.js |
15
- | stylesheets/site-50eaa978.css |
13
+ | stylesheets/site-7474cadd.css |
16
14
  | index.html |
17
15
  | subdir/index.html |
18
16
  | other/index.html |
19
- | api.json |
20
- | subdir/api.json |
21
17
  And the following files should not exist:
22
18
  | images/100px.png |
23
19
  | images/100px.jpg |
@@ -26,82 +22,54 @@ Feature: Assets get a file hash appended to their and references to them are upd
26
22
  | stylesheets/site.css |
27
23
 
28
24
  And the file "javascripts/application-1d8d5276.js" should contain "img.src = '/images/100px-5fd6fb90.jpg'"
29
- And the file "stylesheets/site-50eaa978.css" should contain "background-image: url('../images/100px-5fd6fb90.jpg')"
25
+ And the file "stylesheets/site-7474cadd.css" should contain:
26
+ """
27
+ background-image: url("../images/100px-5fd6fb90.jpg")
28
+ """
30
29
  And the file "index.html" should contain 'href="apple-touch-icon.png"'
31
- And the file "index.html" should contain 'href="stylesheets/site-50eaa978.css"'
30
+ And the file "index.html" should contain 'href="stylesheets/site-7474cadd.css"'
32
31
  And the file "index.html" should contain 'src="javascripts/application-1d8d5276.js"'
33
32
  And the file "index.html" should contain 'src="images/100px-5fd6fb90.jpg"'
34
- And the file "index.html" should contain 'srcset="images/100px-5fd6fb90.jpg 1x, images/200px-c11eb203.jpg 2x, images/300px-59adce76.jpg 3x"'
35
- And the file "index.html" should contain 'src="images/100px-5fd6fb90.gif"'
36
- And the file "index.html" should contain 'src="images/100px-1242c368.png"'
37
- And the file "subdir/index.html" should contain 'href="../stylesheets/site-50eaa978.css"'
33
+ And the file "subdir/index.html" should contain 'href="../stylesheets/site-7474cadd.css"'
38
34
  And the file "subdir/index.html" should contain 'src="../javascripts/application-1d8d5276.js"'
39
35
  And the file "subdir/index.html" should contain 'src="../images/100px-5fd6fb90.jpg"'
40
- And the file "other/index.html" should contain 'href="../stylesheets/site-50eaa978.css"'
36
+ And the file "other/index.html" should contain 'href="../stylesheets/site-7474cadd.css"'
41
37
  And the file "other/index.html" should contain 'src="../javascripts/application-1d8d5276.js"'
42
38
  And the file "other/index.html" should contain 'src="../images/100px-5fd6fb90.jpg"'
43
- And the file "api.json" should contain 'images/100px-5fd6fb90.gif'
44
- And the file "api.json" should contain 'images/100px-5fd6fb90.jpg'
45
- And the file "api.json" should contain 'images/100px-1242c368.png'
46
- And the file "subdir/api.json" should contain 'images/100px-5fd6fb90.gif'
47
- And the file "subdir/api.json" should contain 'images/100px-5fd6fb90.jpg'
48
- And the file "subdir/api.json" should contain 'images/100px-1242c368.png'
49
-
50
- Scenario: Hashed fonts assets work with woff and woff2 extension
51
- Given a successfully built app at "asset-hash-app"
52
- When I cd to "build"
53
- Then the following files should exist:
54
- | fonts/fontawesome-webfont-56ce13e7.woff |
55
- | fonts/fontawesome-webfont-10752316.woff2 |
56
- And the file "stylesheets/uses_fonts-88aa3e2b.css" should contain "src: url('../fonts/fontawesome-webfont-10752316.woff2')"
57
- And the file "stylesheets/uses_fonts-88aa3e2b.css" should contain "url('../fonts/fontawesome-webfont-56ce13e7.woff')"
58
39
 
59
40
  Scenario: Hashed assets work in preview server
60
41
  Given the Server is running at "asset-hash-app"
61
42
  When I go to "/"
62
43
  Then I should see 'href="apple-touch-icon.png"'
63
- And I should see 'href="stylesheets/site-50eaa978.css"'
44
+ And I should see 'href="stylesheets/site-7474cadd.css"'
64
45
  And I should see 'src="javascripts/application-1d8d5276.js"'
65
46
  And I should see 'src="images/100px-5fd6fb90.jpg"'
66
- And I should see 'srcset="images/100px-5fd6fb90.jpg 1x, images/200px-c11eb203.jpg 2x, images/300px-59adce76.jpg 3x"'
67
47
  When I go to "/subdir/"
68
- Then I should see 'href="../stylesheets/site-50eaa978.css"'
48
+ Then I should see 'href="../stylesheets/site-7474cadd.css"'
69
49
  And I should see 'src="../javascripts/application-1d8d5276.js"'
70
50
  And I should see 'src="../images/100px-5fd6fb90.jpg"'
71
51
  When I go to "/other/"
72
- Then I should see 'href="../stylesheets/site-50eaa978.css"'
52
+ Then I should see 'href="../stylesheets/site-7474cadd.css"'
73
53
  And I should see 'src="../javascripts/application-1d8d5276.js"'
74
54
  And I should see 'src="../images/100px-5fd6fb90.jpg"'
75
55
  When I go to "/javascripts/application-1d8d5276.js"
76
56
  Then I should see "img.src = '/images/100px-5fd6fb90.jpg'"
77
- When I go to "/stylesheets/site-50eaa978.css"
78
- Then I should see "background-image: url('../images/100px-5fd6fb90.jpg')"
79
- When I go to "/api.json"
80
- Then I should see 'images/100px-5fd6fb90.gif'
81
- And I should see 'images/100px-5fd6fb90.jpg'
82
- And I should see 'images/100px-1242c368.png'
83
- When I go to "/subdir/api.json"
84
- Then I should see 'images/100px-5fd6fb90.gif'
85
- And I should see 'images/100px-5fd6fb90.jpg'
86
- And I should see 'images/100px-1242c368.png'
87
-
88
- Scenario: Hashed assets work with Slim
89
- Given the Server is running at "asset-hash-app"
90
- When I go to "/slim.html"
91
- And I should see 'src="images/300px-59adce76.jpg"'
92
- And I should see 'src="images/100px-5fd6fb90.jpg"'
93
- And I should see 'srcset="images/100px-5fd6fb90.jpg 1x, images/200px-c11eb203.jpg 2x, images/300px-59adce76.jpg 3x"'
57
+ When I go to "/stylesheets/site-7474cadd.css"
58
+ Then I should see:
59
+ """
60
+ background-image: url("../images/100px-5fd6fb90.jpg")
61
+ """
94
62
 
95
63
  Scenario: Enabling an asset host still produces hashed files and references
96
64
  Given the Server is running at "asset-hash-host-app"
97
65
  When I go to "/"
98
- Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
66
+ Then I should see 'href="http://middlemanapp.com/stylesheets/site-1fdf4fb5.css"'
99
67
  And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
100
68
  When I go to "/subdir/"
101
- Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
69
+ Then I should see 'href="http://middlemanapp.com/stylesheets/site-1fdf4fb5.css"'
102
70
  And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
103
71
  When I go to "/other/"
104
- Then I should see 'href="http://middlemanapp.com/stylesheets/site-54baaf3a.css"'
72
+ Then I should see 'href="http://middlemanapp.com/stylesheets/site-1fdf4fb5.css"'
105
73
  And I should see 'src="http://middlemanapp.com/images/100px-5fd6fb90.jpg"'
106
74
  # Asset helpers don't appear to work from Compass right now
107
75
  # When I go to "/stylesheets/site-e5a31a3e.css"
@@ -132,22 +100,27 @@ Feature: Assets get a file hash appended to their and references to them are upd
132
100
  activate :relative_assets
133
101
  activate :directory_indexes
134
102
  require 'lib/middleware.rb'
135
- use Middleware
103
+ use ::Middleware
136
104
  """
137
105
  Given the Server is running at "asset-hash-app"
138
106
  When I go to "/"
139
- Then I should see 'href="stylesheets/site-5770af52.css'
140
- When I go to "stylesheets/site-5770af52.css"
107
+ Then I should see 'href="stylesheets/site-ac2166fd.css'
108
+ When I go to "stylesheets/site-ac2166fd.css"
141
109
  Then I should see 'background-image'
142
110
  Then I should see 'Added by Rack filter'
143
- When I go to "stylesheets/site-50eaa978.css"
111
+ When I go to "stylesheets/site-7474cadd.css"
144
112
  Then I should see 'Not Found'
145
113
 
146
114
  Scenario: Hashed-asset files are not produced for ignored paths
147
115
  Given a fixture app "asset-hash-app"
148
116
  And a file named "config.rb" with:
149
117
  """
150
- activate :asset_hash, :ignore => [%r(javascripts/*), 'images/*']
118
+ is_stylesheet = proc { |path| path.start_with? 'stylesheets' }
119
+ activate :asset_hash, ignore: [
120
+ %r(javascripts/*),
121
+ 'images/*',
122
+ is_stylesheet
123
+ ]
151
124
  activate :relative_assets
152
125
  activate :directory_indexes
153
126
  """
@@ -161,18 +134,16 @@ Feature: Assets get a file hash appended to their and references to them are upd
161
134
  | images/100px.jpg |
162
135
  | images/100px.gif |
163
136
  | javascripts/application.js |
164
- | stylesheets/site-50eaa978.css |
137
+ | stylesheets/site.css |
165
138
  | index.html |
166
139
  | subdir/index.html |
167
140
  | other/index.html |
168
- | api.json |
169
- | subdir/api.json |
170
141
  And the following files should not exist:
171
142
  | images/100px-1242c368.png |
172
143
  | images/100px-5fd6fb90.jpg |
173
144
  | images/100px-5fd6fb90.gif |
174
145
  | javascripts/application-1d8d5276.js |
175
- | stylesheets/site.css |
146
+ | stylesheets/site-7474cadd.css |
176
147
 
177
148
  # @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
178
149
  # Scenario: Enabling an asset host and referencing assets in CSS with URL fragments are rewritten correctly
@@ -5,8 +5,7 @@ Feature: Alternate between multiple asset hosts
5
5
  Given a fixture app "asset-host-app"
6
6
  And a file named "config.rb" with:
7
7
  """
8
- activate :asset_host
9
- set :asset_host, "http://assets1.example.com"
8
+ activate :asset_host, host: "http://assets1.example.com"
10
9
  """
11
10
  And the Server is running
12
11
  When I go to "/asset_host.html"
@@ -14,43 +13,32 @@ Feature: Alternate between multiple asset hosts
14
13
  When I go to "/stylesheets/asset_host.css"
15
14
  Then I should see "http://assets1"
16
15
 
17
- Scenario: Set proc host globally
18
- Given a fixture app "asset-host-app"
19
- And a file named "config.rb" with:
20
- """
21
- activate :asset_host
22
- set :asset_host do |asset|
23
- "http://assets%d.example.com" % (asset.hash % 4)
24
- end
25
- """
26
- And the Server is running
27
- When I go to "/asset_host.html"
28
- Then I should see "http://assets"
29
- When I go to "/stylesheets/asset_host.css"
30
- Then I should see "http://assets"
31
-
32
16
  Scenario: Set single host with inline-option
33
17
  Given a fixture app "asset-host-app"
34
18
  And a file named "config.rb" with:
35
19
  """
36
- activate :asset_host, :host => "http://assets1.example.com"
20
+ activate :asset_host, host: "http://assets1.example.com"
37
21
  """
38
22
  And the Server is running
39
23
  When I go to "/asset_host.html"
40
- Then I should see "http://assets1"
24
+ Then I should see content matching %r{http://assets1.example.com/}
25
+ Then I should not see content matching %r{http://assets1.example.com//}
41
26
  When I go to "/stylesheets/asset_host.css"
42
- Then I should see "http://assets1"
27
+ Then I should see content matching %r{http://assets1.example.com/}
28
+ Then I should not see content matching %r{http://assets1.example.com//}
43
29
 
44
30
  Scenario: Set proc host with inline-option
45
31
  Given a fixture app "asset-host-app"
46
32
  And a file named "config.rb" with:
47
33
  """
48
- activate :asset_host, :host => Proc.new { |asset|
34
+ activate :asset_host, host: Proc.new { |asset|
49
35
  "http://assets%d.example.com" % (asset.hash % 4)
50
36
  }
51
37
  """
52
38
  And the Server is running
53
39
  When I go to "/asset_host.html"
54
- Then I should see "http://assets"
40
+ Then I should see content matching %r{http://assets1.example.com/}
41
+ Then I should not see content matching %r{http://assets1.example.com//}
55
42
  When I go to "/stylesheets/asset_host.css"
56
- Then I should see "http://assets"
43
+ Then I should see content matching %r{http://assets1.example.com/}
44
+ Then I should not see content matching %r{http://assets1.example.com//}
@@ -9,6 +9,7 @@ Feature: Builder
9
9
  | static.html |
10
10
  | services/index.html |
11
11
  | stylesheets/static.css |
12
+ | spaces in file.html |
12
13
  | images/blank.gif |
13
14
  | images/Read me (example).txt |
14
15
  | images/Child folder/regular_file(example).txt |
@@ -26,6 +27,7 @@ Feature: Builder
26
27
  And the file "static.html" should contain "Static, no code!"
27
28
  And the file "services/index.html" should contain "Services"
28
29
  And the file "stylesheets/static.css" should contain "body"
30
+ And the file "spaces in file.html" should contain "spaces"
29
31
 
30
32
  Scenario: Build glob
31
33
  Given a successfully built app at "glob-app" with flags "--glob '*.css'"
@@ -5,7 +5,7 @@ Feature: Generate mtime-based query string for busting browser caches
5
5
  Given "cache_buster" feature is "disabled"
6
6
  And the Server is running at "cache-buster-app"
7
7
  When I go to "/stylesheets/relative_assets.css"
8
- Then I should see "blank.gif'"
8
+ Then I should see 'blank.gif"'
9
9
 
10
10
  Scenario: Rendering html with the feature disabled
11
11
  Given "cache_buster" feature is "disabled"
@@ -13,97 +13,7 @@ Feature: Templates should be chainable
13
13
  When I cd to "build"
14
14
  Then the following files should exist:
15
15
  | index.html |
16
- | test.erb.combobreaker |
16
+
17
17
  And the file "index.html" should contain "Title</h1>"
18
18
  And the file "index.html" should contain "Subtitle</h2>"
19
- And the file "index.html" should contain "Sup</h3>"
20
- And the file "test.erb.combobreaker" should contain "Title</h1>"
21
- And the file "test.erb.combobreaker" should contain "Subtitle</h2>"
22
- And the file "test.erb.combobreaker" should contain "Sup</h3>"
23
-
24
- Scenario: Partials are parsed by multiple template engines: Outer template has .erb and inner .md.erb
25
- Given a fixture app "partial-chained_templates-app"
26
- And a template named "my_template.html.erb" with:
27
- """
28
- <h1>My Template</h1>
29
-
30
- <%= partial 'my_partial' %>
31
- """
32
- And a template named "my_partial.html.md.erb" with:
33
- """
34
- ## My Partial
35
-
36
- <%= 'hello world' %>
37
- """
38
- And the Server is running
39
- When I go to "/my_template.html"
40
- Then I should see:
41
- """
42
- <h1>My Template</h1>
43
- """
44
- Then I should see:
45
- """
46
- <h2 id="my-partial">My Partial</h2>
47
- """
48
- Then I should see:
49
- """
50
- <p>hello world</p>
51
- """
52
-
53
- Scenario: Partials are parsed by multiple template engines: Outer template has .md.erb and inner .md.erb
54
- Given a fixture app "partial-chained_templates-app"
55
- And a template named "my_template.html.md.erb" with:
56
- """
57
- # My Template
58
-
59
- <%= partial 'my_partial' %>
60
- """
61
- And a template named "my_partial.html.md.erb" with:
62
- """
63
- ## My Partial
64
-
65
- <%= 'hello world' %>
66
- """
67
- And the Server is running
68
- When I go to "/my_template.html"
69
- Then I should see:
70
- """
71
- <h1 id="my-template">My Template</h1>
72
- """
73
- Then I should see:
74
- """
75
- <h2 id="my-partial">My Partial</h2>
76
- """
77
- Then I should see:
78
- """
79
- <p>hello world</p>
80
- """
81
-
82
- Scenario: Partials are parsed by multiple template engines: Outer template has .md.erb, and inner .erb
83
- Given a fixture app "partial-chained_templates-app"
84
- And a template named "my_template.html.md.erb" with:
85
- """
86
- # My Template
87
-
88
- <%= partial 'my_partial' %>
89
- """
90
- And a template named "my_partial.html.erb" with:
91
- """
92
- <h2>My Partial</h2>
93
-
94
- <%= 'hello world' %>
95
- """
96
- And the Server is running
97
- When I go to "/my_template.html"
98
- Then I should see:
99
- """
100
- <h1 id="my-template">My Template</h1>
101
- """
102
- Then I should see:
103
- """
104
- <h2>My Partial</h2>
105
- """
106
- Then I should see:
107
- """
108
- <p>hello world</p>
109
- """
19
+ And the file "index.html" should contain "Sup</h3>"
@@ -42,21 +42,3 @@ Feature: Build Clean
42
42
  Then the following files should not exist:
43
43
  | sub/dir/about.html |
44
44
  | sub/dir/nested/nested.html |
45
-
46
- Scenario: Build and clean an app under a hidden directory
47
- Given a fixture app "clean-app"
48
- And app "clean-app" is using config "hidden-dir-before"
49
- And a built app at "clean-app"
50
- Then the following files should exist:
51
- | .build/index.html |
52
- | .build/should_be_ignored.html |
53
- | .build/should_be_ignored2.html |
54
- | .build/should_be_ignored3.html |
55
- Given app "clean-app" is using config "hidden-dir-after"
56
- And a built app at "clean-app"
57
- Then the following files should exist:
58
- | .build/index.html |
59
- And the following files should not exist:
60
- | .build/should_be_ignored.html |
61
- | .build/should_be_ignored2.html |
62
- | .build/should_be_ignored3.html |
@@ -38,114 +38,20 @@ Feature: Middleman CLI
38
38
  When I run `middleman n MY_PROJECT`
39
39
  Then a directory named "MY_PROJECT" should exist
40
40
 
41
- Scenario: Create a new project with Rack
42
- When I run `middleman init MY_PROJECT --rack`
43
- Then a directory named "MY_PROJECT" should exist
44
- When I cd to "MY_PROJECT"
45
- Then the following files should exist:
46
- | config.rb |
47
- | config.ru |
48
- | Gemfile |
49
-
50
- Scenario: Create a new HTML5 project
51
- When I run `middleman init MY_PROJECT --template=html5`
52
- Then a directory named "MY_PROJECT" should exist
53
- When I cd to "MY_PROJECT"
54
- Then the following files should exist:
55
- | config.rb |
56
- | Gemfile |
57
- Then the following files should not exist:
58
- | config.ru |
59
- And the file "config.rb" should contain "set :js_dir, 'js'"
60
- Then a directory named "source" should exist
61
- When I cd to "source"
62
- Then the following files should exist:
63
- | index.html.erb |
64
- | layouts/layout.erb |
65
- | humans.txt |
66
- | js/main.js |
67
-
68
- Scenario: Create a new HTML5 project with Rack
69
- When I run `middleman init MY_PROJECT --rack --template=html5`
70
- Then a directory named "MY_PROJECT" should exist
71
- When I cd to "MY_PROJECT"
72
- Then the following files should exist:
73
- | config.rb |
74
- | config.ru |
75
- | Gemfile |
76
-
77
- Scenario: Create a new Mobile HTML5 project
78
- When I run `middleman init MY_PROJECT --template=mobile`
79
- Then a directory named "MY_PROJECT" should exist
80
- When I cd to "MY_PROJECT"
81
- Then the following files should exist:
82
- | config.rb |
83
- | Gemfile |
84
- Then the following files should not exist:
85
- | config.ru |
86
- Then a directory named "source" should exist
87
- When I cd to "source"
88
- Then the following files should exist:
89
- | index.html |
90
- | humans.txt |
91
- | js/libs/respond.min.js |
92
-
93
- Scenario: Create a new Mobile HTML5 project with Rack
94
- When I run `middleman init MY_PROJECT --rack --template=mobile`
95
- Then a directory named "MY_PROJECT" should exist
96
- When I cd to "MY_PROJECT"
97
- Then the following files should exist:
98
- | config.rb |
99
- | config.ru |
100
- | Gemfile |
101
-
102
- Scenario: Enforce creation of Mobile HTML5 project
103
- When I run `middleman init MY_PROJECT --template=mobile`
104
- When I run `middleman init MY_PROJECT --template=mobile --force`
105
- Then a directory named "MY_PROJECT" should exist
106
- And the output should contain:
107
- """
108
- identical
109
- """
110
- And the output should contain:
111
- """
112
- exist
113
- """
114
- Scenario: Enforce creation of HTML5 project
115
- When I run `middleman init MY_PROJECT --template=html5`
116
- When I run `middleman init MY_PROJECT --template=html5 --force`
117
- Then a directory named "MY_PROJECT" should exist
118
- And the output should contain:
119
- """
120
- identical
121
- """
122
- And the output should contain:
123
- """
124
- exist
125
- """
126
-
127
- Scenario: Enforce creation of default project
128
- When I run `middleman init MY_PROJECT --template=default`
129
- When I run `middleman init MY_PROJECT --template=default --force`
130
- Then a directory named "MY_PROJECT" should exist
131
- And the output should contain:
132
- """
133
- identical
134
- """
135
- And the output should contain:
136
- """
137
- exist
138
- """
139
-
140
- Scenario: Enforce creation of empty project
141
- When I run `middleman init MY_PROJECT --template=empty`
142
- When I run `middleman init MY_PROJECT --template=empty --force`
143
- Then a directory named "MY_PROJECT" should exist
144
- And the output should contain:
145
- """
146
- identical
147
- """
148
- And the output should contain:
149
- """
150
- exist
151
- """
41
+ # Scenario: Create a new HTML5 project
42
+ # When I run `middleman init MY_PROJECT --template=html5`
43
+ # Then a directory named "MY_PROJECT" should exist
44
+ # When I cd to "MY_PROJECT"
45
+ # Then the following files should exist:
46
+ # | config.rb |
47
+ # | Gemfile |
48
+ # Then the following files should not exist:
49
+ # | config.ru |
50
+ # And the file "config.rb" should contain "set :js_dir, 'js'"
51
+ # Then a directory named "source" should exist
52
+ # When I cd to "source"
53
+ # Then the following files should exist:
54
+ # | index.html.erb |
55
+ # | layouts/layout.erb |
56
+ # | humans.txt |
57
+ # | js/main.js |