[ruby-core:123496] [Ruby Feature#21642] Introduce `IO::ConnectionReset` and `IO::BrokenPipe` as standardized IO-level exceptions.
From:
"ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>
Date:
2025-10-19 22:55:05 UTC
List:
ruby-core #123496
SXNzdWUgIzIxNjQyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh bXMpLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpGZWF0dXJl ICMyMTY0MjogSW50cm9kdWNlIGBJTzo6Q29ubmVjdGlvblJlc2V0YCBhbmQgYElPOjpCcm9rZW5Q aXBlYCBhcyBzdGFuZGFyZGl6ZWQgSU8tbGV2ZWwgZXhjZXB0aW9ucy4NCmh0dHBzOi8vYnVncy5y dWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTY0Mg0KDQoqIEF1dGhvcjogaW9xdWF0aXggKFNhbXVlbCBX aWxsaWFtcykNCiogU3RhdHVzOiBPcGVuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQpDdXJyZW50bHksIGRpZmZlcmVudCBJTyBpbXBsZW1lbnRhdGlvbnMgaW4gUnVi eSByYWlzZSBpbmNvbnNpc3RlbnQgZXhjZXB0aW9uIHR5cGVzIHdoZW4gYSBjb25uZWN0aW9uIGlz IHJlc2V0IG9yIGJyb2tlbi4NCg0KRm9yIGV4YW1wbGU6DQoNCmBgYHJ1YnkNCiMgUGxhaW4gVENQ IHNvY2tldDoNCnNvY2tldC5yZWFkX25vbmJsb2NrKDEwMjQpDQojID0+IEVycm5vOjpFQ09OTlJF U0VUDQoNCiMgU1NMIHNvY2tldDoNCnNzbF9zb2NrZXQucmVhZF9ub25ibG9jaygxMDI0KQ0KIyA9 PiBPcGVuU1NMOjpTU0w6OlNTTEVycm9yOiBTU0xfcmVhZDogdW5leHBlY3RlZCBlb2Ygd2hpbGUg cmVhZGluZw0KYGBgDQoNCkJvdGggcmVwcmVzZW50IGEgKmNvbm5lY3Rpb24gcmVzZXQgYnkgcGVl ciosIGJ1dCB0aGUgZXJyb3JzIGRpZmZlciBzaWduaWZpY2FudGx5IGluIHR5cGUgYW5kIG1lc3Nh Z2UuDQpUaGlzIGluY29uc2lzdGVuY3kgbWFrZXMgaXQgZGlmZmljdWx0IHRvIGhhbmRsZSBjb25u ZWN0aW9uLWxldmVsIGVycm9ycyBnZW5lcmljYWxseSBhY3Jvc3MgSU8gdHlwZXMuDQoNClNpbWls YXJseSwgYEVQSVBFYCBpcyB1c2VkIGluIHNvbWUgY29udGV4dHMgdG8gc2lnbmFsIGEgKmJyb2tl biBjb25uZWN0aW9uKiwgYnV0IGFnYWluLCB0aGUgcmVwcmVzZW50YXRpb24gYW5kIG1lc3NhZ2Ug ZGlmZmVyIGJldHdlZW4gSU8gY2xhc3Nlcy4NCg0KIyMjIFByb3Bvc2FsDQoNCkludHJvZHVjZSBl eHBsaWNpdCBzdWJjbGFzc2VzIG9mIHRoZSBjb3JyZXNwb25kaW5nIHN5c3RlbSBlcnJvcnMgYXMg cGFydCBvZiBSdWJ54oCZcyBzdGFuZGFyZCBJTyBpbnRlcmZhY2U6DQoNCmBgYHJ1YnkNCmNsYXNz IElPDQogIGNsYXNzIENvbm5lY3Rpb25SZXNldCA8IEVycm5vOjpFQ09OTlJFU0VUOyBlbmQNCiAg Y2xhc3MgQnJva2VuUGlwZSA8IEVycm5vOjpFUElQRTsgZW5kDQplbmQNCmBgYA0KDQpUaGVuLCBz dGFuZGFyZGl6ZSB0aGUgUnVieSBJL08gZWNvc3lzdGVtIChpbmNsdWRpbmcgT3BlblNTTCkgdG8g cmFpc2UgdGhlc2Ugc3ViY2xhc3NlcyBpbnN0ZWFkIG9mIHJhdyBzeXN0ZW0gZXJyb3JzIG9yIGxp YnJhcnktc3BlY2lmaWMgZXJyb3Igd3JhcHBlcnMuDQoNClRoaXMgd291bGQgZXN0YWJsaXNoIGEg Y29uc2lzdGVudCwgd2VsbC1kZWZpbmVkIHB1YmxpYyBpbnRlcmZhY2UgZm9yIGhhbmRsaW5nIGNv bm5lY3Rpb24tbGV2ZWwgZmFpbHVyZXMuDQoNCiMjIyBNb3RpdmF0aW9uDQoNCiogKipDb25zaXN0 ZW5jeToqKiBVc2VycyBjYW4gaGFuZGxlIGBJTzo6Q29ubmVjdGlvblJlc2V0YCBhY3Jvc3MgYElP YCwgYFRDUFNvY2tldGAsIGBPcGVuU1NMOjpTU0w6OlNTTFNvY2tldGAsIGFuZCBvdGhlciBJTy1s aWtlIG9iamVjdHMuDQoqICoqQ2xhcml0eToqKiBUaGUgbmFtZSBjbGVhcmx5IGV4cHJlc3NlcyBh IGhpZ2gtbGV2ZWwgc2VtYW50aWMgKOKAnGNvbm5lY3Rpb24gcmVzZXTigJ0pIHJhdGhlciB0aGFu IGEgbG93LWxldmVsIHN5c3RlbSBlcnJvci4NCiogKipFeHRlbnNpYmlsaXR5OioqIE90aGVyIFJ1 YnkgSU8gaW1wbGVtZW50YXRpb25zIChjdXN0b20gc29ja2V0cywgcGlwZXMsIGV0Yy4pIGNhbiBm b2xsb3cgdGhlIHNhbWUgY29udmVudGlvbi4NCiogKipCYWNrd2FyZHMgQ29tcGF0aWJpbGl0eToq KiBCZWNhdXNlIGBJTzo6Q29ubmVjdGlvblJlc2V0IDwgRXJybm86OkVDT05OUkVTRVRgLCBleGlz dGluZyByZXNjdWUgY2xhdXNlcyBjb250aW51ZSB0byB3b3JrOg0KDQogIGBgYHJ1YnkNCiAgcmVz Y3VlIEVycm5vOjpFQ09OTlJFU0VUDQogICAgIyBzdGlsbCBjYXRjaGVzIGl0DQogIGVuZA0KICBg YGANCg0KIyMjIEV4YW1wbGVzDQoNCmBgYHJ1YnkNCmJlZ2luDQogIGlvLnJlYWRfbm9uYmxvY2so MTAyNCkNCnJlc2N1ZSBJTzo6Q29ubmVjdGlvblJlc2V0DQogIHB1dHMgIkNvbm5lY3Rpb24gd2Fz IHJlc2V0IGJ5IHBlZXIuIg0KcmVzY3VlIElPOjpCcm9rZW5QaXBlDQogIHB1dHMgIkNvbm5lY3Rp b24gd2FzIGJyb2tlbiAoRVBJUEUpLiINCmVuZA0KYGBgDQoNCiMjIyBJbXBhY3Qgb24gZXhpc3Rp bmcgY29kZQ0KDQoqIE1pbmltYWwgdG8gbm9uZS4NCiogRXhpc3RpbmcgY29kZSB0aGF0IHJlc2N1 ZXMgYEVycm5vOjpFQ09OTlJFU0VUYCBvciBgRXJybm86OkVQSVBFYCB3aWxsIGNvbnRpbnVlIHRv IGZ1bmN0aW9uLg0KKiBGdXR1cmUgY29kZSBnYWlucyBhIG1vcmUgc2VtYW50aWMgYW5kIHBvcnRh YmxlIHdheSB0byBoYW5kbGUgdGhlc2UgY29tbW9uIGZhaWx1cmUgbW9kZXMuDQoNCg0KDQoNCi0t IA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvDQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCiBydWJ5LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29y ZUBtbC5ydWJ5LWxhbmcub3JnCiBUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1Ynkt Y29yZS1sZWF2ZUBtbC5ydWJ5LWxhbmcub3JnCiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21s LnJ1YnktbGFuZy5vcmcvbWFpbG1hbjMvbGlzdHMvcnVieS1jb3JlLm1sLnJ1YnktbGFuZy5vcmcv Cg==