-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
dns: default to verbatim=true in dns.lookup() #37681
Conversation
42e0a69
to
0e73564
Compare
@nodejs/tsc ... do we need to to take the current default through a deprecation cycle first? |
This could use a test |
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.
lgtm
The failing tests look like they're just wrong assertions that |
Yeah, now the question is...should |
The test should simply assert that it's one or the other, allowing either, since the result you get depends on whether the environment is ipv6-capable. |
Is there an OR statement for |
You can use assert.match and a RegEx. |
I suspect it's failing now because the debugger only listens on Now, either we assume that every IPv6 system will always be reachable via IPv4 at least on localhost, we could change |
e6d93bb
to
6aca9af
Compare
I feel lilke one problem here is that instances are listening on Another obstacle will be to make the code really dualstack. Because |
It passed. Somehow the connection to this PR is broken? Here it still shows as if it's running. |
Ok so it passed. Yet there are still some tests shown here on github that link to older runs and don't show as finished, e.g.: |
The other error is just 'flakiness' (nothing to do with networking). |
Yeah, the other error disappeared. But |
Which is something that you are confident that it can be solved at the CI machine config level, correct? If so, that shouldn't be a problem for landing this PR. |
Well, I am not very well versed in Unix, neither Solaris nor SmartOS in particular. It seems as if SmartOS only resolves localhost to '::1' when connecting if there's more IPv6 configured than the I'd change the |
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 try those suggestions before calling for more reviews?
@@ -3,7 +3,7 @@ const common = require('../common'); | |||
const net = require('net'); | |||
const assert = require('assert'); | |||
|
|||
const c = net.createConnection(common.PORT); | |||
const c = net.createConnection(common.PORT, common.localhostIPv4); |
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.
FWIW I think assert.match
would make more sense for this test.
I you are able to implement the last two request above, I can spawn another CI job (if it doesn't pass we'll revert and call it done). Once my suggestions addressed, I think considering the size of this PR and the fact there is already ≥200 comments on it, it would be worth opening a new one, and explain in the OP:
I don't think we would fine anyone with enough motivation to go through reading all comments to understand how we arrived at this result. |
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
Done.
Totally agree!
Actually, I feel like starting over from zero with all that we have learned so far. If just the CI jobs were faster or I could set it up at my PC to test it locally :/ it would be nice being able to just run the tests that fail, and not the whole building procedure and all of the tests. |
Failed now on
I think I'll craft a new PR and we continue from there. |
|
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: nodejs#31566 Refs: nodejs#6307 Refs: nodejs#20710 Reissue of nodejs#31567 Reissue of nodejs#37681
Continues in #37931 |
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: nodejs#31566 Refs: nodejs#6307 Refs: nodejs#20710 Reissue of nodejs#31567 Reissue of nodejs#37681 Reissue of nodejs#37931
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: nodejs#31566 Refs: nodejs#6307 Refs: nodejs#20710 Reissue of nodejs#31567 Reissue of nodejs#37681 Reissue of nodejs#37931
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: nodejs#31566 Refs: nodejs#6307 Refs: nodejs#20710 Reissue of nodejs#31567 Reissue of nodejs#37681 Reissue of nodejs#37931
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: nodejs#31566 Refs: nodejs#6307 Refs: nodejs#20710 Refs: nodejs#38099 Reissue of nodejs#31567 Reissue of nodejs#37681 Reissue of nodejs#37931
Switch the default from false (reorder the result so that IPv4 addresses come before IPv6 addresses) to true (return them exactly as the resolver sent them to us.) Fixes: #31566 Refs: #6307 Refs: #20710 Refs: #38099 Reissue of #31567 Reissue of #37681 Reissue of #37931 PR-URL: #39987 Refs: #6307 Refs: #20710 Refs: #38099 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
Switch the default from false (reorder the result so that IPv4 addresses
come before IPv6 addresses) to true (return them exactly as the resolver
sent them to us.)
Fixes: #31566
Refs: #6307
Refs: #20710
Reissue of #31567