Skip to content

Conversation

benmccann
Copy link

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).

Copy link
Collaborator

@szymonrybczak szymonrybczak left a comment

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
Copy link
Author

benmccann commented Jun 28, 2025

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

Copy link
Collaborator

@szymonrybczak szymonrybczak left a comment

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
Copy link
Member

thymikee commented Jul 7, 2025

@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
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

"@types/glob": "^7.1.1",
"@types/jest": "^26.0.15",
"@types/node": "^20.0.0",
"@types/picomatch": "^4.0.2",
Copy link
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

Copy link
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

@benmccann benmccann marked this pull request as draft September 10, 2025 15:34
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.

3 participants