Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Repairs from semantic drift analysis

Cerrado
#8,712 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
20/100
Tipo de issue
Refactorización
Claridad
Necesita aclaración
Estado de actividad
Activo
Stack tecnológico
javascript, node.js, ocaml

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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

Lenguaje dominante
OCaml
Estrellas
7.5k
Forks
485
Merge medio
1 d 3 h
PR fusionados (30 d)
65

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rescript-lang/rescript

Todos los issues de rescript-lang/rescript

Issues similares

Más issues de Build System

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.