From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on starla X-Spam-Level: X-Spam-Status: No, score=-1.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from nue.mailmanlists.eu (nue.mailmanlists.eu [94.130.110.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 089861F4CC for ; Tue, 7 Jan 2025 08:24:27 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=pass (1024-bit key; unprotected) header.d=ml.ruby-lang.org header.i=@ml.ruby-lang.org header.a=rsa-sha256 header.s=mail header.b=Q9BCt9gN; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.a=rsa-sha256 header.s=s1 header.b=jeOEUU+W; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ml.ruby-lang.org; s=mail; t=1736238234; bh=emvZ2U7ultDpTxdT1JTZTNpEZ72QlfupEXzpSYx5jmk=; h=Date:References:To:Reply-To:Subject:List-Id:List-Archive: List-Help:List-Owner:List-Post:List-Subscribe:List-Unsubscribe: From:Cc:From; b=Q9BCt9gNXAaHqQ0R989MaB5pgHhXez4uNwXb5ljpA1N27pKsaQ1nmXqOZ9ud+A8ds 6O1bsc5cEJlA3065rdTglujTjoqX1rcf4jkPQCZuQFfcQENBsFz8i3liSJ5FYjjMvj OJ03lNgjYnL+N9kVLztn1+/Fm4N8pgZ4/znOsg4w= Received: from nue.mailmanlists.eu (localhost [IPv6:::1]) by nue.mailmanlists.eu (Postfix) with ESMTP id A3CD146669 for ; Tue, 7 Jan 2025 08:23:54 +0000 (UTC) Authentication-Results: nue.mailmanlists.eu; dkim=pass (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.a=rsa-sha256 header.s=s1 header.b=jeOEUU+W; dkim-atps=neutral Received: from s.wfbtzhsw.outbound-mail.sendgrid.net (s.wfbtzhsw.outbound-mail.sendgrid.net [159.183.224.105]) by nue.mailmanlists.eu (Postfix) with ESMTPS id 4260746669 for ; Tue, 7 Jan 2025 08:23:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc:content-type:from:subject:to; s=s1; bh=WIxxvGMWDqvhAOu/uE7T01aZcT590STzaIY9xdwEF7Q=; b=jeOEUU+WyfOnQ3+P+6T2aVO18evHxKeHilbEkUSDbsdLdGsgJ/carPWCqk5320QlKXyo UtXLpPuN5DS9LuiqTK/l5UPqHn+e/xxBwzFwj5rcIoJwckg8+FdUJg3K3143fu7Y2Ekesr IS3i0rnUUWCrsZQEARt4wQN7l75B4RsHaL2kQpF2tW1HYEPaz27ZDVZqTAb04aG4vMZmYi rFCGsQgtxtsz3twJp//gao6LZsU/Q3exwmXcvPhKnZ565yLHcumXDuiIrs6xExFaH+7hD1 k9Tasos9RhhrBx2BvG7Wxh6m+JFQS5SQd5wc2cbMCySbsK3cKrGpyAtuWJYdkLgQ== Received: by recvd-786d47b7ff-g66kr with SMTP id recvd-786d47b7ff-g66kr-1-677CE495-3 2025-01-07 08:23:49.206358774 +0000 UTC m=+4618849.336910431 Received: from herokuapp.com (unknown) by geopod-ismtpd-13 (SG) with ESMTP id P48zX9nWSHOm6zm3Mh1Exw for ; Tue, 07 Jan 2025 08:23:49.170 +0000 (UTC) Date: Tue, 07 Jan 2025 08:23:49 +0000 (UTC) Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 20878 X-Redmine-Issue-Author: byroot X-Redmine-Issue-Priority: Normal X-Redmine-Sender: mame 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: 97192 X-SG-EID: =?us-ascii?Q?u001=2Ep+ckLDtT+4Y5c+H0YCkEnsuWiCQmn3OZA=2F9FzjoR6ZZlPaMv54M7EFoSM?= =?us-ascii?Q?CX5Trc79ep2R5F+0oYS4n23jq1cv5KB3J4nbu2b?= =?us-ascii?Q?fBEHwKZqUxn9GaQ69kBJgXCwKvnEEW2gPPhZ8EF?= =?us-ascii?Q?1CeDIStNKkQXzNXGLfYJ4w67rMm2Z4xKgYGyWXq?= =?us-ascii?Q?UE8DrgmkLUwjLcPPoDIrA04KqIIMzeKBsH66duM?= =?us-ascii?Q?xDpdSn9cthxJWBaG=2F8rT0WezogntZm94cagcyJK?= =?us-ascii?Q?IJR=2F?= To: ruby-core@ml.ruby-lang.org X-Entity-ID: u001.I8uzylDtAfgbeCOeLBYDww== Message-ID-Hash: ESL4EJVO2RMLAQW42GOTE466IV3ZK4AA X-Message-ID-Hash: ESL4EJVO2RMLAQW42GOTE466IV3ZK4AA X-MailFrom: bounces+313651-b711-ruby-core=ml.ruby-lang.org@em5188.ruby-lang.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.9 Precedence: list Reply-To: Ruby developers Subject: [ruby-core:120516] [Ruby master Feature#20878] A new C API to create a String by adopting a pointer: `rb_enc_str_adopt(const char *ptr, long len, long capa, rb_encoding *enc)` List-Id: Ruby developers Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: "mame (Yusuke Endoh) via ruby-core" Cc: "mame (Yusuke Endoh)" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SXNzdWUgIzIwODc4IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbWFtZSAoWXVzdWtlIEVuZG9oKS4NCg0K DQpUaGFua3MgZm9yIHRoZSBiZW5jaG1hcmsuIEkgYnJpZWZseSB0YWxrZWQgYWJvdXQgdGhpcyB3 aXRoIEBub2J1LCBAYWtyLCBhbmQgQGtvMS4NCg0KVGhlIGFwcHJvYWNoIG9mIHBhc3NpbmcgYSBw b2ludGVyIHRvIHRoZSBgZnJlZWAgZnVuY3Rpb24gbG9va3MgYSBiaXQgdG9vIG92ZXItdGhlLXRv cCwgQG5vYnUgc2FpZC4NCkl0IG5lZWQgbm90IG9ubHkgYGZyZWVgIGZ1bmN0aW9uIGJ1dCBhbHNv IGByZWFsbG9jYCBmdW5jdGlvbiwgQGFrciBzYWlkLg0KDQpJIHRoaW5rIGl0IHdvdWxkIGJlIGVh c3kgdG8ganVzdCBzdHJpY3RseSBrZWVwIHRoZSBwcmVyZXF1aXNpdGUg4oCcYHB0cmAgTVVTVCBo YXZlIGJlZW4gYWxsb2NhdGVkIHdpdGggYHJ1YnlfeG1hbGxvY2Au4oCdIGFzIG9yaWdpbmFsbHkg cHJvcG9zZWQuDQpJcyB0aGVyZSBhIHJlYWwtd29ybGQgdXNlIGNhc2UgdG8gbWFrZSBhIFN0cmlu ZyB3aXRoIGEgcG9pbnRlciBhbGxvY2F0ZWQgb3V0c2lkZSBvZiBgeG1hbGxvY2A/DQoNCkBrbzEg c3VnZ2VzdGVkIHRvIGludHJvZHVjZSB0aGlzIEFQSSBhcyBhIGhpZGRlbiBBUEkgb25seSBmb3Ig anNvbiBnZW0sIGluc3RlYWQgb2YgaW50cm9kdWNpbmcgaXQgYXMgYW4gb2ZmaWNpYWwgb25lLg0K DQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkZlYXR1cmUgIzIw ODc4OiBBIG5ldyBDIEFQSSB0byBjcmVhdGUgYSBTdHJpbmcgYnkgYWRvcHRpbmcgYSBwb2ludGVy OiBgcmJfZW5jX3N0cl9hZG9wdChjb25zdCBjaGFyICpwdHIsIGxvbmcgbGVuLCBsb25nIGNhcGEs IHJiX2VuY29kaW5nICplbmMpYA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIw ODc4I2NoYW5nZS0xMTEzMjENCg0KKiBBdXRob3I6IGJ5cm9vdCAoSmVhbiBCb3Vzc2llcikNCiog U3RhdHVzOiBPcGVuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoj IyMgQ29udGV4dA0KDQpBIGNvbW1vbiB1c2UgY2FzZSB3aGVuIHdyaXRpbmcgQyBleHRlbnNpb25z IGlzIHRvIGdlbmVyYXRlIHRleHQgb3IgYnl0ZXMgaW50byBhIGJ1ZmZlciwgYW5kIHRvIHJldHVy biBpdCBiYWNrDQp3cmFwcGVkIGludG8gYSBSdWJ5IFN0cmluZy4gRXhhbXBsZXMgYXJlIGBKU09O LmdlbmVyYXRlKG9iaikgLT4gU3RyaW5nYCwgYW5kIGFsbCBvdGhlciBmb3JtYXQgc2VyaWFsaXpl cnMsDQpjb21wcmVzc2lvbiBsaWJyYXJpZXMgc3VjaCBhcyBgWkxpYi5kZWZsYXRlYCwgZXRjLCBi dXQgYWxzbyBtZXRob2RzIHN1Y2ggYXMgYFRpbWUuc3RyZnRpbWVgLCANCg0KIyMjIEN1cnJlbnQg U29sdXRpb24NCg0KIyMjIyBXb3JrIGluIGEgYnVmZmVyIGFuZCBjb3B5IHRoZSByZXN1bHQNCg0K VGhlIG1vc3Qgb2Z0ZW4gdXNlZCBzb2x1dGlvbiBpcyB0byB3b3JrIHdpdGggYSBuYXRpdmUgYnVm ZmVyIGFuZCB0byBtYW5hZ2UgYSBuYXRpdmUgYWxsb2NhdGVkIGJ1ZmZlciwNCmFuZCBvbmNlIHRo ZSBnZW5lcmF0aW9uIGlzIGRvbmUsIGNhbGwgYHJiX3N0cl9uZXcqYCB0byBjb3B5IHRoZSByZXN1 bHQgaW5zaWRlIG1lbW9yeSBtYW5hZ2VkIGJ5IFJ1YnkuDQoNCkl0IHdvcmtzLCBidXQgaXNuJ3Qg dmVyeSBlZmZpY2llbnQgYmVjYXVzZSBpdCBjYXVzZSBhbiBleHRyYSBjb3B5IGFuZCBhbiBleHRy YSBgZnJlZSgpYC4NCg0KT24gYHJ1YnkvanNvbmAgbWFjcm8tYmVuY2htYXJrcywgdGhpcyByZXBy ZXNlbnQgYXJvdW5kIDUlIG9mIHRoZSB0aW1lIHNwZW50IGluIGBKU09OLmdlbmVyYXRlYC4NCg0K YGBgYw0Kc3RhdGljIHZvaWQgZmJ1ZmZlcl9mcmVlKEZCdWZmZXIgKmZiKQ0Kew0KICAgIGlmIChm Yi0+cHRyICYmIGZiLT50eXBlID09IEZCVUZGRVJfSEVBUF9BTExPQ0FURUQpIHsNCiAgICAgICAg cnVieV94ZnJlZShmYi0+cHRyKTsNCiAgICB9DQp9DQoNCnN0YXRpYyBWQUxVRSBmYnVmZmVyX3Rv X3MoRkJ1ZmZlciAqZmIpDQp7DQogICAgVkFMVUUgcmVzdWx0ID0gcmJfdXRmOF9zdHJfbmV3KEZC VUZGRVJfUFRSKGZiKSwgRkJVRkZFUl9MRU4oZmIpKTsNCiAgICBmYnVmZmVyX2ZyZWUoZmIpOw0K ICAgIHJldHVybiByZXN1bHQ7DQp9DQpgYGANCg0KIyMjIyBXb3JrIGluc2lkZSBSU3RyaW5nIGFs bG9jYXRlZCBtZW1vcnkNCg0KQW5vdGhlciB3YXkgdGhpcyBpcyBjdXJyZW50bHkgZG9uZSwgaXMg dG8gYWxsb2NhdGUgYW4gYFJTdHJpbmdgIHVzaW5nIGByYl9zdHJfYnVmX25ld2AsDQphbmQgd3Jp dGUgaW50byBpdCB3aXRoIHZhcmlvdXMgZnVuY3Rpb25zIHN1Y2ggYXMgYHJiX3N0cl9jYXRmYCwN Cm9yIHdyaXRpbmcgcGFzdCBgUlN0cmluZy5sZW5gIHRocm91Z2ggYFJTVFJJTkdfUFRSYCBhbmQg dGhlbiByZXNpemUgaXQgd2l0aCBgcmJfc3RyX3NldF9sZW5gLg0KDQpUaGUgZG93bnNpZGUgd2l0 aCB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgaXQgY29udGFpbnMgYSBsb3Qgb2YgaW5lZmZpY2llbmNp ZXMsIGFzIGByYl9zdHJfc2V0X2xlbmAgd2lsbCBwZXJmb3JtDQpudW1lcm91cyBzYWZldHkgY2hl Y2tzLCBjb21wdXRlIGNvZGVyYW5nZSwgYW5kIHdyaXRlIHRoZSBzdHJpbmcgdGVybWluYXRvciBv biBldmVyeSBpbnZvY2F0aW9uLg0KDQpBbm90aGVyIG1ham9yIGlubmVmaWNpZW5jeSBpcyB0aGF0 IHRoaXMgQVBJIG1ha2UgaXQgaGFyZCB0byBiZSBpbiBjb250cm9sIG9mIHRoZSBidWZmZXINCmdy b3d0aCwgc28gaXQgY2FuIHJlc3VsdCBpbiBhIGxvdCBtb3JlIGByZWFsbG9jKClgIGNhbGxzIHRo YW4gbWFudWFsbHkgbWFuYWdpbmcgdGhlIGJ1ZmZlci4NCg0KVGhpcyBtZXRob2QgaXMgdXNlZCBi eSBgS2VybmVsI3NwcmludGZgLCBgVGltZSNzdHJmdGltZWAgZXRjLCBhbmQgd2hlbiBJIGF0dGVt cHRlZCB0byBpbXByb3ZlIGBUaW1lI3N0cmZ0aW1lYA0KcGVyZm9ybWFuY2UsIHRoaXMgcHJvYmxl bSBzaG93ZWQgdXAgYXMgdGhlIGJpZ2dlc3QgYm90dGxlbmVjazoNCg0KICAtIGh0dHBzOi8vZ2l0 aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC8xMTU0Nw0KICAtIGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5 L3J1YnkvcHVsbC8xMTU0NA0KICAtIGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC8x MTU0Mg0KDQojIyMgUHJvcG9zZWQgQVBJDQoNCkkgdGhpbmsgYSBtb3JlIGVmZmNpZW50IHdheSB0 byBkbyB0aGlzIHdvdWxkIGJlIHRvIHdvcmsgd2l0aCBhIG5hdGl2ZSBidWZmZXIsIGFuZCB0aGVu IGJ1aWxkIGEgUlN0cmluZw0KdGhhdCAiYWRvcHQiIHRoZSBtZW1vcnkgcmVnaW9uLg0KDQpUZWNo bmljYWxseSwgeW91IGNhbiBjdXJyZW50bHkgZG8gdGhpcyBieSByZWFjaGluZyBkaXJlY3RseSBp bnRvIGBSU3RyaW5nYCBtZW1iZXJzLCBidXQgSSBkb24ndCB0aGluayBpdCdzIGNsZWFuLA0KYW5k IGEgZGVkaWNhdGVkIEFQSSB3b3VsZCBiZSBwcmVmZXJhYmxlOg0KDQpgYGBjDQovKioNCiAqIFNp bWlsYXIgdG8gcmJfc3RyX25ldygpLCBidXQgaXQgYWRvcHRzIHRoZSBwb2ludGVyIGluc3RlYWQg b2YgY29weWluZy4NCiAqDQogKiBAcGFyYW1baW5dICBwdHIgICAgICAgICAgICAgQSBtZW1vcnkg cmVnaW9uIG9mIGBjYXBhYCBieXRlcyBsZW5ndGguIE1VU1QgaGF2ZSBiZWVuIGFsbG9jYXRlZCB3 aXRoIGBydWJ5X3htYWxsb2NgDQogKiBAcGFyYW1baW5dICBsZW4gICAgICAgICAgICAgTGVuZ3Ro ICBvZiB0aGUgc3RyaW5nLCAgaW4gYnl0ZXMsICBub3QgaW5jbHVkaW5nICB0aGUNCiAqICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0ZXJtaW5hdGluZyBOVUwgY2hhcmFjdGVyLCBub3QgaW5j bHVkaW5nIGV4dHJhIGNhcGFjaXR5Lg0KICogQHBhcmFtW2luXSAgY2FwYSAgICAgICAgICAgIFRo ZSB1c2FibGUgbGVuZ3RoIG9mIGBwdHJgLCBpbiBieXRlcywgIGluY2x1ZGluZyAgdGhlDQogKiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVybWluYXRpbmcgTlVMIGNoYXJhY3Rlci4NCiAq IEBwYXJhbVtpbl0gIGVuYyAgICAgICAgICAgICBFbmNvZGluZyBvZiBgcHRyYC4NCiAqIEBleGNl cHRpb24gIHJiX2VBcmdFcnJvciAgICBgbGVuYCBpcyBuZWdhdGl2ZS4NCiAqIEByZXR1cm4gICAg IEFuIGluc3RhbmNlICBvZiA6OnJiX2NTdHJpbmcsICBvZiBgbGVuYCAgYnl0ZXMgbGVuZ3RoLCBg Y2FwYSAtIDFgIGJ5dGVzIGNhcGFjaXR5LA0KICogICAgICAgICAgICAgYW5kIG9mIGBlbmNgIGVu Y29kaW5nLg0KICogQHByZSAgICAgICAgQXQgIGxlYXN0ICBgY2FwYWAgYnl0ZXMgIG9mICBjb250 aW51b3VzICBtZW1vcnkgcmVnaW9uICBzaGFsbCAgYmUNCiAqICAgICAgICAgICAgIGFjY2Vzc2li bGUgdmlhIGBwdHJgLg0KICogQHByZSAgICAgICAgYHB0cmAgTVVTVCBoYXZlIGJlZW4gYWxsb2Nh dGVkIHdpdGggYHJ1YnlfeG1hbGxvY2AuDQogKiBAcHJlICAgICAgICBgcHRyYCBNVVNUIG5vdCBi ZSBtYW51YWxseSBmcmVlZCBhZnRlciBgcmJfZW5jX3N0cl9hZG9wdGAgaGFzIGJlZW4gY2FsbGVk Lg0KICogQG5vdGUgICAgICAgYGVuY2AgY2FuIGJlIGEgIG51bGwgcG9pbnRlci4gIEl0IGNhbiBh bHNvIGJlICBzZWVuIGFzIGEgcm91dGluZQ0KICogICAgICAgICAgICAgaWRlbnRpY2FsIHRvIHJi X3VzYXNjaWlfc3RyX25ldygpIHRoZW4uDQogKi8NCnJiX2VuY19zdHJfYWRvcHQoY29uc3QgY2hh ciAqcHRyLCBsb25nIGxlbiwgbG9uZyBjYXBhLCByYl9lbmNvZGluZyAqZW5jKTsNCmBgYA0KDQpB biBhbHRlcm5hdGl2ZSB0byB0aGUgYGFkb3B0YCB0ZXJtLCBjb3VsZCBiZSBgbW92ZWAuDQoNCg0K LS0tRmlsZXMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQ2FwdHVyZSBk4oCZZcyB Y3JhbiAyMDI0LTEyLTExIGHMgCAxMS4wMy4wOC5wbmcgKDI1MCBLQikNCg0KDQotLSANCmh0dHBz Oi8vYnVncy5ydWJ5LWxhbmcub3JnLw0KIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1 YnktbGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxl YXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1s YW5nLm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8=