Skip to content

Rust-based JS import scanner #15

Description

@zkat

One super-critical part of the dependency download process for dstopic is the ability to batch downloads according to what will probably be required. To this end:

We need a Rust-based parser that can handle:

  • Modern JS
  • Typescript
  • JSX

And return a list of toplevel import-ed and require-ed paths. dstopic will use this to speed up dependency downloads by batching requests together. Note that the parser doesn't need to completely support the above -- just enough to extract imports and requires, and it doesn't need to handle dynamic ones, since this is largely an optimization. In theory, this could even be as simple as a regex, but I'd rather go the parser route if possible.

After doing some research, I found RESSA, which looks like it would be up to the task -- most other existing Rust-based parsers seem to be fairly incomplete, or designed specifically for Neon-based usage (like swc).

(original thread)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions