-
Notifications
You must be signed in to change notification settings - Fork 0
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
Feature metadata refactor #1
Feature metadata refactor #1
Conversation
I bet this looks clean against A subjective matter, of course, but I found the original back-and-forth between More importantly though this looks to me like it does the same thing, so if you're much happier with this structure, great. Are the changes in |
@erikkemperman |
@phated All right, I'm going to have to call it a night -- one more thing I noticed, it is now no longer obvious that the symlink case is not handled yet. I had a TODO somewhere, I think? And having read the flow in execution order again, for both branches, the original structure strikes me as slightly less fragmented lexicographically -- if that makes any sense -- but of course I spent more time looking at that structure earlier :-P Maybe @piranna could weigh in? |
I'll also add @contra |
Ref gulpjs#151 for clean diff against master |
dbae7f4
to
1f1790c
Compare
@phated Just to double check, you made this PR to my branch for communication purposes only, right? Or should I merge it at some point? |
No need to merge it. I'll be rebasing the branch while adding tests and stuff and then I can merge my PR to master. Just wanted to show the diff with yours. |
All right, thought so but wanted to be sure. |
3d06dbd
to
fa202ca
Compare
c56fae1
to
fd33945
Compare
64d3056
to
550edd5
Compare
8b1b39b
to
0cd8f22
Compare
Metadata stuff finally resolved, closing this! |
I have put together a fairly large refactor that builds upon your latest PR. I wanted to submit it as a PR to your fork so you can take a look at the diff. If you diff this branch to the current master of vinyl-fs, it is actually really clean. Your changes were overall pretty great but I couldn't follow the callbacks being passed around everywhere. I had refactored stuff so the
stat
call was still in thewritten
callback but then I figured out why you were passing the callbacks around (to handle theoutstream.end
case). Since streams handle all this stuff we are trying to do rather nicely, I just left them up their own devices and created acloseFd
method that is used inwriteBuffer
andwriteDir
. I want to refactor thestat
method, as it is just a cut-paste of your implementation into a module and add a ton more tests, but I figured I'd send the bulk of it to you now. Feedback is greatly appreciated.