Skip to content

[steps] Replace lodash.get with a local helper - #4283

Open
brentvatne wants to merge 2 commits into
brent/bump-uuid-v11from
brent/remove-lodash-get
Open

[steps] Replace lodash.get with a local helper#4283
brentvatne wants to merge 2 commits into
brent/bump-uuid-v11from
brent/remove-lodash-get

Conversation

@brentvatne

@brentvatne brentvatne commented Aug 26, 2026

Copy link
Copy Markdown
Member

Why

@expo/steps uses lodash.get@4.4.2, which is deprecated. Its call sites only need the path shapes generated by Steps templates and expression evaluation.

How

  • Replace lodash.get with a small local helper.
  • Support dot paths, array indices, bracketed keys, quoted keys, nullish traversal, primitive properties, and verbatim own-property precedence.
  • Remove lodash.get and @types/lodash.get from the Steps manifest.
  • Add focused compatibility coverage for every supported path shape.

Test Plan

  • yarn workspace @expo/steps typecheck
  • yarn workspace @expo/steps test --runInBand --watchman=false (569 tests)

Stack

  1. #4281 — minizlib 3.1.0
  2. #4282 — uuid v11
  3. #4283 — remove lodash.get
  4. #4284 — local-build @expo/bunyan
  5. #4285 — prebuild fallback regression tests

This PR depends on #4282.

@codecov

codecov Bot commented Aug 26, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 64.47%. Comparing base (d029ed7) to head (bfdd522).

Additional details and impacted files
@@                   Coverage Diff                   @@
##           brent/bump-uuid-v11    #4283      +/-   ##
=======================================================
+ Coverage                64.44%   64.47%   +0.03%     
=======================================================
  Files                     1048     1049       +1     
  Lines                    48425    48464      +39     
  Branches                 10203    10213      +10     
=======================================================
+ Hits                     31204    31243      +39     
  Misses                   17105    17105              
  Partials                   116      116              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@brentvatne
brentvatne force-pushed the brent/remove-lodash-get branch from 3aac743 to f123b70 Compare August 26, 2026 21:05
@brentvatne
brentvatne requested a review from douglowder August 27, 2026 06:07
@brentvatne
brentvatne force-pushed the brent/remove-lodash-get branch from f123b70 to bfdd522 Compare August 27, 2026 21:01
@github-actions

Copy link
Copy Markdown

✅ Thank you for adding the changelog entry!

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.

1 participant