haml 3.2.0.alpha.10 → 3.2.0.alpha.13
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of haml might be problematic. Click here for more details.
- data/.yardopts +19 -7
- data/CHANGELOG.md +1224 -0
- data/FAQ.md +157 -0
- data/README.md +99 -62
- data/REFERENCE.md +1404 -0
- data/Rakefile +52 -341
- data/init.rb +1 -18
- data/lib/haml.rb +6 -30
- data/lib/haml/buffer.rb +37 -16
- data/lib/haml/compiler.rb +52 -13
- data/lib/haml/engine.rb +61 -44
- data/lib/haml/exec.rb +21 -4
- data/lib/haml/filters.rb +136 -166
- data/lib/haml/helpers.rb +37 -10
- data/lib/haml/helpers/action_view_extensions.rb +2 -1
- data/lib/haml/helpers/action_view_mods.rb +67 -181
- data/lib/haml/helpers/rails_323_textarea_fix.rb +39 -0
- data/lib/haml/helpers/xss_mods.rb +9 -11
- data/lib/haml/html.rb +22 -9
- data/lib/haml/html/erb.rb +1 -1
- data/lib/haml/parser.rb +22 -15
- data/lib/haml/railtie.rb +2 -13
- data/lib/haml/template.rb +18 -85
- data/lib/haml/template/options.rb +1 -1
- data/lib/haml/template/plugin.rb +15 -101
- data/lib/haml/util.rb +120 -603
- data/lib/haml/version.rb +1 -107
- data/test/{haml/engine_test.rb → engine_test.rb} +137 -143
- data/test/{haml/erb → erb}/_av_partial_1.erb +1 -1
- data/test/{haml/erb → erb}/_av_partial_2.erb +1 -1
- data/test/{haml/erb → erb}/action_view.erb +1 -1
- data/test/{haml/erb → erb}/standard.erb +0 -0
- data/test/filters_test.rb +141 -0
- data/test/gemfiles/Gemfile.rails-3.0.x +4 -6
- data/test/gemfiles/Gemfile.rails-3.1.x +5 -6
- data/test/gemfiles/Gemfile.rails-3.2.x +6 -0
- data/test/haml-spec/LICENSE +14 -0
- data/test/{haml/spec → haml-spec}/README.md +26 -17
- data/test/haml-spec/lua_haml_spec.lua +38 -0
- data/test/haml-spec/perl_haml_test.pl +81 -0
- data/test/haml-spec/ruby_haml_test.rb +23 -0
- data/test/{haml/spec → haml-spec}/tests.json +132 -54
- data/test/{haml/helper_test.rb → helper_test.rb} +50 -36
- data/test/{haml/html2haml → html2haml}/erb_tests.rb +0 -0
- data/test/{haml/html2haml_test.rb → html2haml_test.rb} +11 -5
- data/test/{haml/markaby → markaby}/standard.mab +0 -0
- data/test/{haml/mocks → mocks}/article.rb +0 -0
- data/test/{haml/results → results}/content_for_layout.xhtml +0 -0
- data/test/{haml/results → results}/eval_suppressed.xhtml +0 -0
- data/test/{haml/results → results}/helpers.xhtml +0 -0
- data/test/{haml/results → results}/helpful.xhtml +0 -0
- data/test/{haml/results → results}/just_stuff.xhtml +0 -0
- data/test/{haml/results → results}/list.xhtml +0 -0
- data/test/{haml/results → results}/nuke_inner_whitespace.xhtml +0 -0
- data/test/{haml/results → results}/nuke_outer_whitespace.xhtml +0 -0
- data/test/{haml/results → results}/original_engine.xhtml +0 -0
- data/test/{haml/results → results}/partial_layout.xhtml +0 -0
- data/test/{haml/results → results}/partials.xhtml +0 -0
- data/test/{haml/results → results}/render_layout.xhtml +0 -0
- data/test/{haml/results → results}/silent_script.xhtml +1 -1
- data/test/{haml/results → results}/standard.xhtml +0 -0
- data/test/{haml/results → results}/tag_parsing.xhtml +0 -0
- data/test/{haml/results → results}/very_basic.xhtml +0 -0
- data/test/{haml/results → results}/whitespace_handling.xhtml +46 -50
- data/test/{haml/template_test.rb → template_test.rb} +20 -81
- data/test/{haml/templates → templates}/_av_partial_1.haml +1 -1
- data/test/{haml/templates → templates}/_av_partial_1_ugly.haml +1 -1
- data/test/{haml/templates → templates}/_av_partial_2.haml +1 -1
- data/test/{haml/templates → templates}/_av_partial_2_ugly.haml +1 -1
- data/test/{haml/templates → templates}/_layout.erb +0 -0
- data/test/{haml/templates → templates}/_layout_for_partial.haml +0 -0
- data/test/{haml/templates → templates}/_partial.haml +0 -0
- data/test/{haml/templates → templates}/_text_area.haml +0 -0
- data/test/{haml/templates → templates}/action_view.haml +1 -1
- data/test/{haml/templates → templates}/action_view_ugly.haml +1 -1
- data/test/{haml/templates → templates}/breakage.haml +0 -0
- data/test/{haml/templates → templates}/content_for_layout.haml +0 -0
- data/test/{haml/templates → templates}/eval_suppressed.haml +0 -0
- data/test/{haml/templates → templates}/helpers.haml +0 -0
- data/test/{haml/templates → templates}/helpful.haml +0 -0
- data/test/{haml/templates → templates}/just_stuff.haml +0 -0
- data/test/{haml/templates → templates}/list.haml +0 -0
- data/test/{haml/templates → templates}/nuke_inner_whitespace.haml +0 -0
- data/test/{haml/templates → templates}/nuke_outer_whitespace.haml +0 -0
- data/test/{haml/templates → templates}/original_engine.haml +0 -0
- data/test/templates/partial_layout.haml +3 -0
- data/test/{haml/templates → templates}/partialize.haml +0 -0
- data/test/{haml/templates → templates}/partials.haml +0 -0
- data/test/{haml/templates → templates}/render_layout.haml +0 -0
- data/test/{haml/templates → templates}/silent_script.haml +2 -2
- data/test/{haml/templates → templates}/standard.haml +0 -0
- data/test/{haml/templates → templates}/standard_ugly.haml +0 -0
- data/test/{haml/templates → templates}/tag_parsing.haml +0 -0
- data/test/{haml/templates → templates}/very_basic.haml +0 -0
- data/test/{haml/templates → templates}/whitespace_handling.haml +0 -0
- data/test/test_helper.rb +42 -34
- data/test/util_test.rb +80 -0
- metadata +259 -427
- data/CONTRIBUTING +0 -3
- data/REVISION +0 -1
- data/VERSION +0 -1
- data/VERSION_NAME +0 -1
- data/extra/update_watch.rb +0 -13
- data/lib/haml/root.rb +0 -7
- data/lib/haml/shared.rb +0 -78
- data/lib/haml/template/patch.rb +0 -58
- data/lib/sass.rb +0 -8
- data/lib/sass/plugin.rb +0 -10
- data/lib/sass/rails2_shim.rb +0 -9
- data/lib/sass/rails3_shim.rb +0 -16
- data/test/benchmark.rb +0 -91
- data/test/gemfiles/Gemfile.rails-2.0.x +0 -8
- data/test/gemfiles/Gemfile.rails-2.0.x.lock +0 -38
- data/test/gemfiles/Gemfile.rails-2.1.x +0 -8
- data/test/gemfiles/Gemfile.rails-2.1.x.lock +0 -38
- data/test/gemfiles/Gemfile.rails-2.2.x +0 -8
- data/test/gemfiles/Gemfile.rails-2.2.x.lock +0 -38
- data/test/gemfiles/Gemfile.rails-2.3.x +0 -8
- data/test/gemfiles/Gemfile.rails-2.3.x.lock +0 -40
- data/test/gemfiles/Gemfile.rails-3.0.x.lock +0 -85
- data/test/gemfiles/Gemfile.rails-3.1.x.lock +0 -98
- data/test/gemfiles/Gemfile.rails-xss-2.3.x +0 -9
- data/test/gemfiles/Gemfile.rails-xss-2.3.x.lock +0 -42
- data/test/haml/results/filters.xhtml +0 -62
- data/test/haml/spec/lua_haml_spec.lua +0 -30
- data/test/haml/spec/ruby_haml_test.rb +0 -19
- data/test/haml/spec_test.rb +0 -44
- data/test/haml/templates/filters.haml +0 -66
- data/test/haml/templates/partial_layout.haml +0 -10
- data/test/haml/util_test.rb +0 -300
- data/test/linked_rails.rb +0 -42
- data/vendor/sass/CONTRIBUTING +0 -3
- data/vendor/sass/MIT-LICENSE +0 -20
- data/vendor/sass/README.md +0 -201
- data/vendor/sass/Rakefile +0 -339
- data/vendor/sass/TODO +0 -39
- data/vendor/sass/VERSION +0 -1
- data/vendor/sass/VERSION_NAME +0 -1
- data/vendor/sass/bin/sass +0 -8
- data/vendor/sass/bin/sass-convert +0 -7
- data/vendor/sass/bin/scss +0 -8
- data/vendor/sass/doc-src/FAQ.md +0 -35
- data/vendor/sass/doc-src/INDENTED_SYNTAX.md +0 -210
- data/vendor/sass/doc-src/SASS_CHANGELOG.md +0 -2327
- data/vendor/sass/doc-src/SASS_REFERENCE.md +0 -1965
- data/vendor/sass/doc-src/SCSS_FOR_SASS_USERS.md +0 -155
- data/vendor/sass/ext/extconf.rb +0 -10
- data/vendor/sass/extra/update_watch.rb +0 -13
- data/vendor/sass/init.rb +0 -18
- data/vendor/sass/lib/sass.rb +0 -73
- data/vendor/sass/lib/sass/cache_stores.rb +0 -15
- data/vendor/sass/lib/sass/cache_stores/base.rb +0 -86
- data/vendor/sass/lib/sass/cache_stores/chain.rb +0 -33
- data/vendor/sass/lib/sass/cache_stores/filesystem.rb +0 -60
- data/vendor/sass/lib/sass/cache_stores/memory.rb +0 -47
- data/vendor/sass/lib/sass/cache_stores/null.rb +0 -25
- data/vendor/sass/lib/sass/callbacks.rb +0 -66
- data/vendor/sass/lib/sass/css.rb +0 -295
- data/vendor/sass/lib/sass/engine.rb +0 -878
- data/vendor/sass/lib/sass/environment.rb +0 -166
- data/vendor/sass/lib/sass/error.rb +0 -201
- data/vendor/sass/lib/sass/exec.rb +0 -672
- data/vendor/sass/lib/sass/importers.rb +0 -22
- data/vendor/sass/lib/sass/importers/base.rb +0 -139
- data/vendor/sass/lib/sass/importers/filesystem.rb +0 -149
- data/vendor/sass/lib/sass/less.rb +0 -382
- data/vendor/sass/lib/sass/logger.rb +0 -15
- data/vendor/sass/lib/sass/logger/base.rb +0 -32
- data/vendor/sass/lib/sass/logger/log_level.rb +0 -49
- data/vendor/sass/lib/sass/plugin.rb +0 -132
- data/vendor/sass/lib/sass/plugin/compiler.rb +0 -383
- data/vendor/sass/lib/sass/plugin/configuration.rb +0 -123
- data/vendor/sass/lib/sass/plugin/generic.rb +0 -15
- data/vendor/sass/lib/sass/plugin/merb.rb +0 -48
- data/vendor/sass/lib/sass/plugin/rack.rb +0 -60
- data/vendor/sass/lib/sass/plugin/rails.rb +0 -47
- data/vendor/sass/lib/sass/plugin/staleness_checker.rb +0 -173
- data/vendor/sass/lib/sass/railtie.rb +0 -9
- data/vendor/sass/lib/sass/repl.rb +0 -58
- data/vendor/sass/lib/sass/root.rb +0 -7
- data/vendor/sass/lib/sass/script.rb +0 -40
- data/vendor/sass/lib/sass/script/bool.rb +0 -18
- data/vendor/sass/lib/sass/script/color.rb +0 -480
- data/vendor/sass/lib/sass/script/css_lexer.rb +0 -29
- data/vendor/sass/lib/sass/script/css_parser.rb +0 -31
- data/vendor/sass/lib/sass/script/funcall.rb +0 -175
- data/vendor/sass/lib/sass/script/functions.rb +0 -1386
- data/vendor/sass/lib/sass/script/interpolation.rb +0 -79
- data/vendor/sass/lib/sass/script/lexer.rb +0 -339
- data/vendor/sass/lib/sass/script/list.rb +0 -83
- data/vendor/sass/lib/sass/script/literal.rb +0 -250
- data/vendor/sass/lib/sass/script/node.rb +0 -99
- data/vendor/sass/lib/sass/script/number.rb +0 -452
- data/vendor/sass/lib/sass/script/operation.rb +0 -99
- data/vendor/sass/lib/sass/script/parser.rb +0 -474
- data/vendor/sass/lib/sass/script/string.rb +0 -51
- data/vendor/sass/lib/sass/script/string_interpolation.rb +0 -103
- data/vendor/sass/lib/sass/script/unary_operation.rb +0 -64
- data/vendor/sass/lib/sass/script/variable.rb +0 -59
- data/vendor/sass/lib/sass/scss.rb +0 -17
- data/vendor/sass/lib/sass/scss/css_parser.rb +0 -46
- data/vendor/sass/lib/sass/scss/parser.rb +0 -960
- data/vendor/sass/lib/sass/scss/rx.rb +0 -128
- data/vendor/sass/lib/sass/scss/sass_parser.rb +0 -11
- data/vendor/sass/lib/sass/scss/script_lexer.rb +0 -15
- data/vendor/sass/lib/sass/scss/script_parser.rb +0 -25
- data/vendor/sass/lib/sass/scss/static_parser.rb +0 -40
- data/vendor/sass/lib/sass/selector.rb +0 -361
- data/vendor/sass/lib/sass/selector/abstract_sequence.rb +0 -62
- data/vendor/sass/lib/sass/selector/comma_sequence.rb +0 -81
- data/vendor/sass/lib/sass/selector/sequence.rb +0 -233
- data/vendor/sass/lib/sass/selector/simple.rb +0 -113
- data/vendor/sass/lib/sass/selector/simple_sequence.rb +0 -134
- data/vendor/sass/lib/sass/shared.rb +0 -78
- data/vendor/sass/lib/sass/tree/charset_node.rb +0 -22
- data/vendor/sass/lib/sass/tree/comment_node.rb +0 -90
- data/vendor/sass/lib/sass/tree/debug_node.rb +0 -18
- data/vendor/sass/lib/sass/tree/directive_node.rb +0 -23
- data/vendor/sass/lib/sass/tree/each_node.rb +0 -24
- data/vendor/sass/lib/sass/tree/extend_node.rb +0 -29
- data/vendor/sass/lib/sass/tree/for_node.rb +0 -36
- data/vendor/sass/lib/sass/tree/function_node.rb +0 -27
- data/vendor/sass/lib/sass/tree/if_node.rb +0 -52
- data/vendor/sass/lib/sass/tree/import_node.rb +0 -68
- data/vendor/sass/lib/sass/tree/media_node.rb +0 -32
- data/vendor/sass/lib/sass/tree/mixin_def_node.rb +0 -27
- data/vendor/sass/lib/sass/tree/mixin_node.rb +0 -32
- data/vendor/sass/lib/sass/tree/node.rb +0 -201
- data/vendor/sass/lib/sass/tree/prop_node.rb +0 -148
- data/vendor/sass/lib/sass/tree/return_node.rb +0 -18
- data/vendor/sass/lib/sass/tree/root_node.rb +0 -28
- data/vendor/sass/lib/sass/tree/rule_node.rb +0 -136
- data/vendor/sass/lib/sass/tree/variable_node.rb +0 -30
- data/vendor/sass/lib/sass/tree/visitors/base.rb +0 -75
- data/vendor/sass/lib/sass/tree/visitors/check_nesting.rb +0 -133
- data/vendor/sass/lib/sass/tree/visitors/convert.rb +0 -260
- data/vendor/sass/lib/sass/tree/visitors/cssize.rb +0 -175
- data/vendor/sass/lib/sass/tree/visitors/deep_copy.rb +0 -87
- data/vendor/sass/lib/sass/tree/visitors/perform.rb +0 -332
- data/vendor/sass/lib/sass/tree/visitors/set_options.rb +0 -97
- data/vendor/sass/lib/sass/tree/visitors/to_css.rb +0 -210
- data/vendor/sass/lib/sass/tree/warn_node.rb +0 -18
- data/vendor/sass/lib/sass/tree/while_node.rb +0 -18
- data/vendor/sass/lib/sass/util.rb +0 -721
- data/vendor/sass/lib/sass/util/subset_map.rb +0 -101
- data/vendor/sass/lib/sass/version.rb +0 -112
- data/vendor/sass/rails/init.rb +0 -1
- data/vendor/sass/sass.gemspec +0 -33
- data/vendor/sass/test/Gemfile +0 -4
- data/vendor/sass/test/Gemfile.lock +0 -19
- data/vendor/sass/test/sass/cache_test.rb +0 -89
- data/vendor/sass/test/sass/callbacks_test.rb +0 -61
- data/vendor/sass/test/sass/conversion_test.rb +0 -1199
- data/vendor/sass/test/sass/css2sass_test.rb +0 -373
- data/vendor/sass/test/sass/data/hsl-rgb.txt +0 -319
- data/vendor/sass/test/sass/engine_test.rb +0 -2567
- data/vendor/sass/test/sass/extend_test.rb +0 -1348
- data/vendor/sass/test/sass/fixtures/test_staleness_check_across_importers.css +0 -1
- data/vendor/sass/test/sass/fixtures/test_staleness_check_across_importers.scss +0 -1
- data/vendor/sass/test/sass/functions_test.rb +0 -1038
- data/vendor/sass/test/sass/importer_test.rb +0 -192
- data/vendor/sass/test/sass/less_conversion_test.rb +0 -653
- data/vendor/sass/test/sass/logger_test.rb +0 -58
- data/vendor/sass/test/sass/mock_importer.rb +0 -49
- data/vendor/sass/test/sass/more_results/more1.css +0 -9
- data/vendor/sass/test/sass/more_results/more1_with_line_comments.css +0 -26
- data/vendor/sass/test/sass/more_results/more_import.css +0 -29
- data/vendor/sass/test/sass/more_templates/_more_partial.sass +0 -2
- data/vendor/sass/test/sass/more_templates/more1.sass +0 -23
- data/vendor/sass/test/sass/more_templates/more_import.sass +0 -11
- data/vendor/sass/test/sass/plugin_test.rb +0 -472
- data/vendor/sass/test/sass/results/alt.css +0 -4
- data/vendor/sass/test/sass/results/basic.css +0 -9
- data/vendor/sass/test/sass/results/compact.css +0 -5
- data/vendor/sass/test/sass/results/complex.css +0 -86
- data/vendor/sass/test/sass/results/compressed.css +0 -1
- data/vendor/sass/test/sass/results/expanded.css +0 -19
- data/vendor/sass/test/sass/results/if.css +0 -3
- data/vendor/sass/test/sass/results/import.css +0 -31
- data/vendor/sass/test/sass/results/import_charset.css +0 -4
- data/vendor/sass/test/sass/results/import_charset_1_8.css +0 -4
- data/vendor/sass/test/sass/results/import_charset_ibm866.css +0 -4
- data/vendor/sass/test/sass/results/line_numbers.css +0 -49
- data/vendor/sass/test/sass/results/mixins.css +0 -95
- data/vendor/sass/test/sass/results/multiline.css +0 -24
- data/vendor/sass/test/sass/results/nested.css +0 -22
- data/vendor/sass/test/sass/results/options.css +0 -1
- data/vendor/sass/test/sass/results/parent_ref.css +0 -13
- data/vendor/sass/test/sass/results/script.css +0 -16
- data/vendor/sass/test/sass/results/scss_import.css +0 -31
- data/vendor/sass/test/sass/results/scss_importee.css +0 -2
- data/vendor/sass/test/sass/results/subdir/nested_subdir/nested_subdir.css +0 -1
- data/vendor/sass/test/sass/results/subdir/subdir.css +0 -3
- data/vendor/sass/test/sass/results/units.css +0 -11
- data/vendor/sass/test/sass/results/warn.css +0 -0
- data/vendor/sass/test/sass/results/warn_imported.css +0 -0
- data/vendor/sass/test/sass/script_conversion_test.rb +0 -285
- data/vendor/sass/test/sass/script_test.rb +0 -514
- data/vendor/sass/test/sass/scss/css_test.rb +0 -922
- data/vendor/sass/test/sass/scss/rx_test.rb +0 -156
- data/vendor/sass/test/sass/scss/scss_test.rb +0 -1273
- data/vendor/sass/test/sass/scss/test_helper.rb +0 -37
- data/vendor/sass/test/sass/templates/_imported_charset_ibm866.sass +0 -4
- data/vendor/sass/test/sass/templates/_imported_charset_utf8.sass +0 -4
- data/vendor/sass/test/sass/templates/_partial.sass +0 -2
- data/vendor/sass/test/sass/templates/alt.sass +0 -16
- data/vendor/sass/test/sass/templates/basic.sass +0 -23
- data/vendor/sass/test/sass/templates/bork1.sass +0 -2
- data/vendor/sass/test/sass/templates/bork2.sass +0 -2
- data/vendor/sass/test/sass/templates/bork3.sass +0 -2
- data/vendor/sass/test/sass/templates/bork4.sass +0 -2
- data/vendor/sass/test/sass/templates/bork5.sass +0 -3
- data/vendor/sass/test/sass/templates/compact.sass +0 -17
- data/vendor/sass/test/sass/templates/complex.sass +0 -305
- data/vendor/sass/test/sass/templates/compressed.sass +0 -15
- data/vendor/sass/test/sass/templates/expanded.sass +0 -17
- data/vendor/sass/test/sass/templates/if.sass +0 -11
- data/vendor/sass/test/sass/templates/import.sass +0 -12
- data/vendor/sass/test/sass/templates/import_charset.sass +0 -7
- data/vendor/sass/test/sass/templates/import_charset_1_8.sass +0 -4
- data/vendor/sass/test/sass/templates/import_charset_ibm866.sass +0 -9
- data/vendor/sass/test/sass/templates/importee.less +0 -2
- data/vendor/sass/test/sass/templates/importee.sass +0 -19
- data/vendor/sass/test/sass/templates/line_numbers.sass +0 -13
- data/vendor/sass/test/sass/templates/mixin_bork.sass +0 -5
- data/vendor/sass/test/sass/templates/mixins.sass +0 -76
- data/vendor/sass/test/sass/templates/multiline.sass +0 -20
- data/vendor/sass/test/sass/templates/nested.sass +0 -25
- data/vendor/sass/test/sass/templates/nested_bork1.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_bork2.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_bork3.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_bork4.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_bork5.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_import.sass +0 -2
- data/vendor/sass/test/sass/templates/nested_mixin_bork.sass +0 -6
- data/vendor/sass/test/sass/templates/options.sass +0 -2
- data/vendor/sass/test/sass/templates/parent_ref.sass +0 -25
- data/vendor/sass/test/sass/templates/script.sass +0 -101
- data/vendor/sass/test/sass/templates/scss_import.scss +0 -11
- data/vendor/sass/test/sass/templates/scss_importee.scss +0 -1
- data/vendor/sass/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +0 -2
- data/vendor/sass/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +0 -3
- data/vendor/sass/test/sass/templates/subdir/subdir.sass +0 -6
- data/vendor/sass/test/sass/templates/units.sass +0 -11
- data/vendor/sass/test/sass/templates/warn.sass +0 -3
- data/vendor/sass/test/sass/templates/warn_imported.sass +0 -4
- data/vendor/sass/test/sass/test_helper.rb +0 -8
- data/vendor/sass/test/sass/util/subset_map_test.rb +0 -91
- data/vendor/sass/test/sass/util_test.rb +0 -266
- data/vendor/sass/test/test_helper.rb +0 -69
- data/vendor/sass/vendor/fssm/Gemfile +0 -3
- data/vendor/sass/vendor/fssm/LICENSE +0 -20
- data/vendor/sass/vendor/fssm/README.markdown +0 -83
- data/vendor/sass/vendor/fssm/Rakefile +0 -11
- data/vendor/sass/vendor/fssm/example.rb +0 -12
- data/vendor/sass/vendor/fssm/fssm.gemspec +0 -24
- data/vendor/sass/vendor/fssm/lib/fssm.rb +0 -37
- data/vendor/sass/vendor/fssm/lib/fssm/backends/fsevents.rb +0 -36
- data/vendor/sass/vendor/fssm/lib/fssm/backends/inotify.rb +0 -26
- data/vendor/sass/vendor/fssm/lib/fssm/backends/polling.rb +0 -25
- data/vendor/sass/vendor/fssm/lib/fssm/backends/rbfsevent.rb +0 -42
- data/vendor/sass/vendor/fssm/lib/fssm/backends/rubycocoa/fsevents.rb +0 -131
- data/vendor/sass/vendor/fssm/lib/fssm/monitor.rb +0 -36
- data/vendor/sass/vendor/fssm/lib/fssm/path.rb +0 -94
- data/vendor/sass/vendor/fssm/lib/fssm/pathname.rb +0 -36
- data/vendor/sass/vendor/fssm/lib/fssm/state/directory.rb +0 -75
- data/vendor/sass/vendor/fssm/lib/fssm/state/file.rb +0 -24
- data/vendor/sass/vendor/fssm/lib/fssm/support.rb +0 -92
- data/vendor/sass/vendor/fssm/lib/fssm/tree.rb +0 -176
- data/vendor/sass/vendor/fssm/lib/fssm/version.rb +0 -3
- data/vendor/sass/vendor/fssm/profile/prof-cache.rb +0 -40
- data/vendor/sass/vendor/fssm/profile/prof-fssm-pathname.html +0 -1231
- data/vendor/sass/vendor/fssm/profile/prof-pathname-rubinius.rb +0 -35
- data/vendor/sass/vendor/fssm/profile/prof-pathname.rb +0 -68
- data/vendor/sass/vendor/fssm/profile/prof-plain-pathname.html +0 -988
- data/vendor/sass/vendor/fssm/profile/prof.html +0 -2379
- data/vendor/sass/vendor/fssm/spec/count_down_latch.rb +0 -151
- data/vendor/sass/vendor/fssm/spec/monitor_spec.rb +0 -202
- data/vendor/sass/vendor/fssm/spec/path_spec.rb +0 -96
- data/vendor/sass/vendor/fssm/spec/root/duck/quack.txt +0 -0
- data/vendor/sass/vendor/fssm/spec/root/file.css +0 -0
- data/vendor/sass/vendor/fssm/spec/root/file.rb +0 -0
- data/vendor/sass/vendor/fssm/spec/root/file.yml +0 -0
- data/vendor/sass/vendor/fssm/spec/root/moo/cow.txt +0 -0
- data/vendor/sass/vendor/fssm/spec/spec_helper.rb +0 -14
- data/vendor/sass/yard/callbacks.rb +0 -29
- data/vendor/sass/yard/default/fulldoc/html/css/common.sass +0 -26
- data/vendor/sass/yard/default/layout/html/footer.erb +0 -12
- data/vendor/sass/yard/inherited_hash.rb +0 -41
data/Rakefile
CHANGED
@@ -1,133 +1,39 @@
|
|
1
|
-
|
1
|
+
require "rake/clean"
|
2
|
+
require "rake/testtask"
|
3
|
+
require "rubygems/package_task"
|
2
4
|
|
3
|
-
|
4
|
-
File.join(File.dirname(__FILE__), path)
|
5
|
-
end
|
5
|
+
task :default => :test
|
6
6
|
|
7
|
-
|
7
|
+
CLEAN.replace %w(pkg doc coverage .yardoc)
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
sh "ruby test/benchmark.rb #{ENV['TIMES']}"
|
9
|
+
def silence_warnings
|
10
|
+
the_real_stderr, $stderr = $stderr, StringIO.new
|
11
|
+
yield
|
12
|
+
ensure
|
13
|
+
$stderr = the_real_stderr
|
15
14
|
end
|
16
15
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
task :default => :"test:rails_compatibility"
|
21
|
-
else
|
22
|
-
task :default => :test
|
16
|
+
desc "Benchmark Haml against ERb. TIMES=n sets the number of runs, default is 1000."
|
17
|
+
task :benchmark do
|
18
|
+
sh "ruby test/benchmark.rb #{ENV['TIMES']}"
|
23
19
|
end
|
24
20
|
|
25
|
-
require 'rake/testtask'
|
26
|
-
|
27
21
|
Rake::TestTask.new do |t|
|
28
|
-
t.libs << 'lib'
|
29
|
-
test_files =
|
30
|
-
test_files.exclude(scope('test/rails/*'))
|
31
|
-
test_files.exclude(scope('test/plugins/*'))
|
32
|
-
test_files.exclude(scope('test/haml/spec/*'))
|
33
|
-
t.test_files = test_files
|
22
|
+
t.libs << 'lib' << 'test'
|
23
|
+
t.test_files = Dir["test/**/*_test.rb"]
|
34
24
|
t.verbose = true
|
35
25
|
end
|
36
|
-
Rake::Task[:test].send(:add_comment, <<END)
|
37
|
-
To run with an alternate version of Rails, make test/rails a symlink to that version.
|
38
|
-
END
|
39
|
-
|
40
|
-
# ----- Packaging -----
|
41
|
-
|
42
|
-
# Don't use Rake::GemPackageTast because we want prerequisites to run
|
43
|
-
# before we load the gemspec.
|
44
|
-
desc "Build all the packages."
|
45
|
-
task :package => [:revision_file, :submodules, :permissions] do
|
46
|
-
version = get_version
|
47
|
-
File.open(scope('VERSION'), 'w') {|f| f.puts(version)}
|
48
|
-
load scope('haml.gemspec')
|
49
|
-
Gem::Builder.new(HAML_GEMSPEC).build
|
50
|
-
sh %{git checkout VERSION}
|
51
|
-
|
52
|
-
pkg = "#{HAML_GEMSPEC.name}-#{HAML_GEMSPEC.version}"
|
53
|
-
mkdir_p "pkg"
|
54
|
-
verbose(true) {mv "#{pkg}.gem", "pkg/#{pkg}.gem"}
|
55
|
-
|
56
|
-
sh %{rm -f pkg/#{pkg}.tar.gz}
|
57
|
-
verbose(false) {HAML_GEMSPEC.files.each {|f| sh %{tar rf pkg/#{pkg}.tar #{f}}}}
|
58
|
-
sh %{gzip pkg/#{pkg}.tar}
|
59
|
-
end
|
60
|
-
|
61
|
-
task :permissions do
|
62
|
-
sh %{chmod -R a+rx bin}
|
63
|
-
sh %{chmod -R a+r .}
|
64
|
-
require 'shellwords'
|
65
|
-
Dir.glob('test/**/*_test.rb') do |file|
|
66
|
-
next if file =~ %r{^test/haml/spec/}
|
67
|
-
sh %{chmod a+rx #{file}}
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
task :revision_file do
|
72
|
-
require scope('lib/haml')
|
73
26
|
|
74
|
-
|
75
|
-
|
76
|
-
File.open(scope('REVISION'), 'w') { |f| f.puts Haml.version[:rev] }
|
77
|
-
elsif release
|
78
|
-
File.open(scope('REVISION'), 'w') { |f| f.puts "(release)" }
|
79
|
-
else
|
80
|
-
File.open(scope('REVISION'), 'w') { |f| f.puts "(unknown)" }
|
81
|
-
end
|
27
|
+
task :set_coverage_env do
|
28
|
+
ENV["COVERAGE"] = "true"
|
82
29
|
end
|
83
30
|
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
desc "Install Haml as a gem. Use SUDO=1 to install with sudo."
|
88
|
-
task :install => [:package] do
|
89
|
-
gem = RUBY_PLATFORM =~ /java/ ? 'jgem' : 'gem'
|
90
|
-
sh %{#{'sudo ' if ENV["SUDO"]}#{gem} install --no-ri pkg/haml-#{get_version}}
|
91
|
-
end
|
31
|
+
desc "Run Simplecov (only works on 1.9)"
|
32
|
+
task :coverage => [:set_coverage_env, :test]
|
92
33
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
version = File.read(scope("VERSION")).strip
|
97
|
-
sh %{rubyforge add_release haml haml "#{name} (v#{version})" pkg/haml-#{version}.gem}
|
98
|
-
sh %{rubyforge add_file haml haml "#{name} (v#{version})" pkg/haml-#{version}.tar.gz}
|
99
|
-
sh %{gem push pkg/haml-#{version}.gem}
|
100
|
-
end
|
101
|
-
|
102
|
-
|
103
|
-
# Ensures that the VERSION file has been updated for a new release.
|
104
|
-
task :check_release do
|
105
|
-
version = File.read(scope("VERSION")).strip
|
106
|
-
raise "There have been changes since current version (#{version})" if changed_since?(version)
|
107
|
-
raise "VERSION_NAME must not be 'Bleeding Edge'" if File.read(scope("VERSION_NAME")) == "Bleeding Edge"
|
108
|
-
end
|
109
|
-
|
110
|
-
# Reads a password from the command line.
|
111
|
-
#
|
112
|
-
# @param name [String] The prompt to use to read the password
|
113
|
-
def read_password(prompt)
|
114
|
-
require 'readline'
|
115
|
-
system "stty -echo"
|
116
|
-
Readline.readline("#{prompt}: ").strip
|
117
|
-
ensure
|
118
|
-
system "stty echo"
|
119
|
-
puts
|
120
|
-
end
|
121
|
-
|
122
|
-
# Returns whether or not the repository, or specific files,
|
123
|
-
# has/have changed since a given revision.
|
124
|
-
#
|
125
|
-
# @param rev [String] The revision to check against
|
126
|
-
# @param files [Array<String>] The files to check.
|
127
|
-
# If this is empty, checks the entire repository
|
128
|
-
def changed_since?(rev, *files)
|
129
|
-
IO.popen("git diff --exit-code #{rev} #{files.join(' ')}") {}
|
130
|
-
return !$?.success?
|
34
|
+
gemspec = File.expand_path("../haml.gemspec", __FILE__)
|
35
|
+
if File.exist? gemspec
|
36
|
+
Gem::PackageTask.new(eval(File.read(gemspec))) { |pkg| }
|
131
37
|
end
|
132
38
|
|
133
39
|
task :submodules do
|
@@ -137,198 +43,59 @@ task :submodules do
|
|
137
43
|
end
|
138
44
|
end
|
139
45
|
|
140
|
-
task :release_edge do
|
141
|
-
ensure_git_cleanup do
|
142
|
-
puts "#{'=' * 50} Running rake release_edge"
|
143
|
-
|
144
|
-
sh %{git checkout master}
|
145
|
-
sh %{git reset --hard origin/master}
|
146
|
-
sh %{rake package}
|
147
|
-
version = get_version
|
148
|
-
sh %{rubyforge add_release haml haml "Bleeding Edge (v#{version})" pkg/haml-#{version}.gem}
|
149
|
-
sh %{gem push pkg/haml-#{version}.gem}
|
150
|
-
end
|
151
|
-
end
|
152
|
-
|
153
|
-
# Get the version string. If this is being installed from Git,
|
154
|
-
# this includes the proper prerelease version.
|
155
|
-
def get_version
|
156
|
-
written_version = File.read(scope('VERSION').strip)
|
157
|
-
return written_version unless File.exist?(scope('.git'))
|
158
|
-
|
159
|
-
# Get the current master branch version
|
160
|
-
version = written_version.split('.')
|
161
|
-
version.map! {|n| n =~ /^[0-9]+$/ ? n.to_i : n}
|
162
|
-
return written_version unless version.size == 5 && version[3] == "alpha" # prerelease
|
163
|
-
|
164
|
-
return written_version if (commit_count = `git log --pretty=oneline --first-parent stable.. | wc -l`).empty?
|
165
|
-
version[4] = commit_count.strip
|
166
|
-
version.join('.')
|
167
|
-
end
|
168
|
-
|
169
|
-
task :watch_for_update do
|
170
|
-
sh %{ruby extra/update_watch.rb}
|
171
|
-
end
|
172
|
-
|
173
|
-
# ----- Documentation -----
|
174
|
-
|
175
|
-
task :rdoc do
|
176
|
-
puts '=' * 100, <<END, '=' * 100
|
177
|
-
Haml uses the YARD documentation system (http://github.com/lsegal/yard).
|
178
|
-
Install the yard gem and then run "rake doc".
|
179
|
-
END
|
180
|
-
end
|
181
|
-
|
182
46
|
begin
|
183
|
-
|
47
|
+
silence_warnings do
|
48
|
+
require 'yard'
|
49
|
+
end
|
184
50
|
|
185
51
|
namespace :doc do
|
186
|
-
task :sass do
|
187
|
-
require 'sass'
|
188
|
-
Dir[scope("yard/default/**/*.sass")].each do |sass|
|
189
|
-
File.open(sass.gsub(/sass$/, 'css'), 'w') do |f|
|
190
|
-
f.write(Sass::Engine.new(File.read(sass)).render)
|
191
|
-
end
|
192
|
-
end
|
193
|
-
end
|
194
|
-
|
195
52
|
desc "List all undocumented methods and classes."
|
196
53
|
task :undocumented do
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
!(object.type == :method && object.is_alias?)"
|
202
|
-
OPTS
|
203
|
-
Rake::Task['yard'].execute
|
54
|
+
command = 'yard --list --query '
|
55
|
+
command << '"object.docstring.blank? && '
|
56
|
+
command << '!(object.type == :method && object.is_alias?)"'
|
57
|
+
sh command
|
204
58
|
end
|
205
59
|
end
|
206
60
|
|
207
|
-
|
208
|
-
|
209
|
-
list.exclude('lib/haml/template/patch.rb')
|
210
|
-
list.exclude('lib/haml/template/plugin.rb')
|
211
|
-
list.exclude('lib/haml/railtie.rb')
|
212
|
-
list.exclude('lib/haml/helpers/action_view_mods.rb')
|
213
|
-
list.exclude('lib/haml/helpers/xss_mods.rb')
|
214
|
-
end.to_a
|
215
|
-
t.options << '--incremental' if Rake.application.top_level_tasks.include?('redoc')
|
216
|
-
t.options += FileList.new(scope('yard/*.rb')).to_a.map {|f| ['-e', f]}.flatten
|
217
|
-
files = FileList.new(scope('doc-src/*')).to_a.sort_by {|s| s.size} + %w[MIT-LICENSE VERSION]
|
218
|
-
t.options << '--files' << files.join(',')
|
219
|
-
t.options << '--template-path' << scope('yard')
|
220
|
-
t.options << '--title' << ENV["YARD_TITLE"] if ENV["YARD_TITLE"]
|
61
|
+
desc "Generate documentation"
|
62
|
+
task(:doc) {sh "yard"}
|
221
63
|
|
222
|
-
|
223
|
-
|
224
|
-
require 'shellwords'
|
225
|
-
t.options.concat(Shellwords.shellwords(ENV["YARD_OPTS"]))
|
226
|
-
end
|
227
|
-
end
|
228
|
-
end
|
229
|
-
Rake::Task['yard'].prerequisites.insert(0, 'doc:sass')
|
230
|
-
Rake::Task['yard'].instance_variable_set('@comment', nil)
|
64
|
+
desc "Generate documentation incrementally"
|
65
|
+
task(:redoc) {sh "yard -c"}
|
231
66
|
|
232
|
-
desc "Generate Documentation"
|
233
|
-
task :doc => :yard
|
234
|
-
task :redoc => :yard
|
235
67
|
rescue LoadError
|
236
|
-
desc "Generate Documentation"
|
237
|
-
task :doc => :rdoc
|
238
|
-
task :yard => :rdoc
|
239
|
-
end
|
240
|
-
|
241
|
-
task :pages do
|
242
|
-
puts "#{'=' * 50} Running rake pages"
|
243
|
-
ensure_git_cleanup do
|
244
|
-
sh %{git checkout haml-pages}
|
245
|
-
sh %{git reset --hard origin/haml-pages}
|
246
|
-
|
247
|
-
Dir.chdir("/var/www/haml-pages") do
|
248
|
-
sh %{git fetch origin}
|
249
|
-
|
250
|
-
sh %{git checkout stable}
|
251
|
-
sh %{git reset --hard origin/stable}
|
252
|
-
|
253
|
-
sh %{git checkout haml-pages}
|
254
|
-
sh %{git reset --hard origin/haml-pages}
|
255
|
-
sh %{rake build --trace}
|
256
|
-
sh %{mkdir -p tmp}
|
257
|
-
sh %{touch tmp/restart.txt}
|
258
|
-
end
|
259
|
-
end
|
260
68
|
end
|
261
69
|
|
262
|
-
# ----- Coverage -----
|
263
|
-
|
264
|
-
begin
|
265
|
-
require 'rcov/rcovtask'
|
266
|
-
|
267
|
-
Rcov::RcovTask.new do |t|
|
268
|
-
t.test_files = FileList[scope('test/**/*_test.rb')]
|
269
|
-
t.rcov_opts << '-x' << '"^\/"'
|
270
|
-
if ENV['NON_NATIVE']
|
271
|
-
t.rcov_opts << "--no-rcovrt"
|
272
|
-
end
|
273
|
-
t.verbose = true
|
274
|
-
end
|
275
|
-
rescue LoadError; end
|
276
|
-
|
277
|
-
# ----- Profiling -----
|
278
|
-
|
279
|
-
begin
|
280
|
-
require 'ruby-prof'
|
281
|
-
|
282
70
|
desc <<END
|
283
|
-
|
71
|
+
Profile Haml.
|
284
72
|
TIMES=n sets the number of runs. Defaults to 1000.
|
285
73
|
FILE=str sets the file to profile. Defaults to 'standard'
|
286
74
|
OUTPUT=str sets the ruby-prof output format.
|
287
75
|
Can be Flat, CallInfo, or Graph. Defaults to Flat. Defaults to Flat.
|
288
76
|
END
|
289
|
-
|
290
|
-
|
291
|
-
|
77
|
+
task :profile do
|
78
|
+
times = (ENV['TIMES'] || '1000').to_i
|
79
|
+
file = ENV['FILE']
|
292
80
|
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
obj = Object.new
|
297
|
-
Haml::Engine.new(file).def_method(obj, :render)
|
298
|
-
result = RubyProf.profile { times.times { obj.render } }
|
299
|
-
|
300
|
-
RubyProf.const_get("#{(ENV['OUTPUT'] || 'Flat').capitalize}Printer").new(result).print
|
301
|
-
end
|
302
|
-
rescue LoadError; end
|
303
|
-
|
304
|
-
# ----- Testing Multiple Rails Versions -----
|
81
|
+
require 'bundler/setup'
|
82
|
+
require 'ruby-prof'
|
83
|
+
require 'haml'
|
305
84
|
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
"v2.2.3",
|
311
|
-
"v2.1.2",
|
312
|
-
]
|
313
|
-
rails_versions << "v2.0.5" if RUBY_VERSION =~ /^1\.8/
|
85
|
+
file = File.read(File.expand_path("../test/templates/#{file || 'standard'}.haml", __FILE__))
|
86
|
+
obj = Object.new
|
87
|
+
Haml::Engine.new(file, :ugly => true).def_method(obj, :render)
|
88
|
+
result = RubyProf.profile { times.times { obj.render } }
|
314
89
|
|
315
|
-
|
316
|
-
Dir.chdir "test/rails" do
|
317
|
-
sh %{git checkout #{version}}
|
318
|
-
end
|
319
|
-
puts "Testing Rails #{version}"
|
320
|
-
Rake::Task['test'].reenable
|
321
|
-
Rake::Task['test'].execute
|
90
|
+
RubyProf.const_get("#{(ENV['OUTPUT'] || 'Flat').capitalize}Printer").new(result).print
|
322
91
|
end
|
323
92
|
|
324
93
|
def gemfiles
|
325
|
-
@gemfiles ||=
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
reject {|f| RUBY_VERSION !~ /^1\.8/ && f =~ /Gemfile\.rails-2\.[0-2]/}
|
331
|
-
end
|
94
|
+
@gemfiles ||= begin
|
95
|
+
Dir[File.dirname(__FILE__) + '/test/gemfiles/Gemfile.*'].
|
96
|
+
reject {|f| f =~ /\.lock$/}.
|
97
|
+
reject {|f| RUBY_VERSION >= '1.9' && f =~ /2\.[0-2]/}
|
98
|
+
end
|
332
99
|
end
|
333
100
|
|
334
101
|
def with_each_gemfile
|
@@ -346,7 +113,7 @@ namespace :test do
|
|
346
113
|
namespace :bundles do
|
347
114
|
desc "Install all dependencies necessary to test Haml."
|
348
115
|
task :install do
|
349
|
-
with_each_gemfile {sh "bundle
|
116
|
+
with_each_gemfile {sh "bundle"}
|
350
117
|
end
|
351
118
|
|
352
119
|
desc "Update all dependencies for testing Haml."
|
@@ -357,63 +124,7 @@ namespace :test do
|
|
357
124
|
|
358
125
|
desc "Test all supported versions of rails. This takes a while."
|
359
126
|
task :rails_compatibility => 'test:bundles:install' do
|
360
|
-
`rm -rf test/rails`
|
361
|
-
`rm -rf test/plugins`
|
362
127
|
with_each_gemfile {sh "bundle exec rake test"}
|
363
128
|
end
|
364
|
-
|
365
|
-
|
366
|
-
# ----- Handling Updates -----
|
367
|
-
|
368
|
-
def email_on_error
|
369
|
-
yield
|
370
|
-
rescue Exception => e
|
371
|
-
IO.popen("sendmail nex342@gmail.com", "w") do |sm|
|
372
|
-
sm << "From: nex3@nex-3.com\n" <<
|
373
|
-
"To: nex342@gmail.com\n" <<
|
374
|
-
"Subject: Exception when running rake #{Rake.application.top_level_tasks.join(', ')}\n" <<
|
375
|
-
e.message << "\n\n" <<
|
376
|
-
e.backtrace.join("\n")
|
377
|
-
end
|
378
|
-
ensure
|
379
|
-
raise e if e
|
380
|
-
end
|
381
|
-
|
382
|
-
def ensure_git_cleanup
|
383
|
-
email_on_error {yield}
|
384
|
-
ensure
|
385
|
-
sh %{git reset --hard HEAD}
|
386
|
-
sh %{git clean -xdf}
|
387
|
-
sh %{git checkout master}
|
388
|
-
end
|
389
|
-
|
390
|
-
task :handle_update do
|
391
|
-
email_on_error do
|
392
|
-
unless ENV["REF"] =~ %r{^refs/heads/(master|stable|haml-pages)$}
|
393
|
-
puts "#{'=' * 20} Ignoring rake handle_update REF=#{ENV["REF"].inspect}"
|
394
|
-
next
|
395
|
-
end
|
396
|
-
branch = $1
|
397
|
-
|
398
|
-
puts
|
399
|
-
puts
|
400
|
-
puts '=' * 150
|
401
|
-
puts "Running rake handle_update REF=#{ENV["REF"].inspect}"
|
402
|
-
|
403
|
-
sh %{git fetch origin}
|
404
|
-
sh %{git checkout stable}
|
405
|
-
sh %{git reset --hard origin/stable}
|
406
|
-
sh %{git checkout master}
|
407
|
-
sh %{git reset --hard origin/master}
|
408
|
-
|
409
|
-
case branch
|
410
|
-
when "master"
|
411
|
-
sh %{rake release_edge --trace}
|
412
|
-
when "stable", "haml-pages"
|
413
|
-
sh %{rake pages --trace}
|
414
|
-
end
|
415
|
-
|
416
|
-
puts 'Done running handle_update'
|
417
|
-
puts '=' * 150
|
418
|
-
end
|
129
|
+
task :rc => :rails_compatibility
|
419
130
|
end
|