From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.7 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,UNPARSEABLE_RELAY,URIBL_GREY shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id CD04E1F8C8 for ; Thu, 30 Sep 2021 20:06:19 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id ABC05120D6D; Fri, 1 Oct 2021 05:06:17 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id D7597120D0B for ; Fri, 1 Oct 2021 05:06:14 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sendgrid.me; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to; s=smtpapi; bh=35xeO9889VO8NyEIMHsP/VYg7gJ9+XBtHF3K6r2+vzA=; b=HwrNdaLzTtpt/gLin+6piWasIFVTcaQ5I904iQywb2fbgqwT39VQcrpW9Vn/lFFKpBEs gGSsBv7YU7XqdU0wlKebHx0XXgXD0CzJ4xC4BMJOMVwMxOreku2lO8Hgr70Gi5gvBID03e Z4TXxG6lTh37Jf7pfdk/q2lwwnlATEiso= Received: by filterdrecv-55446c4d49-xldjr with SMTP id filterdrecv-55446c4d49-xldjr-1-615618B4-EB 2021-09-30 20:06:12.766598152 +0000 UTC m=+2497576.245789433 Received: from herokuapp.com (unknown) by geopod-ismtpd-2-1 (SG) with ESMTP id KAoZ_kkGRQCGbvlkVwRqoA for ; Thu, 30 Sep 2021 20:06:12.725 +0000 (UTC) Date: Thu, 30 Sep 2021 20:06:12 +0000 (UTC) From: "Eregon (Benoit Daloze)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 18228 X-Redmine-Issue-Author: byroot X-Redmine-Sender: Eregon X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 81721 X-SG-EID: =?us-ascii?Q?DvL3W2Xo+Vk=2FeUn3F50L=2FNc8u9NqZCnbE0mXZHiyye4R1YZg=2FtAFc0SAFzpcS=2F?= =?us-ascii?Q?Zcr7BqPN=2FYCcMZBMITNeIci9STxYay0JAJWPbek?= =?us-ascii?Q?rFR+qX41Qpb6CE5folFGYNjH2V1fEgyPp2NbvmX?= =?us-ascii?Q?f2NeHS9Jnyle5X0zhJcLNlZG8tKPdeohg6f4jr3?= =?us-ascii?Q?koyTH2CRIzcPJq7YSJHvwKQsIstiRXsRnjLTPlq?= =?us-ascii?Q?leiuHLE3cJUX8LdGQHwvuLQcVXf8NEn8=2FKxHINH?= =?us-ascii?Q?A7AWiUL=2FBNHYn7oddaBiA=3D=3D?= To: ruby-core@ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 105514 Subject: [ruby-core:105514] [Ruby master Feature#18228] Add a `timeout` option to `IO.copy_stream` X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Reply-To: Ruby developers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE4MjI4IGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4N Cg0KDQpieXJvb3QgKEplYW4gQm91c3NpZXIpIHdyb3RlIGluICNub3RlLTg6DQo+IEhvd2V2ZXIg aWYgd2UgdXNlIGEgc2lnbmFsIHRvIGludGVycnVwdCBpdCAoYXNzdW1pbmcgaXQncyBwb3NzaWJs ZSwgYmVjYXVzZSB0aGUgbWFuIGZpbGUgZG9lc24ndCBkb2N1bWVudCBgRUlOVFJgIHNvIEknbSBu b3Qgc28gc3VyZSksIHRoZW4gdGhlIHJldHVybiB2YWx1ZSB3b3VsZCBiZSBgLTFgIHNvIHdlIHdv dWxkbid0IGhhdmUgdGhpcyBpbmZvcm1hdGlvbi4NCg0KSSB3b3VsZCB0aGluayBpdCBhbHNvIHJl dHVybnMgdGhlIG51bWJlciBvZiB3cml0dGVuIGJ5dGVzLCBvdGhlcndpc2UgdGhhdCBzeXNjYWxs IGlzIGNvbXBsZXRlbHkgdW51c2FibGUgaW4gdGhlIHByZXNlbmNlIG9mIHNpZ25hbHMgKGl0IGNv dWxkIGluZmluaXRlbHkgbG9vcCB3aXRoIHJldHJpZXMpLg0KU2VlIHdyaXRlKDIpIGZvciBpbnN0 YW5jZSwgaXQgcmV0dXJucyB0aGUgbnVtYmVyIG9mIHdyaXR0ZW4gYnl0ZXM6DQoNCj4gICAgICAg IE5vdGUgdGhhdCBhIHN1Y2Nlc3NmdWwgd3JpdGUoKSBtYXkgdHJhbnNmZXIgZmV3ZXIgdGhhbiBj b3VudCBieXRlcy4gIFN1Y2ggcGFydGlhbCB3cml0ZXMgY2FuIG9jY3VyIGZvciB2YXJpb3VzIHJl YXNvbnM7IGZvciBleGFt4oCQDQo+ICAgICAgIHBsZSwgYmVjYXVzZSB0aGVyZSB3YXMgaW5zdWZm aWNpZW50IHNwYWNlIG9uIHRoZSBkaXNrIGRldmljZSB0byB3cml0ZSBhbGwgb2YgdGhlIHJlcXVl c3RlZCBieXRlcywgb3IgYmVjYXVzZSBhIGJsb2NrZWQgd3JpdGUoKSB0bw0KPiAgICAgICBhICBz b2NrZXQsICBwaXBlLCBvciBzaW1pbGFyIHdhcyBpbnRlcnJ1cHRlZCBieSBhIHNpZ25hbCBoYW5k bGVyIGFmdGVyIGl0IGhhZCB0cmFuc2ZlcnJlZCBzb21lLCBidXQgYmVmb3JlIGl0IGhhZCB0cmFu c2ZlcnJlZCBhbGwNCj4gICAgICAgb2YgdGhlIHJlcXVlc3RlZCBieXRlcy4gDQoNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkZlYXR1cmUgIzE4MjI4OiBBZGQgYSBg dGltZW91dGAgb3B0aW9uIHRvIGBJTy5jb3B5X3N0cmVhbWANCmh0dHBzOi8vYnVncy5ydWJ5LWxh bmcub3JnL2lzc3Vlcy8xODIyOCNjaGFuZ2UtOTM5NjENCg0KKiBBdXRob3I6IGJ5cm9vdCAoSmVh biBCb3Vzc2llcikNCiogU3RhdHVzOiBPcGVuDQoqIFByaW9yaXR5OiBOb3JtYWwNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMjIyBDb250ZXh0DQoNCkluIG1hbnkg c2l0dWF0aW9ucyBkZWFsaW5nIHdpdGggbGFyZ2UgZmlsZXMsIGBJTy5jb3B5X3N0cmVhbWAgd2hl biB1c2FibGUgYnJpbmcgbWFqb3IgcGVyZm9ybWFuY2UgZ2FpbnMgKG9mdGVuIHR3aWNlIGZhc3Rl ciBhdCB0aGUgdmVyeSBsZWFzdCkuIEFuZCBtb3JlIGltcG9ydGFudGx5LCB3aGVuIHRoZSBjb3B5 aW5nIGlzIGRlZmVycmVkIHRvIHRoZSBrZXJuZWwsIHRoZSBwZXJmb3JtYW5jZSBpcyBtdWNoIG1v cmUgY29uc2lzdGVudCBhcyBpdCBpcyBsZXNzIGltcGFjdGVkIGJ5IHRoZSBDUFUgdXRpbGl6YXRp b24gb24gdGhlIG1hY2hpbmUuDQoNCkhvd2V2ZXIsIGl0IGlzIG9mdGVuIHVuc2FmZSB0byB1c2Ug YmVjYXVzZSBpdCBkb2Vzbid0IGhhdmUgYSB0aW1lb3V0LCBzbyB5b3UgY2FuIG9ubHkgdXNlIGl0 IGlmIGJvdGggdGhlIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gSU9zIGFyZSB0cnVzdGVkLCBvdGhl cndpc2UgaXQgaXMgdHJpdmlhbCBmb3IgYW4gYXR0YWNrZXIgdG8gRE9TIHRoZSBzZXJ2aWNlIGJ5 IHJlYWRpbmcgdGhlIHJlc3BvbnNlIHZlcnkgc2xvd2x5Lg0KDQojIyMgU29tZSBleGFtcGxlcw0K DQotIEl0IGlzIFt1c2VkIGJ5IGB3ZWJyaWNrYF0oaHR0cHM6Ly9naXRodWIuY29tL3J1Ynkvd2Vi cmljay9jb21taXQvNTRiZTY4NGRhOWQ5OTNhZDZjMjM3ZTJlOTg1M2ViOThiY2JhYWU2ZSkuDQot IGBOZXQ6OkhUVFBgIHVzZXMgaXQgdG8gc2VuZCByZXF1ZXN0IGJvZHkgaWYgdGhleSBhcmUgSU9z LCBidXQgW2l0IGlzIHVzZWQgd2l0aCBhICJmYWtlIElPIiB0byBhbGxvdyBmb3IgdGltZW91dHNd KGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L25ldC1odHRwL3B1bGwvMjcpLCBzbyBgc2VuZGZpbGUo MilgICZjbyBhcmUgbmV2ZXIgdXNlZC4NCi0gW0EgcHJvb2Ygb2YgY29uY2VwdCBvZiBpbnRlZ3Jh dGluZyBpbiBwdW1hIHNob3dzIGEgMnggc3BlZWR1cF0oaHR0cHM6Ly9naXRodWIuY29tL3B1bWEv cHVtYS9wdWxsLzI3MDMpLiANCi0gW1ZhcmlvdXMgb3RoZXIgSFRUUCBjbGllbnQgY291bGQgdXNl IGl0IGFzIHdlbGxdKGh0dHBzOi8vZ2l0aHViLmNvbS9uYWhpL2h0dHBjbGllbnQvcHVsbC8zODMp Lg0KLSBJIHVzZWQgaXQgaW4gcHJpdmF0ZSBwcm9qZWN0cyB0byBkb3dubG9hZCBhbmQgdXBsb2Fk IGxhcmdlIGFyY2hpdmVzIGluIGFuZCBvdXQgb2YgR29vZ2xlIENsb3VkIFN0b3JhZ2Ugd2l0aCBn cmVhdCBlZmZlY3RzLg0KDQojIyMgUG9zc2libGUgaW1wbGVtZW50YXRpb24NCg0KVGhlIG1haW4g ZGlmZmljdWx0eSBpcyB0aGF0IHRoZSB1bmRlcmx5aW5nIHN5Y2FsbHMgZG9uJ3QgaGF2ZSBhIHRp bWVvdXQgZWl0aGVyLg0KDQpUaGUgbWFpbiBzeXNjYWxsIHVzZWQgaW4gdGhlc2Ugc2NlbmFyaW9z IGlzIGBzZW5kZmlsZSgyKWAuIEl0IGRvZXNuJ3QgaGF2ZSBhIHRpbWVvdXQgcGFyYW1ldGVyLCBo b3dldmVyIGlmIGNhbGxlZCBvbiBmaWxlIGRlc2NyaXB0b3JzIHdpdGggYE9fTk9OQkxPQ0tgIGl0 IGRvZXMgcmV0dXJuIGVhcmx5IGFuZCBhbGxvdyBmb3IgYSBgc2VsZWN0L3BvbGxgIGxvb3AuIEkg ZGlkIGEgdmVyeSBxdWljayBhbmQgZGlydHkgZXhwZXJpbWVudCB3aXRoIHRoaXMsIGFuZCBpdCBk b2VzIHNlZW0gdG8gd29yay4NCg0KVGhlIG90aGVyIHR3byBhY2NlbGVyYXRpbmcgc3lzY2FsbHMg YXJlIFtgY29weV9maWxlX3JhbmdlKDIpYF0oaHR0cHM6Ly9tYW43Lm9yZy9saW51eC9tYW4tcGFn ZXMvbWFuMi9jb3B5X2ZpbGVfcmFuZ2UuMi5odG1sKSAobGludXgpIGFuZCBbYGZjb3B5ZmlsZSgy KWBdKGh0dHBzOi8vZGV2ZWxvcGVyLmFwcGxlLmNvbS9saWJyYXJ5L2FyY2hpdmUvZG9jdW1lbnRh dGlvbi9TeXN0ZW0vQ29uY2VwdHVhbC9NYW5QYWdlc19pUGhvbmVPUy9tYW4zL2Zjb3B5ZmlsZS4z Lmh0bWwpIChtYWNPUykuIE5laXRoZXIgaGF2ZSBhIHRpbWVvdXQsIGFuZCBuZWl0aGVyIG1hbnBh Z2UgZG9jdW1lbnQgYW4gYEVBR0FJTiAvIEVXT1VMREJMT0NLYCBlcnJvci4gSG93ZXZlciB0aGVz ZSBzeXNjYWxscyBhcmUgbGltaXRlZCB0byByZWFsIGZpbGUgY29waWVzLCBnZW5lcmFsbHkgc3Bl YWtpbmcgdGltZW91dHMgZm9yIHJlYWwgZmlsZXMgYXJlIGxlc3Mgb2YgYSBjcml0aWNhbCBuZWVk LCBzbyBpdCB3b3VsZCBiZSBwb3NzaWJsZSB0byBzaW1wbHkgbm90IHVzZSB0aGVzZSBzeXNjYWxs cyBpZiBhIHRpbWVvdXQgaXMgcHJvdmlkZWQuDQoNCiMjIyBJbnRlcmZhY2UNCg0KYGNvcHlfc3Ry ZWFtKHNyYywgZHN0LCBjb3B5X2xlbmd0aCwgc3JjX29mZnNldCwgdGltZW91dClgDQpvciBgY29w eV9zdHJlYW0oc3JjLCBkc3QsIGNvcHlfbGVuZ3RoLCBzcmNfb2Zmc2V0LCB0aW1lb3V0OiBuaWwp YA0KDQpBcyBmb3IgdGhlIHJldHVybiB2YWx1ZSBpbiBjYXNlIG9mIGEgdGltZW91dCwgaXQgaXMg aW1wb3J0YW50IHRvIGNvbnZleSBib3RoIHRoYXQgYSB0aW1lb3V0IGhhcHBlbmVkLCBhbmQgdGhl IG51bWJlciBvZiBieXRlcyB0aGF0IHdlcmUgY29waWVkLCBvdGhlcndpc2UgaXQgbWFrZXMgcmV0 cmllcyBpbXBvc3NpYmxlLg0KDQotIEl0IGNvdWxkIHNpbXBseSByZXR1cm5zIHRoZSBudW1iZXIg b2YgYnl0ZSwgYW5kIGxldCB0aGUgY2FsbGVyIGNvbXBhcmUgaXQgdG8gdGhlIGV4cGVjdGVkIG51 bWJlciBvZiBieXRlcyBjb3BpZWQsIGJ1dCB0aGF0IHdvdWxkbid0IHdvcmsgaW4gY2FzZXMgd2hl cmUgdGhlIHNpemUgb2YgYHNyY2AgaXNuJ3Qga25vd24uDQotIEl0IGNvdWxkIHJldHVybiBgLTEg LSBieXRlc19jb3BpZWRgLCBub3QgcGFydGljdWxhcmx5IGVsZWdhbnQgYnV0IHdvdWxkIHdvcmsu DQotIEl0IGNvdWxkIHJldHVybiBtdWx0aXBsZSB2YWx1ZXMgb3Igc29tZSBraW5kIG9mIHJlc3Vs dCBvYmplY3Qgd2hlbiBhIHRpbWVvdXQgaXMgcHJvdmlkZWQuDQotIEl0IGNvdWxkIHJhaXNlIGFu IGVycm9yLCB3aXRoIGBieXRlc19jb3BpZWRgIGFzIGFuIGF0dHJpYnV0ZSBvbiB0aGUgZXJyb3Iu DQoNCk9yIGFsdGVybmF0aXZlbHkgYGNvcHlfc3RyZWFtYCB3b3VsZCBiZSBsZWZ0IHdpdGhvdXQg YSB0aW1lb3V0LCBhbmQgc29tZSBraW5kIG9mIGBjb3B5X3N0cmVhbTJgIHdvdWxkIGJlIGludHJv ZHVjZWQgc28gdGhhdCBgY29weV9zdHJlYW1gIHJldHVybiB2YWx1ZSB3b3VsZG4ndCBiZSBtYWRl IGluY29uc2lzdGVudC4NCg0KDQoNCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5v cmcvDQo=