entropic-dev / entropic-dev/ds

Rust-based JS import scanner

Open
#15 1 comment 0 reactions 0 assignees View on GitHub
good first issue help wanted
Dominant language
Rust
Stars
53
Forks
6
PR merge metrics
No merged PRs in 30d

Description

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`](https://crates.io/crates/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](https://discourse.entropic.dev/t/looking-for-help-rust-based-js-import-scanner/218))

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.