Skip to content

[local-build-plugin] Replace bunyan with @expo/bunyan - #4284

Open
brentvatne wants to merge 8 commits into
brent/remove-lodash-getfrom
brent/local-build-expo-bunyan
Open

[local-build-plugin] Replace bunyan with @expo/bunyan#4284
brentvatne wants to merge 8 commits into
brent/remove-lodash-getfrom
brent/local-build-expo-bunyan

Conversation

@brentvatne

@brentvatne brentvatne commented Aug 26, 2026

Copy link
Copy Markdown
Member

Why

The local-build plugin directly depends on legacy bunyan, which brings deprecated transitive packages and the dtrace-provider install script.

How

  • Replace Bunyan with @expo/bunyan only in the local-build plugin.
  • Keep public @expo/logger on legacy Bunyan so rotating-file streams remain supported.
  • Remove the incidental Bunyan development dependency from Build Tools and use the logger-exported type in its test mock.
  • Declare Bunyan directly in Steps because packages/steps/cli.sh invokes its formatter binary.
  • Add public logger contract tests, including rotating-file streams, to prevent the replacement from expanding beyond the compatible scope.

Test Plan

  • yarn workspace @expo/logger test --runInBand --watchman=false (11 tests)
  • yarn workspace @expo/logger typecheck
  • yarn workspace @expo/build-tools typecheck
  • yarn workspace eas-cli-local-build-plugin typecheck
  • yarn workspace @expo/steps typecheck
  • yarn workspace @expo/steps run bunyan --version

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 #4283.

@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.51%. Comparing base (bfdd522) to head (31ca657).

Additional details and impacted files
@@                     Coverage Diff                     @@
##           brent/remove-lodash-get    #4284      +/-   ##
===========================================================
+ Coverage                    64.47%   64.51%   +0.04%     
===========================================================
  Files                         1049     1052       +3     
  Lines                        48464    48517      +53     
  Branches                     10213    10224      +11     
===========================================================
+ Hits                         31243    31294      +51     
- Misses                       17105    17107       +2     
  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/local-build-expo-bunyan branch from 34af071 to acabc8f Compare August 26, 2026 21:05
@brentvatne
brentvatne requested a review from douglowder August 27, 2026 06:06
…ent/local-build-expo-bunyan

# Conflicts:
#	CHANGELOG.md
#	packages/local-build-plugin/package.json
#	yarn.lock
@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