haml 4.0.7 → 4.1.0.alpha.2
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -23
- data/README.md +3 -2
- data/REFERENCE.md +24 -9
- data/Rakefile +5 -4
- data/lib/haml/buffer.rb +27 -26
- data/lib/haml/compiler.rb +71 -70
- data/lib/haml/engine.rb +16 -26
- data/lib/haml/exec.rb +9 -7
- data/lib/haml/filters.rb +16 -22
- data/lib/haml/helpers.rb +97 -74
- data/lib/haml/helpers/action_view_extensions.rb +2 -2
- data/lib/haml/helpers/action_view_mods.rb +10 -3
- data/lib/haml/options.rb +6 -14
- data/lib/haml/parser.rb +184 -182
- data/lib/haml/util.rb +67 -78
- data/lib/haml/version.rb +1 -1
- data/test/engine_test.rb +80 -71
- data/test/gemfiles/Gemfile.rails-3.0.x +1 -1
- data/test/gemfiles/Gemfile.rails-3.1.x +1 -1
- data/test/gemfiles/Gemfile.rails-3.2.x +1 -1
- data/test/gemfiles/Gemfile.rails-4.0.x +1 -1
- data/test/gemfiles/Gemfile.rails-4.0.x.lock +101 -0
- data/test/helper_test.rb +85 -33
- data/test/parser_test.rb +22 -0
- data/test/template_test.rb +1 -29
- data/test/templates/with_bom.haml +1 -0
- data/test/test_helper.rb +4 -0
- data/test/util_test.rb +7 -1
- metadata +39 -44
- data/test/haml-spec/LICENSE +0 -14
- data/test/haml-spec/README.md +0 -106
- data/test/haml-spec/lua_haml_spec.lua +0 -38
- data/test/haml-spec/perl_haml_test.pl +0 -81
- data/test/haml-spec/ruby_haml_test.rb +0 -23
- data/test/haml-spec/tests.json +0 -660
@@ -0,0 +1,101 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ../../..
|
3
|
+
specs:
|
4
|
+
rails (4.0.0.beta1)
|
5
|
+
actionmailer (= 4.0.0.beta1)
|
6
|
+
actionpack (= 4.0.0.beta1)
|
7
|
+
activerecord (= 4.0.0.beta1)
|
8
|
+
activesupport (= 4.0.0.beta1)
|
9
|
+
bundler (>= 1.3.0, < 2.0)
|
10
|
+
railties (= 4.0.0.beta1)
|
11
|
+
sprockets-rails (~> 2.0.0.rc4)
|
12
|
+
|
13
|
+
PATH
|
14
|
+
remote: /Users/norman/work/haml
|
15
|
+
specs:
|
16
|
+
haml (4.0.3)
|
17
|
+
tilt
|
18
|
+
|
19
|
+
GEM
|
20
|
+
remote: http://rubygems.org/
|
21
|
+
specs:
|
22
|
+
actionmailer (4.0.0.beta1)
|
23
|
+
actionpack (= 4.0.0.beta1)
|
24
|
+
mail (~> 2.5.3)
|
25
|
+
actionpack (4.0.0.beta1)
|
26
|
+
activesupport (= 4.0.0.beta1)
|
27
|
+
builder (~> 3.1.0)
|
28
|
+
erubis (~> 2.7.0)
|
29
|
+
rack (~> 1.5.2)
|
30
|
+
rack-test (~> 0.6.2)
|
31
|
+
activemodel (4.0.0.beta1)
|
32
|
+
activesupport (= 4.0.0.beta1)
|
33
|
+
builder (~> 3.1.0)
|
34
|
+
activerecord (4.0.0.beta1)
|
35
|
+
activemodel (= 4.0.0.beta1)
|
36
|
+
activerecord-deprecated_finders (~> 0.0.3)
|
37
|
+
activesupport (= 4.0.0.beta1)
|
38
|
+
arel (~> 4.0.0.beta1)
|
39
|
+
activerecord-deprecated_finders (0.0.3)
|
40
|
+
activesupport (4.0.0.beta1)
|
41
|
+
i18n (~> 0.6.2)
|
42
|
+
minitest (~> 4.2)
|
43
|
+
multi_json (~> 1.3)
|
44
|
+
thread_safe (~> 0.1)
|
45
|
+
tzinfo (~> 0.3.33)
|
46
|
+
arel (4.0.0)
|
47
|
+
atomic (1.1.9)
|
48
|
+
builder (3.1.4)
|
49
|
+
erubis (2.7.0)
|
50
|
+
hike (1.2.2)
|
51
|
+
i18n (0.6.4)
|
52
|
+
json (1.8.0)
|
53
|
+
mail (2.5.4)
|
54
|
+
mime-types (~> 1.16)
|
55
|
+
treetop (~> 1.4.8)
|
56
|
+
mime-types (1.23)
|
57
|
+
minitest (4.7.4)
|
58
|
+
multi_json (1.7.3)
|
59
|
+
nokogiri (1.5.9)
|
60
|
+
polyglot (0.3.3)
|
61
|
+
rack (1.5.2)
|
62
|
+
rack-test (0.6.2)
|
63
|
+
rack (>= 1.0)
|
64
|
+
railties (4.0.0.beta1)
|
65
|
+
actionpack (= 4.0.0.beta1)
|
66
|
+
activesupport (= 4.0.0.beta1)
|
67
|
+
rake (>= 0.8.7)
|
68
|
+
rdoc (~> 3.4)
|
69
|
+
thor (>= 0.17.0, < 2.0)
|
70
|
+
rake (10.0.4)
|
71
|
+
rbench (0.2.3)
|
72
|
+
rdoc (3.12.2)
|
73
|
+
json (~> 1.4)
|
74
|
+
sprockets (2.9.3)
|
75
|
+
hike (~> 1.2)
|
76
|
+
multi_json (~> 1.0)
|
77
|
+
rack (~> 1.0)
|
78
|
+
tilt (~> 1.1, != 1.3.0)
|
79
|
+
sprockets-rails (2.0.0.rc4)
|
80
|
+
actionpack (>= 3.0)
|
81
|
+
activesupport (>= 3.0)
|
82
|
+
sprockets (~> 2.8)
|
83
|
+
thor (0.18.1)
|
84
|
+
thread_safe (0.1.0)
|
85
|
+
atomic
|
86
|
+
tilt (1.4.1)
|
87
|
+
treetop (1.4.12)
|
88
|
+
polyglot
|
89
|
+
polyglot (>= 0.3.1)
|
90
|
+
tzinfo (0.3.37)
|
91
|
+
|
92
|
+
PLATFORMS
|
93
|
+
ruby
|
94
|
+
|
95
|
+
DEPENDENCIES
|
96
|
+
bundler (~> 1.3.0)
|
97
|
+
haml!
|
98
|
+
minitest
|
99
|
+
nokogiri
|
100
|
+
rails (~> 4.0.0.beta1)!
|
101
|
+
rbench
|
data/test/helper_test.rb
CHANGED
@@ -14,16 +14,6 @@ module Haml::Helpers
|
|
14
14
|
def something_that_uses_haml_concat
|
15
15
|
haml_concat('foo').to_s
|
16
16
|
end
|
17
|
-
|
18
|
-
def render_something_with_haml_concat
|
19
|
-
haml_concat "<p>"
|
20
|
-
end
|
21
|
-
|
22
|
-
def render_something_with_haml_tag_and_concat
|
23
|
-
haml_tag 'p' do
|
24
|
-
haml_concat '<foo>'
|
25
|
-
end
|
26
|
-
end
|
27
17
|
end
|
28
18
|
|
29
19
|
class HelperTest < MiniTest::Unit::TestCase
|
@@ -58,15 +48,6 @@ class HelperTest < MiniTest::Unit::TestCase
|
|
58
48
|
super
|
59
49
|
end
|
60
50
|
|
61
|
-
def test_rendering_with_escapes
|
62
|
-
output = render(<<-HAML, :action_view)
|
63
|
-
- render_something_with_haml_concat
|
64
|
-
- render_something_with_haml_tag_and_concat
|
65
|
-
- render_something_with_haml_concat
|
66
|
-
HAML
|
67
|
-
assert_equal("<p>\n<p>\n <foo>\n</p>\n<p>\n", output)
|
68
|
-
end
|
69
|
-
|
70
51
|
def test_flatten
|
71
52
|
assert_equal("FooBar", Haml::Helpers.flatten("FooBar"))
|
72
53
|
|
@@ -140,16 +121,16 @@ HAML
|
|
140
121
|
def test_form_tag
|
141
122
|
# This is usually provided by ActionController::Base.
|
142
123
|
def @base.protect_against_forgery?; false; end
|
143
|
-
|
144
|
-
|
124
|
+
assert_equal(<<HTML, render(<<HAML, :action_view))
|
125
|
+
<form accept-charset="UTF-8" action="foo" method="post">#{rails_form_opener}
|
126
|
+
<p>bar</p>
|
127
|
+
<strong>baz</strong>
|
128
|
+
</form>
|
129
|
+
HTML
|
145
130
|
= form_tag 'foo' do
|
146
131
|
%p bar
|
147
132
|
%strong baz
|
148
133
|
HAML
|
149
|
-
fragment = Nokogiri::HTML.fragment(rendered)
|
150
|
-
assert_equal 'foo', fragment.css('form').first.attributes['action'].to_s
|
151
|
-
assert_equal 'bar', fragment.css('form p').first.text.strip
|
152
|
-
assert_equal 'baz', fragment.css('form strong').first.text.strip
|
153
134
|
end
|
154
135
|
|
155
136
|
def test_pre
|
@@ -244,10 +225,11 @@ HAML
|
|
244
225
|
|
245
226
|
def test_form_tag_in_helper_with_string_block
|
246
227
|
def @base.protect_against_forgery?; false; end
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
228
|
+
assert_equal(<<HTML, render(<<HAML, :action_view))
|
229
|
+
<form accept-charset="UTF-8" action="/foo" method="post">#{rails_form_opener}bar</form>
|
230
|
+
HTML
|
231
|
+
= wacky_form
|
232
|
+
HAML
|
251
233
|
end
|
252
234
|
|
253
235
|
def test_haml_tag_name_attribute_with_id
|
@@ -306,8 +288,12 @@ HAML
|
|
306
288
|
assert_equal("<p id='foo&bar'>baz</p>\n", render("%p{:id => 'foo&bar'} baz", :escape_html => true))
|
307
289
|
end
|
308
290
|
|
309
|
-
def
|
310
|
-
assert_equal("<br class='foo' />\n", render("- haml_tag :br, :class => 'foo'"))
|
291
|
+
def test_haml_tag_autoclosed_tags_are_closed_xhtml
|
292
|
+
assert_equal("<br class='foo' />\n", render("- haml_tag :br, :class => 'foo'", :format => :xhtml))
|
293
|
+
end
|
294
|
+
|
295
|
+
def test_haml_tag_autoclosed_tags_are_closed_html
|
296
|
+
assert_equal("<br class='foo'>\n", render("- haml_tag :br, :class => 'foo'", :format => :html5))
|
311
297
|
end
|
312
298
|
|
313
299
|
def test_haml_tag_with_class_array
|
@@ -338,7 +324,8 @@ HAML
|
|
338
324
|
end
|
339
325
|
|
340
326
|
def test_haml_tag_flags
|
341
|
-
assert_equal("<p />\n", render("- haml_tag :p, :/"))
|
327
|
+
assert_equal("<p />\n", render("- haml_tag :p, :/", :format => :xhtml))
|
328
|
+
assert_equal("<p>\n", render("- haml_tag :p, :/", :format => :html5))
|
342
329
|
assert_equal("<p>kumquat</p>\n", render("- haml_tag :p, :< do\n kumquat"))
|
343
330
|
|
344
331
|
assert_raises(Haml::Error) { render("- haml_tag :p, 'foo', :/") }
|
@@ -385,6 +372,41 @@ HTML
|
|
385
372
|
HAML
|
386
373
|
end
|
387
374
|
|
375
|
+
def test_haml_tag_if_positive
|
376
|
+
assert_equal(<<HTML, render(<<HAML))
|
377
|
+
<div class='conditional'>
|
378
|
+
<p>A para</p>
|
379
|
+
</div>
|
380
|
+
HTML
|
381
|
+
- haml_tag_if true, '.conditional' do
|
382
|
+
%p A para
|
383
|
+
HAML
|
384
|
+
end
|
385
|
+
|
386
|
+
def test_haml_tag_if_positive_with_attributes
|
387
|
+
assert_equal(<<HTML, render(<<HAML))
|
388
|
+
<div class='conditional' foo='bar'>
|
389
|
+
<p>A para</p>
|
390
|
+
</div>
|
391
|
+
HTML
|
392
|
+
- haml_tag_if true, '.conditional', {:foo => 'bar'} do
|
393
|
+
%p A para
|
394
|
+
HAML
|
395
|
+
end
|
396
|
+
|
397
|
+
def test_haml_tag_if_negative
|
398
|
+
assert_equal(<<HTML, render(<<HAML))
|
399
|
+
<p>A para</p>
|
400
|
+
HTML
|
401
|
+
- haml_tag_if false, '.conditional' do
|
402
|
+
%p A para
|
403
|
+
HAML
|
404
|
+
end
|
405
|
+
|
406
|
+
def test_haml_tag_if_error_return
|
407
|
+
assert_raises(Haml::Error) { render("= haml_tag_if false, '.conditional' do\n %p Hello") }
|
408
|
+
end
|
409
|
+
|
388
410
|
def test_is_haml
|
389
411
|
assert(!ActionView::Base.new.is_haml?)
|
390
412
|
assert_equal("true\n", render("= is_haml?"))
|
@@ -559,7 +581,7 @@ HAML
|
|
559
581
|
|
560
582
|
def test_escape_once_leaves_numeric_references
|
561
583
|
assert_equal ""><&  ", Haml::Helpers.escape_once('"><&  ') #decimal
|
562
|
-
|
584
|
+
assert_equal ""><&  ", Haml::Helpers.escape_once('"><&  ') #hexadecimal
|
563
585
|
end
|
564
586
|
|
565
587
|
def test_escape_once_encoding
|
@@ -571,6 +593,36 @@ HAML
|
|
571
593
|
$stderr = old_stderr
|
572
594
|
end
|
573
595
|
|
596
|
+
def test_html_attrs_xhtml
|
597
|
+
assert_equal("<html lang='en-US' xml:lang='en-US' xmlns='http://www.w3.org/1999/xhtml'></html>\n",
|
598
|
+
render("%html{html_attrs}", :format => :xhtml))
|
599
|
+
end
|
600
|
+
|
601
|
+
def test_html_attrs_html4
|
602
|
+
assert_equal("<html lang='en-US'></html>\n",
|
603
|
+
render("%html{html_attrs}", :format => :html4))
|
604
|
+
end
|
605
|
+
|
606
|
+
def test_html_attrs_html5
|
607
|
+
assert_equal("<html lang='en-US'></html>\n",
|
608
|
+
render("%html{html_attrs}", :format => :html5))
|
609
|
+
end
|
610
|
+
|
611
|
+
def test_html_attrs_xhtml_other_lang
|
612
|
+
assert_equal("<html lang='es-AR' xml:lang='es-AR' xmlns='http://www.w3.org/1999/xhtml'></html>\n",
|
613
|
+
render("%html{html_attrs('es-AR')}", :format => :xhtml))
|
614
|
+
end
|
615
|
+
|
616
|
+
def test_html_attrs_html4_other_lang
|
617
|
+
assert_equal("<html lang='es-AR'></html>\n",
|
618
|
+
render("%html{html_attrs('es-AR')}", :format => :html4))
|
619
|
+
end
|
620
|
+
|
621
|
+
def test_html_attrs_html5_other_lang
|
622
|
+
assert_equal("<html lang='es-AR'></html>\n",
|
623
|
+
render("%html{html_attrs('es-AR')}", :format => :html5))
|
624
|
+
end
|
625
|
+
|
574
626
|
def test_escape_once_should_work_on_frozen_strings
|
575
627
|
begin
|
576
628
|
Haml::Helpers.escape_once('foo'.freeze)
|
data/test/parser_test.rb
CHANGED
@@ -94,6 +94,28 @@ module Haml
|
|
94
94
|
end
|
95
95
|
end
|
96
96
|
|
97
|
+
test "revealed conditional comments are detected" do
|
98
|
+
text = "some revealed text"
|
99
|
+
cond = "[cond]"
|
100
|
+
|
101
|
+
node = parse("/!#{cond} #{text}").children[0]
|
102
|
+
|
103
|
+
assert_equal text, node.value[:text]
|
104
|
+
assert_equal cond, node.value[:conditional]
|
105
|
+
assert node.value[:revealed]
|
106
|
+
end
|
107
|
+
|
108
|
+
test "hidden conditional comments are detected" do
|
109
|
+
text = "some revealed text"
|
110
|
+
cond = "[cond]"
|
111
|
+
|
112
|
+
node = parse("/#{cond} #{text}").children[0]
|
113
|
+
|
114
|
+
assert_equal text, node.value[:text]
|
115
|
+
assert_equal cond, node.value[:conditional]
|
116
|
+
refute node.value[:revealed]
|
117
|
+
end
|
118
|
+
|
97
119
|
private
|
98
120
|
|
99
121
|
def parse(haml, options = nil)
|
data/test/template_test.rb
CHANGED
@@ -83,12 +83,7 @@ class TemplateTest < MiniTest::Unit::TestCase
|
|
83
83
|
def assert_renders_correctly(name, &render_method)
|
84
84
|
old_options = Haml::Template.options.dup
|
85
85
|
Haml::Template.options[:escape_html] = false
|
86
|
-
|
87
|
-
(ActionPack::VERSION::MAJOR == 2 && ActionPack::VERSION::MINOR < 2)
|
88
|
-
render_method ||= proc { |n| @base.render(n) }
|
89
|
-
else
|
90
|
-
render_method ||= proc { |n| @base.render(:file => n) }
|
91
|
-
end
|
86
|
+
render_method ||= proc { |n| @base.render(:file => n) }
|
92
87
|
|
93
88
|
silence_warnings do
|
94
89
|
load_result(name).split("\n").zip(render_method[name].split("\n")).each_with_index do |pair, line|
|
@@ -116,29 +111,6 @@ class TemplateTest < MiniTest::Unit::TestCase
|
|
116
111
|
end
|
117
112
|
end
|
118
113
|
|
119
|
-
def test_render_method_returning_null_with_ugly
|
120
|
-
@base.instance_eval do
|
121
|
-
def empty
|
122
|
-
nil
|
123
|
-
end
|
124
|
-
def render_something(&block)
|
125
|
-
capture(self, &block)
|
126
|
-
end
|
127
|
-
end
|
128
|
-
|
129
|
-
content_to_render = "%h1 This is part of the broken view.\n= render_something do |thing|\n = thing.empty do\n = 'test'"
|
130
|
-
result = render(content_to_render, :ugly => true)
|
131
|
-
expected_result = "<h1>This is part of the broken view.</h1>\n"
|
132
|
-
assert_equal(expected_result, result)
|
133
|
-
end
|
134
|
-
|
135
|
-
def test_simple_rendering_with_ugly
|
136
|
-
content_to_render = "%p test\n= capture { 'foo' }"
|
137
|
-
result = render(content_to_render, :ugly => true)
|
138
|
-
expected_result = "<p>test</p>\nfoo\n"
|
139
|
-
assert_equal(expected_result, result)
|
140
|
-
end
|
141
|
-
|
142
114
|
def test_templates_should_render_correctly_with_render_proc
|
143
115
|
assert_renders_correctly("standard") do |name|
|
144
116
|
engine = Haml::Engine.new(File.read(File.dirname(__FILE__) + "/templates/#{name}.haml"), :format => :xhtml)
|
@@ -0,0 +1 @@
|
|
1
|
+
BOMG
|
data/test/test_helper.rb
CHANGED
@@ -65,6 +65,10 @@ class MiniTest::Unit::TestCase
|
|
65
65
|
Haml::Util.silence_warnings(&block)
|
66
66
|
end
|
67
67
|
|
68
|
+
def rails_form_opener
|
69
|
+
'<div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /></div>'
|
70
|
+
end
|
71
|
+
|
68
72
|
def assert_raises_message(klass, message)
|
69
73
|
yield
|
70
74
|
rescue Exception => e
|
data/test/util_test.rb
CHANGED
@@ -4,7 +4,6 @@ class UtilTest < MiniTest::Unit::TestCase
|
|
4
4
|
include Haml::Util
|
5
5
|
|
6
6
|
def test_powerset
|
7
|
-
return unless Set[Set[]] == Set[Set[]] # There's a bug in Ruby 1.8.6 that breaks nested set equality
|
8
7
|
assert_equal([[].to_set].to_set,
|
9
8
|
powerset([]))
|
10
9
|
assert_equal([[].to_set, [1].to_set].to_set,
|
@@ -60,4 +59,11 @@ RUBY
|
|
60
59
|
c.send(static_method_name(:static_method, false, false),
|
61
60
|
"brush your teeth", "play with fire"))
|
62
61
|
end
|
62
|
+
|
63
|
+
def test_check_encoding_does_not_destoy_the_given_string
|
64
|
+
string_with_bom = File.read(File.dirname(__FILE__) + '/templates/with_bom.haml', :encoding => Encoding::UTF_8)
|
65
|
+
original = string_with_bom.dup
|
66
|
+
check_encoding(string_with_bom)
|
67
|
+
assert_equal(original, string_with_bom)
|
68
|
+
end
|
63
69
|
end
|
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: 4.0.
|
4
|
+
version: 4.1.0.alpha.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Weizenbaum
|
@@ -10,73 +10,73 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2013-11-05 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
+
type: :runtime
|
16
17
|
name: tilt
|
18
|
+
prerelease: false
|
17
19
|
requirement: !ruby/object:Gem::Requirement
|
18
20
|
requirements:
|
19
21
|
- - ">="
|
20
22
|
- !ruby/object:Gem::Version
|
21
23
|
version: '0'
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - ">="
|
27
27
|
- !ruby/object:Gem::Version
|
28
28
|
version: '0'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
|
+
type: :development
|
30
31
|
name: rails
|
32
|
+
prerelease: false
|
31
33
|
requirement: !ruby/object:Gem::Requirement
|
32
34
|
requirements:
|
33
35
|
- - ">="
|
34
36
|
- !ruby/object:Gem::Version
|
35
37
|
version: 3.0.0
|
36
|
-
type: :development
|
37
|
-
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - ">="
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: 3.0.0
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
|
+
type: :development
|
44
45
|
name: rbench
|
46
|
+
prerelease: false
|
45
47
|
requirement: !ruby/object:Gem::Requirement
|
46
48
|
requirements:
|
47
49
|
- - ">="
|
48
50
|
- !ruby/object:Gem::Version
|
49
51
|
version: '0'
|
50
|
-
type: :development
|
51
|
-
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - ">="
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
|
+
type: :development
|
58
59
|
name: minitest
|
60
|
+
prerelease: false
|
59
61
|
requirement: !ruby/object:Gem::Requirement
|
60
62
|
requirements:
|
61
63
|
- - ">="
|
62
64
|
- !ruby/object:Gem::Version
|
63
65
|
version: '0'
|
64
|
-
type: :development
|
65
|
-
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - ">="
|
69
69
|
- !ruby/object:Gem::Version
|
70
70
|
version: '0'
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
|
+
type: :development
|
72
73
|
name: nokogiri
|
74
|
+
prerelease: false
|
73
75
|
requirement: !ruby/object:Gem::Requirement
|
74
76
|
requirements:
|
75
77
|
- - "~>"
|
76
78
|
- !ruby/object:Gem::Version
|
77
79
|
version: 1.5.10
|
78
|
-
type: :development
|
79
|
-
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - "~>"
|
@@ -96,14 +96,6 @@ executables:
|
|
96
96
|
extensions: []
|
97
97
|
extra_rdoc_files: []
|
98
98
|
files:
|
99
|
-
- ".yardopts"
|
100
|
-
- CHANGELOG.md
|
101
|
-
- FAQ.md
|
102
|
-
- MIT-LICENSE
|
103
|
-
- README.md
|
104
|
-
- REFERENCE.md
|
105
|
-
- Rakefile
|
106
|
-
- bin/haml
|
107
99
|
- lib/haml.rb
|
108
100
|
- lib/haml/buffer.rb
|
109
101
|
- lib/haml/compiler.rb
|
@@ -112,40 +104,39 @@ files:
|
|
112
104
|
- lib/haml/exec.rb
|
113
105
|
- lib/haml/filters.rb
|
114
106
|
- lib/haml/helpers.rb
|
115
|
-
- lib/haml/helpers/action_view_extensions.rb
|
116
|
-
- lib/haml/helpers/action_view_mods.rb
|
117
|
-
- lib/haml/helpers/action_view_xss_mods.rb
|
118
|
-
- lib/haml/helpers/safe_erubis_template.rb
|
119
|
-
- lib/haml/helpers/xss_mods.rb
|
120
107
|
- lib/haml/options.rb
|
121
108
|
- lib/haml/parser.rb
|
122
109
|
- lib/haml/railtie.rb
|
123
110
|
- lib/haml/sass_rails_filter.rb
|
124
111
|
- lib/haml/template.rb
|
125
|
-
- lib/haml/template/options.rb
|
126
|
-
- lib/haml/template/plugin.rb
|
127
112
|
- lib/haml/util.rb
|
128
113
|
- lib/haml/version.rb
|
114
|
+
- lib/haml/helpers/action_view_extensions.rb
|
115
|
+
- lib/haml/helpers/action_view_mods.rb
|
116
|
+
- lib/haml/helpers/action_view_xss_mods.rb
|
117
|
+
- lib/haml/helpers/safe_erubis_template.rb
|
118
|
+
- lib/haml/helpers/xss_mods.rb
|
119
|
+
- lib/haml/template/options.rb
|
120
|
+
- lib/haml/template/plugin.rb
|
121
|
+
- bin/haml
|
129
122
|
- test/engine_test.rb
|
123
|
+
- test/filters_test.rb
|
124
|
+
- test/helper_test.rb
|
125
|
+
- test/parser_test.rb
|
126
|
+
- test/template_test.rb
|
127
|
+
- test/test_helper.rb
|
128
|
+
- test/util_test.rb
|
130
129
|
- test/erb/_av_partial_1.erb
|
131
130
|
- test/erb/_av_partial_2.erb
|
132
131
|
- test/erb/action_view.erb
|
133
132
|
- test/erb/standard.erb
|
134
|
-
- test/filters_test.rb
|
135
133
|
- test/gemfiles/Gemfile.rails-3.0.x
|
136
134
|
- test/gemfiles/Gemfile.rails-3.1.x
|
137
135
|
- test/gemfiles/Gemfile.rails-3.2.x
|
138
136
|
- test/gemfiles/Gemfile.rails-4.0.x
|
139
|
-
- test/
|
140
|
-
- test/haml-spec/README.md
|
141
|
-
- test/haml-spec/lua_haml_spec.lua
|
142
|
-
- test/haml-spec/perl_haml_test.pl
|
143
|
-
- test/haml-spec/ruby_haml_test.rb
|
144
|
-
- test/haml-spec/tests.json
|
145
|
-
- test/helper_test.rb
|
137
|
+
- test/gemfiles/Gemfile.rails-4.0.x.lock
|
146
138
|
- test/markaby/standard.mab
|
147
139
|
- test/mocks/article.rb
|
148
|
-
- test/parser_test.rb
|
149
140
|
- test/results/content_for_layout.xhtml
|
150
141
|
- test/results/eval_suppressed.xhtml
|
151
142
|
- test/results/helpers.xhtml
|
@@ -164,7 +155,6 @@ files:
|
|
164
155
|
- test/results/tag_parsing.xhtml
|
165
156
|
- test/results/very_basic.xhtml
|
166
157
|
- test/results/whitespace_handling.xhtml
|
167
|
-
- test/template_test.rb
|
168
158
|
- test/templates/_av_partial_1.haml
|
169
159
|
- test/templates/_av_partial_1_ugly.haml
|
170
160
|
- test/templates/_av_partial_2.haml
|
@@ -197,8 +187,14 @@ files:
|
|
197
187
|
- test/templates/tag_parsing.haml
|
198
188
|
- test/templates/very_basic.haml
|
199
189
|
- test/templates/whitespace_handling.haml
|
200
|
-
- test/
|
201
|
-
-
|
190
|
+
- test/templates/with_bom.haml
|
191
|
+
- Rakefile
|
192
|
+
- ".yardopts"
|
193
|
+
- CHANGELOG.md
|
194
|
+
- FAQ.md
|
195
|
+
- MIT-LICENSE
|
196
|
+
- README.md
|
197
|
+
- REFERENCE.md
|
202
198
|
homepage: http://haml.info/
|
203
199
|
licenses:
|
204
200
|
- MIT
|
@@ -226,22 +222,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
226
222
|
requirements:
|
227
223
|
- - ">="
|
228
224
|
- !ruby/object:Gem::Version
|
229
|
-
version:
|
225
|
+
version: 1.9.2
|
230
226
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
231
227
|
requirements:
|
232
|
-
- - "
|
228
|
+
- - ">"
|
233
229
|
- !ruby/object:Gem::Version
|
234
|
-
version:
|
230
|
+
version: 1.3.1
|
235
231
|
requirements: []
|
236
232
|
rubyforge_project:
|
237
|
-
rubygems_version: 2.
|
233
|
+
rubygems_version: 2.1.5
|
238
234
|
signing_key:
|
239
235
|
specification_version: 4
|
240
236
|
summary: An elegant, structured (X)HTML/XML templating engine.
|
241
237
|
test_files:
|
242
238
|
- test/engine_test.rb
|
243
239
|
- test/filters_test.rb
|
244
|
-
- test/haml-spec/ruby_haml_test.rb
|
245
240
|
- test/helper_test.rb
|
246
241
|
- test/parser_test.rb
|
247
242
|
- test/template_test.rb
|