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

Use esbuild #1807

Merged
merged 1 commit into from
Jul 30, 2024
Merged

Use esbuild #1807

merged 1 commit into from
Jul 30, 2024

Conversation

jpogran
Copy link
Contributor

@jpogran jpogran commented Jul 24, 2024

This PR replaces webpack with esbuild for building or bundling the extension in both development or deployment workflows for both the desktop and web versions of this extension. This improves the speed of building and bundling the extension, reduces the size of the output, and simplifies the build process.

This required changing the build scripts, the npm tasks, adding a new esbuild.js file, and updating the package.json file to include the necessary dependencies. The result is a much faster build process that is more reliable and easier to maintain, without changing the core npm script commands.

In addition to esbuild, this updates the versions of eslint, prettier, and eslint rulesets. This required some updates to existing files to conform to the rulesets.

This is a follow-up to #1761 which configured webpack to use esbuild instead of a typescript loader. While that PR did improve the speed of the build, it still used webpack which is just not as fast as esbuild.

@jpogran jpogran self-assigned this Jul 24, 2024
@jpogran jpogran force-pushed the use_esbuild branch 2 times, most recently from d18b042 to c482dc1 Compare July 29, 2024 18:03
This replaces webpack with esbuild for building or bundling the extension in both development or deployment workflows for both the desktop and web versions of this extension. This improves the speed of building and bundling the extension, reduces the size of the output, and simplifies the build process.

This required changing the build scripts, the npm tasks, adding a new esbuild.js file, and updating the package.json file to include the necessary dependencies. The result is a much faster build process that is more reliable and easier to maintain, without changing the core npm script commands.

In addition to esbuild, this updates the versions of eslint, prettier, and eslint rulesets. This required some updates to existing files to conform to the rulesets.

This is a follow-up to #1761 which configured webpack to use esbuild instead of a typescript loader. While that PR did improve the speed of the build, it still used webpack which is just not as fast as esbuild.
@jpogran jpogran marked this pull request as ready for review July 29, 2024 18:05
@jpogran jpogran requested a review from a team as a code owner July 29, 2024 18:05
Copy link
Member

@ansgarm ansgarm left a comment

Choose a reason for hiding this comment

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

Test drove it on my machine, worked for me from F5 and from VSIX 👍

Copy link
Member

@dbanck dbanck left a comment

Choose a reason for hiding this comment

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

Nice work!

@jpogran jpogran merged commit 7bdf929 into pre-release Jul 30, 2024
14 checks passed
@jpogran jpogran deleted the use_esbuild branch July 30, 2024 13:16
Copy link

I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 30, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants