Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DRAFT: Initial @parcel/core rewrite in Rust #9704

Closed
wants to merge 2 commits into from
Closed

Conversation

alshdavid
Copy link
Contributor

@alshdavid alshdavid commented May 8, 2024

EDIT: Will be breaking this PR down into smaller PRs to make it reviewable and help put it behind a feature flag

Credit to Devon for the majority of the PR content, I simply reformatted it adding:

  • Smaller files with file names that represent the contents
    • This is for easy IDE lookup
    • Keeping implementations/associated code next to their associated targets/structs
  • Grouping code into logical modules
  • Adding comments to describe purpose

Moving forward, the expectation is the Rust circuit will be enabled optionally behind a feature flag. It's expected that the rust-enabled builds will be broken initially. We will work off v2 and port more functionality over incrementally until it's in a working state.

TODO
[] Putting this behind a feature flag

↪️ Pull Request

Introducing the Rust core rewrite behind a feature flag

Credit:
Devon, Matt, Monica

@alshdavid alshdavid force-pushed the experiment/core-rs branch 4 times, most recently from b3f41be to fe77200 Compare May 8, 2024 01:27
devongovett and others added 2 commits May 8, 2024 01:50
POC: call JS for entry requests

Implement basic transformation algorithm

load parcel config

Port more of the js transformer

Run transformer plugins

serialize asset graph

merge duplicate dependencies

build bundle graph

Target request

run bundler plugin

run bundler as a request

Convert internal asset, dependency, and environment fields to numbers

Implement drop-in replacement for AssetGraphRequest in JS

implement more resolver features

move environment

better engines representation

fix some tests

diff graph
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: support comments in JSON parser for config

Copy link
Contributor

@yamadapc yamadapc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to break this up, review and provide tests and documentation for individual changes

@alshdavid
Copy link
Contributor Author

Will be breaking this PR down into smaller PRs to make it reviewable and help put it behind a feature flag

@alshdavid alshdavid closed this May 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants