-
Notifications
You must be signed in to change notification settings - Fork 626
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplify symlink handling #1398
Conversation
This pull request was exported from Phabricator. Differential Revision: D66899343 |
This pull request was exported from Phabricator. Differential Revision: D66899343 |
Summary: Pull Request resolved: #1398 Reading symlink targets with `readLink` is currently delegated to `metro-file-map`'s worker abstraction. However, due to the way the abstraction is used for symlinks, we never actually use the worker processes/threads, and always process in band. The key here is that `readLink` is always mutually exclusive with other worker tasks, like `computeSha1` and `computeDependencies` - as it must be, because those operations don't make sense for symlink files. This lifts the call to `readLink` out of the abstraction and explicitly into the main process, simplifying the worker and improving readability. Changelog: Internal Differential Revision: D66899343
a672bef
to
2f12fc9
Compare
Summary: Reading symlink targets with `readLink` is currently delegated to `metro-file-map`'s worker abstraction. However, due to the way the abstraction is used for symlinks, we never actually use the worker processes/threads, and always process in band. The key here is that `readLink` is always mutually exclusive with other worker tasks, like `computeSha1` and `computeDependencies` - as it must be, because those operations don't make sense for symlink files. This lifts the call to `readLink` out of the abstraction and explicitly into the main process, simplifying the worker and improving readability. Changelog: Internal Differential Revision: D66899343
2f12fc9
to
b7f07cc
Compare
This pull request was exported from Phabricator. Differential Revision: D66899343 |
Summary: Reading symlink targets with `readLink` is currently delegated to `metro-file-map`'s worker abstraction. However, due to the way the abstraction is used for symlinks, we never actually use the worker processes/threads, and always process in band. The key here is that `readLink` is always mutually exclusive with other worker tasks, like `computeSha1` and `computeDependencies` - as it must be, because those operations don't make sense for symlink files. This lifts the call to `readLink` out of the abstraction and explicitly into the main process, simplifying the worker and improving readability. Changelog: Internal Differential Revision: D66899343
b7f07cc
to
8be0030
Compare
This pull request was exported from Phabricator. Differential Revision: D66899343 |
Summary: Reading symlink targets with `readLink` is currently delegated to `metro-file-map`'s worker abstraction. However, due to the way the abstraction is used for symlinks, we never actually use the worker processes/threads, and always process in band. The key here is that `readLink` is always mutually exclusive with other worker tasks, like `computeSha1` and `computeDependencies` - as it must be, because those operations don't make sense for symlink files. This lifts the call to `readLink` out of the abstraction and explicitly into the main process, simplifying the worker and improving readability. Changelog: Internal Differential Revision: D66899343
This pull request was exported from Phabricator. Differential Revision: D66899343 |
This pull request has been merged in 91e5dfc. |
Summary:
Reading symlink targets with
readLink
is currently delegated tometro-file-map
's worker abstraction. However, due to the way the abstraction is used for symlinks, we never actually use the worker processes/threads, and always process in band.The key here is that
readLink
is always mutually exclusive with other worker tasks, likecomputeSha1
andcomputeDependencies
- as it must be, because those operations don't make sense for symlink files.This lifts the call to
readLink
out of the abstraction and explicitly into the main process, simplifying the worker and improving readability.Changelog: Internal
Differential Revision: D66899343