Exception analysis does not know the Temporal `fromStringOrThrow` functions
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 72/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- ocaml
- Domínio
- devtools
Direção de pesquisa
A tabela de funções que lançam exceções fica em analysis/reanalyze/src/exn_lib.ml, por volta das linhas 114-190, e a issue menciona os oito externals do Temporal fromStringOrThrow adicionados em #9094 que não aparecem nela. Comece lendo como as entradas *OrThrow existentes são escritas ali e depois execute rescript-tools reanalyze -exception no trecho de três linhas da issue. Está pronto quando as três chamadas ao Temporal forem reportadas como lançando JsExn, e não apenas big.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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
- Linguagem predominante
- OCaml
- Estrelas
- 7.5k
- Forks
- 484
- Merge médio
- 17h 2min
- PRs com merge (30d)
- 249
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de rescript-lang/rescript
-
Issues from differential semantic drift analysis (b123b7c3 to c10223e8)Talvez já em andamento @cknitt assumiu hoje. Aberta
rescript-lang/rescript#9186 · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 38/100
rescript-lang/rescript#9185 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 28/100
rescript-lang/rescript#9184 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
rescript-lang/rescript#9183 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
rescript-lang/rescript#9181 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de rescript-lang/rescript
Issues semelhantes
-
ci-rerun: collect.py fails a whole pr-babysit cycle on one transient GitHub 5xx and never retriesAbertafollow-up
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
REditorSupport/languageserver#833 ·
Mantenedores costumam responder em até 1 dia
-
cmd/ebitenmobile: multi-language bindings run the complete generator twiceTalvez já em andamento @kumagi assumiu hoje. Abertaos:macos performance
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
hajimehoshi/ebiten#4011 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
nolabs-ai/nono-packs#65 ·