Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

A failed --test run ends in an ASSERT FAIL trace from lib/test_runner.eigs

Offen Anfängerfreundlich
#2,197 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
83/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
c
Bereich
cli, testing

Rechercherichtung

Beginne in lib/test_runner.eigs etwa bei Zeile 184, wo die fehlschlagenden Testdateien die Assertion auslösen, und prüfe das bestehende Verhalten des Exit-Codes, auf das in issue #1839 verwiesen wird. Finde dann die Regressionstests für eigenscript --test und ergänze Abdeckung für die letzte Ausgabezeile und den Exit-Status des fehlschlagenden Laufs, einschließlich --json; fertig ist die Arbeit, wenn Fehler mit Exit-Code 1 und ohne Runner-Trace enden, während die Ausgabe bei erfolgreichen Tests unverändert bleibt und mit Exit-Code 0 endet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

area:stdlib bug found-by:cold-read kind:bug

When any test file fails, eigenscript --test ends its run with an ASSERT FAIL error and a stack trace pointing into lib/test_runner.eigs. The exit status (1) is right; the output reads as if the runner itself crashed, and the trace is noise on every red run. It also lands after the --json document.

To reproduce (v0.48.0, release build)
mkdir -p tdir
printf 'assert of [1 == 2, "one is not two"]\n' > tdir/test_a.eigs
printf 'assert of [true, "ok"]\n' > tdir/test_b.eigs
eigenscript --test tdir; echo "rc=$?"
Actual (tail)
Files: 2 | Passed: 1 | Failed: 1
Error .../lib/test_runner.eigs:184: ASSERT FAIL: 1 test file(s) failed
   184 |     assert of [0, (str of failed_files) + " test file(s) failed"]
       |            ^
  at <module> (.../lib/test_runner.eigs:184)
rc=1
Expected

The summary line is the last thing printed and the process exits 1, as pytest or cargo test do. No error header or trace from the runner's own source. (set_exit_code, from #1839, or exit of 1 would do it without a raise.)

Done when
  • On the repro, --test prints no ASSERT FAIL and no trace into lib/test_runner.eigs, and still exits 1.
  • --test --json on the repro writes only the JSON document to stdout and exits 1.
  • An all-passing run is unchanged (same output, exit 0).
  • A regression test checks the failing case's last line and exit status, and fails on v0.48.0.

Found while checking docs/llms.txt against the runtime (PR #2193).


Generated by Claude Code

Vorherrschende Sprache
C
Sterne
3
Forks
7
Ø Merge
8 Std. 51 Min.
Gemergte PRs (30 T.)
393

Entwicklungsumgebung

In Codespaces öffnen

Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus InauguralSystems/EigenScript

Alle Issues in InauguralSystems/EigenScript

Ähnliche Issues

Weitere Issues zu C

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.