middleman-core 3.4.1 → 4.0.0.alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 |