Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 34.2k
Consistent error messages in all modules#3374
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
Uh oh!
There was an error while loading. Please reload this page.
Conversation
Fishrock123 commented Oct 14, 2015
Can these be linted somehow? cc @Trott and @silverwind? |
cjihrig commented Oct 14, 2015
I think we would have to have some very specific, well defined rules in order to lint natural language. I'm not sure that we ever established rules in #892. This is definitely a step in the right direction IMO though. |
silverwind commented Oct 14, 2015
I'm sure they can. How about something like this?
Rule 2 is inconsistent in this PR, btw. But we could also omit the dot. Which style is prefered? |
mscdex commented Oct 14, 2015
Warning on |
lib/_http_outgoing.js Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we include a period at the end of all messages? They are full sentences after all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On the one hand, yes, they are complete sentences.
On the other hand, this is a typical usage:
try{// whatever } catch (e){console.error('Error "' + e.message +'" received while trying to foo.")} I can go either way, but agree that whatever is decided, it should be consistent.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@silverwind not all of them are sentences, for example bad argumenthttps://github.com/nodejs/node/pull/3374/files#diff-9a205ef7ee967ee32efee02e58b3482dR1965
I would propose to go without period at the end as this rule can be applied to all cases
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fine with me. Go ahead and remove those periods.
micnic commented Oct 19, 2015
Updated the PR to have no periods at the end of error messages. |
silverwind commented Oct 19, 2015
LGTM. Are we fine with landing this as a |
silverwind commented Nov 9, 2015
This commit fixes some error messages that are not consistent with some general rules which most of the error messages follow
micnic commented Nov 9, 2015
@silverwind done |
This commit fixes some error messages that are not consistent with some general rules which most of the error messages follow. PR-URL: #3374 Reviewed-By: Roman Reiss <[email protected]>
silverwind commented Nov 9, 2015
Thanks! Landed in 20285ad. |
cjihrig commented Nov 9, 2015
Was this landed without running CI? I'm seeing a number of tests failing that depend on the value of the error message. |
cjihrig commented Nov 9, 2015
Working on a fix |
silverwind commented Nov 9, 2015
Looks like it, sorry about that. |
mikeal commented Nov 9, 2015
I think this should be semver-minor. We're going to see a ton of tests in modules break because of these formatting changes, as we've seen in other releases based on similar changes in libuv. We should also probably not take this in LTS for the same reason. |
evanlucas commented Nov 9, 2015
This could even be semver-major IMO. People could have tests or code that rely on these error messages... |
mikeal commented Nov 9, 2015
We established some time back that "breaking tests" !== "breaking code/changes." The exact text of an error message is no guaranteed by the API, only that an error will exist (or throw). This is a perfect example, while some tests may break the code those tests are testing is not actually broken by the change. |
silverwind commented Nov 9, 2015
Yeah, probably best to not have it in LTS. While I'd consider error code and error type to be part of the API, error messages are kind of a grey zone. Not sure it fits the minor label, but feel free to add it @mikeal. |
silverwind commented Nov 10, 2015
Marked as |
This commit fixes some error messages that are not consistent with some general rules which most of the error messages follow.
This is an updated PR for master branch, which is based on the PR #892 and the discussion in #1220