Skip to content

Initial yarn berry support#5660

Merged
jurre merged 27 commits intomainfrom
jurre/yarn-berry
Sep 22, 2022
Merged

Initial yarn berry support#5660
jurre merged 27 commits intomainfrom
jurre/yarn-berry

Conversation

@jurre
Copy link
Copy Markdown
Member

@jurre jurre commented Sep 8, 2022

This adds support for yarn-berry behind a feature flag, meaning that it won't run on repo's by default, but we can start using it to test targeted repo's.

There are a few notable known limitations:

  • Support for private and non-default registries is still WIP
  • Setups that rely on Git LFS are not supported
  • Repo's with existing peer-dependency issues are not handled gracefully

@jurre jurre force-pushed the jurre/yarn-berry branch 5 times, most recently from fe7da7a to 2e091f1 Compare September 14, 2022 05:27
@jurre jurre mentioned this pull request Sep 14, 2022
@jurre jurre force-pushed the jurre/yarn-berry branch 4 times, most recently from 68de0b5 to 5efc6c5 Compare September 21, 2022 11:29
@jurre jurre changed the title initial yarn berry investigation spike Initial yarn berry support Sep 22, 2022
@jurre jurre marked this pull request as ready for review September 22, 2022 14:27
@jurre jurre requested a review from a team as a code owner September 22, 2022 14:27
@jurre
Copy link
Copy Markdown
Member Author

jurre commented Sep 22, 2022

Thanks @brrygrdn / @landongrindheim, I've addressed those issues I think 🙇

Copy link
Copy Markdown
Contributor

@landongrindheim landongrindheim left a comment

Choose a reason for hiding this comment

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

I'd love to see another 👍 from someone with better JS chops. Given the assurance that this is behind a feature flag, I'm happy to sign off 🚀

Copy link
Copy Markdown
Contributor

@brrygrdn brrygrdn left a comment

Choose a reason for hiding this comment

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

Looks good to me 💯

jurre and others added 21 commits September 22, 2022 20:19
Adds basic support for parsing + updating yarn berry projects using
workspaces.
The package _name_ only contains `@npm:` if it's actually aliased, and
looks like `my-fetch-factory@npm:fetch-factory`, the _requirement_ will
have an additional `@npm:<version>` in yarn berry, but this is not
present in the package name
In order to merge these changes into main without disrupting existing
behavior, gate the changes behind a feature flag, so we can gradually
roll them out and iron out issues without building up a huge set of
changes.
This config option ensures that we don't run postinstall scripts that
ship with npm packages.

This is something we already do for all ecosystems including npm and
yarn classic.
Co-authored-by: Landon Grindheim <landon.grindheim@gmail.com>
We'd rather not error if we can't determine the yarn version,
returning `nil` is preferable.
Co-authored-by: Barry Gordon <896971+brrygrdn@users.noreply.github.com>
Co-authored-by: Landon Grindheim <landon.grindheim@gmail.com>
@jurre jurre merged commit 9b33750 into main Sep 22, 2022
@jurre jurre deleted the jurre/yarn-berry branch September 22, 2022 20:05
@pavera pavera mentioned this pull request Oct 31, 2022
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.

4 participants