middleman 2.0.16.1 → 3.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.
- data/.gitignore +2 -1
- data/CHANGELOG +16 -8
- data/features/builder.feature +2 -5
- data/features/cache_buster.feature +1 -1
- data/features/clean_build.feature +0 -1
- data/features/coffee-script.feature +3 -3
- data/features/custom_layout_engines.feature +10 -0
- data/features/directory_index.feature +0 -1
- data/features/dynamic_pages.feature +0 -1
- data/features/fonts.feature +0 -1
- data/features/{padrino_helpers.feature → former_padrino_helpers.feature} +1 -1
- data/features/sprockets.feature +34 -5
- data/features/sprockets_gems.feature +7 -4
- data/features/step_definitions/asset_host_steps.rb +7 -6
- data/features/step_definitions/builder_steps.rb +4 -0
- data/features/step_definitions/middleman_steps.rb +22 -16
- data/features/step_definitions/page_layout_steps.rb +10 -8
- data/fixtures/custom-layout-app/config.rb +1 -0
- data/fixtures/custom-layout-app/source/index.html.erb +1 -0
- data/fixtures/custom-layout-app/source/layout.haml +6 -0
- data/fixtures/sprockets-app/config.rb +2 -1
- data/fixtures/sprockets-app/source/library/css/bootstrap_include.css.scss +1 -0
- data/fixtures/sprockets-app/source/library/css/plain.css +3 -0
- data/fixtures/sprockets-app/source/library/css/sprockets_base1.css.scss +1 -0
- data/fixtures/sprockets-app/source/library/css/sprockets_base2.css.scss +1 -0
- data/fixtures/sprockets-app/source/library/css/sprockets_sub.css.scss +1 -0
- data/fixtures/sprockets-app/source/{jquery_include.js → library/js/jquery_include.js} +0 -0
- data/fixtures/sprockets-app/source/library/js/plain.js +3 -0
- data/fixtures/sprockets-app/source/library/{javascripts → js}/sprockets_base.js +0 -0
- data/fixtures/sprockets-app/source/library/{javascripts → js}/sprockets_sub.js +0 -0
- data/fixtures/test-app/config.rb +5 -4
- data/fixtures/test-app/source/{padrino_test.html.haml → former_padrino_test.html.haml} +0 -0
- data/fixtures/test-app/source/stylesheets/sprockets_base1.css.scss +1 -0
- data/fixtures/test-app/source/stylesheets/sprockets_base2.css.scss +1 -0
- data/fixtures/test-app/source/stylesheets/sprockets_sub.css.scss +1 -0
- data/lib/middleman.rb +27 -25
- data/lib/middleman/base.rb +408 -166
- data/lib/middleman/builder.rb +78 -162
- data/lib/middleman/cli.rb +61 -32
- data/lib/middleman/core_extensions/assets.rb +4 -44
- data/lib/middleman/core_extensions/builder.rb +12 -16
- data/lib/middleman/core_extensions/compass.rb +28 -57
- data/lib/middleman/core_extensions/data.rb +65 -49
- data/lib/middleman/core_extensions/default_helpers.rb +33 -18
- data/lib/middleman/core_extensions/features.rb +48 -26
- data/lib/middleman/core_extensions/file_watcher.rb +66 -0
- data/lib/middleman/core_extensions/front_matter.rb +91 -86
- data/lib/middleman/core_extensions/rendering.rb +9 -8
- data/lib/middleman/core_extensions/routing.rb +19 -53
- data/lib/middleman/core_extensions/sitemap.rb +229 -0
- data/lib/middleman/core_extensions/sprockets.rb +53 -37
- data/lib/middleman/features/asset_host.rb +20 -10
- data/lib/middleman/features/automatic_image_sizes.rb +12 -9
- data/lib/middleman/features/cache_buster.rb +38 -25
- data/lib/middleman/features/directory_indexes.rb +31 -28
- data/lib/middleman/features/minify_css.rb +3 -2
- data/lib/middleman/features/minify_css/cssmin.rb +55 -0
- data/lib/middleman/features/minify_javascript.rb +12 -5
- data/lib/middleman/features/relative_assets.rb +28 -25
- data/lib/middleman/features/sitemap_tree.rb +34 -0
- data/lib/middleman/guard.rb +57 -23
- data/lib/middleman/renderers/erb.rb +29 -0
- data/lib/middleman/renderers/liquid.rb +3 -12
- data/lib/middleman/renderers/markdown.rb +16 -15
- data/lib/middleman/renderers/sass.rb +34 -38
- data/lib/middleman/vendor/hooks-0.2.0/CHANGES.textile +9 -0
- data/lib/middleman/vendor/hooks-0.2.0/Gemfile +3 -0
- data/lib/middleman/vendor/hooks-0.2.0/README.rdoc +107 -0
- data/lib/middleman/vendor/hooks-0.2.0/Rakefile +12 -0
- data/lib/middleman/vendor/hooks-0.2.0/hooks.gemspec +22 -0
- data/lib/middleman/vendor/hooks-0.2.0/lib/hooks.rb +109 -0
- data/lib/middleman/vendor/hooks-0.2.0/lib/hooks/inheritable_attribute.rb +33 -0
- data/lib/middleman/vendor/hooks-0.2.0/test/hooks_test.rb +141 -0
- data/lib/middleman/vendor/hooks-0.2.0/test/inheritable_attribute_test.rb +55 -0
- data/lib/middleman/vendor/hooks-0.2.0/test/test_helper.rb +10 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/.document +5 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/.gitignore +22 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/.yardopts +1 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/LICENSE.txt +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/README.rdoc +294 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/Rakefile +5 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/bin/padrino +9 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core.rb +167 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/application.rb +270 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/application/rendering.rb +292 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/application/routing.rb +934 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/application/showexceptions.rb +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/caller.rb +53 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/cli/adapter.rb +24 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/cli/base.rb +151 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/cli/console.rb +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/cli/rake.rb +24 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/cli/rake_tasks.rb +59 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/command.rb +38 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/images/404.png +0 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/images/500.png +0 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/loader.rb +210 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/cs.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/da.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/de.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/en.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/es.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/fr.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/hu.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/it.yml +40 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/ja.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/lv.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/nl.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/no.yml +35 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/pl.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/pt_br.yml +40 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/ru.yml +35 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/tr.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/uk.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/zh_cn.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/locale/zh_tw.yml +34 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/logger.rb +345 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/mounter.rb +224 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/reloader.rb +254 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/router.rb +98 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/server.rb +79 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/support_lite.rb +199 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/tasks.rb +21 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/lib/padrino-core/version.rb +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/padrino-core.gemspec +38 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/apps/.components +6 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/apps/.gitignore +7 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/apps/complex.rb +32 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/apps/simple.rb +33 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/a.rb +9 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/b.rb +4 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/c.rb +1 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/circular/e.rb +13 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/circular/f.rb +2 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/circular/g.rb +2 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/fixtures/dependencies/d.rb +4 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/helper.rb +81 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/mini_shoulda.rb +45 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_application.rb +108 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_core.rb +79 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_dependencies.rb +44 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_filters.rb +278 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_locale.rb +21 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_logger.rb +100 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_mounter.rb +177 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_reloader_complex.rb +75 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_reloader_simple.rb +98 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_rendering.rb +461 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_restful_routing.rb +33 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_router.rb +146 -0
- data/lib/middleman/vendor/padrino-core-0.10.5/test/test_routing.rb +1673 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/.document +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/.gitignore +21 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/.yardopts +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/LICENSE.txt +20 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/README.rdoc +239 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/Rakefile +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers.rb +58 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/asset_tag_helpers.rb +420 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/form_builder/abstract_form_builder.rb +220 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/form_builder/standard_form_builder.rb +43 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/form_helpers.rb +602 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/format_helpers.rb +381 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/cs.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/da.yml +91 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/de.yml +81 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/en.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/es.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/fr.yml +80 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/hu.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/it.yml +89 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/ja.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/lv.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/nl.yml +82 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/no.yml +91 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/pl.yml +95 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/pt_br.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/ru.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/tr.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/uk.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/zh_cn.yml +104 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/locale/zh_tw.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/number_helpers.rb +288 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/output_helpers.rb +175 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/output_helpers/abstract_handler.rb +98 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/output_helpers/erb_handler.rb +79 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/output_helpers/haml_handler.rb +63 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/output_helpers/slim_handler.rb +81 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/render_helpers.rb +60 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/tag_helpers.rb +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/lib/padrino-helpers/translation_helpers.rb +38 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/padrino-helpers.gemspec +27 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/app.rb +73 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/capture_concat.erb +14 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/capture_concat.haml +12 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/capture_concat.slim +13 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_for.erb +14 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_for.haml +12 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_for.slim +12 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_tag.erb +11 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_tag.haml +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/content_tag.slim +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/current_engine.erb +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/current_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/current_engine.slim +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/fields_for.erb +20 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/fields_for.haml +15 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/fields_for.slim +15 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_for.erb +56 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_for.haml +47 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_for.slim +47 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_tag.erb +56 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_tag.haml +45 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/form_tag.slim +45 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/link_to.erb +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/link_to.haml +4 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/link_to.slim +4 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/mail_to.erb +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/mail_to.haml +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/mail_to.slim +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/meta_tag.erb +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/meta_tag.haml +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/meta_tag.slim +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/partials/_erb.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/partials/_haml.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/partials/_slim.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/simple_partial.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/simple_partial.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/markup_app/views/simple_partial.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/app.rb +50 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/current_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/current_engines/_erb.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/current_engines/_haml.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/current_engines/_slim.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/erb/test.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/explicit_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/haml/test.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/template/_user.haml +7 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/template/haml_template.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/fixtures/render_app/views/template/some_template.haml +2 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/helper.rb +66 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_asset_tag_helpers.rb +320 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_form_builder.rb +996 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_form_helpers.rb +645 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_format_helpers.rb +227 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_locale.rb +20 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_number_helpers.rb +136 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_output_helpers.rb +153 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_render_helpers.rb +76 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.5/test/test_tag_helpers.rb +105 -0
- data/lib/middleman/version.rb +1 -1
- data/middleman-x86-mingw32.gemspec +16 -33
- data/middleman.gemspec +16 -31
- metadata +590 -349
- data/features/sinatra.feature +0 -6
- data/lib/middleman/core_extensions/rack_map.rb +0 -35
- data/lib/middleman/renderers/coffee_script.rb +0 -8
- data/lib/middleman/renderers/haml.rb +0 -31
- data/lib/middleman/renderers/slim.rb +0 -8
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
module Padrino
|
|
2
|
+
##
|
|
3
|
+
# This class is an extended version of Rack::URLMap
|
|
4
|
+
#
|
|
5
|
+
# Padrino::Router like Rack::URLMap dispatches in such a way that the
|
|
6
|
+
# longest paths are tried first, since they are most specific.
|
|
7
|
+
#
|
|
8
|
+
# Features:
|
|
9
|
+
#
|
|
10
|
+
# * Map a path to the specified App
|
|
11
|
+
# * Ignore server names (this solve issues with vhost and domain aliases)
|
|
12
|
+
# * Use hosts instead of server name for mappings (this help us with our vhost and doman aliases)
|
|
13
|
+
#
|
|
14
|
+
# @example
|
|
15
|
+
#
|
|
16
|
+
# routes = Padrino::Router.new do
|
|
17
|
+
# map(:path => "/", :to => PadrinoWeb, :host => "padrino.local")
|
|
18
|
+
# map(:path => "/", :to => Admin, :host => "admin.padrino.local")
|
|
19
|
+
# end
|
|
20
|
+
# run routes
|
|
21
|
+
#
|
|
22
|
+
# routes = Padrino::Router.new do
|
|
23
|
+
# map(:path => "/", :to => PadrinoWeb, :host => /*.padrino.local/)
|
|
24
|
+
# end
|
|
25
|
+
# run routes
|
|
26
|
+
#
|
|
27
|
+
# @api semipublic
|
|
28
|
+
class Router
|
|
29
|
+
|
|
30
|
+
# Constructs a new route mapper instance
|
|
31
|
+
def initialize(*mapping, &block)
|
|
32
|
+
@mapping = []
|
|
33
|
+
mapping.each { |m| map(m) }
|
|
34
|
+
instance_eval(&block) if block
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
##
|
|
38
|
+
# Map a route path and host to a specified application.
|
|
39
|
+
#
|
|
40
|
+
# @param [Hash] options
|
|
41
|
+
# The options to map.
|
|
42
|
+
# @option options [Sinatra::Application] :to
|
|
43
|
+
# The class of the application to mount.
|
|
44
|
+
# @option options [String] :path ("/")
|
|
45
|
+
# The path to map the specified application.
|
|
46
|
+
# @option options [String] :host
|
|
47
|
+
# The host to map the specified application.
|
|
48
|
+
#
|
|
49
|
+
# @example
|
|
50
|
+
# map(:path => "/", :to => PadrinoWeb, :host => "padrino.local")
|
|
51
|
+
#
|
|
52
|
+
# @return [Array] The sorted route mappings.
|
|
53
|
+
# @api semipublic
|
|
54
|
+
def map(options={})
|
|
55
|
+
path = options[:path] || "/"
|
|
56
|
+
host = options[:host]
|
|
57
|
+
app = options[:to]
|
|
58
|
+
|
|
59
|
+
raise ArgumentError, "paths need to start with /" if path[0] != ?/
|
|
60
|
+
raise ArgumentError, "app is required" if app.nil?
|
|
61
|
+
|
|
62
|
+
path = path.chomp('/')
|
|
63
|
+
match = Regexp.new("^#{Regexp.quote(path).gsub('/', '/+')}(.*)", nil, 'n')
|
|
64
|
+
host = Regexp.new("^#{Regexp.quote(host)}$", true, 'n') unless host.nil? || host.is_a?(Regexp)
|
|
65
|
+
|
|
66
|
+
@mapping << [host, path, match, app]
|
|
67
|
+
sort!
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
# The call handler setup to route a request given the mappings specified.
|
|
71
|
+
# @api private
|
|
72
|
+
def call(env)
|
|
73
|
+
rPath = env["PATH_INFO"].to_s
|
|
74
|
+
script_name = env['SCRIPT_NAME']
|
|
75
|
+
hHost, sName, sPort = env.values_at('HTTP_HOST','SERVER_NAME','SERVER_PORT')
|
|
76
|
+
@mapping.each do |host, path, match, app|
|
|
77
|
+
next unless host.nil? || hHost =~ host
|
|
78
|
+
next unless rPath =~ match && rest = $1
|
|
79
|
+
next unless rest.empty? || rest[0] == ?/
|
|
80
|
+
|
|
81
|
+
rest = "/" if rest.empty?
|
|
82
|
+
|
|
83
|
+
return app.call(
|
|
84
|
+
env.merge(
|
|
85
|
+
'SCRIPT_NAME' => (script_name + path),
|
|
86
|
+
'PATH_INFO' => rest))
|
|
87
|
+
end
|
|
88
|
+
[404, {"Content-Type" => "text/plain", "X-Cascade" => "pass"}, ["Not Found: #{rPath}"]]
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
private
|
|
92
|
+
|
|
93
|
+
# Sorts the mapped routes in consistent order
|
|
94
|
+
def sort!
|
|
95
|
+
@mapping = @mapping.sort_by { |h, p, m, a| -p.size }
|
|
96
|
+
end
|
|
97
|
+
end # Router
|
|
98
|
+
end # Padrino
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
module Padrino
|
|
2
|
+
##
|
|
3
|
+
# Runs the Padrino apps as a self-hosted server using:
|
|
4
|
+
# thin, mongrel, or webrick in that order.
|
|
5
|
+
#
|
|
6
|
+
# @example
|
|
7
|
+
# Padrino.run! # with these defaults => host: "localhost", port: "3000", adapter: the first found
|
|
8
|
+
# Padrino.run!("localhost", "4000", "mongrel") # use => host: "0.0.0.0", port: "3000", adapter: "mongrel"
|
|
9
|
+
#
|
|
10
|
+
def self.run!(options={})
|
|
11
|
+
Padrino.load!
|
|
12
|
+
Server.start(Padrino.application, options)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
##
|
|
16
|
+
# This module builds a Padrino server to run the project based on available handlers.
|
|
17
|
+
#
|
|
18
|
+
class Server < Rack::Server
|
|
19
|
+
# Server Handlers
|
|
20
|
+
Handlers = [:thin, :mongrel, :webrick]
|
|
21
|
+
|
|
22
|
+
# Starts the application on the available server with specified options.
|
|
23
|
+
def self.start(app, opts={})
|
|
24
|
+
options = {}.merge(opts) # We use a standard hash instead of Thor::CoreExt::HashWithIndifferentAccess
|
|
25
|
+
options.symbolize_keys!
|
|
26
|
+
options[:Host] = options.delete(:host) || '0.0.0.0'
|
|
27
|
+
options[:Port] = options.delete(:port) || 3000
|
|
28
|
+
options[:AccessLog] = []
|
|
29
|
+
if options[:daemonize]
|
|
30
|
+
options[:pid] = options[:pid].blank? ? File.expand_path('tmp/pids/server.pid') : opts[:pid]
|
|
31
|
+
FileUtils.mkdir_p(File.dirname(options[:pid]))
|
|
32
|
+
end
|
|
33
|
+
options[:server] = detect_rack_handler if options[:server].blank?
|
|
34
|
+
new(options, app).start
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def initialize(options, app)
|
|
38
|
+
@options, @app = options, app
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Starts the application on the available server with specified options.
|
|
42
|
+
def start
|
|
43
|
+
puts "=> Padrino/#{Padrino.version} has taken the stage #{Padrino.env} at http://#{options[:Host]}:#{options[:Port]}"
|
|
44
|
+
[:INT, :TERM].each { |sig| trap(sig) { exit } }
|
|
45
|
+
super
|
|
46
|
+
ensure
|
|
47
|
+
puts "<= Padrino has ended his set (crowd applauds)" unless options[:daemonize]
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# The application the server will run.
|
|
51
|
+
def app
|
|
52
|
+
@app
|
|
53
|
+
end
|
|
54
|
+
alias :wrapped_app :app
|
|
55
|
+
|
|
56
|
+
# The options specified to the server.
|
|
57
|
+
def options
|
|
58
|
+
@options
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
private
|
|
62
|
+
|
|
63
|
+
# Detects the supported handler to use.
|
|
64
|
+
#
|
|
65
|
+
# @example
|
|
66
|
+
# detect_rack_handler => <ThinHandler>
|
|
67
|
+
#
|
|
68
|
+
def self.detect_rack_handler
|
|
69
|
+
Handlers.each do |handler|
|
|
70
|
+
begin
|
|
71
|
+
return handler if Rack::Handler.get(handler.to_s.downcase)
|
|
72
|
+
rescue LoadError
|
|
73
|
+
rescue NameError
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
fail "Server handler (#{Handlers.join(', ')}) not found."
|
|
77
|
+
end
|
|
78
|
+
end # Server
|
|
79
|
+
end # Padrino
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This file loads certain extensions required by Padrino from ActiveSupport.
|
|
3
|
+
#
|
|
4
|
+
require 'active_support/core_ext/module/aliasing' # alias_method_chain
|
|
5
|
+
require 'active_support/core_ext/hash/keys' # symbolize_keys
|
|
6
|
+
require 'active_support/core_ext/hash/reverse_merge' # reverse_merge
|
|
7
|
+
require 'active_support/core_ext/hash/slice' # slice
|
|
8
|
+
require 'active_support/core_ext/object/blank' # present?
|
|
9
|
+
require 'active_support/core_ext/array/extract_options' # extract_options
|
|
10
|
+
require 'active_support/inflector/methods' # constantize
|
|
11
|
+
require 'active_support/inflector/inflections' # pluralize
|
|
12
|
+
require 'active_support/inflections' # load default inflections
|
|
13
|
+
require 'yaml' unless defined?(YAML) # load yaml for i18n
|
|
14
|
+
require 'Win32/Console/ANSI' if RUBY_PLATFORM =~ /win32/ # ruby color suppor for win
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
# This is an adapted version of active_support/core_ext/string/inflections.rb
|
|
18
|
+
# to prevent loading several dependencies including I18n gem.
|
|
19
|
+
#
|
|
20
|
+
# Issue: https://github.com/rails/rails/issues/1526
|
|
21
|
+
#
|
|
22
|
+
class String
|
|
23
|
+
##
|
|
24
|
+
# Returns the plural form of the word in the string.
|
|
25
|
+
#
|
|
26
|
+
# "post".pluralize # => "posts"
|
|
27
|
+
# "octopus".pluralize # => "octopi"
|
|
28
|
+
# "sheep".pluralize # => "sheep"
|
|
29
|
+
# "words".pluralize # => "words"
|
|
30
|
+
# "the blue mailman".pluralize # => "the blue mailmen"
|
|
31
|
+
# "CamelOctopus".pluralize # => "CamelOctopi"
|
|
32
|
+
#
|
|
33
|
+
def pluralize
|
|
34
|
+
ActiveSupport::Inflector.pluralize(self)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
##
|
|
38
|
+
# Returns the singular form of the word in the string.
|
|
39
|
+
#
|
|
40
|
+
# "posts".singularize # => "post"
|
|
41
|
+
# "octopi".singularize # => "octopus"
|
|
42
|
+
# "sheep".singularize # => "sheep"
|
|
43
|
+
# "words".singularize # => "word"
|
|
44
|
+
# "the blue mailmen".singularize # => "the blue mailman"
|
|
45
|
+
# "CamelOctopi".singularize # => "CamelOctopus"
|
|
46
|
+
#
|
|
47
|
+
def singularize
|
|
48
|
+
ActiveSupport::Inflector.singularize(self)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
##
|
|
52
|
+
# +constantize+ tries to find a declared constant with the name specified
|
|
53
|
+
# in the string. It raises a NameError when the name is not in CamelCase
|
|
54
|
+
# or is not initialized.
|
|
55
|
+
#
|
|
56
|
+
# "Module".constantize # => Module
|
|
57
|
+
# "Class".constantize # => Class
|
|
58
|
+
#
|
|
59
|
+
def constantize
|
|
60
|
+
ActiveSupport::Inflector.constantize(self)
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
##
|
|
64
|
+
# The reverse of +camelize+. Makes an underscored, lowercase form from the expression in the string.
|
|
65
|
+
#
|
|
66
|
+
# +underscore+ will also change '::' to '/' to convert namespaces to paths.
|
|
67
|
+
#
|
|
68
|
+
# "ActiveRecord".underscore # => "active_record"
|
|
69
|
+
# "ActiveRecord::Errors".underscore # => active_record/errors
|
|
70
|
+
#
|
|
71
|
+
def underscore
|
|
72
|
+
ActiveSupport::Inflector.underscore(self)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
##
|
|
76
|
+
# By default, +camelize+ converts strings to UpperCamelCase. If the argument to camelize
|
|
77
|
+
# is set to <tt>:lower</tt> then camelize produces lowerCamelCase.
|
|
78
|
+
#
|
|
79
|
+
# +camelize+ will also convert '/' to '::' which is useful for converting paths to namespaces.
|
|
80
|
+
#
|
|
81
|
+
# "active_record".camelize # => "ActiveRecord"
|
|
82
|
+
# "active_record".camelize(:lower) # => "activeRecord"
|
|
83
|
+
# "active_record/errors".camelize # => "ActiveRecord::Errors"
|
|
84
|
+
# "active_record/errors".camelize(:lower) # => "activeRecord::Errors"
|
|
85
|
+
#
|
|
86
|
+
def camelize(first_letter = :upper)
|
|
87
|
+
case first_letter
|
|
88
|
+
when :upper then ActiveSupport::Inflector.camelize(self, true)
|
|
89
|
+
when :lower then ActiveSupport::Inflector.camelize(self, false)
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
alias_method :camelcase, :camelize
|
|
93
|
+
|
|
94
|
+
##
|
|
95
|
+
# Create a class name from a plural table name like Rails does for table names to models.
|
|
96
|
+
# Note that this returns a string and not a class. (To convert to an actual class
|
|
97
|
+
# follow +classify+ with +constantize+.)
|
|
98
|
+
#
|
|
99
|
+
# "egg_and_hams".classify # => "EggAndHam"
|
|
100
|
+
# "posts".classify # => "Post"
|
|
101
|
+
#
|
|
102
|
+
# Singular names are not handled correctly.
|
|
103
|
+
#
|
|
104
|
+
# "business".classify # => "Busines"
|
|
105
|
+
#
|
|
106
|
+
def classify
|
|
107
|
+
ActiveSupport::Inflector.classify(self)
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
module ObjectSpace
|
|
112
|
+
class << self
|
|
113
|
+
# Returns all the classes in the object space.
|
|
114
|
+
def classes
|
|
115
|
+
ObjectSpace.each_object(Module).select do |klass|
|
|
116
|
+
# Why this? Ruby when you remove a constant don't clean it from
|
|
117
|
+
# rb_tables, this mean that here we can found classes that was
|
|
118
|
+
# removed.
|
|
119
|
+
klass.name rescue false
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
##
|
|
126
|
+
# FileSet helper method for iterating and interacting with files inside a directory
|
|
127
|
+
#
|
|
128
|
+
module FileSet
|
|
129
|
+
extend self
|
|
130
|
+
##
|
|
131
|
+
# Iterates over every file in the glob pattern and yields to a block
|
|
132
|
+
# Returns the list of files matching the glob pattern
|
|
133
|
+
# FileSet.glob('padrino-core/application/*.rb', __FILE__) { |file| load file }
|
|
134
|
+
#
|
|
135
|
+
def glob(glob_pattern, file_path=nil, &block)
|
|
136
|
+
glob_pattern = File.join(File.dirname(file_path), glob_pattern) if file_path
|
|
137
|
+
file_list = Dir.glob(glob_pattern).sort
|
|
138
|
+
file_list.each { |file| block.call(file) }
|
|
139
|
+
file_list
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
##
|
|
143
|
+
# Requires each file matched in the glob pattern into the application
|
|
144
|
+
# FileSet.glob_require('padrino-core/application/*.rb', __FILE__)
|
|
145
|
+
#
|
|
146
|
+
def glob_require(glob_pattern, file_path=nil)
|
|
147
|
+
glob(glob_pattern, file_path) { |f| require f }
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
##
|
|
152
|
+
# Removes indentation
|
|
153
|
+
# Add colors
|
|
154
|
+
#
|
|
155
|
+
# @example
|
|
156
|
+
# help <<-EOS.undent
|
|
157
|
+
# Here my help usage
|
|
158
|
+
# sample_code
|
|
159
|
+
#
|
|
160
|
+
# Fix
|
|
161
|
+
# EOS
|
|
162
|
+
# puts help.red.bold
|
|
163
|
+
#
|
|
164
|
+
class String
|
|
165
|
+
def self.colors
|
|
166
|
+
@_colors ||= {
|
|
167
|
+
:clear => 0,
|
|
168
|
+
:bold => 1,
|
|
169
|
+
:black => 30,
|
|
170
|
+
:red => 31,
|
|
171
|
+
:green => 32,
|
|
172
|
+
:yellow => 33,
|
|
173
|
+
:blue => 34,
|
|
174
|
+
:magenta => 35,
|
|
175
|
+
:cyan => 36,
|
|
176
|
+
:white => 37
|
|
177
|
+
}
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
colors.each do |color, value|
|
|
181
|
+
define_method(color) do
|
|
182
|
+
["\e[", value.to_s, "m", self, "\e[", self.class.colors[:clear], "m"] * ''
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
def undent
|
|
187
|
+
gsub(/^.{#{slice(/^ +/).size}}/, '')
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
##
|
|
192
|
+
# Loads our locale configuration files
|
|
193
|
+
#
|
|
194
|
+
I18n.load_path += Dir["#{File.dirname(__FILE__)}/locale/*.yml"] if defined?(I18n)
|
|
195
|
+
|
|
196
|
+
##
|
|
197
|
+
# Used to determine if this file has already been required
|
|
198
|
+
#
|
|
199
|
+
module SupportLite; end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Padrino
|
|
2
|
+
##
|
|
3
|
+
# This module it's used for bootstrap with padrino rake
|
|
4
|
+
# thirdy party tasks, in your gem/plugin/extension you
|
|
5
|
+
# need only do this:
|
|
6
|
+
#
|
|
7
|
+
# @example
|
|
8
|
+
# Padrino::Tasks.files << yourtask.rb
|
|
9
|
+
# Padrino::Tasks.files.concat(Dir["/path/to/all/my/tasks/*.rb"])
|
|
10
|
+
# Padrino::Tasks.files.unshift("yourtask.rb")
|
|
11
|
+
#
|
|
12
|
+
module Tasks
|
|
13
|
+
|
|
14
|
+
##
|
|
15
|
+
# Returns a list of files to handle with padrino rake
|
|
16
|
+
#
|
|
17
|
+
def self.files
|
|
18
|
+
@files ||= []
|
|
19
|
+
end
|
|
20
|
+
end # Tasks
|
|
21
|
+
end # Padrino
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Manages current Padrino version for use in gem generation.
|
|
3
|
+
#
|
|
4
|
+
# We put this in a separate file so you can get padrino version
|
|
5
|
+
# without include full padrino core.
|
|
6
|
+
#
|
|
7
|
+
module Padrino
|
|
8
|
+
# The version constant for the current version of Padrino.
|
|
9
|
+
VERSION = '0.10.5' unless defined?(Padrino::VERSION)
|
|
10
|
+
|
|
11
|
+
#
|
|
12
|
+
# The current Padrino version.
|
|
13
|
+
#
|
|
14
|
+
# @return [String]
|
|
15
|
+
# The version number.
|
|
16
|
+
#
|
|
17
|
+
def self.version
|
|
18
|
+
VERSION
|
|
19
|
+
end
|
|
20
|
+
end # Padrino
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#!/usr/bin/env gem build
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
|
|
4
|
+
require File.expand_path("../lib/padrino-core/version.rb", __FILE__)
|
|
5
|
+
|
|
6
|
+
Gem::Specification.new do |s|
|
|
7
|
+
s.name = "padrino-core"
|
|
8
|
+
s.rubyforge_project = "padrino-core"
|
|
9
|
+
s.authors = ["Padrino Team", "Nathan Esquenazi", "Davide D'Agostino", "Arthur Chiu"]
|
|
10
|
+
s.email = "padrinorb@gmail.com"
|
|
11
|
+
s.summary = "The required Padrino core gem"
|
|
12
|
+
s.homepage = "http://www.padrinorb.com"
|
|
13
|
+
s.description = "The Padrino core gem required for use of this framework"
|
|
14
|
+
s.required_rubygems_version = ">= 1.3.6"
|
|
15
|
+
s.version = Padrino.version
|
|
16
|
+
s.date = Time.now.strftime("%Y-%m-%d")
|
|
17
|
+
|
|
18
|
+
s.extra_rdoc_files = Dir["*.rdoc"]
|
|
19
|
+
s.files = `git ls-files`.split("\n")
|
|
20
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
21
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
22
|
+
s.require_paths = ["lib"]
|
|
23
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
|
24
|
+
|
|
25
|
+
# TODO remove after a couple versions
|
|
26
|
+
# s.post_install_message = "\e[32m" + ("*" * 20)
|
|
27
|
+
# s.post_install_message << "\n UPGRADE NOTES\n\n\e[31m When upgrading, please 'enable :sessions' for each application"
|
|
28
|
+
# s.post_install_message << " as shown here:\e[0m http://bit.ly/kODKMx\n"
|
|
29
|
+
# s.post_install_message << "\e[31m When upgrading, please 'register Padrino::Rendering' for each application"
|
|
30
|
+
# s.post_install_message << " as shown here:\e[0m https://gist.github.com/1d36a35794dbbd664ea4"
|
|
31
|
+
# s.post_install_message << "\n\e[32m" + ("*" * 20) + "\n\e[0m"
|
|
32
|
+
|
|
33
|
+
s.add_dependency("tilt", "~> 1.3.0")
|
|
34
|
+
s.add_dependency("sinatra", "~> 1.3.1")
|
|
35
|
+
s.add_dependency("http_router", "~> 0.10.2")
|
|
36
|
+
s.add_dependency("thor", "~> 0.14.3")
|
|
37
|
+
s.add_dependency("activesupport", "~> 3.1.0")
|
|
38
|
+
end
|