Tests for version 0.21.8 are failing in ruby 3.2.2 with rbs 2.8.2
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Ruby
- Sterne
- 833
- Forks
- 99
- Ø Merge
- 9 Std. 30 Min.
- Gemergte PRs (30 T.)
- 12
Beschreibung
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.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die fehlschlagende Testsuite auszuführen, und lies test/typeprof/smoke_test.rb, insbesondere die Erwartung in smoke/integer.rb. Untersuche dann typeprof.gemspec und die referenzierte Kompatibilitätsänderung, um zu bestimmen, ob sich der unterstützte rbs-Bereich oder das Testverhalten ändern sollte. Erledigt ist die Aufgabe, wenn die Suite mit der deklarierten rbs-Unterstützung erfolgreich durchläuft und die Entscheidung zur Mindestversion konsistent umgesetzt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- ruby
- Bereich
- testing-qa
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100