Skip to content

[eas-cli] Read .gitignore files inside dot-directories - #4537

Open
AndrewSouthpaw wants to merge 5 commits into
expo:mainfrom
AndrewSouthpaw:andrew/gitignore-dot-dirs
Open

AndrewSouthpaw wants to merge 5 commits into
expo:mainfrom
AndrewSouthpaw:andrew/gitignore-dot-dirs

Conversation

@AndrewSouthpaw

Copy link
Copy Markdown

Why

Fixes #4536. eas-cli skips .gitignore files inside dot-directories when it copies the project for the build archive, so files git ignores there get uploaded. For us that was a ~9 GB jest cache under .repo/.

How

Passes dot: true to the fg('**/.gitignore') call in Ignore.initIgnoreAsync. Also adds .git to the glob's ignore list so it doesn't walk .git/objects now that dot-directories are in play.

Test Plan

@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown

Subscribed to pull request

File Patterns Mentions
packages/eas-cli/** @douglowder

Generated by CodeMention

Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead.

@douglowder

Copy link
Copy Markdown
Contributor

eas-cli now uses changesets for changelogs (#4580). The required "Check for a changeset" check fails on PRs that edit CHANGELOG.md.

To update this PR:

  1. Revert the changes to CHANGELOG.md.
  2. Run yarn changeset, select the changed packages and the bump type, and write the summary.
  3. Commit the new file in .changeset/.

The release adds the PR link and the author to the entry. If this PR needs no changelog entry, revert the CHANGELOG.md changes and add the "no changelog" label.

…t-dirs

* upstream/main: (128 commits)
  [build-tools] stop logging workflow hook parsing in build logs (expo#4717)
  [build-tools] retry download_build network failures and report their cause (expo#4690)
  [eas-cli][build-tools] Bump Node.js to 22.23.4 (expo#4714)
  [eas-cli] make command descriptions lowercase without trailing periods (expo#4385)
  [build-tools] Add `max_duration_seconds` to sandboxes (expo#4702)
  [eas-cli] Show simulator session errors in simulator:get (expo#4694)
  [eas-cli] Show why a simulator session failed to start (expo#4693)
  [worker] Mask secrets in every field of uploaded log records (expo#4698)
  [eas-build-job][build-tools] Check Android launch inputs before the session starts (expo#4696)
  bump STAGING and PRODUCTION to 25.3.0 in cli-versions.json
  v25.3.0
  [eas-cli] Add --system-image to eas simulator:start (expo#4500)
  [build-tools] Wait up to five minutes for Google Play to process an uploaded bundle (expo#4700)
  [build-tools] Quote Android launch arguments for the device shell (expo#4695)
  [build-tools] Forward network capture through local egress (expo#4598)
  [build-tools] Let serve-sim start the iOS Simulator for Appium (expo#4603)
  [build-tools] Let serve-sim start the iOS Simulator for Argent (expo#4602)
  [build-tools] Upload iOS Simulator session screen recording metadata (expo#4689)
  [build-tools] Reset the session idle timer on serve-sim preview input (expo#4691)
  [eas-cli] Add a checkout prompt experiment to the Free plan build limit error (expo#4633)
  ...
@AndrewSouthpaw

Copy link
Copy Markdown
Author

@douglowder Done!

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.

Build archive includes files ignored by a .gitignore inside a dot-directory

2 participants