yarnpkg / yarnpkg/berry

[Case Study] Angular CLI

Open
#266 11 comments 1 reaction 1 assignee View on GitHub

@arcanis is already working on this.

Since Jun 29, 2019.

case study
Dominant language
TypeScript
Stars
8.1k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

What package is covered by this investigations?

All packages contained in the angular/angular-cli repository, most notably @angular/cli.

Describe the goal of the investigation

As an angular developer I want my builds to work with berry (or PnP in general). Not having this would mean I can't use yarn and I don't want to even think about the consequences to that as I use yarn workspaces in literally all of my angular repos.

Angular has a work-in-progress bazel buildchain. Bazel uses yarn internally, but getting that up and running with berry is best left to another ticket.

Investigation report

Test repo at bgotink/berry-angular-poc. Current status: not working at all

Encountered issues:

  • A custom module resolution in @angular-devkit/core/node/resolve.
    I've hacked together a quick resolution function using pnpapi here, that seems to work for now though I'm sure I'll run into more issues later.
  • Next up is webpack-subresource-integrity which is at a version that doesn't list html-webpack-plugin as peer dependency, leading to an error.
    Adding a resolution to the first version that does include the missing peer dependency leads to #265.
    Fixed by #279

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.