New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

:ruby filter with no content causes TypeError #942

Closed
aselder opened this Issue Jul 12, 2017 · 1 comment

Comments

Projects
None yet
2 participants
@aselder

aselder commented Jul 12, 2017

We had a haml file that started:

:ruby

%section.completed-test
  .completed-test__header

When haml tries to render this file, we get the following:

     TypeError:
       no implicit conversion of nil into String
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/filters.rb:285:in `+'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/filters.rb:285:in `block in compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/filters.rb:284:in `instance_eval'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/filters.rb:284:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/filters.rb:142:in `internal_compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:180:in `compile_filter'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:29:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:31:in `block (2 levels) in compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:31:in `each'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:31:in `block in compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:41:in `compile_root'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:31:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/compiler.rb:22:in `call'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/temple-0.8.0/lib/temple/engine.rb:50:in `block in call'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/temple-0.8.0/lib/temple/engine.rb:50:in `each'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/temple-0.8.0/lib/temple/engine.rb:50:in `inject'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/temple-0.8.0/lib/temple/engine.rb:50:in `call'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/temple_engine.rb:41:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/engine.rb:61:in `initialize'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/plugin.rb:16:in `new'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/plugin.rb:16:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/haml-5.0.1/lib/haml/plugin.rb:23:in `call'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:270:in `compile'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:245:in `block (2 levels) in compile!'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications.rb:166:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:333:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:244:in `block in compile!'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:232:in `synchronize'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:232:in `compile!'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:144:in `block in render'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications.rb:164:in `block in instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications.rb:164:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:333:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/template.rb:143:in `render'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/renderer/template_renderer.rb:54:in `block (2 levels) in render_template'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/renderer/abstract_renderer.rb:39:in `block in instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications.rb:164:in `block in instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/activesupport-4.2.9/lib/active_support/notifications.rb:164:in `instrument'
     # /Users/aselder/.rvm/gems/ruby-2.3.4@usertesting-orders/gems/actionview-4.2.9/lib/action_view/renderer/abstract_renderer.rb:39:in `instrument'

@k0kubun k0kubun closed this in e115f79 Jul 14, 2017

@k0kubun

This comment has been minimized.

Show comment
Hide comment
@k0kubun

k0kubun Jul 14, 2017

Member

Fixed. Thank you for reporting.

Member

k0kubun commented Jul 14, 2017

Fixed. Thank you for reporting.

netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Sep 10, 2017

taca
Update ruby-haml to 5.0.3.
## 5.0.3

Released on September 7, 2017
([diff](haml/haml@v5.0.2...v5.0.3)).

* Use `String#dump` instead of `String#inspect` to generate string
  literal. (Takashi Kokubun)
* Fix Erubi superclass mismatch
  error. [#952](haml/haml#952) (thanks [Robin
  Daugherty](https://github.com/RobinDaugherty))

## 5.0.2

Released on August 1, 2017
([diff](haml/haml@v5.0.1...v5.0.2)).

* Let `haml -c` fail if generated Ruby code is syntax
  error. [#880](haml/haml#880) (Takashi Kokubun)
* Fix `NoMethodError` bug caused with Sprockets 3 and :sass
  filter. [#930](haml/haml#930) (thanks [Gonzalez
  Maximiliano](https://github.com/emaxi))
* Fix `list_of` helper with multi-line
  content. [#933](haml/haml#933) (thanks [Benoit
  Larroque](https://github.com/zetaben))
* Optimize rendering performance by changing timing to fix
  textareas. [#941](haml/haml#941) (Takashi Kokubun)
* Fix `TypeError` with empty :ruby
  filter. [#942](haml/haml#942) (Takashi Kokubun)
* Fix inconsistent attribute sort order. (Takashi Kokubun)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment