Skip to content

build(deps): bump lodash from 4.17.23 to 4.18.1#43

Open
dependabot[bot] wants to merge 1 commit intodevelopfrom
dependabot/npm_and_yarn/lodash-4.18.1
Open

build(deps): bump lodash from 4.17.23 to 4.18.1#43
dependabot[bot] wants to merge 1 commit intodevelopfrom
dependabot/npm_and_yarn/lodash-4.18.1

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Apr 7, 2026

Bumps lodash from 4.17.23 to 4.18.1.

Release notes

Sourced from lodash's releases.

4.18.1

Bugs

Fixes a ReferenceError issue in lodash lodash-es lodash-amd and lodash.template when using the template and fromPairs functions from the modular builds. See lodash/lodash#6167

These defects were related to how lodash distributions are built from the main branch using https://github.com/lodash-archive/lodash-cli. When internal dependencies change inside lodash functions, equivalent updates need to be made to a mapping in the lodash-cli. (hey, it was ahead of its time once upon a time!). We know this, but we missed it in the last release. It's the kind of thing that passes in CI, but fails bc the build is not the same thing you tested.

There is no diff on main for this, but you can see the diffs for each of the npm packages on their respective branches:

4.18.0

v4.18.0

Full Changelog: lodash/lodash@4.17.23...4.18.0

Security

_.unset / _.omit: Fixed prototype pollution via constructor/prototype path traversal (GHSA-f23m-r3pf-42rh, fe8d32e). Previously, array-wrapped path segments and primitive roots could bypass the existing guards, allowing deletion of properties from built-in prototypes. Now constructor and prototype are blocked unconditionally as non-terminal path keys, matching baseSet. Calls that previously returned true and deleted the property now return false and leave the target untouched.

_.template: Fixed code injection via imports keys (GHSA-r5fr-rjxr-66jc, CVE-2026-4800, 879aaa9). Fixes an incomplete patch for CVE-2021-23337. The variable option was validated against reForbiddenIdentifierChars but importsKeys was left unguarded, allowing code injection via the same Function() constructor sink. imports keys containing forbidden identifier characters now throw "Invalid imports option passed into _.template".

Docs

  • Add security notice for _.template in threat model and API docs (#6099)
  • Document lower > upper behavior in _.random (#6115)
  • Fix quotes in _.compact jsdoc (#6090)

lodash.* modular packages

Diff

We have also regenerated and published a select number of the lodash.* modular packages.

These modular packages had fallen out of sync significantly from the minor/patch updates to lodash. Specifically, we have brought the following packages up to parity w/ the latest lodash release because they have had CVEs on them in the past:

Commits
  • cb0b9b9 release(patch): bump main to 4.18.1 (#6177)
  • 75535f5 chore: prune stale advisory refs (#6170)
  • 62e91bc docs: remove n_ Node.js < 6 REPL note from README (#6165)
  • 59be2de release(minor): bump to 4.18.0 (#6161)
  • af63457 fix: broken tests for _.template 879aaa9
  • 1073a76 fix: linting issues
  • 879aaa9 fix: validate imports keys in _.template
  • fe8d32e fix: block prototype pollution in baseUnset via constructor/prototype traversal
  • 18ba0a3 refactor(fromPairs): use baseAssignValue for consistent assignment (#6153)
  • b819080 ci: add dist sync validation workflow (#6137)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [lodash](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](lodash/lodash@4.17.23...4.18.1)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Apr 7, 2026
@augmentcode
Copy link
Copy Markdown

augmentcode bot commented Apr 7, 2026

🤖 Augment PR Summary

Summary: Updates the project’s Lodash dependency to a newer 4.x release.

Changes:

  • Bumped lodash from ^4.17.23 to ^4.18.1 in package.json

Technical Notes: This upgrade includes upstream security and bug-fix changes (notably around prototype pollution paths and _.template input validation), so downstream behavior may change if those APIs are used.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@greptile-apps
Copy link
Copy Markdown

greptile-apps bot commented Apr 7, 2026

Greptile Summary

Bumps lodash from 4.17.23 to 4.18.1, picking up two security fixes: prototype pollution in _.unset/_.omit (GHSA-f23m-r3pf-42rh) and code injection in _.template via imports keys (CVE-2026-4800). Both package.json and yarn.lock are correctly updated, satisfying the automated-PR dependency-update policy.

Confidence Score: 5/5

Safe to merge — this is a targeted security patch bump with no breaking API changes.

Both package.json and yarn.lock are correctly updated. The two remaining comments are cosmetic P2 suggestions about @types/lodash version alignment and awareness of dual lodash versions for indirect deps. Neither blocks correctness or security for the project's own code.

No files require special attention.

Important Files Changed

Filename Overview
package.json lodash bumped from ^4.17.23 to ^4.18.1 to pick up security fixes; @types/lodash devDependency not explicitly updated
yarn.lock Lock file now resolves two lodash versions: 4.18.1 for ^4.x ranges and 4.17.23 for ~4.17.0 pinned indirect deps; those indirect deps won't receive the security patches

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[package.json
lodash: ^4.18.1] --> B[yarn resolves
lodash 4.18.1]
    C[Indirect deps
lodash: ~4.17.0] --> D[yarn resolves
lodash 4.17.23]
    B --> E[✅ Security fixes included
GHSA-f23m-r3pf-42rh
CVE-2026-4800]
    D --> F[⚠️ Security fixes NOT included
Prototype pollution & code injection
still present in this copy]
Loading

Comments Outside Diff (1)

  1. package.json, line 133 (link)

    P2 @types/lodash version not updated

    @types/lodash is still listed as ^4.17.23. While the caret range will resolve forward, bumping it explicitly to ^4.18.1 keeps the type definitions in sync with the runtime package and makes the intent clearer.

    Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Reviews (1): Last reviewed commit: "build(deps): bump lodash from 4.17.23 to..." | Re-trigger Greptile

Comment thread yarn.lock
Comment on lines +12904 to 12908
integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==

lodash@~4.17.0:
version "4.17.23"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Dual lodash versions after upgrade

The lockfile now resolves two separate lodash versions: 4.18.1 for the project's direct ^4.18.1 range, and 4.17.23 for any indirect dependency that pins to ~4.17.0. Those older transitive dependencies won't receive the prototype-pollution or code-injection fixes shipped in 4.18.0.

@cla-assistant
Copy link
Copy Markdown

cla-assistant bot commented Apr 7, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

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

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants