typeprof-0.21.11 + rbs-3.6.0 raise NoMethodError
Aperta
Nessuno ha ancora preso questa issue.
- Lingua principale
- Ruby
- Stelle
- 833
- Fork
- 99
- Merge medio
- 9h 30m
- PR unite (30g)
- 12
Descrizione
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>'
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Riproduci il malfunzionamento con Ruby 3.3.5, typeprof 0.21.11 e rbs 3.6.0, quindi ispeziona lib/typeprof/import.rb in corrispondenza di conv_block, intorno alla riga 451. Conferma che typeprof /dev/null venga completato senza il NoMethodError dopo aver risolto il problema di compatibilità.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- ruby
- Ambito
- tooling
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 38/100