Skip to content

build: update dependency picomatch to v4.0.4 (21.2.x)#32847

Merged
alan-agius4 merged 1 commit intoangular:21.2.xfrom
angular-robot:ng-renovate/21.2.x-picomatch-4-x
Mar 27, 2026
Merged

build: update dependency picomatch to v4.0.4 (21.2.x)#32847
alan-agius4 merged 1 commit intoangular:21.2.xfrom
angular-robot:ng-renovate/21.2.x-picomatch-4-x

Conversation

@angular-robot
Copy link
Contributor

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
picomatch 4.0.34.0.4 age adoption passing confidence

  • If you want to rebase/retry this PR, check this box

Release Notes

micromatch/picomatch (picomatch)

v4.0.4

Compare Source

This is a security release fixing several security relevant issues.

What's Changed

Full Changelog: micromatch/picomatch@4.0.3...4.0.4

See associated pull request for more information.
@angular-robot angular-robot added action: merge The PR is ready for merge by the caretaker area: build & ci Related the build and CI infrastructure of the project target: automation This PR is targeted to only merge into the branch defined in Github [bot use only] labels Mar 26, 2026
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the picomatch dependency from version 4.0.3 to 4.0.4 across several package.json files within the Angular ecosystem, including packages/angular/build/package.json, packages/angular_devkit/build_angular/package.json, and packages/angular_devkit/core/package.json. The pnpm-lock.yaml file has also been updated to reflect this dependency upgrade and its transitive effects on packages like fdir and tinyglobby. There are no review comments to address.

@alan-agius4 alan-agius4 linked an issue Mar 26, 2026 that may be closed by this pull request
1 task
@Stargator
Copy link

I would like to see this merged in. We have some CI/CD vulnerability scanners that are raising issues with this.

Also, npm audit is suggesting a weird fix for my Angular 21 application to downgrade it to v17:

picomatch  4.0.0 - 4.0.3
Severity: high
Picomatch has a ReDoS vulnerability via extglob quantifiers - https://github.com/advisories/GHSA-c2c7-rcm5-vvqj
Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching - https://github.com/advisories/GHSA-3v7f-55p6-f55p
fix available via `npm audit fix --force`
Will install @angular-devkit/build-angular@17.1.4, which is a breaking change
node_modules/picomatch
  @angular-devkit/core  >=17.2.0-next.0
  Depends on vulnerable versions of picomatch
  node_modules/@angular-devkit/core
    @angular-devkit/architect  0.1000.0-next.0 - 0.1000.0-rc.1 || >=0.1702.0-next.0
    Depends on vulnerable versions of @angular-devkit/core
    node_modules/@angular-devkit/architect
      @angular-devkit/build-webpack  >=0.1702.0-next.0
      Depends on vulnerable versions of @angular-devkit/architect
      node_modules/@angular-devkit/build-webpack
    @angular-devkit/schematics  >=17.2.0-next.0
    Depends on vulnerable versions of @angular-devkit/core
    node_modules/@angular-devkit/schematics
    @angular/cli  10.0.0-next.0 - 10.0.0-rc.1 || 14.1.0-next.0 - 14.1.0-rc.3 || 17.0.0-next.0 - 17.0.0-next.2 || >=17.2.0-next.0
    Depends on vulnerable versions of @angular-devkit/architect
    Depends on vulnerable versions of @angular-devkit/core
    Depends on vulnerable versions of @angular-devkit/schematics
    Depends on vulnerable versions of @schematics/angular
    node_modules/@angular/cli
    @schematics/angular  >=17.2.0-next.0
    Depends on vulnerable versions of @angular-devkit/core
    Depends on vulnerable versions of @angular-devkit/schematics
    node_modules/@schematics/angular

@JeanMeche
Copy link
Member

@Stargator It looks like you're running v17 which is out of LTS. Your version won't get the fix.

@alan-agius4
Copy link
Collaborator

@JeanMeche, that’s actually how npm audit works, it will downgrade and try to install any version including previous majors that are not “vulnerable”

@Stargator
Copy link

@alan-agius4 , I see a lot of dependencies are pinned to an exact version instead of a range like ~4.0.4 or ^4.0.4.

It seems like it would save the Angular team to allow for at least patch releases.

@alan-agius4
Copy link
Collaborator

@Stargator, unfortunately a lot of NPM dependencies do not follow semver and we had a lot of breakages in minors and patch versions over time. So for stability we choose to pin all of our dependencies.

@alan-agius4 alan-agius4 merged commit 349bd43 into angular:21.2.x Mar 27, 2026
68 of 69 checks passed
@alan-agius4 alan-agius4 deleted the ng-renovate/21.2.x-picomatch-4-x branch March 27, 2026 07:26
@alan-agius4
Copy link
Collaborator

This PR was merged into the repository. The changes were merged into the following branches:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

action: merge The PR is ready for merge by the caretaker area: build & ci Related the build and CI infrastructure of the project target: automation This PR is targeted to only merge into the branch defined in Github [bot use only]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

security: vulnerability found in transitive dependency picomatch

4 participants