FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

doc: list macOS as supporting filename argument by chris--young · Pull Request #13111 · nodejs/node · GitHub

/ node Public

doc: list macOS as supporting filename argument - #13111

Closed
chris--young wants to merge 3 commits into
nodejs:masterfrom
chris--young:watch-filename
Closed

doc: list macOS as supporting filename argument#13111
chris--young wants to merge 3 commits into
nodejs:masterfrom
chris--young:watch-filename

Conversation

chris--young commented May 19, 2017
edited
Loading

Copy link
Copy Markdown

macOS is not currently listed as a supported os for the fs.watch filename argument, but it does work. This commit updates the documentation to reflect that.

Fixes: #13108

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • documentation is changed or added
  • commit message follows commit guidelines
Affected core subsystem(s)

docs, tests

nodejs-github-bot added doc Issues and PRs related to the documentations. fs Issues and PRs related to the fs subsystem / file system. labels May 19, 2017
refack added the macos Issues and PRs related to the macOS platform / OSX. label May 19, 2017

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

/cc @nodejs/platform-macos

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

@chris--young thank you very much for the contribution 🥇

It would be extra beneficial if you tried to add some test cases that validate that the filename is indeed passed to the callback. That way we could run automated testing that validate the doc.
IMHO a good file to add the tests to is test/parallel/test-fs-watchfile.js, and you could use the helpers in our common test module to distunguish between the plafroms.

chris--young force-pushed the watch-filename branch 3 times, most recently from 710747f to 364720e Compare May 19, 2017 06:33

Copy link
Copy Markdown
Member

AIX too please.

bash-4.3$ uname   
AIX
bash-4.3$ cat w.js
var fs = require('fs');
fs.watch('myfile', (eventType, filename) => {
  console.log(`event type is: ${eventType}`);
  if (filename) {
    console.log(`filename provided: ${filename}`);
  } else {
    console.log('filename not provided');
  }
});
bash-4.3$ node w.js &
[1] 1769476
bash-4.3$ echo hello > myfile
bash-4.3$ event type is: change
filename provided: myfile
event type is: change
filename provided: myfile

gireeshpunathil left a comment

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.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Per my comment - will you please add AIX also into the list?

Comment thread test/parallel/test-fs-watchfile.js Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I would add Windows too. You can also add AIX according to @gireeshpunathil's suggestion.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I just checked, it passes on windows.

refack left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

A few nits

Comment thread test/parallel/test-fs-watchfile.js Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I just checked, it passes on windows.

Comment thread test/parallel/test-fs-watchfile.js Outdated

refack May 19, 2017
edited
Loading

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

If you could use assert.ifError if (err) assert.fail(err); instead. It will rethrow the error so we know what went wrong.
assert(!err) will just say true != false

Comment thread test/parallel/test-fs-watchfile.js Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

For the test to pass on Windows you should remove the common.refreshTmpDir();. Don't worry about it, the test harness will take care of it.

Comment thread test/parallel/test-fs-watchfile.js Outdated

refack May 19, 2017
edited
Loading

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

you can replace the whole callback with (err) => assert.ifError(err)
Ref: #13092 (comment)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

you should replace the whole callback with common.mustCall((err) => {if (err) assert.fail(err)})
Ref: #13115

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

@chris--young thanks

refack self-assigned this May 19, 2017
refack added aix Issues and PRs related to the AIX platform. windows Issues and PRs related to the Windows platform. labels May 19, 2017

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

chris--young commented May 19, 2017
edited
Loading

Copy link
Copy Markdown
Author

Any idea what's up with that failed windows-fanned test? Seeing this in the logs...

node-test-binary-windows » 1,vs2015-x86,win2008r2 completed with result FAILURE

I don't have a Windows box to test on right now, should be able to setup a vm over the weekend if needed.

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

Any idea what's up with that failed windows-fanned test?

Ignore, it's a infrastructure fail. Also the linux fan is backlogged.
You can consider it green 👍

refack commented May 19, 2017

Copy link
Copy Markdown
Contributor

@chris--young if you're not aware of our landing procedure; now that your part is done, we keep the PR open for 48-72 hours so that anyone who might want to voice an opinion will have a chance.
Ref: https://github.com/nodejs/node/blob/master/CONTRIBUTING.md#step-8-landing
If it all goes smoothly I'll land this on Monday.

Thanks again!

Copy link
Copy Markdown
Author

sweet

Comment thread test/parallel/test-fs-watchfile.js Outdated

lpinca May 20, 2017
edited
Loading

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.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Nit: can you please replace this with assert.ifError()?

Edit: Just read @refack comments against assert.ifError(). It is actually widely used in our tests but what is used here is also ok so feel free to ignore this.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Edit: Just read @refack comments against assert.ifError(). It is actually widely used in our tests but what is used here is also ok so feel free to ignore this.

Vote for a better ifError #12820 ✌️

gireeshpunathil left a comment

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.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

@chris--young - thanks! I am fine with the changes.

aqrln left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Thanks for your contribution! Can you please change the message of the first commit to use doc:, not docs:? That can be fixed by whoever lands the commit as well, though.

chris--young changed the title docs: list macOS as supporting filename argument doc: list macOS as supporting filename argument May 21, 2017

refack commented May 22, 2017

Copy link
Copy Markdown
Contributor

CI: https://ci.nodejs.org/job/node-test-commit/10067/
/cc @lpinca @aqrln, where your comments addressed?

Comment thread test/parallel/test-fs-watchfile.js Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I'd prefer it to be either a one-liner or to have braces, but maybe it's just me, and it clearly does not violate the code style this way too, so you can ignore this comment :)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I really think we should use assert.ifError(err) in these cases.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

+1
Either one liner or braces.

Comment thread test/parallel/test-fs-watchfile.js Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Ditto

refack commented May 22, 2017

Copy link
Copy Markdown
Contributor

@chris--young we raised a code style nit, then this will land.

Copy link
Copy Markdown
Author

@refack made those changes. It looks like a new test is failing now, possibly another infrastructure fail

Checking out Revision 21535c38a3f800117089872f890e9d1f336024e0 (refs/remotes/origin/_jenkins_local_branch)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 21535c38a3f800117089872f890e9d1f336024e0
FATAL: Could not checkout 21535c38a3f800117089872f890e9d1f336024e0
hudson.plugins.git.GitException: Command "git checkout -f 21535c38a3f800117089872f890e9d1f336024e0" returned status code 128:
stdout: 
stderr: fatal: reference is not a tree: 21535c38a3f800117089872f890e9d1f336024e0

refack commented May 22, 2017

Copy link
Copy Markdown
Contributor

Ignore it fedora22 is obsolete anyway. I'm landing this.

refack pushed a commit to refack/node that referenced this pull request May 22, 2017
also added regression tests

PR-URL: nodejs#13111
Fixes: nodejs#13108
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Alexey Orlenko <eaglexrlnk@gmail.com>

refack commented May 22, 2017

Copy link
Copy Markdown
Contributor

Landed in c470f04

refack closed this May 22, 2017
jasnell pushed a commit that referenced this pull request May 23, 2017
also added regression tests

PR-URL: #13111
Fixes: #13108
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Alexey Orlenko <eaglexrlnk@gmail.com>
jasnell pushed a commit that referenced this pull request May 23, 2017
also added regression tests

PR-URL: #13111
Fixes: #13108
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Alexey Orlenko <eaglexrlnk@gmail.com>
jasnell mentioned this pull request May 28, 2017
gibfahn mentioned this pull request Jun 15, 2017
3 tasks
refack removed their assignment Oct 20, 2018
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

aix Issues and PRs related to the AIX platform. doc Issues and PRs related to the documentations. fs Issues and PRs related to the fs subsystem / file system. macos Issues and PRs related to the macOS platform / OSX. windows Issues and PRs related to the Windows platform.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Documentation for fs.watch needs to say that filename is also available for macOS

10 participants


Back | FazBrowse Home | New Git URL