hamlit 1.7.2 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -3
  3. data/.gitmodules +3 -0
  4. data/.travis.yml +25 -37
  5. data/CHANGELOG.md +18 -0
  6. data/Gemfile +16 -0
  7. data/LICENSE.txt +23 -2
  8. data/README.md +106 -48
  9. data/REFERENCE.md +222 -0
  10. data/Rakefile +77 -19
  11. data/benchmark/boolean_attribute.haml +6 -0
  12. data/benchmark/class_attribute.haml +5 -0
  13. data/benchmark/common_attribute.haml +3 -0
  14. data/benchmark/data_attribute.haml +4 -0
  15. data/benchmark/dynamic_attributes/boolean_attribute.haml +4 -0
  16. data/benchmark/dynamic_attributes/class_attribute.haml +4 -0
  17. data/benchmark/dynamic_attributes/common_attribute.haml +2 -0
  18. data/benchmark/dynamic_attributes/data_attribute.haml +2 -0
  19. data/benchmark/dynamic_attributes/id_attribute.haml +2 -0
  20. data/benchmark/etc/attribute_builder.haml +5 -0
  21. data/benchmark/etc/real_sample.haml +888 -0
  22. data/benchmark/etc/real_sample.rb +11 -0
  23. data/benchmark/etc/static_analyzer.haml +1 -0
  24. data/benchmark/etc/tags.haml +3 -0
  25. data/benchmark/ext/build_data.rb +15 -0
  26. data/benchmark/ext/build_id.rb +13 -0
  27. data/benchmark/id_attribute.haml +3 -0
  28. data/benchmark/plain.haml +4 -0
  29. data/benchmark/script.haml +4 -0
  30. data/benchmark/slim/LICENSE +21 -0
  31. data/{benchmarks → benchmark/slim}/context.rb +2 -4
  32. data/benchmark/slim/run-benchmarks.rb +94 -0
  33. data/{benchmarks → benchmark/slim}/view.erb +3 -3
  34. data/{benchmarks → benchmark/slim}/view.haml +0 -0
  35. data/{benchmarks/view.escaped.slim → benchmark/slim/view.slim} +1 -1
  36. data/benchmark/string_interpolation.haml +2 -0
  37. data/benchmark/utils/benchmark_ips_extension.rb +43 -0
  38. data/bin/bench +85 -0
  39. data/bin/clone +14 -0
  40. data/bin/console +11 -0
  41. data/bin/lineprof +48 -0
  42. data/bin/ruby +3 -0
  43. data/bin/setup +7 -0
  44. data/bin/stackprof +27 -0
  45. data/{test → bin/test} +6 -10
  46. data/{bin → exe}/hamlit +0 -0
  47. data/ext/hamlit/extconf.rb +14 -0
  48. data/ext/hamlit/hamlit.c +512 -0
  49. data/ext/hamlit/houdini/.gitignore +3 -0
  50. data/ext/hamlit/houdini/COPYING +7 -0
  51. data/ext/hamlit/houdini/Makefile +79 -0
  52. data/ext/hamlit/houdini/README.md +59 -0
  53. data/ext/hamlit/houdini/buffer.c +249 -0
  54. data/ext/hamlit/houdini/buffer.h +113 -0
  55. data/ext/hamlit/houdini/houdini.h +46 -0
  56. data/ext/hamlit/houdini/houdini_href_e.c +115 -0
  57. data/ext/hamlit/houdini/houdini_html_e.c +90 -0
  58. data/ext/hamlit/houdini/houdini_html_u.c +122 -0
  59. data/ext/hamlit/houdini/houdini_js_e.c +90 -0
  60. data/ext/hamlit/houdini/houdini_js_u.c +60 -0
  61. data/ext/hamlit/houdini/houdini_uri_e.c +107 -0
  62. data/ext/hamlit/houdini/houdini_uri_u.c +68 -0
  63. data/ext/hamlit/houdini/houdini_xml_e.c +136 -0
  64. data/ext/hamlit/houdini/html_unescape.gperf +258 -0
  65. data/ext/hamlit/houdini/html_unescape.h +754 -0
  66. data/ext/hamlit/houdini/tools/build_table.py +13 -0
  67. data/ext/hamlit/houdini/tools/build_tables.c +51 -0
  68. data/ext/hamlit/houdini/tools/wikipedia_table.txt +2025 -0
  69. data/hamlit.gemspec +30 -31
  70. data/lib/hamlit.rb +3 -1
  71. data/lib/hamlit/attribute_builder.rb +12 -0
  72. data/lib/hamlit/cli.rb +44 -43
  73. data/lib/hamlit/compiler.rb +92 -16
  74. data/lib/hamlit/compiler/attribute_compiler.rb +148 -0
  75. data/lib/hamlit/compiler/children_compiler.rb +111 -0
  76. data/lib/hamlit/compiler/comment_compiler.rb +36 -0
  77. data/lib/hamlit/compiler/doctype_compiler.rb +45 -0
  78. data/lib/hamlit/compiler/script_compiler.rb +97 -0
  79. data/lib/hamlit/compiler/silent_script_compiler.rb +24 -0
  80. data/lib/hamlit/compiler/tag_compiler.rb +69 -0
  81. data/lib/hamlit/engine.rb +12 -7
  82. data/lib/hamlit/error.rb +14 -0
  83. data/lib/hamlit/escapable.rb +12 -0
  84. data/lib/hamlit/filters.rb +65 -0
  85. data/lib/hamlit/filters/base.rb +4 -62
  86. data/lib/hamlit/filters/coffee.rb +9 -7
  87. data/lib/hamlit/filters/css.rb +25 -8
  88. data/lib/hamlit/filters/erb.rb +4 -6
  89. data/lib/hamlit/filters/escaped.rb +11 -9
  90. data/lib/hamlit/filters/javascript.rb +25 -8
  91. data/lib/hamlit/filters/less.rb +9 -7
  92. data/lib/hamlit/filters/markdown.rb +5 -6
  93. data/lib/hamlit/filters/plain.rb +11 -15
  94. data/lib/hamlit/filters/preserve.rb +15 -5
  95. data/lib/hamlit/filters/ruby.rb +3 -5
  96. data/lib/hamlit/filters/sass.rb +9 -7
  97. data/lib/hamlit/filters/scss.rb +9 -7
  98. data/lib/hamlit/filters/text_base.rb +24 -0
  99. data/lib/hamlit/filters/tilt_base.rb +47 -0
  100. data/lib/hamlit/hash_parser.rb +107 -0
  101. data/lib/hamlit/html.rb +9 -6
  102. data/lib/hamlit/identity.rb +12 -0
  103. data/lib/hamlit/object_ref.rb +29 -0
  104. data/lib/hamlit/parser.rb +25 -142
  105. data/lib/hamlit/parser/MIT-LICENSE +20 -0
  106. data/lib/hamlit/parser/README.md +28 -0
  107. data/lib/hamlit/parser/haml_buffer.rb +348 -0
  108. data/lib/hamlit/parser/haml_compiler.rb +553 -0
  109. data/lib/hamlit/parser/haml_error.rb +61 -0
  110. data/lib/hamlit/parser/haml_helpers.rb +727 -0
  111. data/lib/hamlit/parser/haml_options.rb +286 -0
  112. data/lib/hamlit/parser/haml_parser.rb +801 -0
  113. data/lib/hamlit/parser/haml_util.rb +283 -0
  114. data/lib/hamlit/parser/haml_xss_mods.rb +109 -0
  115. data/lib/hamlit/{helpers.rb → rails_helpers.rb} +2 -7
  116. data/lib/hamlit/rails_template.rb +30 -0
  117. data/lib/hamlit/railtie.rb +1 -12
  118. data/lib/hamlit/ruby_expression.rb +31 -0
  119. data/lib/hamlit/static_analyzer.rb +49 -0
  120. data/lib/hamlit/string_interpolation.rb +69 -0
  121. data/lib/hamlit/template.rb +8 -0
  122. data/lib/hamlit/utils.rb +9 -0
  123. data/lib/hamlit/version.rb +1 -1
  124. metadata +116 -324
  125. data/.rspec +0 -2
  126. data/benchmarks/benchmark.rb +0 -110
  127. data/benchmarks/view.slim +0 -17
  128. data/doc/README.md +0 -19
  129. data/doc/engine/indent.md +0 -48
  130. data/doc/engine/new_attribute.md +0 -77
  131. data/doc/engine/old_attributes.md +0 -198
  132. data/doc/engine/silent_script.md +0 -97
  133. data/doc/engine/tag.md +0 -48
  134. data/doc/engine/text.md +0 -64
  135. data/doc/faml/README.md +0 -16
  136. data/doc/faml/engine/indent.md +0 -48
  137. data/doc/faml/engine/old_attributes.md +0 -111
  138. data/doc/faml/engine/silent_script.md +0 -97
  139. data/doc/faml/engine/text.md +0 -59
  140. data/doc/faml/filters/erb.md +0 -24
  141. data/doc/faml/filters/javascript.md +0 -27
  142. data/doc/faml/filters/less.md +0 -57
  143. data/doc/faml/filters/plain.md +0 -25
  144. data/doc/filters/erb.md +0 -31
  145. data/doc/filters/javascript.md +0 -83
  146. data/doc/filters/less.md +0 -57
  147. data/doc/filters/markdown.md +0 -31
  148. data/doc/filters/plain.md +0 -25
  149. data/doc/haml/README.md +0 -15
  150. data/doc/haml/engine/new_attribute.md +0 -77
  151. data/doc/haml/engine/old_attributes.md +0 -142
  152. data/doc/haml/engine/tag.md +0 -48
  153. data/doc/haml/engine/text.md +0 -29
  154. data/doc/haml/filters/erb.md +0 -26
  155. data/doc/haml/filters/javascript.md +0 -76
  156. data/doc/haml/filters/markdown.md +0 -31
  157. data/lib/hamlit/attribute.rb +0 -78
  158. data/lib/hamlit/compilers/attributes.rb +0 -108
  159. data/lib/hamlit/compilers/comment.rb +0 -13
  160. data/lib/hamlit/compilers/doctype.rb +0 -39
  161. data/lib/hamlit/compilers/filter.rb +0 -53
  162. data/lib/hamlit/compilers/new_attribute.rb +0 -115
  163. data/lib/hamlit/compilers/old_attribute.rb +0 -241
  164. data/lib/hamlit/compilers/runtime_attribute.rb +0 -58
  165. data/lib/hamlit/compilers/script.rb +0 -31
  166. data/lib/hamlit/compilers/strip.rb +0 -19
  167. data/lib/hamlit/compilers/text.rb +0 -111
  168. data/lib/hamlit/concerns/attribute_builder.rb +0 -22
  169. data/lib/hamlit/concerns/balanceable.rb +0 -68
  170. data/lib/hamlit/concerns/deprecation.rb +0 -20
  171. data/lib/hamlit/concerns/error.rb +0 -31
  172. data/lib/hamlit/concerns/escapable.rb +0 -17
  173. data/lib/hamlit/concerns/included.rb +0 -28
  174. data/lib/hamlit/concerns/indentable.rb +0 -117
  175. data/lib/hamlit/concerns/lexable.rb +0 -32
  176. data/lib/hamlit/concerns/line_reader.rb +0 -62
  177. data/lib/hamlit/concerns/registerable.rb +0 -24
  178. data/lib/hamlit/concerns/string_interpolation.rb +0 -48
  179. data/lib/hamlit/concerns/whitespace.rb +0 -91
  180. data/lib/hamlit/filters/tilt.rb +0 -41
  181. data/lib/hamlit/parsers/attribute.rb +0 -71
  182. data/lib/hamlit/parsers/comment.rb +0 -30
  183. data/lib/hamlit/parsers/doctype.rb +0 -18
  184. data/lib/hamlit/parsers/filter.rb +0 -18
  185. data/lib/hamlit/parsers/multiline.rb +0 -58
  186. data/lib/hamlit/parsers/script.rb +0 -126
  187. data/lib/hamlit/parsers/tag.rb +0 -83
  188. data/lib/hamlit/parsers/text.rb +0 -28
  189. data/lib/hamlit/temple.rb +0 -9
  190. data/release +0 -6
  191. data/spec/Rakefile +0 -72
  192. data/spec/hamlit/engine/comment_spec.rb +0 -56
  193. data/spec/hamlit/engine/doctype_spec.rb +0 -19
  194. data/spec/hamlit/engine/error_spec.rb +0 -135
  195. data/spec/hamlit/engine/indent_spec.rb +0 -42
  196. data/spec/hamlit/engine/multiline_spec.rb +0 -44
  197. data/spec/hamlit/engine/new_attribute_spec.rb +0 -110
  198. data/spec/hamlit/engine/old_attributes_spec.rb +0 -404
  199. data/spec/hamlit/engine/script_spec.rb +0 -116
  200. data/spec/hamlit/engine/silent_script_spec.rb +0 -213
  201. data/spec/hamlit/engine/tag_spec.rb +0 -295
  202. data/spec/hamlit/engine/text_spec.rb +0 -239
  203. data/spec/hamlit/engine_spec.rb +0 -58
  204. data/spec/hamlit/filters/coffee_spec.rb +0 -60
  205. data/spec/hamlit/filters/css_spec.rb +0 -33
  206. data/spec/hamlit/filters/erb_spec.rb +0 -16
  207. data/spec/hamlit/filters/javascript_spec.rb +0 -82
  208. data/spec/hamlit/filters/less_spec.rb +0 -37
  209. data/spec/hamlit/filters/markdown_spec.rb +0 -30
  210. data/spec/hamlit/filters/plain_spec.rb +0 -15
  211. data/spec/hamlit/filters/ruby_spec.rb +0 -24
  212. data/spec/hamlit/filters/sass_spec.rb +0 -33
  213. data/spec/hamlit/filters/scss_spec.rb +0 -37
  214. data/spec/hamlit/haml_spec.rb +0 -910
  215. data/spec/rails/.gitignore +0 -18
  216. data/spec/rails/.rspec +0 -2
  217. data/spec/rails/Gemfile +0 -19
  218. data/spec/rails/README.rdoc +0 -28
  219. data/spec/rails/Rakefile +0 -6
  220. data/spec/rails/app/assets/images/.keep +0 -0
  221. data/spec/rails/app/assets/javascripts/application.js +0 -15
  222. data/spec/rails/app/assets/stylesheets/application.css +0 -15
  223. data/spec/rails/app/controllers/application_controller.rb +0 -8
  224. data/spec/rails/app/controllers/concerns/.keep +0 -0
  225. data/spec/rails/app/controllers/users_controller.rb +0 -23
  226. data/spec/rails/app/helpers/application_helper.rb +0 -2
  227. data/spec/rails/app/mailers/.keep +0 -0
  228. data/spec/rails/app/models/.keep +0 -0
  229. data/spec/rails/app/models/concerns/.keep +0 -0
  230. data/spec/rails/app/views/application/index.html.haml +0 -18
  231. data/spec/rails/app/views/layouts/application.html.haml +0 -12
  232. data/spec/rails/app/views/users/capture.html.haml +0 -5
  233. data/spec/rails/app/views/users/capture_haml.html.haml +0 -5
  234. data/spec/rails/app/views/users/form.html.haml +0 -2
  235. data/spec/rails/app/views/users/helpers.html.haml +0 -10
  236. data/spec/rails/app/views/users/index.html.haml +0 -9
  237. data/spec/rails/app/views/users/inline.html.haml +0 -6
  238. data/spec/rails/app/views/users/old_attributes.html.haml +0 -5
  239. data/spec/rails/app/views/users/safe_buffer.html.haml +0 -4
  240. data/spec/rails/app/views/users/whitespace.html.haml +0 -4
  241. data/spec/rails/bin/bundle +0 -3
  242. data/spec/rails/bin/rails +0 -8
  243. data/spec/rails/bin/rake +0 -8
  244. data/spec/rails/bin/setup +0 -29
  245. data/spec/rails/bin/spring +0 -15
  246. data/spec/rails/config.ru +0 -4
  247. data/spec/rails/config/application.rb +0 -34
  248. data/spec/rails/config/boot.rb +0 -3
  249. data/spec/rails/config/database.yml +0 -25
  250. data/spec/rails/config/environment.rb +0 -5
  251. data/spec/rails/config/environments/development.rb +0 -41
  252. data/spec/rails/config/environments/production.rb +0 -79
  253. data/spec/rails/config/environments/test.rb +0 -42
  254. data/spec/rails/config/initializers/assets.rb +0 -11
  255. data/spec/rails/config/initializers/backtrace_silencers.rb +0 -7
  256. data/spec/rails/config/initializers/cookies_serializer.rb +0 -3
  257. data/spec/rails/config/initializers/filter_parameter_logging.rb +0 -4
  258. data/spec/rails/config/initializers/inflections.rb +0 -16
  259. data/spec/rails/config/initializers/mime_types.rb +0 -4
  260. data/spec/rails/config/initializers/session_store.rb +0 -3
  261. data/spec/rails/config/initializers/wrap_parameters.rb +0 -14
  262. data/spec/rails/config/locales/en.yml +0 -24
  263. data/spec/rails/config/routes.rb +0 -16
  264. data/spec/rails/config/secrets.yml +0 -22
  265. data/spec/rails/db/schema.rb +0 -16
  266. data/spec/rails/db/seeds.rb +0 -7
  267. data/spec/rails/lib/assets/.keep +0 -0
  268. data/spec/rails/lib/tasks/.keep +0 -0
  269. data/spec/rails/log/.keep +0 -0
  270. data/spec/rails/public/404.html +0 -67
  271. data/spec/rails/public/422.html +0 -67
  272. data/spec/rails/public/500.html +0 -66
  273. data/spec/rails/public/favicon.ico +0 -0
  274. data/spec/rails/public/robots.txt +0 -5
  275. data/spec/rails/spec/hamlit_spec.rb +0 -123
  276. data/spec/rails/spec/rails_helper.rb +0 -56
  277. data/spec/rails/spec/spec_helper.rb +0 -91
  278. data/spec/rails/vendor/assets/javascripts/.keep +0 -0
  279. data/spec/rails/vendor/assets/stylesheets/.keep +0 -0
  280. data/spec/spec_helper.rb +0 -36
  281. data/spec/spec_helper/document_generator.rb +0 -93
  282. data/spec/spec_helper/render_helper.rb +0 -120
  283. data/spec/spec_helper/test_case.rb +0 -55
@@ -0,0 +1,31 @@
1
+ require 'ripper'
2
+
3
+ module Hamlit
4
+ class RubyExpression < Ripper
5
+ class ParseError < StandardError; end
6
+
7
+ def self.syntax_error?(code)
8
+ self.new(code).parse
9
+ false
10
+ rescue ParseError
11
+ true
12
+ end
13
+
14
+ def self.string_literal?(code)
15
+ return false if syntax_error?(code)
16
+
17
+ type, instructions = Ripper.sexp(code)
18
+ return false if type != :program
19
+ return false if instructions.size > 1
20
+
21
+ type, _ = instructions.first
22
+ type == :string_literal
23
+ end
24
+
25
+ private
26
+
27
+ def on_parse_error(*)
28
+ raise ParseError
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,49 @@
1
+ require 'hamlit/ruby_expression'
2
+
3
+ module Hamlit
4
+ class StaticAnalyzer
5
+ STATIC_TOKENS = %i[
6
+ on_tstring_beg on_tstring_end on_tstring_content
7
+ on_embexpr_beg on_embexpr_end
8
+ on_lbracket on_rbracket
9
+ on_qwords_beg on_words_sep on_qwords_sep
10
+ on_lparen on_rparen
11
+ on_lbrace on_rbrace on_label
12
+ on_int on_float on_imaginary
13
+ on_comma on_sp
14
+ ].freeze
15
+
16
+ DYNAMIC_TOKENS = %i[
17
+ on_ident on_period
18
+ ].freeze
19
+
20
+ STATIC_KEYWORDS = %w[
21
+ true false nil
22
+ ].freeze
23
+
24
+ STATIC_OPERATORS = %w[
25
+ =>
26
+ ].freeze
27
+
28
+ def self.static?(exp)
29
+ return false if exp.nil? || exp.strip.empty?
30
+ return false if RubyExpression.syntax_error?(exp)
31
+
32
+ Ripper.lex(exp).each do |(_, col), token, str|
33
+ case token
34
+ when *STATIC_TOKENS
35
+ # noop
36
+ when :on_kw
37
+ return false unless STATIC_KEYWORDS.include?(str)
38
+ when :on_op
39
+ return false unless STATIC_OPERATORS.include?(str)
40
+ when *DYNAMIC_TOKENS
41
+ return false
42
+ else
43
+ return false
44
+ end
45
+ end
46
+ true
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,69 @@
1
+ require 'ripper'
2
+
3
+ module Hamlit::StringInterpolation
4
+ class << self
5
+ # `code` param must be valid string literal
6
+ def compile(code)
7
+ [].tap do |exps|
8
+ tokens = Ripper.lex(code.strip)
9
+ tokens.pop while tokens.last && %i[on_comment on_sp].include?(tokens.last[1])
10
+
11
+ if tokens.size < 2
12
+ raise Hamlit::InternalError.new("Expected token size >= 2 but got: #{tokens.size}")
13
+ end
14
+ compile_tokens!(exps, tokens)
15
+ end
16
+ end
17
+
18
+ private
19
+
20
+ def strip_quotes!(tokens)
21
+ _, type, beg_str = tokens.shift
22
+ if type != :on_tstring_beg
23
+ raise Hamlit::InternalError.new("Expected :on_tstring_beg but got: #{type}")
24
+ end
25
+
26
+ _, type, end_str = tokens.pop
27
+ if type != :on_tstring_end
28
+ raise Hamlit::InternalError.new("Expected :on_tstring_end but got: #{type}")
29
+ end
30
+
31
+ [beg_str, end_str]
32
+ end
33
+
34
+ def compile_tokens!(exps, tokens)
35
+ beg_str, end_str = strip_quotes!(tokens)
36
+
37
+ until tokens.empty?
38
+ _, type, str = tokens.shift
39
+
40
+ case type
41
+ when :on_tstring_content
42
+ exps << [:static, eval("#{beg_str}#{str}#{end_str}")]
43
+ when :on_embexpr_beg
44
+ embedded = shift_balanced_embexpr(tokens)
45
+ exps << [:dynamic, embedded] unless embedded.empty?
46
+ end
47
+ end
48
+ end
49
+
50
+ def shift_balanced_embexpr(tokens)
51
+ String.new.tap do |embedded|
52
+ embexpr_open = 1
53
+
54
+ until tokens.empty?
55
+ _, type, str = tokens.shift
56
+ case type
57
+ when :on_embexpr_beg
58
+ embexpr_open += 1
59
+ when :on_embexpr_end
60
+ embexpr_open -= 1
61
+ break if embexpr_open == 0
62
+ end
63
+
64
+ embedded << str
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -1,6 +1,14 @@
1
1
  require 'temple'
2
2
  require 'hamlit/engine'
3
3
 
4
+ # Load tilt/haml first to override if available
5
+ begin
6
+ require 'haml'
7
+ rescue LoadError
8
+ else
9
+ require 'tilt/haml'
10
+ end
11
+
4
12
  module Hamlit
5
13
  Template = Temple::Templates::Tilt.create(
6
14
  Hamlit::Engine,
@@ -0,0 +1,9 @@
1
+ require 'hamlit/hamlit'
2
+
3
+ module Hamlit
4
+ module Utils
5
+ def self.escape_html_safe(html)
6
+ html.html_safe? ? html : escape_html(html)
7
+ end
8
+ end
9
+ end
@@ -1,3 +1,3 @@
1
1
  module Hamlit
2
- VERSION = "1.7.2"
2
+ VERSION = '2.0.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hamlit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.2
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takashi Kokubun
8
8
  autorequire:
9
- bindir: bin
9
+ bindir: exe
10
10
  cert_chain: []
11
- date: 2015-07-22 00:00:00.000000000 Z
11
+ date: 2015-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: escape_utils
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: benchmark-ips
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: bundler
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -108,20 +94,6 @@ dependencies:
108
94
  - - ">="
109
95
  - !ruby/object:Gem::Version
110
96
  version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: coveralls
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
97
  - !ruby/object:Gem::Dependency
126
98
  name: erubis
127
99
  requirement: !ruby/object:Gem::Requirement
@@ -151,7 +123,7 @@ dependencies:
151
123
  - !ruby/object:Gem::Version
152
124
  version: '0'
153
125
  - !ruby/object:Gem::Dependency
154
- name: haml
126
+ name: less
155
127
  requirement: !ruby/object:Gem::Requirement
156
128
  requirements:
157
129
  - - ">="
@@ -165,49 +137,49 @@ dependencies:
165
137
  - !ruby/object:Gem::Version
166
138
  version: '0'
167
139
  - !ruby/object:Gem::Dependency
168
- name: less
140
+ name: minitest-reporters
169
141
  requirement: !ruby/object:Gem::Requirement
170
142
  requirements:
171
- - - ">="
143
+ - - "~>"
172
144
  - !ruby/object:Gem::Version
173
- version: '0'
145
+ version: '1.1'
174
146
  type: :development
175
147
  prerelease: false
176
148
  version_requirements: !ruby/object:Gem::Requirement
177
149
  requirements:
178
- - - ">="
150
+ - - "~>"
179
151
  - !ruby/object:Gem::Version
180
- version: '0'
152
+ version: '1.1'
181
153
  - !ruby/object:Gem::Dependency
182
- name: pry
154
+ name: rails
183
155
  requirement: !ruby/object:Gem::Requirement
184
156
  requirements:
185
157
  - - ">="
186
158
  - !ruby/object:Gem::Version
187
- version: '0'
159
+ version: 4.0.0
188
160
  type: :development
189
161
  prerelease: false
190
162
  version_requirements: !ruby/object:Gem::Requirement
191
163
  requirements:
192
164
  - - ">="
193
165
  - !ruby/object:Gem::Version
194
- version: '0'
166
+ version: 4.0.0
195
167
  - !ruby/object:Gem::Dependency
196
168
  name: rake
197
169
  requirement: !ruby/object:Gem::Requirement
198
170
  requirements:
199
- - - ">="
171
+ - - "~>"
200
172
  - !ruby/object:Gem::Version
201
- version: '0'
173
+ version: '10.0'
202
174
  type: :development
203
175
  prerelease: false
204
176
  version_requirements: !ruby/object:Gem::Requirement
205
177
  requirements:
206
- - - ">="
178
+ - - "~>"
207
179
  - !ruby/object:Gem::Version
208
- version: '0'
180
+ version: '10.0'
209
181
  - !ruby/object:Gem::Dependency
210
- name: redcarpet
182
+ name: rake-compiler
211
183
  requirement: !ruby/object:Gem::Requirement
212
184
  requirements:
213
185
  - - ">="
@@ -221,21 +193,7 @@ dependencies:
221
193
  - !ruby/object:Gem::Version
222
194
  version: '0'
223
195
  - !ruby/object:Gem::Dependency
224
- name: rspec
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '3'
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: '3'
237
- - !ruby/object:Gem::Dependency
238
- name: sass
196
+ name: redcarpet
239
197
  requirement: !ruby/object:Gem::Requirement
240
198
  requirements:
241
199
  - - ">="
@@ -249,7 +207,7 @@ dependencies:
249
207
  - !ruby/object:Gem::Version
250
208
  version: '0'
251
209
  - !ruby/object:Gem::Dependency
252
- name: simplecov
210
+ name: sass
253
211
  requirement: !ruby/object:Gem::Requirement
254
212
  requirements:
255
213
  - - ">="
@@ -309,81 +267,93 @@ email:
309
267
  - takashikkbn@gmail.com
310
268
  executables:
311
269
  - hamlit
312
- extensions: []
270
+ extensions:
271
+ - ext/hamlit/extconf.rb
313
272
  extra_rdoc_files: []
314
273
  files:
315
274
  - ".gitignore"
316
- - ".rspec"
275
+ - ".gitmodules"
317
276
  - ".travis.yml"
318
277
  - CHANGELOG.md
319
278
  - Gemfile
320
279
  - LICENSE.txt
321
280
  - README.md
281
+ - REFERENCE.md
322
282
  - Rakefile
323
- - benchmarks/benchmark.rb
324
- - benchmarks/context.rb
325
- - benchmarks/view.erb
326
- - benchmarks/view.escaped.slim
327
- - benchmarks/view.haml
328
- - benchmarks/view.slim
329
- - bin/hamlit
330
- - doc/README.md
331
- - doc/engine/indent.md
332
- - doc/engine/new_attribute.md
333
- - doc/engine/old_attributes.md
334
- - doc/engine/silent_script.md
335
- - doc/engine/tag.md
336
- - doc/engine/text.md
337
- - doc/faml/README.md
338
- - doc/faml/engine/indent.md
339
- - doc/faml/engine/old_attributes.md
340
- - doc/faml/engine/silent_script.md
341
- - doc/faml/engine/text.md
342
- - doc/faml/filters/erb.md
343
- - doc/faml/filters/javascript.md
344
- - doc/faml/filters/less.md
345
- - doc/faml/filters/plain.md
346
- - doc/filters/erb.md
347
- - doc/filters/javascript.md
348
- - doc/filters/less.md
349
- - doc/filters/markdown.md
350
- - doc/filters/plain.md
351
- - doc/haml/README.md
352
- - doc/haml/engine/new_attribute.md
353
- - doc/haml/engine/old_attributes.md
354
- - doc/haml/engine/tag.md
355
- - doc/haml/engine/text.md
356
- - doc/haml/filters/erb.md
357
- - doc/haml/filters/javascript.md
358
- - doc/haml/filters/markdown.md
283
+ - benchmark/boolean_attribute.haml
284
+ - benchmark/class_attribute.haml
285
+ - benchmark/common_attribute.haml
286
+ - benchmark/data_attribute.haml
287
+ - benchmark/dynamic_attributes/boolean_attribute.haml
288
+ - benchmark/dynamic_attributes/class_attribute.haml
289
+ - benchmark/dynamic_attributes/common_attribute.haml
290
+ - benchmark/dynamic_attributes/data_attribute.haml
291
+ - benchmark/dynamic_attributes/id_attribute.haml
292
+ - benchmark/etc/attribute_builder.haml
293
+ - benchmark/etc/real_sample.haml
294
+ - benchmark/etc/real_sample.rb
295
+ - benchmark/etc/static_analyzer.haml
296
+ - benchmark/etc/tags.haml
297
+ - benchmark/ext/build_data.rb
298
+ - benchmark/ext/build_id.rb
299
+ - benchmark/id_attribute.haml
300
+ - benchmark/plain.haml
301
+ - benchmark/script.haml
302
+ - benchmark/slim/LICENSE
303
+ - benchmark/slim/context.rb
304
+ - benchmark/slim/run-benchmarks.rb
305
+ - benchmark/slim/view.erb
306
+ - benchmark/slim/view.haml
307
+ - benchmark/slim/view.slim
308
+ - benchmark/string_interpolation.haml
309
+ - benchmark/utils/benchmark_ips_extension.rb
310
+ - bin/bench
311
+ - bin/clone
312
+ - bin/console
313
+ - bin/lineprof
314
+ - bin/ruby
315
+ - bin/setup
316
+ - bin/stackprof
317
+ - bin/test
318
+ - exe/hamlit
319
+ - ext/hamlit/extconf.rb
320
+ - ext/hamlit/hamlit.c
321
+ - ext/hamlit/houdini/.gitignore
322
+ - ext/hamlit/houdini/COPYING
323
+ - ext/hamlit/houdini/Makefile
324
+ - ext/hamlit/houdini/README.md
325
+ - ext/hamlit/houdini/buffer.c
326
+ - ext/hamlit/houdini/buffer.h
327
+ - ext/hamlit/houdini/houdini.h
328
+ - ext/hamlit/houdini/houdini_href_e.c
329
+ - ext/hamlit/houdini/houdini_html_e.c
330
+ - ext/hamlit/houdini/houdini_html_u.c
331
+ - ext/hamlit/houdini/houdini_js_e.c
332
+ - ext/hamlit/houdini/houdini_js_u.c
333
+ - ext/hamlit/houdini/houdini_uri_e.c
334
+ - ext/hamlit/houdini/houdini_uri_u.c
335
+ - ext/hamlit/houdini/houdini_xml_e.c
336
+ - ext/hamlit/houdini/html_unescape.gperf
337
+ - ext/hamlit/houdini/html_unescape.h
338
+ - ext/hamlit/houdini/tools/build_table.py
339
+ - ext/hamlit/houdini/tools/build_tables.c
340
+ - ext/hamlit/houdini/tools/wikipedia_table.txt
359
341
  - hamlit.gemspec
360
342
  - lib/hamlit.rb
361
- - lib/hamlit/attribute.rb
343
+ - lib/hamlit/attribute_builder.rb
362
344
  - lib/hamlit/cli.rb
363
345
  - lib/hamlit/compiler.rb
364
- - lib/hamlit/compilers/attributes.rb
365
- - lib/hamlit/compilers/comment.rb
366
- - lib/hamlit/compilers/doctype.rb
367
- - lib/hamlit/compilers/filter.rb
368
- - lib/hamlit/compilers/new_attribute.rb
369
- - lib/hamlit/compilers/old_attribute.rb
370
- - lib/hamlit/compilers/runtime_attribute.rb
371
- - lib/hamlit/compilers/script.rb
372
- - lib/hamlit/compilers/strip.rb
373
- - lib/hamlit/compilers/text.rb
374
- - lib/hamlit/concerns/attribute_builder.rb
375
- - lib/hamlit/concerns/balanceable.rb
376
- - lib/hamlit/concerns/deprecation.rb
377
- - lib/hamlit/concerns/error.rb
378
- - lib/hamlit/concerns/escapable.rb
379
- - lib/hamlit/concerns/included.rb
380
- - lib/hamlit/concerns/indentable.rb
381
- - lib/hamlit/concerns/lexable.rb
382
- - lib/hamlit/concerns/line_reader.rb
383
- - lib/hamlit/concerns/registerable.rb
384
- - lib/hamlit/concerns/string_interpolation.rb
385
- - lib/hamlit/concerns/whitespace.rb
346
+ - lib/hamlit/compiler/attribute_compiler.rb
347
+ - lib/hamlit/compiler/children_compiler.rb
348
+ - lib/hamlit/compiler/comment_compiler.rb
349
+ - lib/hamlit/compiler/doctype_compiler.rb
350
+ - lib/hamlit/compiler/script_compiler.rb
351
+ - lib/hamlit/compiler/silent_script_compiler.rb
352
+ - lib/hamlit/compiler/tag_compiler.rb
386
353
  - lib/hamlit/engine.rb
354
+ - lib/hamlit/error.rb
355
+ - lib/hamlit/escapable.rb
356
+ - lib/hamlit/filters.rb
387
357
  - lib/hamlit/filters/base.rb
388
358
  - lib/hamlit/filters/coffee.rb
389
359
  - lib/hamlit/filters/css.rb
@@ -397,117 +367,32 @@ files:
397
367
  - lib/hamlit/filters/ruby.rb
398
368
  - lib/hamlit/filters/sass.rb
399
369
  - lib/hamlit/filters/scss.rb
400
- - lib/hamlit/filters/tilt.rb
401
- - lib/hamlit/helpers.rb
370
+ - lib/hamlit/filters/text_base.rb
371
+ - lib/hamlit/filters/tilt_base.rb
372
+ - lib/hamlit/hash_parser.rb
402
373
  - lib/hamlit/html.rb
374
+ - lib/hamlit/identity.rb
375
+ - lib/hamlit/object_ref.rb
403
376
  - lib/hamlit/parser.rb
404
- - lib/hamlit/parsers/attribute.rb
405
- - lib/hamlit/parsers/comment.rb
406
- - lib/hamlit/parsers/doctype.rb
407
- - lib/hamlit/parsers/filter.rb
408
- - lib/hamlit/parsers/multiline.rb
409
- - lib/hamlit/parsers/script.rb
410
- - lib/hamlit/parsers/tag.rb
411
- - lib/hamlit/parsers/text.rb
377
+ - lib/hamlit/parser/MIT-LICENSE
378
+ - lib/hamlit/parser/README.md
379
+ - lib/hamlit/parser/haml_buffer.rb
380
+ - lib/hamlit/parser/haml_compiler.rb
381
+ - lib/hamlit/parser/haml_error.rb
382
+ - lib/hamlit/parser/haml_helpers.rb
383
+ - lib/hamlit/parser/haml_options.rb
384
+ - lib/hamlit/parser/haml_parser.rb
385
+ - lib/hamlit/parser/haml_util.rb
386
+ - lib/hamlit/parser/haml_xss_mods.rb
387
+ - lib/hamlit/rails_helpers.rb
388
+ - lib/hamlit/rails_template.rb
412
389
  - lib/hamlit/railtie.rb
390
+ - lib/hamlit/ruby_expression.rb
391
+ - lib/hamlit/static_analyzer.rb
392
+ - lib/hamlit/string_interpolation.rb
413
393
  - lib/hamlit/template.rb
414
- - lib/hamlit/temple.rb
394
+ - lib/hamlit/utils.rb
415
395
  - lib/hamlit/version.rb
416
- - release
417
- - spec/Rakefile
418
- - spec/hamlit/engine/comment_spec.rb
419
- - spec/hamlit/engine/doctype_spec.rb
420
- - spec/hamlit/engine/error_spec.rb
421
- - spec/hamlit/engine/indent_spec.rb
422
- - spec/hamlit/engine/multiline_spec.rb
423
- - spec/hamlit/engine/new_attribute_spec.rb
424
- - spec/hamlit/engine/old_attributes_spec.rb
425
- - spec/hamlit/engine/script_spec.rb
426
- - spec/hamlit/engine/silent_script_spec.rb
427
- - spec/hamlit/engine/tag_spec.rb
428
- - spec/hamlit/engine/text_spec.rb
429
- - spec/hamlit/engine_spec.rb
430
- - spec/hamlit/filters/coffee_spec.rb
431
- - spec/hamlit/filters/css_spec.rb
432
- - spec/hamlit/filters/erb_spec.rb
433
- - spec/hamlit/filters/javascript_spec.rb
434
- - spec/hamlit/filters/less_spec.rb
435
- - spec/hamlit/filters/markdown_spec.rb
436
- - spec/hamlit/filters/plain_spec.rb
437
- - spec/hamlit/filters/ruby_spec.rb
438
- - spec/hamlit/filters/sass_spec.rb
439
- - spec/hamlit/filters/scss_spec.rb
440
- - spec/hamlit/haml_spec.rb
441
- - spec/rails/.gitignore
442
- - spec/rails/.rspec
443
- - spec/rails/Gemfile
444
- - spec/rails/README.rdoc
445
- - spec/rails/Rakefile
446
- - spec/rails/app/assets/images/.keep
447
- - spec/rails/app/assets/javascripts/application.js
448
- - spec/rails/app/assets/stylesheets/application.css
449
- - spec/rails/app/controllers/application_controller.rb
450
- - spec/rails/app/controllers/concerns/.keep
451
- - spec/rails/app/controllers/users_controller.rb
452
- - spec/rails/app/helpers/application_helper.rb
453
- - spec/rails/app/mailers/.keep
454
- - spec/rails/app/models/.keep
455
- - spec/rails/app/models/concerns/.keep
456
- - spec/rails/app/views/application/index.html.haml
457
- - spec/rails/app/views/layouts/application.html.haml
458
- - spec/rails/app/views/users/capture.html.haml
459
- - spec/rails/app/views/users/capture_haml.html.haml
460
- - spec/rails/app/views/users/form.html.haml
461
- - spec/rails/app/views/users/helpers.html.haml
462
- - spec/rails/app/views/users/index.html.haml
463
- - spec/rails/app/views/users/inline.html.haml
464
- - spec/rails/app/views/users/old_attributes.html.haml
465
- - spec/rails/app/views/users/safe_buffer.html.haml
466
- - spec/rails/app/views/users/whitespace.html.haml
467
- - spec/rails/bin/bundle
468
- - spec/rails/bin/rails
469
- - spec/rails/bin/rake
470
- - spec/rails/bin/setup
471
- - spec/rails/bin/spring
472
- - spec/rails/config.ru
473
- - spec/rails/config/application.rb
474
- - spec/rails/config/boot.rb
475
- - spec/rails/config/database.yml
476
- - spec/rails/config/environment.rb
477
- - spec/rails/config/environments/development.rb
478
- - spec/rails/config/environments/production.rb
479
- - spec/rails/config/environments/test.rb
480
- - spec/rails/config/initializers/assets.rb
481
- - spec/rails/config/initializers/backtrace_silencers.rb
482
- - spec/rails/config/initializers/cookies_serializer.rb
483
- - spec/rails/config/initializers/filter_parameter_logging.rb
484
- - spec/rails/config/initializers/inflections.rb
485
- - spec/rails/config/initializers/mime_types.rb
486
- - spec/rails/config/initializers/session_store.rb
487
- - spec/rails/config/initializers/wrap_parameters.rb
488
- - spec/rails/config/locales/en.yml
489
- - spec/rails/config/routes.rb
490
- - spec/rails/config/secrets.yml
491
- - spec/rails/db/schema.rb
492
- - spec/rails/db/seeds.rb
493
- - spec/rails/lib/assets/.keep
494
- - spec/rails/lib/tasks/.keep
495
- - spec/rails/log/.keep
496
- - spec/rails/public/404.html
497
- - spec/rails/public/422.html
498
- - spec/rails/public/500.html
499
- - spec/rails/public/favicon.ico
500
- - spec/rails/public/robots.txt
501
- - spec/rails/spec/hamlit_spec.rb
502
- - spec/rails/spec/rails_helper.rb
503
- - spec/rails/spec/spec_helper.rb
504
- - spec/rails/vendor/assets/javascripts/.keep
505
- - spec/rails/vendor/assets/stylesheets/.keep
506
- - spec/spec_helper.rb
507
- - spec/spec_helper/document_generator.rb
508
- - spec/spec_helper/render_helper.rb
509
- - spec/spec_helper/test_case.rb
510
- - test
511
396
  homepage: https://github.com/k0kubun/hamlit
512
397
  licenses:
513
398
  - MIT
@@ -520,7 +405,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
520
405
  requirements:
521
406
  - - ">="
522
407
  - !ruby/object:Gem::Version
523
- version: 2.0.0
408
+ version: '0'
524
409
  required_rubygems_version: !ruby/object:Gem::Requirement
525
410
  requirements:
526
411
  - - ">="
@@ -528,101 +413,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
528
413
  version: '0'
529
414
  requirements: []
530
415
  rubyforge_project:
531
- rubygems_version: 2.4.5
416
+ rubygems_version: 2.4.5.1
532
417
  signing_key:
533
418
  specification_version: 4
534
419
  summary: High Performance Haml Implementation
535
- test_files:
536
- - spec/Rakefile
537
- - spec/hamlit/engine/comment_spec.rb
538
- - spec/hamlit/engine/doctype_spec.rb
539
- - spec/hamlit/engine/error_spec.rb
540
- - spec/hamlit/engine/indent_spec.rb
541
- - spec/hamlit/engine/multiline_spec.rb
542
- - spec/hamlit/engine/new_attribute_spec.rb
543
- - spec/hamlit/engine/old_attributes_spec.rb
544
- - spec/hamlit/engine/script_spec.rb
545
- - spec/hamlit/engine/silent_script_spec.rb
546
- - spec/hamlit/engine/tag_spec.rb
547
- - spec/hamlit/engine/text_spec.rb
548
- - spec/hamlit/engine_spec.rb
549
- - spec/hamlit/filters/coffee_spec.rb
550
- - spec/hamlit/filters/css_spec.rb
551
- - spec/hamlit/filters/erb_spec.rb
552
- - spec/hamlit/filters/javascript_spec.rb
553
- - spec/hamlit/filters/less_spec.rb
554
- - spec/hamlit/filters/markdown_spec.rb
555
- - spec/hamlit/filters/plain_spec.rb
556
- - spec/hamlit/filters/ruby_spec.rb
557
- - spec/hamlit/filters/sass_spec.rb
558
- - spec/hamlit/filters/scss_spec.rb
559
- - spec/hamlit/haml_spec.rb
560
- - spec/rails/.gitignore
561
- - spec/rails/.rspec
562
- - spec/rails/Gemfile
563
- - spec/rails/README.rdoc
564
- - spec/rails/Rakefile
565
- - spec/rails/app/assets/images/.keep
566
- - spec/rails/app/assets/javascripts/application.js
567
- - spec/rails/app/assets/stylesheets/application.css
568
- - spec/rails/app/controllers/application_controller.rb
569
- - spec/rails/app/controllers/concerns/.keep
570
- - spec/rails/app/controllers/users_controller.rb
571
- - spec/rails/app/helpers/application_helper.rb
572
- - spec/rails/app/mailers/.keep
573
- - spec/rails/app/models/.keep
574
- - spec/rails/app/models/concerns/.keep
575
- - spec/rails/app/views/application/index.html.haml
576
- - spec/rails/app/views/layouts/application.html.haml
577
- - spec/rails/app/views/users/capture.html.haml
578
- - spec/rails/app/views/users/capture_haml.html.haml
579
- - spec/rails/app/views/users/form.html.haml
580
- - spec/rails/app/views/users/helpers.html.haml
581
- - spec/rails/app/views/users/index.html.haml
582
- - spec/rails/app/views/users/inline.html.haml
583
- - spec/rails/app/views/users/old_attributes.html.haml
584
- - spec/rails/app/views/users/safe_buffer.html.haml
585
- - spec/rails/app/views/users/whitespace.html.haml
586
- - spec/rails/bin/bundle
587
- - spec/rails/bin/rails
588
- - spec/rails/bin/rake
589
- - spec/rails/bin/setup
590
- - spec/rails/bin/spring
591
- - spec/rails/config.ru
592
- - spec/rails/config/application.rb
593
- - spec/rails/config/boot.rb
594
- - spec/rails/config/database.yml
595
- - spec/rails/config/environment.rb
596
- - spec/rails/config/environments/development.rb
597
- - spec/rails/config/environments/production.rb
598
- - spec/rails/config/environments/test.rb
599
- - spec/rails/config/initializers/assets.rb
600
- - spec/rails/config/initializers/backtrace_silencers.rb
601
- - spec/rails/config/initializers/cookies_serializer.rb
602
- - spec/rails/config/initializers/filter_parameter_logging.rb
603
- - spec/rails/config/initializers/inflections.rb
604
- - spec/rails/config/initializers/mime_types.rb
605
- - spec/rails/config/initializers/session_store.rb
606
- - spec/rails/config/initializers/wrap_parameters.rb
607
- - spec/rails/config/locales/en.yml
608
- - spec/rails/config/routes.rb
609
- - spec/rails/config/secrets.yml
610
- - spec/rails/db/schema.rb
611
- - spec/rails/db/seeds.rb
612
- - spec/rails/lib/assets/.keep
613
- - spec/rails/lib/tasks/.keep
614
- - spec/rails/log/.keep
615
- - spec/rails/public/404.html
616
- - spec/rails/public/422.html
617
- - spec/rails/public/500.html
618
- - spec/rails/public/favicon.ico
619
- - spec/rails/public/robots.txt
620
- - spec/rails/spec/hamlit_spec.rb
621
- - spec/rails/spec/rails_helper.rb
622
- - spec/rails/spec/spec_helper.rb
623
- - spec/rails/vendor/assets/javascripts/.keep
624
- - spec/rails/vendor/assets/stylesheets/.keep
625
- - spec/spec_helper.rb
626
- - spec/spec_helper/document_generator.rb
627
- - spec/spec_helper/render_helper.rb
628
- - spec/spec_helper/test_case.rb
420
+ test_files: []