Exception analysis does not know the Temporal `fromStringOrThrow` functions
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
- 72/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- ocaml
- Bereich
- devtools
Rechercherichtung
Die Tabelle der werfenden Funktionen steht in analysis/reanalyze/src/exn_lib.ml, etwa in den Zeilen 114-190, und das Issue nennt die acht Temporal-Externals fromStringOrThrow, die mit #9094 hinzugekommen sind und dort fehlen. Lies zuerst, wie bestehende *OrThrow-Einträge dort geschrieben sind, und führe dann rescript-tools reanalyze -exception auf dem dreizeiligen Snippet aus dem Issue aus. Fertig ist, wenn alle drei Temporal-Aufrufe als JsExn werfend gemeldet werden, nicht nur big.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Found by differential semantic drift analysis from b123b7c3 to c10223e8.
What is broken
let big = () => BigInt.fromStringOrThrow("x")
let date = () => Temporal.PlainDate.fromStringOrThrow("x")
let dur = () => Temporal.Duration.fromStringOrThrow("x")
rescript-tools reanalyze -exception reports only big might throw JsExn. #9094 added eight fromStringOrThrow externals (Duration, Instant, PlainDate, PlainDateTime, PlainMonthDay, PlainTime, PlainYearMonth, ZonedDateTime); none is in the table of throwing library functions in exn_lib.ml, which lists every other stdlib *OrThrow function.
Temporal functions that throw without the OrThrow suffix (arithmetic out of range, invalid arguments to constructors) were not checked.
Possible cause (speculation only)
The table is maintained by hand next to the stdlib, and nothing checks that a new *OrThrow external has an entry.
🤖 Generated with Claude Code
- Vorherrschende Sprache
- OCaml
- Sterne
- 7.5k
- Forks
- 484
- Ø Merge
- 17 Std. 2 Min.
- Gemergte PRs (30 T.)
- 249
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus rescript-lang/rescript
-
Issues from differential semantic drift analysis (b123b7c3 to c10223e8)Evtl. vergeben @cknitt hat das heute übernommen. Offen
rescript-lang/rescript#9186 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
rescript-lang/rescript#9185 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 28/100
rescript-lang/rescript#9184 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
rescript-lang/rescript#9183 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
rescript-lang/rescript#9181 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in rescript-lang/rescript
Ähnliche Issues
-
ci-rerun: collect.py fails a whole pr-babysit cycle on one transient GitHub 5xx and never retriesOffenfollow-up
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
chore: remove unused Stripe billing env varsEvtl. vergeben @anshikasharmaa1517 hat das heute übernommen. Offen🐛 bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
Maintainer antworten meist innerhalb von 2 Tagen
-
area/frontend area/v2 kind/bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
REditorSupport/languageserver#833 ·
Maintainer antworten meist innerhalb von 1 Tag
-
cmd/ebitenmobile: multi-language bindings run the complete generator twiceEvtl. vergeben @kumagi hat das heute übernommen. Offenos:macos performance
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
hajimehoshi/ebiten#4011 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag