Skip to content

chore(deps): bump lerna to ^9.0.7 to resolve remaining dev-tooling advisories#6499

Draft
antonis wants to merge 2 commits into
mainfrom
deps/security/lerna-9
Draft

chore(deps): bump lerna to ^9.0.7 to resolve remaining dev-tooling advisories#6499
antonis wants to merge 2 commits into
mainfrom
deps/security/lerna-9

Conversation

@antonis

@antonis antonis commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

Upgrades lerna ^8.1.8^9.0.7 to clear the remaining transitive security advisories that were bundled inside lerna 8's publish/GitHub-API internals.

Changes:

  • lerna: ^8.1.8 → ^9.0.7 (dev dependency).
  • Pin brace-expansion v5 to ^5.0.7 via resolutions — lerna 9 pulls nx 22, which would otherwise re-introduce a brace-expansion DoS (see below).
  • Remove two now-stale resolutions that hardcoded lerna@npm:8.1.8 / @lerna/create@npm:8.1.8 (those packages no longer exist in lerna 9).
  • Drop 5 further resolutions made inert by the bumpfront-matter@4.0.2/js-yaml, multimatch@5.0.0/minimatch, node-dir@0.1.17/minimatch, ignore-walk@6.0.5/minimatch, nx@19.6.4/minimatch. Their parent packages are no longer in the tree after lerna 8 → 9; verified inert (yarn.lock byte-identical after removal, audit still 0).

All affected packages are dev/build tooling only — none are part of the shipped @sentry/react-native runtime, whose production dependency tree audits clean before and after this change.

💡 Motivation and Context

Follow-up to the earlier dev-only advisory fixes (#6486, #6487, #6488, #6489). After those, the remaining open Dependabot alerts were all bundled inside lerna@8.1.8. Bumping lerna to 9 resolves them all.

Advisories resolved by this PR:

Advisory introduced by nx 22 and pre-emptively pinned here:

After this PR, yarn npm audit --recursive reports 0 real advisories (excluding unrelated deprecation notices).

💚 How did you test it?

Run locally on this branch:

  • yarn install --immutable — passes (lockfile in sync, no unused-resolution warnings).
  • yarn npm audit --recursive0 real advisories.
  • yarn build — ✅ Successfully ran build for all projects.
  • yarn test — ✅ Successfully ran test for all projects (all suites passing).

Note: this is a major bump of lerna (8 → 9) and transitively nx (19 → 22), which drive the repo's build/release. Build + test pass locally; a lerna version/lerna publish dry-run during review is recommended before merge to confirm the release flow is unaffected.

📝 Checklist

  • I added tests to verify changes.
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled.
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing.
  • Public API changes reviewed by another Mobile SDK team member or implemented according to the develop docs spec.
  • No breaking changes.

🔮 Next steps

Confirm the lerna publish / release workflow still works on lerna 9 before merging.

…isories

Upgrades lerna 8.1.8 -> 9.0.7, which brings patched transitive
@octokit/*, sigstore, @sigstore/core and uuid. lerna 9 pulls nx 22,
which re-introduces a brace-expansion v5 DoS advisory; that is pinned
to ^5.0.7 via resolutions. Removes two now-stale lerna@8.1.8 minimatch
resolutions.

All advisories are dev/build tooling only; the shipped
@sentry/react-native runtime tree is unaffected.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Semver Impact of This PR

None (no version bump detected)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


  • chore(deps): bump lerna to ^9.0.7 to resolve remaining dev-tooling advisories by antonis in #6499
  • fix(android): make Sentry Gradle tasks Configuration Cache compatible by fabiendem in #6469
  • docs: Update 8.19.0 changelog by antonis in #6498
  • chore(deps): bump fast-uri from 3.1.2 to 3.1.4 by dependabot in #6496
  • chore(deps): pin glob 10.x to ^10.5.0 (dev-only advisory) by antonis in #6489
  • chore(deps): bump brace-expansion resolutions to ^2.1.2 (dev-only advisory) by antonis in #6488
  • chore(deps): add cross-spawn ^7.0.6 resolution (dev-only advisory) by antonis in #6487
  • chore(deps): bump js-yaml resolution to ^4.3.0 (dev-only advisory) by antonis in #6486
  • chore(deps): update CLI to v3.6.1 by github-actions in #6493
  • chore(deps): update JavaScript SDK to v10.67.0 by github-actions in #6494
  • chore(deps): update JavaScript SDK to v10.66.0 by github-actions in #6471
  • chore(deps): update Maestro to v2.7.0 by github-actions in #6481
  • chore(ios): Bump iOS binary size limit to 1650 KiB by antonis in #6485
  • chore(deps): bump tar from 7.5.16 to 7.5.20 by dependabot in #6483
  • chore(deps): bump shell-quote from 1.8.4 to 1.10.0 by dependabot in #6484
  • chore(deps): bump the codeql-action group with 3 updates by dependabot in #6475
  • chore(deps): bump brace-expansion from 1.1.13 to 1.1.16 by dependabot in #6482
  • chore(deps): bump axios from 1.16.0 to 1.18.1 by dependabot in #6479
  • chore(deps): bump actions/setup-java from 5.5.0 to 5.6.0 by dependabot in #6476

🤖 This preview updates automatically when you update the PR.

@antonis antonis added the ready-to-merge Triggers the full CI test suite label Jul 22, 2026
Removes 5 scoped minimatch/js-yaml resolutions whose parent packages
(front-matter@4.0.2, multimatch@5.0.0, node-dir@0.1.17, ignore-walk@6.0.5,
nx@19.6.4) are no longer in the dependency tree after lerna 8 -> 9.
Verified inert: yarn.lock is byte-identical after removal and
yarn npm audit --recursive still reports 0 advisories.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 3837.29 ms 1221.23 ms -2616.06 ms
Size 4.98 MiB 6.56 MiB 1.58 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
b9bebee+dirty 3850.15 ms 1227.51 ms -2622.64 ms
3d377b5+dirty 1218.48 ms 1219.51 ms 1.03 ms
1a2e7e0+dirty 3842.49 ms 1220.04 ms -2622.45 ms
e5bb5f6+dirty 3826.14 ms 1212.24 ms -2613.90 ms
6acdf1d+dirty 3844.33 ms 1212.96 ms -2631.38 ms
41d6254+dirty 3845.71 ms 1224.51 ms -2621.20 ms
9210ae6+dirty 3815.93 ms 1214.14 ms -2601.79 ms
c004dae+dirty 3850.32 ms 1227.79 ms -2622.53 ms
4e0b819+dirty 3839.05 ms 1210.75 ms -2628.30 ms
0b5120f+dirty 3838.39 ms 1232.91 ms -2605.48 ms

App size

Revision Plain With Sentry Diff
b9bebee+dirty 5.15 MiB 6.68 MiB 1.53 MiB
3d377b5+dirty 3.38 MiB 4.76 MiB 1.38 MiB
1a2e7e0+dirty 4.98 MiB 6.46 MiB 1.49 MiB
e5bb5f6+dirty 4.98 MiB 6.51 MiB 1.53 MiB
6acdf1d+dirty 4.98 MiB 6.51 MiB 1.53 MiB
41d6254+dirty 5.15 MiB 6.70 MiB 1.54 MiB
9210ae6+dirty 5.15 MiB 6.68 MiB 1.53 MiB
c004dae+dirty 5.15 MiB 6.67 MiB 1.51 MiB
4e0b819+dirty 4.98 MiB 6.46 MiB 1.49 MiB
0b5120f+dirty 5.15 MiB 6.68 MiB 1.53 MiB

@antonis
antonis marked this pull request as ready for review July 22, 2026 11:37

@antonis antonis left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The failed E2E tests are related to #6497

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit adad396. Configure here.

Comment thread package.json
"downlevel-dts": "^0.11.0",
"google-java-format": "^1.4.0",
"lerna": "^8.1.8",
"lerna": "^9.0.7",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Lerna 9 drops Node 18

High Severity

Flagged because the dependency-update review guidelines call out new requirements from major bumps. lerna ^9.0.7 (and transitive nx 22) require Node ^20.19.0 || ^22.12.0 || >=24.0.0, but Volta still pins 18.20.8 and CI workflows still use node-version: 18. Build, test, and lerna version in release therefore run on an unsupported Node.

Additional Locations (1)
Fix in Cursor Fix in Web

Triggered by project rule: PR Review Guidelines for Cursor Bot

Reviewed by Cursor Bugbot for commit adad396. Configure here.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Marking as blocked for now since this is a valid concern that needs to be investigated in detail. All the issues that this PR fixes are dev only and do not affect production anyway.

@antonis
antonis marked this pull request as draft July 22, 2026 11:42
@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 3837.23 ms 1224.27 ms -2612.96 ms
Size 4.98 MiB 6.56 MiB 1.58 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
b0d3373+dirty 3842.49 ms 1218.49 ms -2624.00 ms
ef27341+dirty 3835.20 ms 1212.23 ms -2622.97 ms
e5bb5f6+dirty 3825.74 ms 1217.30 ms -2608.43 ms
44c8b3f+dirty 3849.24 ms 1209.94 ms -2639.31 ms
68672fc+dirty 3832.22 ms 1228.29 ms -2603.93 ms
5748023+dirty 3844.74 ms 1225.49 ms -2619.26 ms
6acdf1d+dirty 3835.35 ms 1218.30 ms -2617.06 ms
2c735cc+dirty 1223.33 ms 1224.38 ms 1.04 ms
100ce80+dirty 3843.57 ms 1226.46 ms -2617.12 ms
9210ae6+dirty 3834.11 ms 1216.64 ms -2617.47 ms

App size

Revision Plain With Sentry Diff
b0d3373+dirty 5.15 MiB 6.68 MiB 1.53 MiB
ef27341+dirty 5.15 MiB 6.68 MiB 1.53 MiB
e5bb5f6+dirty 4.98 MiB 6.51 MiB 1.53 MiB
44c8b3f+dirty 5.15 MiB 6.66 MiB 1.51 MiB
68672fc+dirty 5.15 MiB 6.71 MiB 1.55 MiB
5748023+dirty 5.15 MiB 6.68 MiB 1.53 MiB
6acdf1d+dirty 4.98 MiB 6.51 MiB 1.53 MiB
2c735cc+dirty 3.38 MiB 4.74 MiB 1.35 MiB
100ce80+dirty 5.15 MiB 6.67 MiB 1.51 MiB
9210ae6+dirty 5.15 MiB 6.68 MiB 1.53 MiB

@antonis antonis added Blocked and removed ready-to-merge Triggers the full CI test suite labels Jul 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor
Fails
🚫 Pull request is not ready for merge, please add the "ready-to-merge" label to the pull request

Generated by 🚫 dangerJS against adad396

@github-actions

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 544.69 ms 575.00 ms 30.31 ms
Size 49.74 MiB 55.36 MiB 5.61 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
f3215d3+dirty 411.11 ms 454.38 ms 43.27 ms
d2eadf8+dirty 414.64 ms 454.56 ms 39.92 ms
b0d3373+dirty 557.66 ms 579.42 ms 21.76 ms
27d9693+dirty 419.08 ms 469.12 ms 50.04 ms
4e0b819+dirty 420.56 ms 470.08 ms 49.52 ms
9474ead+dirty 411.45 ms 446.80 ms 35.35 ms
0bd8916+dirty 412.77 ms 451.31 ms 38.54 ms
f9c1ed4+dirty 431.00 ms 466.22 ms 35.22 ms
3d536d1+dirty 524.34 ms 547.32 ms 22.98 ms
04207c4+dirty 459.19 ms 518.54 ms 59.35 ms

App size

Revision Plain With Sentry Diff
f3215d3+dirty 48.30 MiB 53.49 MiB 5.19 MiB
d2eadf8+dirty 48.30 MiB 53.48 MiB 5.18 MiB
b0d3373+dirty 48.30 MiB 53.58 MiB 5.28 MiB
27d9693+dirty 49.74 MiB 55.09 MiB 5.34 MiB
4e0b819+dirty 49.74 MiB 54.81 MiB 5.07 MiB
9474ead+dirty 48.30 MiB 53.61 MiB 5.30 MiB
0bd8916+dirty 48.30 MiB 53.57 MiB 5.26 MiB
f9c1ed4+dirty 49.74 MiB 54.86 MiB 5.12 MiB
3d536d1+dirty 49.74 MiB 55.26 MiB 5.52 MiB
04207c4+dirty 43.75 MiB 48.12 MiB 4.37 MiB

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant