Skip to content

chore: switch to tinyglobby#2680

Draft
benmccann wants to merge 2 commits into
react-native-community:mainfrom
benmccann:tinyglobby
Draft

chore: switch to tinyglobby#2680
benmccann wants to merge 2 commits into
react-native-community:mainfrom
benmccann:tinyglobby

Conversation

@benmccann

Copy link
Copy Markdown
Contributor

Summary

https://npmgraph.js.org/?q=fast-glob - 17 dependencies
https://npmgraph.js.org/?q=tinyglobby - 2 dependencies

Test Plan

No new functionality was added, so this should be covered by existing tests

Checklist

  • Documentation is up to date.
  • Follows commit message convention described in CONTRIBUTING.md.
  • For functional changes, my test plan has linked these CLI changes into a local react-native checkout (instructions).

@szymonrybczak szymonrybczak left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

What's the performance difference between fast-glob and tinyglobby?

@benmccann

benmccann commented Jun 28, 2025

Copy link
Copy Markdown
Contributor Author

tinyglobby should be faster. Here's a benchmark from their repo:

Screenshot from 2025-06-26 10-28-43

Looks like the CI for this change is failing because Jest is outdated, so we'll either need to upgrade Jest or wait for a new release of fdir containing the commit thecodrr/fdir@76cb3a4 supporting older platforms

@szymonrybczak szymonrybczak left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks 👌

@benmccann benmccann marked this pull request as draft June 29, 2025 13:28
@thymikee

thymikee commented Jul 7, 2025

Copy link
Copy Markdown
Member

@benmccann any chance you could measure the perf difference in this project?

@benmccann benmccann marked this pull request as ready for review September 9, 2025 19:34
@benmccann

Copy link
Copy Markdown
Contributor Author

I've updated this PR to use the latest tinyglobby, which in turn uses the latest fdir, which removes the usage of AbortController, so this PR should pass on older versions of Node on the CI now

Comment thread package.json
"@types/glob": "^7.1.1",
"@types/jest": "^26.0.15",
"@types/node": "^20.0.0",
"@types/picomatch": "^4.0.2",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

do we need this? picomatch is a transitive dep

@benmccann benmccann Sep 10, 2025

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.

It was because of the type-checking during the build process. fdir (one of the dependencies of tinyglobby) uses picomatch in its types, but doesn't declare a dependency on @types/picomatch, so it failed without this

I think no one else has hit it because it's quite rare to type-check your dependencies

@benmccann benmccann marked this pull request as draft September 10, 2025 15:34
@github-actions

github-actions Bot commented Jan 7, 2026

Copy link
Copy Markdown

There hasn't been any activity on this pull request in the past 3 months, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 7 days.

@github-actions github-actions Bot added the stale label Jan 7, 2026
@github-actions

Copy link
Copy Markdown

There hasn't been any activity on this pull request in the past 3 months, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 7 days.

@github-actions github-actions Bot added the stale label Apr 29, 2026
@stianjensen

Copy link
Copy Markdown
Contributor

Would be nice to get this updated and ready for merge!

@github-actions github-actions Bot removed the stale label Apr 30, 2026
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.

4 participants