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

typeprof-0.21.11 + rbs-3.6.0 raise NoMethodError #274

Open
znz opened this issue Oct 1, 2024 · 1 comment
Open

typeprof-0.21.11 + rbs-3.6.0 raise NoMethodError #274

znz opened this issue Oct 1, 2024 · 1 comment

Comments

@znz
Copy link
Member

znz commented Oct 1, 2024

How to reproduce:

% docker run --rm -it ruby:3.3.5 /bin/bash
root@5086137b08f0:/# gem i typeprof:0.21.11
Fetching typeprof-0.21.11.gem
Successfully installed typeprof-0.21.11
1 gem installed
A new release of RubyGems is available: 3.5.16 → 3.5.20!
Run `gem update --system 3.5.20` to update your installation.
root@5086137b08f0:/# typeprof --version
typeprof 0.21.11
root@5086137b08f0:/# typeprof /dev/null
# TypeProf 0.21.11
# Classes
root@5086137b08f0:/# gem update rbs
Updating installed gems
Updating rbs
Fetching rbs-3.6.0.gem
Building native extensions. This could take a while...
Successfully installed rbs-3.6.0
Gems updated: rbs
root@5086137b08f0:/# typeprof /dev/null
/usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:451:in `conv_block': undefined method `required_positionals' for an instance of RBS::Types::UntypedFunction (NoMethodError)
      lead_tys = blk.required_positionals.map {|type| conv_type(type.type) }
                    ^^^^^^^^^^^^^^^^^^^^^
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:405:in `conv_func'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:396:in `block in conv_method_def'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:395:in `map'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:395:in `conv_method_def'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:216:in `block (3 levels) in conv_classes'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:199:in `each'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:199:in `block (2 levels) in conv_classes'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:189:in `each'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:189:in `block in conv_classes'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:349:in `each_class_decl'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:171:in `conv_classes'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:135:in `dump_json'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:123:in `load_rbs'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:42:in `get_builtin_env'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/import.rb:17:in `initialize'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/analyzer.rb:306:in `new'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/analyzer.rb:306:in `initialize'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/config.rb:89:in `new'
    from /usr/local/bundle/gems/typeprof-0.21.11/lib/typeprof/config.rb:89:in `analyze'
    from /usr/local/bundle/gems/typeprof-0.21.11/exe/typeprof:9:in `<top (required)>'
    from /usr/local/bundle/bin/typeprof:25:in `load'
    from /usr/local/bundle/bin/typeprof:25:in `<main>'
@soutaro
Copy link
Member

soutaro commented Oct 1, 2024

I guess ruby/rbs#1935 caused this error. 🙇‍♂️

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

No branches or pull requests

2 participants