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

PNPM and Parcel #1372

Merged
merged 9 commits into from
Apr 12, 2022
Merged

PNPM and Parcel #1372

merged 9 commits into from
Apr 12, 2022

Conversation

fussel178
Copy link
Member

@fussel178 fussel178 commented Apr 9, 2022

Summary

This PR introduces changes in monorepo handling and the build pipeline.

Details

Due to multiple issues with npm in the past, we should switch to pnpm.
It has native monorepo support and convenient workspace linking and better dependency resolution and installation performance. Installed dependencies are isolated and only have access to their direct dependencies which prevents usage of invalid package versions. (the counterpart of hoisting)

Additionally we should also switch to Parcel as our main build tool. Rollup has served us good in the past, but Parcel supports our special monorepo support much better while less configuration setup is needed.
It plays very well with pnpm.
As a nice addition the compile times improve drastically.

To test these changes, you need to install pnpm first:

npm i -g pnpm@next-7

Then, clear your current build files:

npm run clean
rm -rf node_modules

And checkout:

git checkout chore/parcel-migration

To use the new tooling, take a look and the new contributing guidelines.

Some of the test tooling currently don't work due to package manager changes. (especially storybook)
They're working on support for pnpm.

Additional information

n/a

Related links

CLA

  • I have signed the individual contributor's license agreement and sent it to the board of the WüSpace e. V. organization.

@fussel178 fussel178 added 🔨 enhancement New feature or request 🔗 dependencies Pull requests that update a dependency file 📜 javascript Pull requests that update Javascript code 🏃 github_actions Pull requests that update Github_actions code labels Apr 9, 2022
@fussel178 fussel178 self-assigned this Apr 9, 2022
@fussel178 fussel178 added this to Sprint in Telestion via automation Apr 9, 2022
@fussel178 fussel178 added this to the v0.19 milestone Apr 9, 2022
This was linked to issues Apr 9, 2022
Copy link
Member

@jantischhoefer jantischhoefer left a comment

Choose a reason for hiding this comment

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

I viewed all the changes and only can approve the work. Good job.
Also the build time became a lot faster.

@fussel178 fussel178 merged commit 4c0ca3c into tooling-changes Apr 12, 2022
Telestion automation moved this from Sprint to Sprint Done Apr 12, 2022
@fussel178 fussel178 deleted the chore/parcel-migration branch April 12, 2022 01:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🔨 enhancement New feature or request 🔗 dependencies Pull requests that update a dependency file 🏃 github_actions Pull requests that update Github_actions code 📜 javascript Pull requests that update Javascript code
Projects
Telestion
Sprint Done
Development

Successfully merging this pull request may close these issues.

Move to Parcel Move to PNPM
2 participants