Skip to content
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

Slim fails since tilt 2.0.10 #351

Closed
aerostitch opened this issue Dec 15, 2019 · 1 comment
Closed

Slim fails since tilt 2.0.10 #351

aerostitch opened this issue Dec 15, 2019 · 1 comment

Comments

@aerostitch
Copy link

aerostitch commented Dec 15, 2019

Hi,

I uploaded ruby-tilt 2.0.10 to Debian yesterday and got a couple of projects failing since then but the one I'm focusing on is slim:
https://ci.debian.net/data/autopkgtest/testing/amd64/r/ruby-slim/3668615/log.gz

With errors like:


  1) Error:
Slim test suite::HTML tags::Attributes::Ruby attributes#test_0002_should render:
ArgumentError: unknown command 'a'
    (__TEMPLATE__):6:in `test'
    (__TEMPLATE__):6:in `__tilt_47401970156980'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `call'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `evaluate'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:109:in `render'
    /tmp/autopkgtest-lxc.vdsvx9s3/downtmp/build.czz/src/test/literate/helper.rb:13:in `render'
    (eval):436:in `block (6 levels) in <class:LiterateTest>'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:98:in `block (3 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:195:in `capture_exceptions'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:95:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:270:in `time_it'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:94:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:211:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:93:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:1029:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:339:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:326:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `each'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest.rb:352:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest.rb:324:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `block in __run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `map'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `__run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:141:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:68:in `block in autorun'

  2) Error:
Slim test suite::HTML tags::Attributes::Dynamic tags `*`#test_0001_should render:
NameError: undefined local variable or method `a_unless_current' for #<#<Class:0x0000563943928100>:0x0000563943be7d50>
    (__TEMPLATE__):7:in `__tilt_47401970156980'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `call'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `evaluate'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:109:in `render'
    /tmp/autopkgtest-lxc.vdsvx9s3/downtmp/build.czz/src/test/literate/helper.rb:13:in `render'
    (eval):492:in `block (6 levels) in <class:LiterateTest>'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:98:in `block (3 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:195:in `capture_exceptions'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:95:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:270:in `time_it'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:94:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:211:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:93:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:1029:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:339:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:326:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `each'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest.rb:352:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest.rb:324:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `block in __run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `map'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `__run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:141:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:68:in `block in autorun'

  3) Error:
Slim test suite::Line indicators::Output `=`#test_0004_should render:
ArgumentError: unknown command 'a'
    (__TEMPLATE__):6:in `test'
    (__TEMPLATE__):6:in `__tilt_47401970156980'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `call'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:170:in `evaluate'
    /usr/lib/ruby/vendor_ruby/tilt/template.rb:109:in `render'
    /tmp/autopkgtest-lxc.vdsvx9s3/downtmp/build.czz/src/test/literate/helper.rb:13:in `render'
    (eval):149:in `block (5 levels) in <class:LiterateTest>'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:98:in `block (3 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:195:in `capture_exceptions'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:95:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:270:in `time_it'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:94:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:211:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest/test.rb:93:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:1029:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:339:in `run_one_method'
    /usr/lib/ruby/vendor_ruby/minitest.rb:326:in `block (2 levels) in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `each'
    /usr/lib/ruby/vendor_ruby/minitest.rb:325:in `block in run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:365:in `on_signal'
    /usr/lib/ruby/vendor_ruby/minitest.rb:352:in `with_info_handler'
    /usr/lib/ruby/vendor_ruby/minitest.rb:324:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `block in __run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `map'
    /usr/lib/ruby/vendor_ruby/minitest.rb:164:in `__run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:141:in `run'
    /usr/lib/ruby/vendor_ruby/minitest.rb:68:in `block in autorun'

I tested slim on a fresh install using the gems directly and have the same issue when switching to tilt 2.0.10:


  1) Error:
Slim test suite::HTML tags::Attributes::Ruby attributes#test_0002_should render:
ArgumentError: unknown command 'a'
    (__TEMPLATE__):6:in `test'
    (__TEMPLATE__):6:in `__tilt_47336302970300'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `call'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `evaluate'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:109:in `render'
    /tmp/slim/test/literate/helper.rb:13:in `render'
    (eval):436:in `block (6 levels) in <class:LiterateTest>'

  2) Error:
Slim test suite::HTML tags::Attributes::Dynamic tags `*`#test_0001_should render:
NameError: undefined local variable or method `a_unless_current' for #<#<Class:0x0000561aafb97510>:0x0000561aafe192c0>
    (__TEMPLATE__):7:in `__tilt_47336302970300'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `call'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `evaluate'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:109:in `render'
    /tmp/slim/test/literate/helper.rb:13:in `render'
    (eval):492:in `block (6 levels) in <class:LiterateTest>'

  3) Error:
Slim test suite::Line indicators::Output `=`#test_0004_should render:
ArgumentError: unknown command 'a'
    (__TEMPLATE__):6:in `test'
    (__TEMPLATE__):6:in `__tilt_47336302970300'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `call'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:170:in `evaluate'
    /tmp/slim/vendor/bundle/ruby/2.5.0/gems/tilt-2.0.10/lib/tilt/template.rb:109:in `render'
    /tmp/slim/test/literate/helper.rb:13:in `render'
    (eval):149:in `block (5 levels) in <class:LiterateTest>'

I'm having a hard time figuring out how to fix those ones. I see that it's due to the new behavior as you were explaining in #347 but I'm not sure exactly on how to fix this.
Should tilt find a better way to keep the backward compatibility (especially when releasing patch versions)?
Do you have any pointers about how to solve that? (not error 2 as the solution is already in #347 but 1 and 3)

Thanks for your help,
Joseph

@aerostitch
Copy link
Author

Nevermind it's all the same issue under the hood.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant