[ruby-core:119833] [Ruby master Feature#20782] Introduction of Happy Eyeballs Version 2 (RFC8305) in TCPSocket.new
From:
"hsbt (Hiroshi SHIBATA) via ruby-core" <ruby-core@...>
Date:
2024-11-08 04:32:53 UTC
List:
ruby-core #119833
SXNzdWUgIzIwNzgyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgaHNidCAoSGlyb3NoaSBTSElCQVRBKS4N Cg0KDQpUaGFua3MuIEkndmUgZmluaXNoZWQgeW91ciBhY2NvdW50cy4NCg0KWW91IGNhbiBtZXJn ZSBodHRwczovL2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvMTE2NTMgYnkgeW91cnNlbGYuDQoN Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkZlYXR1cmUgIzIwNzgy OiBJbnRyb2R1Y3Rpb24gb2YgSGFwcHkgRXllYmFsbHMgVmVyc2lvbiAyIChSRkM4MzA1KSBpbiBU Q1BTb2NrZXQubmV3DQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjA3ODIjY2hh bmdlLTExMDUyMQ0KDQoqIEF1dGhvcjogc2hpb2ltbSAoTWlzYWtpIFNoaW9pKQ0KKiBTdGF0dXM6 IEFzc2lnbmVkDQoqIEFzc2lnbmVlOiBuYXJ1c2UgKFl1aSBOQVJVU0UpDQotLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpUaGlzIGlzIGFuIGltcGxlbWVudGF0aW9uIG9m IEhhcHB5IEV5ZWJhbGxzIHZlcnNpb24gMiAoUkZDIDgzMDUpIGluIGBUQ1BTb2NrZXQubmV3YC4N ClNlZSBodHRwczovL2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvMTE2NTMNCg0KIyMjIEJhY2tn cm91bmQNClByaW9yIHRvIHRoaXMgaW1wbGVtZW50YXRpb24sIEkgaW1wbGVtZW50ZWQgSGFwcHkg RXllYmFsbHMgVmVyc2lvbiAyIChIRXYyKSBmb3IgYFNvY2tldC50Y3BgIGluIGh0dHBzOi8vZ2l0 aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC85Mzc0LiANCkhFdjIgaXMgYW4gYWxnb3JpdGhtIGRlZmlu ZWQgaW4gW1JGQyA4MzA1XShodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3Jm YzgzMDUpLCBhaW1lZCBhdCBpbXByb3ZpbmcgbmV0d29yayBjb25uZWN0aXZpdHkuIA0KRm9yIG1v cmUgZGV0YWlscyBvbiB0aGUgc3BlY2lmaWMgY2FzZXMgdGhhdCBIRXYyIGhlbHBzLCBwbGVhc2Ug cmVmZXIgdG8gaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwMTA4Lg0KDQojIyMg UHJvcG9zYWwgJiBPdXRjb21lDQpUaGlzIHByb3Bvc2FsIGltcGxlbWVudHMgdGhlIHNhbWUgSEV2 MiBhbGdvcml0aG0gaW4gYFRDUFNvY2tldC5uZXdgLg0KU2luY2UgYFRDUFNvY2tldC5uZXdgIGlz IHVzZWQgbW9yZSB3aWRlbHkgdGhhbiBgU29ja2V0LnRjcGAsIHRoaXMgY2hhbmdlIGlzIGV4cGVj dGVkIHRvIGJyb2FkZW4gdGhlIGltcGFjdCBvZiBIRXYyJ3MgYmVuZWZpdHMuIA0KTGlrZSBgU29j a2V0LnRjcGAsIEkgaGF2ZSBhbHNvIGFkZGVkIGBmYXN0X2ZhbGxiYWNrYCBrZXl3b3JkIGFyZ3Vt ZW50IHRvIGBUQ1BTb2NrZXQubmV3YC4gDQpUaGlzIG9wdGlvbiBpcyBzZXQgdG8gdHJ1ZSBieSBk ZWZhdWx0LCBlbmFibGluZyB0aGUgSEV2MiBmdW5jdGlvbmFsaXR5LiANCkhvd2V2ZXIsIHVzZXJz IGNhbiBleHBsaWNpdGx5IHNldCBpdCB0byBmYWxzZSB0byBkaXNhYmxlIEhFdjIgYW5kIHVzZSB0 aGUgcHJldmlvdXMgYmVoYXZpb3Igb2YgYFRDUFNvY2tldC5uZXdgLg0KDQpJdCBzaG91bGQgYmUg bm90ZWQgdGhhdCBIRXYyIGlzIGVuYWJsZWQgb25seSBpbiBlbnZpcm9ubWVudHMgd2hlcmUgcHRo cmVhZHMgYXJlIGF2YWlsYWJsZS4NClRoaXMgc3BlY2lmaWNhdGlvbiBmb2xsb3dzIHRoZSBhcHBy b2FjaCB0YWtlbiBpbiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTk5NjUsIHdo ZXJlIG5hbWUgcmVzb2x1dGlvbiBjYW4gYmUgaW50ZXJydXB0ZWQuIA0KKEluIGVudmlyb25tZW50 cyB3aGVyZSBwdGhyZWFkcyBhcmUgbm90IGF2YWlsYWJsZSwgdGhlIGBmYXN0X2ZhbGxiYWNrYCBv cHRpb24gaXMgaWdub3JlZC4pDQoNCiMjIyBQZXJmb3JtYW5jZQ0KQmVsb3cgaXMgdGhlIGJlbmNo bWFyayBvZiAxMDAgcmVxdWVzdHMgdG8gYHd3dy5ydWJ5LWxhbmcub3JnYCB3aXRoIHRoZSBmYXN0 X2ZhbGxiYWNrIG9wdGlvbiBzZXQgdG8gdHJ1ZSBhbmQgZmFsc2UsIHJlc3BlY3RpdmVseS4gDQpX aGlsZSB0aGVyZSBpcyBhIHNsaWdodCBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiB3aGVuIEhFdjIg aXMgZW5hYmxlZCwgdGhlIGRlZ3JhZGF0aW9uIGlzIHNtYWxsZXIgY29tcGFyZWQgdG8gdGhhdCBz ZWVuIGluIGBTb2NrZXQudGNwYCAuDQoNCmBgYHJ1YnkNCnJlcXVpcmUgJ3NvY2tldCcNCnJlcXVp cmUgJ2JlbmNobWFyaycNCg0KaG9zdG5hbWUgPSAid3d3LnJ1YnktbGFuZy5vcmciDQpwb3J0ID0g ODANCm4gPSAxMDANCg0KQmVuY2htYXJrLmJtYm0gZG8gfHh8DQogIHgucmVwb3J0KCJmYXN0X2Zh bGxiYWNrOiB0cnVlIikgZG8NCiAgICBuLnRpbWVzIHsgVENQU29ja2V0Lm5ldyhob3N0bmFtZSwg cG9ydCkuY2xvc2UgfQ0KICBlbmQNCg0KICB4LnJlcG9ydCgiZmFzdF9mYWxsYmFjazogZmFsc2Ui KSBkbw0KICAgIG4udGltZXMgeyBUQ1BTb2NrZXQubmV3KGhvc3RuYW1lLCBwb3J0LCBmYXN0X2Zh bGxiYWNrOiBmYWxzZSkuY2xvc2UgfQ0KICBlbmQNCmVuZA0KYGBgDQoNCmBgYA0Kfi9zL2J1aWxk IOKdr+Kdr+KdryAuLi9pbnN0YWxsL2Jpbi9ydWJ5IC4uL3J1YnkvdGVzdC5yYg0KUmVoZWFyc2Fs IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t DQpmYXN0X2ZhbGxiYWNrOiB0cnVlICAgIDAuMDE3NTg4ICAgMC4wOTcwNDUgICAwLjExNDYzMyAo ICAxLjQ2MDY2NCkNCmZhc3RfZmFsbGJhY2s6IGZhbHNlICAgMC4wMTQwMzMgICAwLjA3ODk4NCAg IDAuMDkzMDE3ICggIDEuNDEzOTUxKQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0gdG90YWw6IDAuMjA3NjUwc2VjDQoNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVzZXIgICAgIHN5c3RlbSAgICAgIHRvdGFsICAgICAgICByZWFsDQpmYXN0X2ZhbGxi YWNrOiB0cnVlICAgIDAuMDIwODkxICAgMC4xMjQwNTQgICAwLjE0NDk0NSAoICAxLjQ3MzgxNikN CmZhc3RfZmFsbGJhY2s6IGZhbHNlICAgMC4wMTgzOTIgICAwLjExMDg1MiAgIDAuMTI5MjQ0ICgg IDEuNDY2MDE0KQ0KYGBgDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0K IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KIHJ1YnktY29y ZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1YnktbGFuZy5vcmcKIFRvIHVuc3Vic2Ny aWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1 YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5nLm9yZy9tYWlsbWFuMy9saXN0cy9y dWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8=