Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Tests for version 0.21.8 are failing in ruby 3.2.2 with rbs 2.8.2

Aberta
#157 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
ruby
Domínio
testing-qa

Direção de pesquisa

Comece executando a suíte de testes que falha e leia test/typeprof/smoke_test.rb, especialmente a expectativa em smoke/integer.rb. Em seguida, inspecione typeprof.gemspec e a alteração de compatibilidade referenciada para determinar se o intervalo de rbs compatível ou o comportamento do teste deve mudar. Está concluído quando a suíte passa com o suporte a rbs declarado e a decisão sobre a versão mínima está refletida de forma consistente.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

When running the tests for this gem I get the following error:

(none):1: warning: possibly useless use of a literal in void context
Loaded suite /usr/lib/ruby/gems/3.2.0/gems/rake-13.0.6/lib/rake/rake_test_loader
Started
....Initialized empty Git repository in /build/ruby-typeprof/src/typeprof-0.21.8/testbed/diff-lcs/.git/
From https://github.com/mame/diff-lcs
 * branch            de838d2df80514adbf22c26daed728ddd06af60b -> FETCH_HEAD
.(none):25: warning: possibly useless use of a constant in void context
path/to/file:25: warning: possibly useless use of a constant in void context
....TypeProf for IDE is started successfully
......................................................................
...............................................................................
............F
===============================================================================
Failure: test: smoke/integer.rb(TypeProf::SmokeTest)
/build/ruby-typeprof/src/typeprof-0.21.8/test/typeprof/smoke_test.rb:36:in `block (2 levels) in <class:SmokeTest>'
     33:           expected = actual
     34:         end
     35:
  => 36:         assert_equal(expected, actual)
     37:       end
     38:     end
     39:   end
<"# Classes\n" +
"class Object\n" +
"  private\n" +
"  def foo: (Integer? x) -> nil\n" +
"end\n"> expected but was
<"# Classes\n" +
"class Object\n" +
"  private\n" +
"  def foo: (Integer x) -> nil\n" +
"end\n">

diff:
  # Classes
  class Object
    private
?   def foo: (Integer? x) -> nil
  end
===============================================================================
...............................................................................
....................................................................
Finished in 43.381750919 seconds.
-------------------------------------------------------------------------------
318 tests, 361 assertions, 1 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
99.6855% passed
-------------------------------------------------------------------------------
7.33 tests/s, 8.32 assertions/s
rake aborted!
Command failed with status (1)

Tasks: TOP => test
(See full trace by running task with --trace)

This seems to be a regression from https://github.com/ruby/typeprof/commit/30a334ee36d843e549c9f2bc0df0daeec18f2cd1 which is designed to make the tests compatible to rbs 3.2.0. This seems to make the tests only support rbs >= 3.2.0, but the gemspec file stills says rbs >= 1.8.1 is required and supported: https://github.com/ruby/typeprof/blob/v0.21.8/typeprof.gemspec#L33

So I guess either the test needs to be updated to somehow support all the rbs versions, or the gem needs to update its requirements for the minimal required version of rbs.

Linguagem predominante
Ruby
Estrelas
833
Forks
100
Merge médio
3d 22h
PRs com merge (30d)
25

Preparar o ambiente

Abrir no Codespaces

Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.

  • Sem Dockerfile nem arquivo Docker Compose
  • Sem modelo de pull request
  • Sem guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de ruby/typeprof

Todas as issues de ruby/typeprof

Issues semelhantes

Mais issues de Ruby

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.