Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Repairs from semantic drift analysis

Aperta
#8,712 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
20/100
Tipo di issue
Refactoring
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
javascript, node.js, ocaml

Direzione di ricerca

Start by opening the linked repair issue that matches the area you want to work on; the list spans compiler, analysis, runtime, tooling, tests, and installation CI. Read that issue's named files or entry points and follow its acceptance criteria. This umbrella issue is done when all listed repair checkboxes are completed, while the possible additional work remains explicitly separate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

This is the list of repairs coming from semantic drift analysis.

Repairs

  • #8690 Keep comments on labelled parameters in the formatter
  • #8691 Make inclusion error output independent of the source path
  • #8692 Declare exports left unbound by a toplevel throw
  • #8693 Type inline-record cases of untagged variants as objects in genType
  • #8694 Resolve RescriptTools.binaryPath in user projects
  • #8695 Require Node.js 22 in the platform packages and installation CI
  • #8696 Fix stale rewatch error messages
  • #8697 Remove context7.json and tests/dependencies/.gitattributes
  • #8698 Remove unused debugging aids
  • #8699 Remove dead code and stale docs in compiler/ext, common, depends and ml
  • #8700 Remove dead code and stale docs in compiler/core, frontend and gentype
  • #8701 Remove dead code and stale docs in the syntax library
  • #8702 Run the syntax_tests executable and prune syntax fixtures
  • #8703 Remove dead code and stale docs in editor analysis and reanalyze
  • #8704 Clean up rescript-tools and the analysis test projects
  • #8705 Remove dead code and unused files from rewatch
  • #8706 Remove dead runtime code and playground leftovers
  • #8707 Remove unused scripts, helpers and configuration
  • #8708 Make npm run typecheck pass
  • #8709 Prune build-test fixtures, ounit leftovers and stale catalog citations
  • #8710 Run the runtime tests that never ran and drop dead test code
  • #8711 Clean up the genType example and vendored test dependencies

Possible additional work

Design changes identified along the way, not part of the repairs above:

  • One .cmt source-file lookup. genType (compiler/gentype/find_source_file.ml) and reanalyze (analysis/reanalyze/src/find_source_file.ml) each walk a .cmt to find a source file. genType returns an absolute path and reanalyze a relative one with debug logging; sharing the walkers needs a library both link, and today that is only compiler/ml.
  • Generate Belt's key-specialised modules. The Int and String variants of Belt's maps and sets are hand-written copies that differ in 2–4 lines each; generating them from one template would add a build step to the runtime.
  • Merge analysis's Log and Debug switches. They are separate verbose switches (db+/dv+) that tests enable independently; merging them changes the debugging command line.
  • One /+ path operator. find_files, module_resolution and build_system each define ( /+ ) as Filename.concat.
  • Commented-out debug code in the type checker. Upstream debug blocks such as check_expans and check_memorized_abbrevs in btype.ml and print_pat/pretty_row in parmatch.ml are kept as comments; keeping or deleting them is a policy choice.
  • Comment positions in the formatter. In an arrow type, (~x /* a */ : int=?, unit) prints the comment after the colon, and a comment after =? moves to the next argument; nothing is lost and the output is stable, but the position changes.
  • rescript-tools help text. The help omits the ppx and extract-embedded commands; whether to advertise them is a CLI decision.
  • RescriptTools.binaryPath from CommonJS. cli/common/bins.js is an ES module with top-level await, so a CommonJS project calling binaryPath probably cannot load it; untested.

🤖 Generated with Claude Code

Lingua principale
OCaml
Stelle
7.5k
Fork
485
Merge medio
1g 7h
PR unite (30g)
43

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rescript-lang/rescript

Tutte le issue di rescript-lang/rescript

Issue simili

Altre issue su Build System

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.