haml 2.2.9 → 2.2.10

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/VERSION CHANGED
@@ -1 +1 @@
1
- 2.2.9
1
+ 2.2.10
@@ -175,14 +175,15 @@ module Haml
175
175
  @haml_buffer = buffer
176
176
  end
177
177
 
178
- eval(precompiled, scope, @options[:filename], @options[:line])
178
+ str = eval(precompiled + ";" + precompiled_method_return_value,
179
+ scope, @options[:filename], @options[:line])
179
180
 
180
181
  # Get rid of the current buffer
181
182
  scope_object.instance_eval do
182
183
  @haml_buffer = buffer.upper
183
184
  end
184
185
 
185
- buffer.buffer
186
+ str
186
187
  end
187
188
  alias_method :to_html, :render
188
189
 
@@ -59,7 +59,7 @@ require 'hpricot'
59
59
 
60
60
  module Haml
61
61
  # Converts HTML documents into Haml templates.
62
- # Depends on [Hpricot](http://code.whytheluckystiff.net/hpricot/) for HTML parsing.
62
+ # Depends on [Hpricot](http://github.com/whymirror/hpricot) for HTML parsing.
63
63
  #
64
64
  # Example usage:
65
65
  #
@@ -85,7 +85,7 @@ module Haml
85
85
  DOCTYPE_REGEX = /(\d\.\d)?[\s]*([a-z]*)/i
86
86
 
87
87
  # The Regex that matches a literal string or symbol value
88
- LITERAL_VALUE_REGEX = /:(\w*)|(["'])([^\\#'"]|\\.)*\2/
88
+ LITERAL_VALUE_REGEX = /:(\w*)|(["'])((?![\\#]|\2).|\\.)*\2/
89
89
 
90
90
  private
91
91
 
@@ -99,11 +99,17 @@ __in_erb_template = true
99
99
  END
100
100
  postamble = <<END.gsub("\n", ";")
101
101
  @haml_buffer = @haml_buffer.upper
102
- _erbout
102
+ #{precompiled_method_return_value}
103
103
  END
104
104
  preamble + locals_code(local_names) + precompiled + postamble
105
105
  end
106
106
 
107
+ # Returns the string used as the return value of the precompiled method.
108
+ # This method exists so it can be monkeypatched to return modified values.
109
+ def precompiled_method_return_value
110
+ "_erbout"
111
+ end
112
+
107
113
  def locals_code(names)
108
114
  names = names.keys if Hash == names
109
115
 
@@ -727,6 +733,7 @@ END
727
733
  raise SyntaxError.new("Self-closing tags can't have content.", last_line - 1) if self_closing && !value.empty?
728
734
 
729
735
  self_closing ||= !!( !block_opened? && value.empty? && @options[:autoclose].include?(tag_name) )
736
+ value = nil if value.empty? && (block_opened? || self_closing)
730
737
 
731
738
  dont_indent_next_line =
732
739
  (nuke_outer_whitespace && !block_opened?) ||
@@ -751,7 +758,7 @@ END
751
758
  return if tag_closed
752
759
  else
753
760
  flush_merged_text
754
- content = value.empty? || parse ? 'nil' : value.dump
761
+ content = parse ? 'nil' : value.inspect
755
762
  if attributes_hashes.empty?
756
763
  attributes_hashes = ''
757
764
  elsif attributes_hashes.size == 1
@@ -769,7 +776,7 @@ END
769
776
 
770
777
  return if self_closing
771
778
 
772
- if value.empty?
779
+ if value.nil?
773
780
  push_and_tabulate([:element, [tag_name, nuke_outer_whitespace, nuke_inner_whitespace]])
774
781
  @output_tabs += 1 unless nuke_inner_whitespace
775
782
  return
@@ -11,6 +11,31 @@ module Haml
11
11
  #
12
12
  # @return [Hash<Symbol, Object>]
13
13
  attr_accessor :options
14
+
15
+ # Enables integration with the Rails 2.2.5+ XSS protection,
16
+ # if it's available and enabled.
17
+ #
18
+ # @return [Boolean] Whether the XSS integration was enabled.
19
+ def try_enabling_xss_integration
20
+ return false unless ActionView::Base.respond_to?(:xss_safe?) && ActionView::Base.xss_safe?
21
+
22
+ Haml::Template.options[:escape_html] = true
23
+
24
+ Haml::Util.module_eval {def rails_xss_safe?; true; end}
25
+
26
+ require 'haml/helpers/xss_mods'
27
+ Haml::Helpers.send(:include, Haml::Helpers::XssMods)
28
+
29
+ Haml::Precompiler.module_eval do
30
+ def precompiled_method_return_value_with_haml_xss
31
+ "(#{precompiled_method_return_value_without_haml_xss}).html_safe!"
32
+ end
33
+ alias_method :precompiled_method_return_value_without_haml_xss, :precompiled_method_return_value
34
+ alias_method :precompiled_method_return_value, :precompiled_method_return_value_with_haml_xss
35
+ end
36
+
37
+ true
38
+ end
14
39
  end
15
40
  end
16
41
 
@@ -27,19 +52,13 @@ else
27
52
  require 'haml/template/patch'
28
53
  end
29
54
 
30
- if ActionView::Base.respond_to?(:xss_safe?) && ActionView::Base.xss_safe?
31
- Haml::Template.options[:escape_html] = true
32
-
33
- module Haml::Util
34
- def rails_xss_safe?
35
- true
36
- end
37
- end
38
-
39
- require 'haml/helpers/xss_mods'
40
- module Haml::Helpers
41
- include XssMods
42
- end
55
+ # Enable XSS integration. Use Rails' after_initialize method if possible
56
+ # so that integration will be checked after the rails_xss plugin is loaded
57
+ # (for Rails 2.3.* where it's not enabled by default).
58
+ if defined?(Rails.configuration.after_initialize)
59
+ Rails.configuration.after_initialize {Haml::Template.try_enabling_xss_integration}
60
+ else
61
+ Haml::Template.try_enabling_xss_integration
43
62
  end
44
63
 
45
64
  if defined?(RAILS_ROOT)
@@ -107,7 +107,7 @@ module Sass
107
107
  MIXIN_INCLUDE_CHAR = ?+
108
108
 
109
109
  # The regex that matches properties of the form <tt>name: prop</tt>.
110
- PROPERTY_NEW_MATCHER = /^[^\s:"]+\s*[=:](\s|$)/
110
+ PROPERTY_NEW_MATCHER = /^[^\s:"\[]+\s*[=:](\s|$)/
111
111
 
112
112
  # The regex that matches and extracts data from
113
113
  # properties of the form <tt>name: prop</tt>.
@@ -123,6 +123,17 @@ class EngineTest < Test::Unit::TestCase
123
123
  assert_equal("<p class='3'>foo</p>", render("%p{:class => 1+2} foo").chomp)
124
124
  end
125
125
 
126
+ def test_dynamic_attributes_with_no_content
127
+ assert_equal(<<HTML, render(<<HAML))
128
+ <p>
129
+ <a href='http://haml-lang.com'></a>
130
+ </p>
131
+ HTML
132
+ %p
133
+ %a{:href => "http://" + "haml-lang.com"}
134
+ HAML
135
+ end
136
+
126
137
  def test_nil_should_render_empty_tag
127
138
  assert_equal("<div class='no_attributes'></div>",
128
139
  render(".no_attributes{:nil => nil}").chomp)
@@ -241,6 +241,9 @@ END
241
241
 
242
242
  ## XSS Protection Tests
243
243
 
244
+ # In order to enable these, either test against Rails 3.0
245
+ # or test against Rails 2.2.5+ with the rails_xss plugin
246
+ # (http://github.com/NZKoz/rails_xss) in test/plugins.
244
247
  if Haml::Util.rails_xss_safe?
245
248
  def test_escape_html_option_set
246
249
  assert Haml::Template.options[:escape_html]
@@ -273,5 +276,13 @@ END
273
276
  def test_xss_protection_with_mixed_strings_in_interpolation
274
277
  assert_equal("Foo & Bar &amp; Baz\n", render('Foo #{"&".html_safe!} Bar #{"&"} Baz', :action_view))
275
278
  end
279
+
280
+ def test_rendered_string_is_html_safe
281
+ assert(render("Foo").html_safe?)
282
+ end
283
+
284
+ def test_rendered_string_is_html_safe_with_action_view
285
+ assert(render("Foo", :action_view).html_safe?)
286
+ end
276
287
  end
277
288
  end
@@ -673,6 +673,17 @@ foo {
673
673
  CSS
674
674
  end
675
675
 
676
+ def test_attribute_selector_with_spaces
677
+ assert_equal(<<CSS, render(<<SASS))
678
+ a b[foo = bar] {
679
+ c: d; }
680
+ CSS
681
+ a
682
+ b[foo = bar]
683
+ c: d
684
+ SASS
685
+ end
686
+
676
687
  def test_quoted_colon
677
688
  assert_equal(<<CSS, render(<<SASS))
678
689
  a b[foo="bar: baz"] {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: haml
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.9
4
+ version: 2.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Weizenbaum
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-10-17 00:00:00 -07:00
13
+ date: 2009-10-29 00:00:00 -07:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -43,200 +43,200 @@ executables:
43
43
  extensions: []
44
44
 
45
45
  extra_rdoc_files:
46
- - VERSION
47
- - MIT-LICENSE
48
- - README.md
49
46
  - VERSION_NAME
50
- - REVISION
51
47
  - CONTRIBUTING
48
+ - README.md
49
+ - MIT-LICENSE
50
+ - VERSION
51
+ - REVISION
52
52
  files:
53
53
  - rails/init.rb
54
54
  - lib/sass.rb
55
- - lib/sass/plugin/rails.rb
56
- - lib/sass/plugin/merb.rb
55
+ - lib/sass/css.rb
56
+ - lib/sass/script/node.rb
57
+ - lib/sass/script/number.rb
58
+ - lib/sass/script/operation.rb
59
+ - lib/sass/script/literal.rb
60
+ - lib/sass/script/functions.rb
61
+ - lib/sass/script/bool.rb
62
+ - lib/sass/script/color.rb
63
+ - lib/sass/script/lexer.rb
64
+ - lib/sass/script/parser.rb
65
+ - lib/sass/script/variable.rb
66
+ - lib/sass/script/string.rb
67
+ - lib/sass/script/funcall.rb
68
+ - lib/sass/script/unary_operation.rb
57
69
  - lib/sass/script.rb
58
70
  - lib/sass/error.rb
71
+ - lib/sass/repl.rb
72
+ - lib/sass/tree/comment_node.rb
73
+ - lib/sass/tree/node.rb
59
74
  - lib/sass/tree/for_node.rb
60
- - lib/sass/tree/mixin_node.rb
61
- - lib/sass/tree/if_node.rb
62
- - lib/sass/tree/prop_node.rb
63
- - lib/sass/tree/mixin_def_node.rb
64
- - lib/sass/tree/variable_node.rb
65
75
  - lib/sass/tree/debug_node.rb
66
- - lib/sass/tree/directive_node.rb
67
- - lib/sass/tree/node.rb
68
- - lib/sass/tree/comment_node.rb
69
- - lib/sass/tree/rule_node.rb
70
76
  - lib/sass/tree/import_node.rb
71
77
  - lib/sass/tree/while_node.rb
78
+ - lib/sass/tree/mixin_def_node.rb
79
+ - lib/sass/tree/if_node.rb
80
+ - lib/sass/tree/mixin_node.rb
81
+ - lib/sass/tree/directive_node.rb
82
+ - lib/sass/tree/rule_node.rb
83
+ - lib/sass/tree/prop_node.rb
84
+ - lib/sass/tree/variable_node.rb
85
+ - lib/sass/plugin/rails.rb
86
+ - lib/sass/plugin/merb.rb
87
+ - lib/sass/environment.rb
72
88
  - lib/sass/files.rb
73
- - lib/sass/plugin.rb
74
- - lib/sass/script/parser.rb
75
- - lib/sass/script/color.rb
76
- - lib/sass/script/string.rb
77
- - lib/sass/script/unary_operation.rb
78
- - lib/sass/script/number.rb
79
- - lib/sass/script/funcall.rb
80
- - lib/sass/script/variable.rb
81
- - lib/sass/script/functions.rb
82
- - lib/sass/script/bool.rb
83
- - lib/sass/script/lexer.rb
84
- - lib/sass/script/operation.rb
85
- - lib/sass/script/node.rb
86
- - lib/sass/script/literal.rb
87
- - lib/sass/css.rb
88
89
  - lib/sass/engine.rb
89
- - lib/sass/repl.rb
90
- - lib/sass/environment.rb
91
- - lib/haml/util.rb
90
+ - lib/sass/plugin.rb
91
+ - lib/haml/filters.rb
92
92
  - lib/haml/exec.rb
93
- - lib/haml/html.rb
94
93
  - lib/haml/error.rb
95
- - lib/haml/buffer.rb
96
94
  - lib/haml/template.rb
97
- - lib/haml/template/plugin.rb
95
+ - lib/haml/shared.rb
96
+ - lib/haml/engine.rb
97
+ - lib/haml/version.rb
98
98
  - lib/haml/template/patch.rb
99
+ - lib/haml/template/plugin.rb
99
100
  - lib/haml/helpers.rb
100
- - lib/haml/version.rb
101
- - lib/haml/filters.rb
102
- - lib/haml/engine.rb
101
+ - lib/haml/buffer.rb
102
+ - lib/haml/html.rb
103
103
  - lib/haml/precompiler.rb
104
- - lib/haml/shared.rb
105
- - lib/haml/helpers/action_view_extensions.rb
104
+ - lib/haml/util.rb
106
105
  - lib/haml/helpers/action_view_mods.rb
107
106
  - lib/haml/helpers/xss_mods.rb
107
+ - lib/haml/helpers/action_view_extensions.rb
108
108
  - lib/haml.rb
109
- - bin/css2sass
110
109
  - bin/sass
111
- - bin/haml
110
+ - bin/css2sass
112
111
  - bin/html2haml
112
+ - bin/haml
113
+ - test/linked_rails.rb
114
+ - test/benchmark.rb
113
115
  - test/sass/script_test.rb
116
+ - test/sass/css2sass_test.rb
117
+ - test/sass/results/units.css
118
+ - test/sass/results/parent_ref.css
119
+ - test/sass/results/compressed.css
120
+ - test/sass/results/complex.css
121
+ - test/sass/results/compact.css
122
+ - test/sass/results/mixins.css
123
+ - test/sass/results/line_numbers.css
124
+ - test/sass/results/alt.css
125
+ - test/sass/results/subdir/subdir.css
126
+ - test/sass/results/subdir/nested_subdir/nested_subdir.css
127
+ - test/sass/results/nested.css
128
+ - test/sass/results/import.css
129
+ - test/sass/results/multiline.css
130
+ - test/sass/results/script.css
131
+ - test/sass/results/basic.css
132
+ - test/sass/results/expanded.css
133
+ - test/sass/more_results/more_import.css
114
134
  - test/sass/more_results/more1_with_line_comments.css
115
135
  - test/sass/more_results/more1.css
116
- - test/sass/more_results/more_import.css
117
- - test/sass/templates/bork2.sass
136
+ - test/sass/templates/basic.sass
137
+ - test/sass/templates/bork.sass
118
138
  - test/sass/templates/compressed.sass
119
- - test/sass/templates/expanded.sass
120
139
  - test/sass/templates/import.sass
121
- - test/sass/templates/subdir/subdir.sass
122
- - test/sass/templates/subdir/nested_subdir/_nested_partial.sass
123
- - test/sass/templates/subdir/nested_subdir/nested_subdir.sass
124
- - test/sass/templates/basic.sass
140
+ - test/sass/templates/script.sass
141
+ - test/sass/templates/expanded.sass
142
+ - test/sass/templates/nested.sass
125
143
  - test/sass/templates/_partial.sass
126
- - test/sass/templates/units.sass
127
- - test/sass/templates/mixins.sass
128
- - test/sass/templates/multiline.sass
129
144
  - test/sass/templates/line_numbers.sass
130
- - test/sass/templates/nested.sass
131
145
  - test/sass/templates/compact.sass
146
+ - test/sass/templates/subdir/subdir.sass
147
+ - test/sass/templates/subdir/nested_subdir/nested_subdir.sass
148
+ - test/sass/templates/subdir/nested_subdir/_nested_partial.sass
149
+ - test/sass/templates/parent_ref.sass
132
150
  - test/sass/templates/alt.sass
133
- - test/sass/templates/script.sass
134
151
  - test/sass/templates/importee.sass
135
- - test/sass/templates/parent_ref.sass
136
- - test/sass/templates/bork.sass
152
+ - test/sass/templates/mixins.sass
153
+ - test/sass/templates/multiline.sass
154
+ - test/sass/templates/units.sass
137
155
  - test/sass/templates/complex.sass
138
- - test/sass/css2sass_test.rb
139
- - test/sass/plugin_test.rb
156
+ - test/sass/templates/bork2.sass
157
+ - test/sass/more_templates/_more_partial.sass
140
158
  - test/sass/more_templates/more1.sass
141
159
  - test/sass/more_templates/more_import.sass
142
- - test/sass/more_templates/_more_partial.sass
143
160
  - test/sass/functions_test.rb
144
- - test/sass/results/nested.css
145
- - test/sass/results/units.css
146
- - test/sass/results/script.css
147
- - test/sass/results/subdir/nested_subdir/nested_subdir.css
148
- - test/sass/results/subdir/subdir.css
149
- - test/sass/results/import.css
150
- - test/sass/results/compact.css
151
- - test/sass/results/expanded.css
152
- - test/sass/results/alt.css
153
- - test/sass/results/mixins.css
154
- - test/sass/results/complex.css
155
- - test/sass/results/compressed.css
156
- - test/sass/results/parent_ref.css
157
- - test/sass/results/line_numbers.css
158
- - test/sass/results/multiline.css
159
- - test/sass/results/basic.css
160
161
  - test/sass/engine_test.rb
162
+ - test/sass/plugin_test.rb
161
163
  - test/haml/mocks/article.rb
162
- - test/haml/util_test.rb
163
- - test/haml/template_test.rb
164
- - test/haml/html2haml_test.rb
165
- - test/haml/rhtml/_av_partial_1.rhtml
164
+ - test/haml/rhtml/_av_partial_2.rhtml
166
165
  - test/haml/rhtml/standard.rhtml
166
+ - test/haml/rhtml/_av_partial_1.rhtml
167
167
  - test/haml/rhtml/action_view.rhtml
168
- - test/haml/rhtml/_av_partial_2.rhtml
169
- - test/haml/helper_test.rb
170
- - test/haml/templates/action_view_ugly.haml
171
- - test/haml/templates/list.haml
172
- - test/haml/templates/_text_area.haml
173
- - test/haml/templates/_partial.haml
174
- - test/haml/templates/nuke_outer_whitespace.haml
175
- - test/haml/templates/render_layout.haml
176
- - test/haml/templates/_av_partial_2.haml
177
- - test/haml/templates/partial_layout.haml
178
- - test/haml/templates/helpful.haml
179
- - test/haml/templates/_av_partial_1_ugly.haml
180
- - test/haml/templates/just_stuff.haml
181
- - test/haml/templates/standard_ugly.haml
182
- - test/haml/templates/silent_script.haml
183
- - test/haml/templates/very_basic.haml
184
- - test/haml/templates/nuke_inner_whitespace.haml
185
- - test/haml/templates/eval_suppressed.haml
186
- - test/haml/templates/tag_parsing.haml
187
- - test/haml/templates/whitespace_handling.haml
188
- - test/haml/templates/partials.haml
189
- - test/haml/templates/standard.haml
190
- - test/haml/templates/partialize.haml
191
- - test/haml/templates/_layout_for_partial.haml
192
- - test/haml/templates/_av_partial_1.haml
193
- - test/haml/templates/filters.haml
194
- - test/haml/templates/_layout.erb
195
- - test/haml/templates/content_for_layout.haml
196
- - test/haml/templates/_av_partial_2_ugly.haml
197
- - test/haml/templates/helpers.haml
198
- - test/haml/templates/original_engine.haml
199
- - test/haml/templates/breakage.haml
200
- - test/haml/templates/action_view.haml
201
- - test/haml/spec/tests.json
202
- - test/haml/spec/lua_haml_spec.lua
168
+ - test/haml/util_test.rb
203
169
  - test/haml/spec/ruby_haml_test.rb
204
170
  - test/haml/spec/README.md
171
+ - test/haml/spec/lua_haml_spec.lua
172
+ - test/haml/spec/tests.json
173
+ - test/haml/html2haml_test.rb
174
+ - test/haml/template_test.rb
175
+ - test/haml/helper_test.rb
176
+ - test/haml/results/tag_parsing.xhtml
205
177
  - test/haml/results/content_for_layout.xhtml
206
- - test/haml/results/just_stuff.xhtml
207
- - test/haml/results/whitespace_handling.xhtml
208
- - test/haml/results/nuke_outer_whitespace.xhtml
209
- - test/haml/results/silent_script.xhtml
210
- - test/haml/results/filters.xhtml
211
- - test/haml/results/standard.xhtml
212
- - test/haml/results/nuke_inner_whitespace.xhtml
213
- - test/haml/results/helpful.xhtml
178
+ - test/haml/results/helpers.xhtml
179
+ - test/haml/results/original_engine.xhtml
214
180
  - test/haml/results/very_basic.xhtml
215
- - test/haml/results/eval_suppressed.xhtml
181
+ - test/haml/results/helpful.xhtml
182
+ - test/haml/results/list.xhtml
216
183
  - test/haml/results/partials.xhtml
184
+ - test/haml/results/eval_suppressed.xhtml
185
+ - test/haml/results/nuke_inner_whitespace.xhtml
186
+ - test/haml/results/whitespace_handling.xhtml
217
187
  - test/haml/results/render_layout.xhtml
218
- - test/haml/results/original_engine.xhtml
219
- - test/haml/results/helpers.xhtml
220
- - test/haml/results/list.xhtml
188
+ - test/haml/results/silent_script.xhtml
189
+ - test/haml/results/standard.xhtml
190
+ - test/haml/results/just_stuff.xhtml
221
191
  - test/haml/results/partial_layout.xhtml
222
- - test/haml/results/tag_parsing.xhtml
192
+ - test/haml/results/filters.xhtml
193
+ - test/haml/results/nuke_outer_whitespace.xhtml
223
194
  - test/haml/markaby/standard.mab
195
+ - test/haml/templates/tag_parsing.haml
196
+ - test/haml/templates/nuke_inner_whitespace.haml
197
+ - test/haml/templates/partial_layout.haml
198
+ - test/haml/templates/_av_partial_2_ugly.haml
199
+ - test/haml/templates/partials.haml
200
+ - test/haml/templates/_layout_for_partial.haml
201
+ - test/haml/templates/original_engine.haml
202
+ - test/haml/templates/helpers.haml
203
+ - test/haml/templates/_layout.erb
204
+ - test/haml/templates/action_view_ugly.haml
205
+ - test/haml/templates/content_for_layout.haml
206
+ - test/haml/templates/silent_script.haml
207
+ - test/haml/templates/very_basic.haml
208
+ - test/haml/templates/render_layout.haml
209
+ - test/haml/templates/filters.haml
210
+ - test/haml/templates/_av_partial_1.haml
211
+ - test/haml/templates/standard_ugly.haml
212
+ - test/haml/templates/_partial.haml
213
+ - test/haml/templates/nuke_outer_whitespace.haml
214
+ - test/haml/templates/breakage.haml
215
+ - test/haml/templates/list.haml
216
+ - test/haml/templates/standard.haml
217
+ - test/haml/templates/whitespace_handling.haml
218
+ - test/haml/templates/eval_suppressed.haml
219
+ - test/haml/templates/action_view.haml
220
+ - test/haml/templates/_av_partial_2.haml
221
+ - test/haml/templates/partialize.haml
222
+ - test/haml/templates/just_stuff.haml
223
+ - test/haml/templates/helpful.haml
224
+ - test/haml/templates/_av_partial_1_ugly.haml
225
+ - test/haml/templates/_text_area.haml
224
226
  - test/haml/engine_test.rb
225
- - test/linked_rails.rb
226
- - test/benchmark.rb
227
227
  - test/test_helper.rb
228
- - extra/sass-mode.el
229
228
  - extra/haml-mode.el
229
+ - extra/sass-mode.el
230
230
  - extra/update_watch.rb
231
231
  - Rakefile
232
232
  - init.rb
233
233
  - .yardopts
234
- - VERSION
235
- - MIT-LICENSE
236
- - README.md
237
234
  - VERSION_NAME
238
- - REVISION
239
235
  - CONTRIBUTING
236
+ - README.md
237
+ - MIT-LICENSE
238
+ - VERSION
239
+ - REVISION
240
240
  has_rdoc: true
241
241
  homepage: http://haml.hamptoncatlin.com/
242
242
  licenses: []
@@ -268,19 +268,19 @@ required_rubygems_version: !ruby/object:Gem::Requirement
268
268
  requirements: []
269
269
 
270
270
  rubyforge_project: haml
271
- rubygems_version: 1.3.5
271
+ rubygems_version: 1.3.4
272
272
  signing_key:
273
273
  specification_version: 3
274
274
  summary: An elegant, structured XHTML/XML templating engine. Comes with Sass, a similar CSS templating engine.
275
275
  test_files:
276
276
  - test/sass/script_test.rb
277
277
  - test/sass/css2sass_test.rb
278
- - test/sass/plugin_test.rb
279
278
  - test/sass/functions_test.rb
280
279
  - test/sass/engine_test.rb
280
+ - test/sass/plugin_test.rb
281
281
  - test/haml/util_test.rb
282
- - test/haml/template_test.rb
282
+ - test/haml/spec/ruby_haml_test.rb
283
283
  - test/haml/html2haml_test.rb
284
+ - test/haml/template_test.rb
284
285
  - test/haml/helper_test.rb
285
- - test/haml/spec/ruby_haml_test.rb
286
286
  - test/haml/engine_test.rb