[#122973] [PATCH] Add Gem.default_install — Felipe Contreras via ruby-core <ruby-core@...>
We need a way to enable user installs by default so that tools like
3 messages
2025/08/17
[ruby-core:123103] [Ruby Feature#21550] Ractor.sharable_proc/sharable_lambda to make sharable Proc object
From:
"Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>
Date:
2025-08-28 08:07:46 UTC
List:
ruby-core #123103
SXNzdWUgIzIxNTUwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4N Cg0KDQprbzEgKEtvaWNoaSBTYXNhZGEpIHdyb3RlIGluICNub3RlLTE0Og0KPiBARXJlZ29uIGxl dCdzIG1lIGNsYXJpZnkgeW91ciBwcm9wb3NhbC4NCj4gDQo+ICogT3B0aW9uIDQgaXMgeW91ciBw cm9wb3NhbCBvbiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjEwMzkjbm90ZS0y MSwgd2hpY2ggcHJvaGliaXQgYW55IHdyaXRpbmcgdG8gdGhlIGNhcHR1cmVkIG91dGVyIHZhcmlh YmxlcyBmcm9tIGluc2lkZS9vdXRzaWRlIG9mIHRoZSBibG9jaw0KDQpJIHRoaW5rIHRoZXJlIGlz IGEgbWlzdW5kZXJzdGFuZGluZyB0aGVyZTogT3B0aW9uIDQgZG9lcyAqbm90KiBwcm9oaWJpdCB3 cml0aW5nIHRvIGNhcHR1cmVkIHZhcmlhYmxlcywgaXQgbmV2ZXIgcHJvcG9zZWQgdGhhdC4gUnVi eSBjb2RlIGNhbiB3cml0ZSB0byBhbGwgbG9jYWwgdmFyaWFibGVzLCBhbHdheXMuDQpNYXliZSB0 aGUgdGV4dCBpbiB0aGF0IGNvbW1lbnQgaXMgY29uZnVzaW5nIChlLmcuICJEaXNhbGxvdyB3cml0 ZXMiIGlzIG5vdCB0byBsaXRlcmFsbHkgZGlzYWxsb3cgd3JpdGluZywgaXQncyB0byBwcmV2ZW50 IG1ha2luZyBhIHNoYXJlYWJsZSBwcm9jIGluIHN1Y2ggYSBjb250ZXh0KS4NClBsZWFzZSByZWFk IGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTU1MCNub3RlLTEyIGFuZCBpZ25v cmVkIHRoYXQgb2xkZXIgY29tbWVudCwgaXQgc2hvdWxkIGJlIHZlcnkgY2xlYXIgd2hhdCBpcyBw cm9wb3NlZCB3aXRoIGFsbCB0aGUgZXhhbXBsZXMuDQpJdCBwcmV2ZW50cyBtYWtpbmcgYSBgc2hh cmVhYmxlX3Byb2NgIGZvciBhIGJsb2NrIHdoaWNoIHVzZXMgY2FwdHVyZWQgdmFyaWFibGVzIHdo aWNoIGFyZSByZWFzc2lnbmVkICphZnRlciogdGhlIGJsb2NrLCBhcyBJIHNob3dlZCBpbiB0aGUg ZXhhbXBsZXMgYWJvdmU6DQpgYGBydWJ5DQpkZWYgZXhhbXBsZQ0KICBhID0gMQ0KICBiID0gcHJv YyB7IGEgfQ0KICBSYWN0b3Iuc2hhcmVhYmxlX3Byb2MoJmIpICMgc2hvdWxkIGJlIFJhY3Rvcjo6 SXNvbGF0aW9uRXJyb3I6IGNhbm5vdCBpc29sYXRlIGEgYmxvY2sgYmVjYXVzZSBpdCBhY2Nlc3Nl cyBvdXRlciB2YXJpYWJsZXMgKGEpIHdoaWNoIGFyZSByZWFzc2lnbmVkIGluc2lkZSBvciBhZnRl ciB0aGUgYmxvY2sNCiAgYSA9IDINCmVuZA0KYGBgDQpBbGwgb3B0aW9ucyBhbHJlYWR5IHByZXZl bnQgbWFraW5nIGEgYHNoYXJlYWJsZV9wcm9jYCBmb3IgYSBibG9jayB3aGljaCB1c2VzIGNhcHR1 cmVkIHZhcmlhYmxlcyB3aGljaCBhcmUgcmVhc3NpZ25lZCAqaW5zaWRlKiB0aGUgYmxvY2suDQpg YGBydWJ5DQojIGVycm9yICh0aGF0IGV2ZXJ5b25lIHNlZW1zIHRvIGFncmVlIG9uKQ0KZGVmIGV4 YW1wbGUNCiAgYSA9IDENCiAgYiA9IHByb2MgeyBhID0gMiB9DQogIFJhY3Rvci5zaGFyZWFibGVf cHJvYygmYikNCmVuZA0KYGBgDQpTbyBvcHRpb24gNCBkb2VzIHRoZSBzYW1lIGJ1dCBhbHNvIHBy ZXZlbnRzIG1ha2luZyBhIHNoYXJlYWJsZSBwcm9jIHdoZW4gcmVhc3NpZ25lZCAqYWZ0ZXIqLg0K DQo+ICAgKiBUaGlzIHByb3Bvc2FsIGlzIGNsZWFybHkgIHJlamVjdGVkIGJ5IE1hdHogaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIxMDM5I25vdGUtMjgNCg0KSSB0aGluayB0aGUg cHJvcG9zYWwgd2FzIG1pc3VuZGVyc3Rvb2QsIEkgdHJpZWQgdG8gY2xhcmlmeSBpbiBodHRwczov L2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjEwMzkjbm90ZS0zMyBhcyB3ZWxsLg0KInByb2hp Yml0aW5nIG91dGVyIGFzc2lnbm1lbnQgdG8gbG9jYWwgdmFyaWFibGVzIHdoZW4gYSBwcm9jIGlz IG1hZGUgc2hhcmFibGUuIiB3YXMgbmV2ZXIgcHJvcG9zZWQgKGJlY2F1c2UgdGhhdCdzIGNsZWFy bHkgdG9vIGRpZmZpY3VsdCBhbmQgdGhlIHdyb25nIHBsYWNlIHRvIHByZXZlbnQvcHJvaGliaXQp Lg0KDQo+ICogQWJvdXQgYGRlZmluZV9tZXRob2RgDQo+ICAgKiA+IFRoYXQgd291bGQgbWVhbiB0 aGF0IGRlZmluZV9tZXRob2Qgd291bGQgYXV0b21hdGljYWxseSBzaGFsbG93LWNvcHkgdGhlIGVu dmlyb25tZW50LCBSYWN0b3Igb3Igbm90LCBmb3IgY29uc2lzdGVuY3kuIFRoYXQncyBhIHNlbWFu dGljIGNoYW5nZSBidXQgaXQgc2VlbXMgdmVyeSBjb21wYXRpYmxlLg0KPiAgICogSSB0aGluayBp dCBpcyBub3QgYWNjZXB0YWJsZSBiZWNhdXNlIGl0IHdpbGwgYnJlYWsgY29tcGF0aWJpbGl0eSBp ZiB0aGUgYmxvY2sgdXNlcyBvdXRlciBsb2NhbCB2YXJpYWJsZXMgYXMgYSBzdG9yYWdlLCBsaWtl IHRoYXQ6DQoNCk15IGxhc3QgY29tbWVudCBleHBsYWlucyBob3cgdG8gZml4IHRoaXMuDQpTaW5j ZSBpdCdzIG5vdCBjbGVhciBJIHdpbGwgbWFrZSBhIHNlcGFyYXRlIHByb3Bvc2FsIHdoaWNoIGRv ZXMgbm90IHJlbHkgb24gYW55IHByZXZpb3VzIGNvbW1lbnQgdG8gbWluaW1pemUgY29uZnVzaW9u Lg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpGZWF0dXJlICMy MTU1MDogUmFjdG9yLnNoYXJhYmxlX3Byb2Mvc2hhcmFibGVfbGFtYmRhIHRvIG1ha2Ugc2hhcmFi bGUgUHJvYyBvYmplY3QNCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTU1MCNj aGFuZ2UtMTE0NDE5DQoNCiogQXV0aG9yOiBrbzEgKEtvaWNoaSBTYXNhZGEpDQoqIFN0YXR1czog T3Blbg0KKiBBc3NpZ25lZToga28xIChLb2ljaGkgU2FzYWRhKQ0KKiBUYXJnZXQgdmVyc2lvbjog My41DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpMZXQncyBpbnRy b2R1Y2UgYSB3YXkgdG8gbWFrZSBhIHNoYXJhYmxlIFByb2MuDQoNCiogYFJhY3Rvci5zaGFyZWFi bGVfcHJvYyhzZWxmOiBuaWwsICZibG9jaylgIG1ha2VzIHByb2MuDQoqIGBSYWN0b3Iuc2hhcmVh YmxlX2xhbWJkYShzZWxmOiBuaWwsICZibG9jaylgIG1ha2VzIGxhbWJkYS4NCg0KU2VlIGFsc286 IGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTAzOQ0KDQojIyBCYWNrZ3JvdW5k DQoNCiMjIyBNb3RpdmF0aW9uDQoNCkJlaW5nIGFibGUgdG8gY3JlYXRlIGEgc2hhcmVhYmxlIFBy b2MgaXMgaW1wb3J0YW50IGZvciBSYWN0b3JzLiBGb3IgZXhhbXBsZSwgd2Ugb2Z0ZW4gd2FudCB0 byBzZW5kIGEgdGFzayB0byBhbm90aGVyIFJhY3RvcjoNCg0KYGBgcnVieQ0Kd29ya2VyID0gUmFj dG9yLm5ldyBkbw0KICB3aGlsZSB0YXNrID0gUmFjdG9yLnJlY2VpdmUNCiAgICB0YXNrLmNhbGwo Li4uKQ0KICBlbmQNCmVuZA0KDQp0YXNrID0gKHNoYXJhYmxlX3Byb2MpDQp3b3JrZXIgPDwgdGFz aw0KDQp0YXNrID0gKHNoYXJhYmxlX3Byb2MpDQp3b3JrZXIgPDwgdGFzaw0KDQp0YXNrID0gKHNo YXJhYmxlX3Byb2MpDQp3b3JrZXIgPDwgdGFzaw0KYGBgDQoNClRoZXJlIGFyZSB2YXJpb3VzIHdh eXMgdG8gcmVwcmVzZW50IGEgdGFzaywgYnV0IHVzaW5nIGEgUHJvYyBpcyBzdHJhaWdodGZvcndh cmQuDQoNCkhvd2V2ZXIsIHRvIG1ha2UgYSBQcm9jIHNoYXJlYWJsZSB0b2RheSwgc2VsZiBtdXN0 IGFsc28gYmUgc2hhcmVhYmxlLCB3aGljaCBsZWFkcyB0byBwYXR0ZXJucyBsaWtlOg0KDQpgYGBy dWJ5DQogIG5pbC5pbnN0YW5jZV9ldmFseyBQcm9jLm5ld3sgLi4uIH0gfQ0KYGBgDQoNClRoaXMg aXMgbm9pc3kgYW5kIGNyeXB0aWMuIFdlIHByb3Bvc2UgZGVkaWNhdGVkIG1ldGhvZHMgdG8gY3Jl YXRlIHNoYXJlYWJsZSBQcm9jIG9iamVjdHMgZGlyZWN0bHkuDQoNCg0KIyMgU3BlY2lmaWNhdGlv bg0KDQoqIGBSYWN0b3Iuc2hhcmVhYmxlX3Byb2Moc2VsZjogbmlsLCAmYmxvY2spYCBtYWtlcyBh IHByb2MuDQoqIGBSYWN0b3Iuc2hhcmVhYmxlX2xhbWJkYShzZWxmOiBuaWwsICZibG9jaylgIG1h a2VzIGEgbGFtYmRhLg0KDQpCb3RoIG1ldGhvZHMgY3JlYXRlIHRoZSBQcm9jL2xhbWJkYSB3aXRo IHRoZSBnaXZlbiBzZWxmIGFuZCBtYWtlIHRoZSByZXN1bHRpbmcgb2JqZWN0IHNoYXJlYWJsZS4N Cg0KKGNoYW5nZWQpIEFjY2Vzc2luZyBvdXRlciB2YXJpYWJsZXMgYXJlIG5vdCBhbGxvd2VkLiBB biBlcnJvciBpcyByYWlzZWQgYXQgdGhlIGNyZWF0aW9uLg0KDQpNb3JlIGFib3V0IG91dGVyLXZh cmlhYmxlIGhhbmRsaW5nIGFyZSBkaXNjdXNzZWQgYmVsb3cuDQoNCkluIG90aGVyIHdvcmRzLCBm cm9tIHRoZSBwZXJzcGVjdGl2ZSBvZiBhIHNoYXJlYWJsZSBQcm9jLCBjYXB0dXJlZCBvdXRlciBs b2NhbHMgYXJlIHJlYWTigJFvbmx5IGNvbnN0YW50cy4NCg0KVGhpcyBwcm9wb3NhbCBkb2VzIG5v dCBjaGFuZ2UgdGhlIHNlbWFudGljcyBvZiBSYWN0b3IubWFrZV9zaGFyZWFibGUoKSBpdHNlbGYu DQoNCiMjIERpc2N1c3Npb24gYWJvdXQgb3V0ZXIgbG9jYWwgdmFyaWFibGVzDQoNCltGZWF0dXJl ICMyMTAzOV0gZGlzY3Vzc2VzIGhvdyBjYXB0dXJlZCB2YXJpYWJsZXMgc2hvdWxkIGJlIGhhbmRs ZWQuDQpJIHByb3Bvc2UgdHdvIG9wdGlvbnMuDQoNCiMjIyAwLiBEaXNhbGxvdyBhY2Nlc3Npbmcg dG8gdGhlIG91dGVyLXZhcmlhYmxlcw0KDQpJdCBpcyBzaW1wbGUgYW5kIG5vIGNvbmZ1c2lvbi4N Cg0KIyMjIDEuIE5vIHByb2JsZW0gdG8gY2hhbmdlIHRoZSBvdXRlci12YXJpYWJsZSBzZW1hbnRp Y3MNCg0KQEVyZWdvbiBub3RlZCB0aGF0IHRoZSBjdXJyZW50IGJlaGF2aW9yIG9mIGBSYWN0b3Iu bWFrZV9zaGFyZWFibGUocHJvY19vYmopYCBjYW4gc3VycHJpc2UgdXNlcnMuIFdoaWxlIHRoYXQg aXMgdW5kZXJzdGFuZGFibGUsIFJ1YnkgYWxyZWFkeSBoYXMgc2ltaWxhciAqc3VycHJpc2VzKi4N Cg0KRm9yIGluc3RhbmNlOg0KDQpgYGBydWJ5DQpSU3BlYy5kZXNjcmliZSAnZm9vJyBkbw0KICBw IHNlbGYgIz0+IFJTcGVjOjpFeGFtcGxlR3JvdXBzOjpGb28NCmVuZA0KYGBgDQoNCkhlcmUsIGBz ZWxmYCBpcyBpbXBsaWNpdGx5IHJlcGxhY2VkLCBsaWtlbHkgdmlhIGBpbnN0YW5jZV9leGVjYC4N ClRoaXMgY2FuIGJlIHN1cnByaXNpbmcgaWYgb25lIGRvZXMgbm90IGtub3cgc2VsZiBjYW4gY2hh bmdlLCB5ZXQgaXQgaXMgYWNjZXB0ZWQgaW4gUnVieS4NCldlIHZpZXcgdGhlIGN1cnJlbnQgc2l0 dWF0aW9uIGFzIGEgc2ltaWxhciBraW5kIG9mIHN1cnByaXNlLg0KDQoNCiMjIyAyLiBFbmZvcmNl IGEgc3RyaWN0IHJ1bGUgZm9yIG5vbuKAkWxleGljYWwgdXNhZ2UNCg0KVGhlIGRpZmZpY3VsdHkg aXMgdGhhdCBpdCBpcyBoYXJkIHRvIGtub3cgd2hpY2ggYmxvY2sgd2lsbCBiZWNvbWUgc2hhcmVh YmxlIHVubGVzcyBpdCBpcyBsZXhpY2FsbHkgdXNhZ2UuDQoNCmBgYHJ1YnkNCiMgKDEpIE9uIHRo aXMgY29kZSwgaXQgaXMgY2xlYXIgdGhhdCB0aGUgYmxvY2sgd2lsbCBiZSBzaGFyZWFibGUgYmxv Y2s6DQoNCmEgPSA0Mg0KUmFjdG9yLnNoYXJhYmxlX3Byb2N7DQogIHAgYQ0KfQ0KDQojICgyKSBP biB0aGlzIGNvZGUsIGl0IGlzIG5vdCBjbGVhciB0aGF0IHRoZSBibG9jayBiZWNvbWVzIHNoYXJh YmxlIG9yIG5vdA0KZ2V0IHBhdGggZG8NCiAgcCBhDQplbmQNCg0KIyAoMykgT24gdGhpcyBjb2Rl LCBpdCBoYXMgbm8gcHJvYmxlbSBiZWNhdXNlDQpnZXQgJy9oZWxsbycgZG8NCiAgIndvcmxkIg0K ZW5kDQpgYGANCg0KVGhlIGlkZWEgaXMgdG8gYWxsb3cgYWNjZXNzaW5nIGNhcHR1cmVkIG91dGVy IHZhcmlhYmxlcyBvbmx5IGZvciBsZXhpY2FsbHkgZXhwbGljaXQgdXNlcyBvZiBgUmFjdG9yLnNo YXJlYWJsZV9wcm9jYCBhcyBpbiAoMSksIGFuZCB0byByYWlzZSBhbiBlcnJvciBmb3Igbm9u4oCR bGV4aWNhbCBjYXNlcyBhcyBpbiAoMikuDQpTbyB0aGUgZXhhbXBsZSAoMykgaXMgYWxsb3dlZCBp ZiB0aGUgYmxvY2sgYmVjb21lcyBzaGFyYWJsZSBvciBub3QuDQoNClRoZSBzdHJpY3QgcnVsZSBp cyBzYW1lIGFzIGBSYWN0b3IubmV3YCBibG9jayBydWxlLiANCg0KIyMjIDMuIEFkZGluZyBuZXcg cnVsZXMNCg0KKHF1b3RlZCBmcm9tIGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8y MTU1MCNub3RlLTcpDQoNClJldHVybmluZyB0byB0aGUgaXNzdWU6IHdlIHdhbnQgYSB3YXkgdG8g ZXhwcmVzcyB0aGF0LCB3aXRoaW4gYSBibG9jaywgYW4gb3V0ZXIgdmFyaWFibGUgaXMgc2hhZG93 ZWQgd2hpbGUgcHJlc2VydmluZyBpdHMgY3VycmVudCB2YWx1ZS4NCg0KV2UgYWxyZWFkeSBoYXZl IHN5bnRheCB0byBzaGFkb3cgYW4gb3V0ZXIgdmFyaWFibGUgdXNpbmcgYHxpOyBhfGAsIHdoZXJl IGBhYCBpcyBzaGFkb3dlZCBpbiB0aGUgYmxvY2sgYW5kIGluaXRpYWxpemVkIHRvIGBuaWxgIChq dXN0IGxpa2UgYSBub3JtYWwgbG9jYWwgdmFyaWFibGUpLg0KDQpgYGBydWJ5DQphID0gNDINCnBy ID0gcHJvY3t8O2F8IHAgYX0NCmEgPSA0Mw0KcHIuY2FsbCAjPT4gbmlsDQpgYGANCg0KV2hhdCBp ZiB3ZSBpbnN0ZWFkIGluaXRpYWxpemVkIHRoZSBzaGFkb3dlZCB2YXJpYWJsZSB0byB0aGUgb3V0 ZXIgdmFyaWFibGUncyBjdXJyZW50IHZhbHVlPw0KDQpgYGBydWJ5DQphID0gNDINCnByID0gcHJv Y3t8O2F8IHAgYX0NCmEgPSA0Mw0KcHIuY2FsbCAjPT4gNDINCmBgYA0KDQpGb3IgZXhhbXBsZSwg d2UgY2FuIHdyaXRlIHRoZSBwb3J0IGV4YW1wbGUgbGlrZSB0aGF0Og0KDQpgYGBydWJ5DQoNCnBv cnQgPSBSYWN0b3I6OlBvcnQubmV3DQpSYWN0b3IubmV3IGRvIHw7cG9ydHwNCiAgcG9ydCA8PCAu Li4NCmVuZA0KYGBgDQoNCmFuZCBpdCBpcyBiZXR0ZXIgKHNob3J0ZXIpLg0KDQpNYXliZSBvbmx5 IGZldyBwZW9wbGUga25vdyB0aGlzIHNwZWMgYW5kIEkgY2hlY2tlZCB0aGF0IHRoZXJlIGFyZSBm ZXcgbGluZXMgaW4gcnVieWdlbXMgKDc4IGNhc2VzIGluIDNNIGZpbGVzKSgqMSkuDQpTbyBJIHRo aW5rIHRoZXJlIGlzIGEgZmV3IGNvbXBhdGliaWxpdHkgaW1wYWN0Lg0KDQoNCg0KDQoNCg0KLS0g DQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3Jl QG1sLnJ1YnktbGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1j b3JlLWxlYXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwu cnVieS1sYW5nLm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8K