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.5 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,SPF_HELO_NONE, T_SCC_BODY_TEXT_LINE,T_SPF_PERMERROR,UNPARSEABLE_RELAY,URIBL_GREY shortcircuit=no autolearn=ham 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 584951F54E for ; Wed, 17 Aug 2022 14:31:13 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=sendgrid.me header.i=@sendgrid.me header.b="wotce1a+"; dkim-atps=neutral Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id C677B120F19; Wed, 17 Aug 2022 23:31:09 +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 B12A2120F19 for ; Wed, 17 Aug 2022 23:31:06 +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:cc; s=smtpapi; bh=Jt5f9mbppQVsUK/Q0lyBp1IDadBnqccKOHV5i8mEWPo=; b=wotce1a+rENM3tk9jRxfi3MO6Cj5z6ag1SWkPiMqSDgASkS76hFtHyFTSU8kg9iFdWL0 ErIEQ5zYRYURVAffecatFNeeXtfleXIKXaOmnJNBD3hJftqgBEJDZoEqDUdT/VC02KWDkU pYX5jqg34WIYEgeVm5e+dl2Nl8MaS/T6Q= Received: by filterdrecv-7787b7f4d9-kfphs with SMTP id filterdrecv-7787b7f4d9-kfphs-1-62FCFBA3-19E 2022-08-17 14:30:59.770097144 +0000 UTC m=+2312728.153159472 Received: from herokuapp.com (unknown) by geopod-ismtpd-5-0 (SG) with ESMTP id FEjZOsjzSN-w0LFdSQ3pzg for ; Wed, 17 Aug 2022 14:30:59.687 +0000 (UTC) Date: Wed, 17 Aug 2022 14:30:59 +0000 (UTC) From: "Dan0042 (Daniel DeLorme)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 17330 X-Redmine-Issue-Author: zverok X-Redmine-Sender: Dan0042 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: 85922 X-SG-EID: =?us-ascii?Q?9vnO9kNFlf1pwhty1clU3mt9eNWYniufdXqocdsQQtaDTWZk4+b5g5js0Akvaj?= =?us-ascii?Q?32LW=2F+fGSAom3tt8Jo+=2FGW3uDD0ktbmu7qAbln0?= =?us-ascii?Q?uJrjIBN1EzplVZa3Yhbshj7pB3qwbzoTDGhuJ5S?= =?us-ascii?Q?HWFsTOX4=2FgBWgllThGUozSv8vfQQCdj99EoVaDa?= =?us-ascii?Q?+LxVg5atwN5KtOuw0F4e2PbZSVGnPrn1ZuNdfcl?= =?us-ascii?Q?Sb1P2tTFOF9Sy79KkzQmDZ989TfDRLi30RYGDj4?= =?us-ascii?Q?Wp+gVuYEuG991BLeRo0eQ=3D=3D?= To: ruby-core@ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 109514 Subject: [ruby-core:109514] [Ruby master Feature#17330] Object#non 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" SXNzdWUgIzE3MzMwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUp LgoKCnVqaWhpc2EgKFRhdHN1aGlybyBVamloaXNhKSB3cm90ZSBpbiAjbm90ZS0xOToKPiBgaXRz ZWxmX2lmYAo+IGBpdHNlbGZfdW5sZXNzYAoKenZlcm9rIChWaWN0b3IgU2hlcGVsZXYpIHdyb3Rl IGluICNub3RlLTIxOgo+IEp1c3QgYCNpZmAgYW5kIGAjdW5sZXNzYCBsb29rIHRlbXB0aW5nLCB0 aG91Z2guCgpJbnRlcmVzdGluZyBzdWdnZXN0aW9uLiBMZXQncyBsb29rIGF0IHRoZSBwcmV2aW91 cyAibm9uIiBleGFtcGxlcyByZXdyaXR0ZW4gd2l0aCAiaXRzZWxmX3VubGVzcyIgYW5kICJ1bmxl c3MiCgpgYGBydWJ5CmNhbGN1bGF0ZS5zb21lLmxpbWl0Lm5vbigmOnplcm8/KSB8fCBERUZBVUxU X0xJTUlUCm5hbWUgPSBwYXJhbXNbOm5hbWVdJi5ub24oJjplbXB0eT8pCnBheWxvYWQuZGlnKCdh Y3Rpb24nLCAndHlwZScpLm5vbiB7IHxhY3Rpb258IFBST0hJQklURURfQUNUSU9OUy5pbmNsdWRl PyhhY3Rpb24pIH0KZmV0Y2hfc29tZXRoaW5nLm5vbigmOndpdGhfcHJvYmxlbXM/KQpyZXR1cm4g RmFyYWRheS5nZXQodXJsKS5ub24geyB8cnwgci5jb2RlID49IDQwMCB9Ji5ib2R5CmlmIHVzZXIu c3Vic2NyaXB0aW9uJi5ub24oJjpleHBpcmVkPykgCgpjYWxjdWxhdGUuc29tZS5saW1pdC5pdHNl bGZfdW5sZXNzKCY6emVybz8pIHx8IERFRkFVTFRfTElNSVQKbmFtZSA9IHBhcmFtc1s6bmFtZV0m Lml0c2VsZl91bmxlc3MoJjplbXB0eT8pCnBheWxvYWQuZGlnKCdhY3Rpb24nLCAndHlwZScpLml0 c2VsZl91bmxlc3MgeyB8YWN0aW9ufCBQUk9ISUJJVEVEX0FDVElPTlMuaW5jbHVkZT8oYWN0aW9u KSB9CmZldGNoX3NvbWV0aGluZy5pdHNlbGZfdW5sZXNzKCY6d2l0aF9wcm9ibGVtcz8pCnJldHVy biBGYXJhZGF5LmdldCh1cmwpLml0c2VsZl91bmxlc3MgeyB8cnwgci5jb2RlID49IDQwMCB9Ji5i b2R5CmlmIHVzZXIuc3Vic2NyaXB0aW9uJi5pdHNlbGZfdW5sZXNzKCY6ZXhwaXJlZD8pIAoKY2Fs Y3VsYXRlLnNvbWUubGltaXQudW5sZXNzKCY6emVybz8pIHx8IERFRkFVTFRfTElNSVQKbmFtZSA9 IHBhcmFtc1s6bmFtZV0mLnVubGVzcygmOmVtcHR5PykKcGF5bG9hZC5kaWcoJ2FjdGlvbicsICd0 eXBlJykudW5sZXNzIHsgfGFjdGlvbnwgUFJPSElCSVRFRF9BQ1RJT05TLmluY2x1ZGU/KGFjdGlv bikgfQpmZXRjaF9zb21ldGhpbmcudW5sZXNzKCY6d2l0aF9wcm9ibGVtcz8pCnJldHVybiBGYXJh ZGF5LmdldCh1cmwpLnVubGVzcyB7IHxyfCByLmNvZGUgPj0gNDAwIH0mLmJvZHkKaWYgdXNlci5z dWJzY3JpcHRpb24mLnVubGVzcygmOmV4cGlyZWQ/KSAKYGBgCgpZTU1WLCBidXQgdG8gbXkgZXll IGl0IGxvb2tzIGxpa2UgIm5vbiIgaXMgbW9yZSBleHByZXNzaXZlIHdoZW4gdXNlZCB3aXRoIGEg c2luZ2xlIHByZWRpY2F0ZSBtZXRob2QsIGFuZCAiaXRzZWxmX3VubGVzcyIgaXMgbW9yZSByZWFk YWJsZSBmb3IgbG9uZ2VyIGJsb2Nrcy4gQW5kICJ1bmxlc3MiIGlzIHJlbWFya2FibHkgcmVhZGFi bGUgaW4gYm90aCBzaXR1YXRpb25zLgoKPiBJIHdvbmRlciBpZiBgaXRzZWxmX3VubGVzc2AgaXMg YWN0dWFsbHkgdXNlZnVsIHJhdGhlciB0aGFuIGNvbmZ1c2luZy4KPiBZb3UgY2FuIGVhc2lseSBy ZXdyaXRlIGBpdHNlbGZfdW5sZXNzYCB3aXRoIGBpdHNlbGZfaWZgIHdpdGggYCFgLCBzdWNoIGFz IGB4Lml0c2VsZl9pZiB7ICFfMS5wcmVkPyB9YCB3aGljaCBpcyBwcmV0dHkgc3RyYWlnaHRmb3J3 YXJkLgoKSSB0aGluayBpdCdzIG1vcmUgdXNlZnVsIHRoYW4gYGl0c2VsZl9pZmAuIEluIG1hbnkg Y2FzZXMgdGhlIG5lZ2F0aW9uIGl0c2VsZiBpcyB3aGF0IG1ha2VzIHRoaXMgdXNlZnVsLCBvdGhl cndpc2UgeW91IHdvdWxkIGp1c3QgdXNlIHRoZSBwcmVkaWNhdGUgZGlyZWN0bHkuCgpgYGBydWJ5 CmlmIHVzZXIuc3Vic2NyaXB0aW9uJi5hY3RpdmU/ICAgICAgICAgICAgICAjIGlmIHN1YnNjcmlw dGlvbiBoYXMgImFjdGl2ZT8iIHRoZXJlIGlzIG5vIG5lZWQgaGVyZQppZiB1c2VyLnN1YnNjcmlw dGlvbiYuaXRzZWxmX2lmKCY6YWN0aXZlPykgIyB0byB1c2UgIm91aSIgb3IgIml0c2VsZl9pZiIK CmlmIHVzZXIuc3Vic2NyaXB0aW9uJi5ub24oJjpleHBpcmVkPykgICAgICAgICAgICMgaWYgc3Vi c2NyaXB0aW9uIG9ubHkgaGFzICJleHBpcmVkPyIgaXQgbmVlZHMgdG8gYmUgbmVnYXRlZCwKaWYg dXNlci5zdWJzY3JpcHRpb24mLml0c2VsZl9pZnsgIV8xLmV4cGlyZWQ/IH0gIyB3aGljaCBpcyB3 aHkgd2UgbmVlZCAibm9uIiBvciBhIG5lZ2F0ZWQgIml0c2VsZl9pZiIgb3IKaWYgdXNlci5zdWJz Y3JpcHRpb24mLml0c2VsZl91bmxlc3MoJjpleHBpcmVkPykgIyAiaXRzZWxmX3VubGVzcyIKYGBg CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZlYXR1cmUgIzE3MzMw OiBPYmplY3Qjbm9uCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNzMzMCNjaGFu Z2UtOTg2ODMKCiogQXV0aG9yOiB6dmVyb2sgKFZpY3RvciBTaGVwZWxldikKKiBTdGF0dXM6IE9w ZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KKEFzIGFsd2F5cyAid2l0aCBjb3JlIiBtZXRob2QgcHJvcG9zYWxzLCBJIGRvbid0IGV4 cGVjdCBxdWljayBzdWNjZXNzLCBidXQgaG9wZSBmb3IgYSBmcnVpdGZ1bCBkaXNjdXNzaW9uKQoK IyMjIFJlYXNvbnM6CgpSdWJ5IGFsd2F5cyB0cmllZCB0byBiZSB2ZXJ5IGNoYWluYWJpbGl0eS1m cmllbmRseS4gUmVjZW50bHksIHdpdGggaW50cm9kdWN0aW9uIG9mIGAudGhlbmAgYW5kIGA9PmAs IGV2ZW4gbW9yZSBzby4gQnV0IG9uZSBwYXR0ZXJuIHRoYXQgZnJlcXVlbnRseSBlbWVyZ2VzIGFu ZCBkb2Vzbid0IGhhdmUgZ29vZCBpZGlvbWF0aWMgZXhwcmVzc2lvbjogY2FsY3VsYXRlIHNvbWV0 aGluZywgYW5kIGlmIGl0IGlzIG5vdCBhICJnb29kIiB2YWx1ZSwgcmV0dXJuIGBuaWxgIChvciBw cm92aWRlIGRlZmF1bHQgdmFsdWUgd2l0aCBgfHxgKS4gVGhlcmUgYXJlIGN1cnJlbnRseSB0d28g cGFydGlhbCBzb2x1dGlvbnM6CgoxLiBgbm9uemVybz9gIGluIFJ1YnkgY29yZSAoZnJlcXVlbnRs eSBtb2NrZWQgZm9yICJpbmFkZXF1YXRlIiBiZWhhdmlvciwgYXMgaXQgaXMgbG9va2luZyBsaWtl IHByZWRpY2F0ZSBtZXRob2QsIGJ1dCBpbnN0ZWFkIG9mIGB0cnVlYC9gZmFsc2VgIHJldHVybnMg YW4gb3JpZ2luYWwgdmFsdWUgb3IgYG5pbGApCjIuIEFjdGl2ZVN1cHBvcnQgYE9iamVjdCNwcmVz ZW5jZWAsIHdoaWNoIGFsc28gcmV0dXJucyBhbiBvcmlnaW5hbCB2YWx1ZSBvciBgbmlsYCBpZiBp dCBpcyBub3QgInByZXNlbnQiIChlLmcuIGBuaWxgIG9yIGBlbXB0eT9gIGluIEFTLXNwZWFrKQoK Qm90aCBvZiB0aGVtIHByb3ZlIHRoZW1zZWx2ZXMgcXVpdGUgdXNlZnVsIGluIHNvbWUgZG9tYWlu cywgYnV0IHRoZXkgYXJlIHRhcmdldGluZyBvbmx5IHRob3NlIHBhcnRpY3VsYXIgZG9tYWlucywg bG9vayB1bmxpa2UgZWFjaCBvdGhlciwgYW5kIGNhbiBiZSBjb25mdXNpbmcuCgojIyMgUHJvcG9z YWw6CgpNZXRob2QgYE9iamVjdCNub25gIChvciBgS2VybmVsI25vbmApLCB3aGljaCByZWNlaXZl cyBhIGJsb2NrLCBjYWxscyBpdCB3aXRoIHJlY2VpdmVyIGFuZCByZXR1cm5zIGBuaWxgIChpZiBi bG9jayBtYXRjaGVkKSBvciByZWNlaXZlciBvdGhlcndpc2UuCgojIyMjIyBQcm90b3R5cGUgaW1w bGVtZW50YXRpb246CgpgYGBydWJ5CmNsYXNzIE9iamVjdAogIGRlZiBub24KICAgIHNlbGYgdW5s ZXNzIHlpZWxkKHNlbGYpCiAgZW5kCmVuZApgYGAKCiMjIyMjIFVzYWdlIGV4YW1wbGVzOgoKMS4g V2l0aCBudW1iZXI6CgogICAgYGBgcnVieQogICAgbGltaXQgPSBjYWxjdWxhdGUuc29tZS5saW1p dAogICAgbGltaXQuemVybz8gPyBERUZBVUxUX0xJTUlUIDogbGltaXQKICAgICMgb3IsIHdpdGgg bm9uemVybz8KICAgIGNhbGN1bGF0ZS5zb21lLmxpbWl0Lm5vbnplcm8/IHx8IERFRkFVTFRfTElN SVQKICAgICMgd2l0aCBub246CiAgICBjYWxjdWxhdGUuc29tZS5saW1pdC5ub24oJjp6ZXJvPykg fHwgREVGQVVMVF9MSU1JVAogICAgIyBeIE5vdGUgaGVyZSwgaG93LCB1bmxpa2UgYG5vbnplcm8/ YCwgd2Ugc2VlIHByZWRpY2F0ZS15ID8sIGJ1dCBpdCBpcyBJTlNJREUgdGhlIGBub24oKWAgYW5k IGxlc3MgY29uZnVzaW5nCiAgICBgYGAKCjIuIFdpdGggc3RyaW5nOgoKICAgIGBgYHJ1YnkKICAg IG5hbWUgPSBwYXJhbXNbOm5hbWVdIGlmIHBhcmFtc1s6bmFtZV0gJiYgIXBhcmFtc1s6bmFtZV0u ZW1wdHk/CiAgICAjIG9yLCB3aXRoIEFjdGl2ZVN1cHBvcnQ6CiAgICBuYW1lID0gcGFyYW1zWzpu YW1lXS5wcmVzZW5jZQogICAgIyB3aXRoIG5vbjoKICAgIG5hbWUgPSBwYXJhbXNbOm5hbWVdJi5u b24oJjplbXB0eT8pCiAgICBgYGAKCjMuIE1vcmUgY29tcGxpY2F0ZWQgZXhhbXBsZQoKICAgIGBg YHJ1YnkKICAgIGFjdGlvbiA9IHBheWxvYWQuZGlnKCdhY3Rpb24nLCAndHlwZScpCiAgICByZXR1 cm4gaWYgUFJPSElCSVRFRF9BQ1RJT05TLmluY2x1ZGU/KGFjdGlvbikKICAgIHNlbmQoImRvXyN7 YWN0aW9ufSIpCiAgICAjIHdpdGggbm9uICYgdGhlbjoKICAgIHBheWxvYWQuZGlnKCdhY3Rpb24n LCAndHlwZScpCiAgICAgIC5ub24geyB8YWN0aW9ufCBQUk9ISUJJVEVEX0FDVElPTlMuaW5jbHVk ZT8oYWN0aW9uKSB9CiAgICAgICYudGhlbiB7IHxhY3Rpb258IHNlbmQoImRvXyN7YWN0aW9ufSIp IH0KICAgIGBgYAoKQmFzaWNhbGx5LCB0aGUgcHJvcG9zYWwgaXMgYSAiY2hhaW5hYmxlIGd1YXJk IGNsYXVzZSIgdGhhdCBhbGxvd3MgdG8gImNoYWluImlmeSBhbmQgRFJZaWZ5IGNvZGUgbGlrZToK CmBgYHJ1YnkKdmFsdWUgPSBmZXRjaF9zb21ldGhpbmcKcmV0dXJuIHZhbHVlIHVubGVzcyB2YWx1 ZS53aXRoX3Byb2JsZW1zPwojIHdoaWNoIHR1cm5zIGludG8KZmV0Y2hfc29tZXRoaW5nLm5vbigm OndpdGhfcHJvYmxlbXM/KQoKIyBvcgp2YWx1ZSA9IGZldGNoX3NvbWV0aGluZwp2YWx1ZSA9IHJl YXNvbmFibGVfZGVmYXVsdCBpZiB2YWx1ZS53aXRoX3Byb2JsZW1zPwojIHR1cm5zIGludG8KdmFs dWUgPSBmZXRjaF9zb21ldGhpbmcubm9uKCY6d2l0aF9wcm9ibGVtcz8pIHx8IHJlYXNvbmFibGVf ZGVmYXVsdApgYGAKCkkgYmVsaWV2ZSB0aGF0IHRoaXMgaWRpb20gaXMgZnJlcXVlbnQgZW5vdWdo LCBpbiBjb21iaW5hdGlvbnMgbGlrZSAoYXNzb3J0ZWQgZXhhbXBsZXMpICJyZWFkIGNvbmZpZyBm aWxlIGJ1dCByZXR1cm4gYG5pbGAgaWYgaXQgaXMgZW1wdHkvd3JvbmcgdmVyc2lvbiIsICJmZXRj aCBsYXRlc3QgaW52b2ljZSwgYnV0IGlnbm9yZSBpZiBpdCBoYXMgYW4gYHVucGF5YWJsZWAgZmxh ZyIsICJmZXRjaCBhIGxpc3Qgb2YgbGFzdCB1c2VyJ3Mgc2VhcmNoZXMsIGJ1dCBpZiBpdCBpcyBl bXB0eSwgcHJvdmlkZSBkZWZhdWx0IHNlYXJjaCBoaW50cyIgZXRjLgoKSSBiZWxpZXZlIHRoZXJl IF9pc18gdW4gdW5yZWZsZWN0ZWQgbmVlZCBmb3IgaWRpb20gbGlrZSB0aGlzLCB0aGUgbmVlZCB0 aGF0IGlzIGRlbW9uc3RyYXRlZCBieSB0aGUgZXhpc3RlbmNlIG9mIGBub256ZXJvP2AgYW5kIGBw cmVzZW5jZWAuCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8K