-
Notifications
You must be signed in to change notification settings - Fork 30.5k
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
backport: 11665 to v6 #16667
backport: 11665 to v6 #16667
Conversation
Including: * Move async *stat() functions to FillStatsArray() now used by the sync *stat() functions * Avoid creating fs.Stats instances for implicit async/sync *stat() calls used in various fs functions * Store reference to Float64Array data on C++ side for easier/faster access, instead of passing from JS to C++ on every async/sync *stat() call Backport-PR-URL: nodejs#11665 Fixes: nodejs#16496
Including: * Avoid regexp on non-Windows platforms when parsing the root of a path Backport-PR-URL: nodejs#11665
The original PR was Semver-Major, is this backport only semver-patch? Are there some other patches that might be able to be reverted that could fix this instead of landing the optimization? Have you tested across various versions of v6.x? Is there a version that works? Thanks for taking the time to do this port 🎉 |
This PR is also Semver-Major in the sense that
Yes. See the following section.
I have tested the signedness of There is some discussions on the signedness on #8515. So I have worked on another PR to give a hotfix: #16705. |
/cc @nodejs/lts can you please take a look |
@mscdex since the original optimizations were done by you, would you be able to review this? |
Backported #11665 to v6, should fix #16496.
The fs.realpath*() optimizations is not fully ported since v6 is lack of
internal/querystring
.Any feedback is welcome.
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passesAffected core subsystem(s)