[ruby-core:121147] [Ruby master Bug#21104] Net::HTTP connections failing in Ruby >= 3.4.0 on macOS with Happy Eyeballs enabled
From:
radarek via ruby-core <ruby-core@...>
Date:
2025-02-24 00:12:32 UTC
List:
ruby-core #121147
SXNzdWUgIzIxMTA0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgcmFkYXJlayAoUmFkb3PFgmF3IEJ1xYJh dCkuDQoNCg0Kc2hpb2ltbSAoTWlzYWtpIFNoaW9pKSB3cm90ZSBpbiAjbm90ZS01Og0KPiBJZiBw b3NzaWJsZSwgY291bGQgeW91IHJ1biB0aGVzZSBhbmQgbGV0IG1lIGtub3cgdGhlIHJlc3VsdHM/ DQo+IA0KPiAtIENoZWNrIGlmIHlvdSBjYW4gY29ubmVjdCB0byBgaHR0cDovL2V4YW1wbGUuY29t L2AgKG5vdCBodHRwcykgdXNpbmcgYE5ldDo6SFRUUGAuDQoNCkl0IGZhaWxzIGZvciBydWJ5IDMu NC4yOg0KDQpgYGANCiQgUkJFTlZfVkVSU0lPTj0zLjQuMiBydWJ5IC12IC1ybmV0L2h0dHAgLWUg J3B1dHMgTmV0OjpIVFRQLmdldChVUkkoImh0dHA6Ly9leGFtcGxlLmNvbS8iKSknDQpydWJ5IDMu NC4yICgyMDI1LTAyLTE1IHJldmlzaW9uIGQyOTMwZjhlN2EpICtQUklTTSBbYXJtNjQtZGFyd2lu MjRdDQo8aW50ZXJuYWw6aW8+OjYzOmluICdJTyNyZWFkX25vbmJsb2NrJzogQ29ubmVjdGlvbiBy ZXNldCBieSBwZWVyIChFcnJubzo6RUNPTk5SRVNFVCkNCglmcm9tIC9Vc2Vycy9yYWRhcmVrLy5y YmVudi92ZXJzaW9ucy8zLjQuMi9saWIvcnVieS8zLjQuMC9uZXQvcHJvdG9jb2wucmI6MjE4Omlu ICdOZXQ6OkJ1ZmZlcmVkSU8jcmJ1Zl9maWxsJw0KCWZyb20gL1VzZXJzL3JhZGFyZWsvLnJiZW52 L3ZlcnNpb25zLzMuNC4yL2xpYi9ydWJ5LzMuNC4wL25ldC9wcm90b2NvbC5yYjoxOTk6aW4gJ05l dDo6QnVmZmVyZWRJTyNyZWFkdW50aWwnDQoJZnJvbSAvVXNlcnMvcmFkYXJlay8ucmJlbnYvdmVy c2lvbnMvMy40LjIvbGliL3J1YnkvMy40LjAvbmV0L3Byb3RvY29sLnJiOjIwOTppbiAnTmV0OjpC dWZmZXJlZElPI3JlYWRsaW5lJw0KCWZyb20gL1VzZXJzL3JhZGFyZWsvLnJiZW52L3ZlcnNpb25z LzMuNC4yL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwL3Jlc3BvbnNlLnJiOjE1ODppbiAnTmV0OjpI VFRQUmVzcG9uc2UucmVhZF9zdGF0dXNfbGluZScNCglmcm9tIC9Vc2Vycy9yYWRhcmVrLy5yYmVu di92ZXJzaW9ucy8zLjQuMi9saWIvcnVieS8zLjQuMC9uZXQvaHR0cC9yZXNwb25zZS5yYjoxNDc6 aW4gJ05ldDo6SFRUUFJlc3BvbnNlLnJlYWRfbmV3Jw0KCWZyb20gL1VzZXJzL3JhZGFyZWsvLnJi ZW52L3ZlcnNpb25zLzMuNC4yL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjI0MTQ6aW4gJ2Js b2NrIGluIE5ldDo6SFRUUCN0cmFuc3BvcnRfcmVxdWVzdCcNCglmcm9tIC9Vc2Vycy9yYWRhcmVr Ly5yYmVudi92ZXJzaW9ucy8zLjQuMi9saWIvcnVieS8zLjQuMC9uZXQvaHR0cC5yYjoyNDA1Omlu ICdLZXJuZWwjY2F0Y2gnDQoJZnJvbSAvVXNlcnMvcmFkYXJlay8ucmJlbnYvdmVyc2lvbnMvMy40 LjIvbGliL3J1YnkvMy40LjAvbmV0L2h0dHAucmI6MjQwNTppbiAnTmV0OjpIVFRQI3RyYW5zcG9y dF9yZXF1ZXN0Jw0KCWZyb20gL1VzZXJzL3JhZGFyZWsvLnJiZW52L3ZlcnNpb25zLzMuNC4yL2xp Yi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjIzNzg6aW4gJ05ldDo6SFRUUCNyZXF1ZXN0Jw0KCWZy b20gL1VzZXJzL3JhZGFyZWsvLnJiZW52L3ZlcnNpb25zLzMuNC4yL2xpYi9ydWJ5LzMuNC4wL25l dC9odHRwLnJiOjIyNDk6aW4gJ05ldDo6SFRUUCNyZXF1ZXN0X2dldCcNCglmcm9tIC9Vc2Vycy9y YWRhcmVrLy5yYmVudi92ZXJzaW9ucy8zLjQuMi9saWIvcnVieS8zLjQuMC9uZXQvaHR0cC5yYjo4 MjY6aW4gJ2Jsb2NrIGluIE5ldDo6SFRUUC5nZXRfcmVzcG9uc2UnDQoJZnJvbSAvVXNlcnMvcmFk YXJlay8ucmJlbnYvdmVyc2lvbnMvMy40LjIvbGliL3J1YnkvMy40LjAvbmV0L2h0dHAucmI6MTYy NjppbiAnTmV0OjpIVFRQI3N0YXJ0Jw0KCWZyb20gL1VzZXJzL3JhZGFyZWsvLnJiZW52L3ZlcnNp b25zLzMuNC4yL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjEwNjQ6aW4gJ05ldDo6SFRUUC5z dGFydCcNCglmcm9tIC9Vc2Vycy9yYWRhcmVrLy5yYmVudi92ZXJzaW9ucy8zLjQuMi9saWIvcnVi eS8zLjQuMC9uZXQvaHR0cC5yYjo4MjQ6aW4gJ05ldDo6SFRUUC5nZXRfcmVzcG9uc2UnDQoJZnJv bSAvVXNlcnMvcmFkYXJlay8ucmJlbnYvdmVyc2lvbnMvMy40LjIvbGliL3J1YnkvMy40LjAvbmV0 L2h0dHAucmI6ODA1OmluICdOZXQ6OkhUVFAuZ2V0Jw0KCWZyb20gLWU6MTppbiAnPG1haW4+Jw0K YGBgDQoNCkRvaW5nIGl0IHdpdGggcHVyZSBzb2NrZXQgYWxzbyBmYWlsczoNCg0KYGBgcnVieQ0K cmVxdWlyZSAic29ja2V0Ig0KcyA9IFRDUFNvY2tldC5vcGVuKCJleGFtcGxlLmNvbSIsIDgwKQ0K cy53cml0ZSAiR0VUIC8gSFRUUC8xLjFcclxuSG9zdDogZXhhbXBsZS5jb21cclxuQ29ubmVjdGlv bjogY2xvc2VcclxuXHJcbiINCnB1dHMgcy5nZXRzKG5pbCkNCnMuY2xvc2UNCmBgYA0KDQpSdW5u aW5nIHRoaXMgcHJvZ3JhbSBJIGdldDoNCmBgYA0KJCBSQkVOVl9WRVJTSU9OPTMuNC4yIHJ1Ynkg LXYgc29ja2V0LnJiDQpydWJ5IDMuNC4yICgyMDI1LTAyLTE1IHJldmlzaW9uIGQyOTMwZjhlN2Ep ICtQUklTTSBbYXJtNjQtZGFyd2luMjRdDQpzb2NrZXQucmI6NDppbiAnSU8jZ2V0cyc6IENvbm5l Y3Rpb24gcmVzZXQgYnkgcGVlciAoRXJybm86OkVDT05OUkVTRVQpDQoJZnJvbSBzb2NrZXQucmI6 NDppbiAnPG1haW4+Jw0KYGBgDQoNCj4gICAtIFRoaXMgd2lsbCBoZWxwIGRldGVybWluZSB3aGV0 aGVyIGNvbm5lY3Rpb25zIHRvIHBvcnQgODAgYmVoYXZlIHRoZSBzYW1lIHdheSBhcyBjb25uZWN0 aW9ucyB0byBwb3J0IDQ0My4gSWYgdGhlIGNvbm5lY3Rpb24gdG8gcG9ydCA4MCBzdWNjZWVkcyB3 aGlsZSBwb3J0IDQ0MyBmYWlscywgaXQgbWF5IGluZGljYXRlIHRoYXQgYSBmaXJld2FsbCBvciBz aW1pbGFyIG1lY2hhbmlzbSBpcyBpbmplY3RpbmcgUlNUIGludG8gcG9ydCA0NDMgY29ubmVjdGlv bnMuDQoNCkZyb20gdGhlIHByZXZpb3VzIGV4cGVyaW1lbnQgaXQgbG9va3MgbGlrZSB0aGV5IGJl aGF2ZSB0aGUgc2FtZSBzbyB0aGUgcHJvYmxlbSBpcyBub3Qgc3BlY2lmaWMgdG8gNDQzIHBvcnQu DQoNCj4gLSBDaGVjayB3aGV0aGVyIElQdjYgaXMgZW5hYmxlZCBvciBkaXNhYmxlZCwgYW5kIHRl c3QgYE5ldDo6SFRUUGAgaW4gYm90aCBzdGF0ZXMgdG8gc2VlIGlmIHRoZSByZXN1bHRzIGFyZSB0 aGUgc2FtZS4NCj4gICAtIEZvciBleGFtcGxlLCBpZiB5b3UgYXJlIHVzaW5nIFdpLUZpLCB5b3Ug Y2FuIGNoZWNrIHRoZSBJUHY2IHN0YXR1cyB3aXRoIGBuZXR3b3Jrc2V0dXAgLWdldGluZm8gV2kt RmlgLiBUaGlzIHdpbGwgaGVscCB2ZXJpZnkgd2hldGhlciB0aGVyZSBpcyBhIGhpZGRlbiBpc3N1 ZSBpbiB0aGUgSEV2MiBpbXBsZW1lbnRhdGlvbi4NCg0KSSB0dXJuZWQgb2ZmIGlwdjYgYnkgZXhl Y3V0aW5nIGBuZXR3b3Jrc2V0dXAgLXNldHY2b2ZmIFdpLUZpYCAoYW5kIHZlcmlmaWVkIHdpdGgg YG5ldHdvcmtzZXR1cCAtZ2V0aW5mbyBXaS1GaWApIGJ1dCBpdCBkaWRuJ3QgY2hhbmdlIHByZXZp b3VzIG91dGNvbWVzLg0KDQo+IC0gSWYgeW91IGFyZSB1c2luZyBhbnkgbmV0d29yayBleHRlbnNp b24gc29mdHdhcmUgb24geW91ciBNYWMsIGRpc2FibGUgaXQgYW5kIGNoZWNrIHdoZXRoZXIgYE5l dDo6SFRUUGAgYmVoYXZlcyBkaWZmZXJlbnRseSBjb21wYXJlZCB0byB3aGVuIGl0IGlzIGVuYWJs ZWQuDQo+ICAgLSBZb3UgY2FuIGNoZWNrIHRoZSBsaXN0IG9mIG5ldHdvcmsgZXh0ZW5zaW9uIHNv ZnR3YXJlIGJ5IHJ1bm5pbmcgYHN5c3RlbWV4dGVuc2lvbnNjdGwgbGlzdGAuIFRoaXMgd2lsbCBo ZWxwIGRldGVybWluZSB3aGV0aGVyIGFueSBwYXJ0aWN1bGFyIHNvZnR3YXJlIGlzIGluamVjdGlu ZyBSU1QuDQoNClRoZSBvbmx5IG9uZSBleHRlbnNpb24gd2hpY2ggaXMgbGlzdGVkIGlzIHNvbWUg T0JTIGNhbWVyYSBleHRlbnNpb24gd2hpY2ggaXMgZGlzYWJsZWQ6DQoNCmBgYA0Kc3lzdGVtZXh0 ZW5zaW9uc2N0bCBsaXN0DQoxIGV4dGVuc2lvbihzKQ0KLS0tIGNvbS5hcHBsZS5zeXN0ZW1fZXh0 ZW5zaW9uLmNtaW8gKEdvIHRvICdTeXN0ZW0gU2V0dGluZ3MgPiBHZW5lcmFsID4gTG9naW4gSXRl bXMgJiBFeHRlbnNpb25zID4gQ2FtZXJhIEV4dGVuc2lvbnMnIHRvIG1vZGlmeSB0aGVzZSBzeXN0 ZW0gZXh0ZW5zaW9uKHMpKQ0KZW5hYmxlZAlhY3RpdmUJdGVhbUlECWJ1bmRsZUlEICh2ZXJzaW9u KQluYW1lCVtzdGF0ZV0NCgkqCTJNTVJFNU1UQjgJY29tLm9ic3Byb2plY3Qub2JzLXN0dWRpby5t YWMtY2FtZXJhLWV4dGVuc2lvbiAoMzAuMS4wLzgyNTQ2MTQwNTQpCWNvbS5vYnNwcm9qZWN0Lm9i cy1zdHVkaW8ubWFjLWNhbWVyYS1leHRlbnNpb24JW2FjdGl2YXRlZCBkaXNhYmxlZF0NCmBgYA0K DQo+IC0gSWYgeW91IGhhdmUgYW5vdGhlciBtYWNoaW5lIHdpdGggUnVieSAzLjQgaW5zdGFsbGVk IGJlc2lkZXMgdGhlIE1hYyB3aGVyZSB0aGUgaXNzdWUgb2NjdXJzLCBjaGVjayB3aGV0aGVyIHRo ZSBzYW1lIHByb2JsZW0gaGFwcGVucyBvbiB0aGF0IG1hY2hpbmUuDQoNCkkgaGF2ZSBzZWNvbmQg TWFjIGZyb20gY29tcGFueSBJIHdvcmsgZm9yLCBjb25uZWN0ZWQgdG8gdGhlIHNhbWUgbmV0d29y ayAoYnV0IGl0IHJ1bnMgc29mdHdhcmUgcmVsYXRlZCB0byB0aGUgbmV0d29yayAtIHpzY2FsZXIs IHdoaWNoIEkgYmVsaWV2ZSBjYW4gaW50ZXJjZXB0IG5ldHdvcmsgY29ubmVjdGlvbnMpIGFuZCB0 aGVyZSBpcyBubyBpc3N1ZS4NCg0KPiANCj4gSSB3b3VsZCBhcHByZWNpYXRlIGFueSBpbmZvcm1h dGlvbiB5b3UgY2FuIHByb3ZpZGUuDQoNCkknbGwgYmUgaGFwcHkgdG8gcHJvdmlkZSBhbnkgaW5m b3JtYXRpb24gd2hpY2ggY291bGQgYmUgdXNlZnVsIHRvIGZpeCB0aGlzIGJ1Zy4NCg0KLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQnVnICMyMTEwNDogTmV0OjpIVFRQ IGNvbm5lY3Rpb25zIGZhaWxpbmcgaW4gUnVieSA+PSAzLjQuMCBvbiBtYWNPUyB3aXRoIEhhcHB5 IEV5ZWJhbGxzIGVuYWJsZWQNCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTEw NCNjaGFuZ2UtMTEyMDc3DQoNCiogQXV0aG9yOiBtanQ1OCAoTWlrZSBUaG9tcHNvbikNCiogU3Rh dHVzOiBPcGVuDQoqIHJ1YnkgLXY6IHJ1YnkgMy40LjEgKDIwMjQtMTItMjUgcmV2aXNpb24gNDhk NGVmY2I4NSkgK1BSSVNNIFthcm02NC1kYXJ3aW4yNF0NCiogQmFja3BvcnQ6IDMuMTogVU5LTk9X TiwgMy4yOiBVTktOT1dOLCAzLjM6IFVOS05PV04sIDMuNDogVU5LTk9XTg0KLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQSBwcm9qZWN0IEkgd29yayBvbiByZWNlbnRs eSB1cGdyYWRlZCBSdWJ5IHRvIDMuNC4xIGZyb20gMy4zLjUuIEZvbGxvd2luZyB0aGUgdXBncmFk ZSwgYW5kIHdoZW4gcnVubmluZyBsb2NhbGx5IG9uIG15IE1hYywgYWxsIGF0dGVtcHRzIHRvIGNv bm5lY3QgdG8gYW4gZXh0ZXJuYWwgc2VydmljZSB3aXRoaW4gdGhlIHByb2plY3Qgb3ZlciBodHRw KHMpIGZhaWwuDQoNCldlIHVzZSBgbWlzZWAgZm9yIG1hbmFnaW5nIGRldmVsb3BtZW50IHRvb2wg ZGVwZW5kZW5jaWVzLCBpbmNsdWRpbmcgUnVieSwgYW5kIEkgYW0gdXNpbmcgbWFjT1MgMTUuMy4N Cg0KRm9yIGV4YW1wbGUgcnVubmluZyBzb21ldGhpbmcgYXMgc2ltcGxlIGFzOg0KYGBgDQpyZXF1 aXJlICduZXQvaHR0cCcNCnB1dHMgTmV0OjpIVFRQLmdldChVUkkoJ2h0dHBzOi8vYmJjLmNvLnVr JykpDQpgYGANCg0KV2lsbCBmYWlsIHdpdGggdGhlIGZvbGxvd2luZyBzdGFjayB0cmFjZToNCmBg YA0KL3BhdGgvdG8vLmxvY2FsL3NoYXJlL21pc2UvaW5zdGFsbHMvcnVieS8zLjQuMS9saWIvcnVi eS8zLjQuMC9uZXQvcHJvdG9jb2wucmI6NDY6aW4gJ09wZW5TU0w6OlNTTDo6U1NMU29ja2V0I2Nv bm5lY3Rfbm9uYmxvY2snOiBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIgLSBTU0xfY29ubmVjdCAo RXJybm86OkVDT05OUkVTRVQpDQoJZnJvbSAvcGF0aC90by8ubG9jYWwvc2hhcmUvbWlzZS9pbnN0 YWxscy9ydWJ5LzMuNC4xL2xpYi9ydWJ5LzMuNC4wL25ldC9wcm90b2NvbC5yYjo0NjppbiAnTmV0 OjpQcm90b2NvbCNzc2xfc29ja2V0X2Nvbm5lY3QnDQoJZnJvbSAvcGF0aC90by8ubG9jYWwvc2hh cmUvbWlzZS9pbnN0YWxscy9ydWJ5LzMuNC4xL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjE3 MzY6aW4gJ05ldDo6SFRUUCNjb25uZWN0Jw0KCWZyb20gL3BhdGgvdG8vLmxvY2FsL3NoYXJlL21p c2UvaW5zdGFsbHMvcnVieS8zLjQuMS9saWIvcnVieS8zLjQuMC9uZXQvaHR0cC5yYjoxNjM2Omlu ICdOZXQ6OkhUVFAjZG9fc3RhcnQnDQoJZnJvbSAvcGF0aC90by8ubG9jYWwvc2hhcmUvbWlzZS9p bnN0YWxscy9ydWJ5LzMuNC4xL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjE2MjU6aW4gJ05l dDo6SFRUUCNzdGFydCcNCglmcm9tIC9wYXRoL3RvLy5sb2NhbC9zaGFyZS9taXNlL2luc3RhbGxz L3J1YnkvMy40LjEvbGliL3J1YnkvMy40LjAvbmV0L2h0dHAucmI6MTA2NDppbiAnTmV0OjpIVFRQ LnN0YXJ0Jw0KCWZyb20gL3BhdGgvdG8vLmxvY2FsL3NoYXJlL21pc2UvaW5zdGFsbHMvcnVieS8z LjQuMS9saWIvcnVieS8zLjQuMC9uZXQvaHR0cC5yYjo4MjQ6aW4gJ05ldDo6SFRUUC5nZXRfcmVz cG9uc2UnDQoJZnJvbSAvcGF0aC90by8ubG9jYWwvc2hhcmUvbWlzZS9pbnN0YWxscy9ydWJ5LzMu NC4xL2xpYi9ydWJ5LzMuNC4wL25ldC9odHRwLnJiOjgwNTppbiAnTmV0OjpIVFRQLmdldCcNCglm cm9tIHJlcXVlc3QucmI6MjppbiAnPG1haW4+Jw0KYGBgDQoNCkkgdHJpZWQgZGlmZmVyZW50IHZl cnNpb25zIG9mIFJ1YnkgYW5kIGNvbmZpcm1lZCB0aGF0IHRoZSBpc3N1ZSBhcHBlYXJzIHdpdGgg My40LjAuIEFmdGVyIHJlYWRpbmcgdGhlIHJlbGVhc2Ugbm90ZXMgZm9yIHRoaXMgdmVyc2lvbiwg SSB0cmllZCBzZXR0aW5nIGBSVUJZX1RDUF9OT19GQVNUX0ZBTExCQUNLPTFgIGFuZCB0aGlzIHdv cmtlZCwgYWxsb3dpbmcgbWUgdG8gd29yayBhcm91bmQgdGhlIHByb2JsZW0uDQoNClRoaXMgaXNz dWUgaGFzIGFsc28gYmVlbiBlbmNvdW50ZXJlZCBieSBvdGhlcnMsIHBsZWFzZSBzZWU6DQpodHRw czovL2dpdGh1Yi5jb20vcnVieWdlbXMvcnVieWdlbXMvaXNzdWVzLzgzOTANCg0KDQoNCi0tIA0K aHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvDQogX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwogcnVieS1jb3JlIG1haWxpbmcgbGlzdCAtLSBydWJ5LWNvcmVA bWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBydWJ5LWNv cmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwogcnVieS1jb3JlIGluZm8gLS0gaHR0cHM6Ly9tbC5y dWJ5LWxhbmcub3JnL21haWxtYW4zL2xpc3RzL3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLw==