Skip to content

Refactor wish list #1094

Open
Open
@nojaf

Description

@nojaf

As mentioned here, it would be great to refactor the extension and LSP server. Here are some ideas to consider; please feel free to raise other points or challenge any listed:

  • Use promises in the LSP server, as many endpoints spin a binary or read files.
  • Refactor incrementalCompilation.ts and implement an interface to handle the differences between bsb and rewatch, as those checks are scattered throughout the code.
  • Utilise semver for more version checks.
  • Enable more logging in the output window; see Initial SendLogNotification #1066. Wink @zth.
  • Employ a formatter (e.g., prettier/biome), as our lack of it is quite annoying.
  • Remove chokidar from the LSP server and use the [DidChangeWatchedFiles Notification] instead.
  • Bump the TypeScript version, as we likely have an outdated one.
  • Consider removing ESBuild; do we still need to bundle?
  • Should we implement the mono-repo structure properly? Currently, we have three package.json files, and the top one lacks a workspaces entry.
  • Use yarn as we do in rescript compiler?
  • Update CONTRIBUTING.md, as it may no longer be accurate.
  • switch from TextDocumentSyncKind.Full to TextDocumentSyncKind.Incremental

Let me know your thoughts, @zth, @cometkim, @mediremi!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions