[#108552] [Ruby master Bug#18782] Race conditions in autoload when loading the same feature with multiple threads. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE4NzgyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
11 messages
2022/05/14
[ruby-core:108723] [Ruby master Bug#18806] protected methods defined by refinements can't be called
From:
"Eregon (Benoit Daloze)" <noreply@...>
Date:
2022-05-27 10:17:31 UTC
List:
ruby-core #108723
SXNzdWUgIzE4ODA2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4K CgpSaWdodCwgYWdyZWVkIHRoYXQgMSBpcyBiZXN0IHNlbWFudGljYWxseS4KSSdtIG5vdCB0b28g a2VlbiBvbiBleHRyYSBjaGVja3MsIGJ1dCB0aGUgY2hlY2tzIGZvciBwcm90ZWN0ZWQgYXJlIGFs cmVhZHkgZXhwZW5zaXZlIGFuZCB0aGlzIHdvbid0IG1ha2UgaXQgc2lnbmlmaWNhbnRseSB3b3Jz ZS4KCjEgaW1wbGllcyAyIEJUVyBpbiB0ZXJtcyBvZiBvcHRpbWl6YXRpb25zLCBpLmUuLCBpZiBp dCdzIGFuIGZjYWxsIG5vIG5lZWQgdG8gY2hlY2sgYW55IHZpc2liaWxpdHkuCgotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkJ1ZyAjMTg4MDY6IHByb3RlY3RlZCBtZXRo b2RzIGRlZmluZWQgYnkgcmVmaW5lbWVudHMgY2FuJ3QgYmUgY2FsbGVkCmh0dHBzOi8vYnVncy5y dWJ5LWxhbmcub3JnL2lzc3Vlcy8xODgwNiNjaGFuZ2UtOTc3NzUKCiogQXV0aG9yOiBqaGF3dGhv cm4gKEpvaG4gSGF3dGhvcm4pCiogU3RhdHVzOiBPcGVuCiogUHJpb3JpdHk6IE5vcm1hbAoqIHJ1 YnkgLXY6IHJ1YnkgMy4yLjBkZXYKKiBCYWNrcG9ydDogMi43OiBVTktOT1dOLCAzLjA6IFVOS05P V04sIDMuMTogVU5LTk9XTgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CkhlbGxvIQoKVGhlIGBwcm90ZWN0ZWRgIHZpc2liaWxpdHkgaXMgYSBiaXQgdW51c3VhbCwgc2lu Y2UgaXQgZGVwZW5kcyBvbiB3aGVyZSB0aGUgY2FsbGVlIG1ldGhvZCBpcyBjb25zaWRlcmVkIHRv IGJlIGRlZmluZWQuIEkgd2FzIGxvb2tpbmcgaW50byBtYWtpbmcgW2FuIG9wdGltaXphdGlvbl0o aHR0cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9wdWxsLzU2NDMpIHRvIGNhbGxpbmcgYHByb3Rl Y3RlZGAgbWV0aG9kcyBvbiBzZWxmLCBhbmQgd2UgY2FtZSBhY3Jvc3Mgc29tZSBzdXJwcmlzaW5n IGJlaGF2aW91ci4gKFRoYW5rcyBAYWxhbnd1IGZvciBmaW5kaW5nISkKCkFzIGZhciBhcyBJIGNh biB0ZWxsLCB0aGVyZSBpcyBubyB3YXkgdG8gY2FsbCBhIG1ldGhvZCByZWZpbmVkIG1ldGhvZCBp cyBgcHJvdGVjdGVkYCB2aXNpYmlsaXR5IChvdGhlciB0aGFuIGBzZW5kYCkuCgpgYGAgcnVieQpj bGFzcyBBCmVuZAoKbW9kdWxlIE15UmVmaW5lCiAgcmVmaW5lKEEpIHsKICAgIHByaXZhdGUgZGVm IHByaXZhdGVfZm9vID0gOnJlZmluZWQKICAgIGRlZiBwcml2YXRlX2Zvb19pbl9yZWZpbmVtZW50 ID0gcHJpdmF0ZV9mb28KCiAgICBwcm90ZWN0ZWQgZGVmIHByb3RlY3RlZF9mb28gPSA6cmVmaW5l ZAogICAgZGVmIHByb3RlY3RlZF9mb29faW5fcmVmaW5lbWVudCA9IHByb3RlY3RlZF9mb28KICB9 CmVuZAoKY2xhc3MgQQogIHVzaW5nIE15UmVmaW5lCgogIGRlZiBjYWxsX3ByaXZhdGUgPSBwcml2 YXRlX2ZvbwogIGRlZiBjYWxsX3ByaXZhdGVfdGhyb3VnaF9yZWZpbmVtZW50ID0gcHJpdmF0ZV9m b29faW5fcmVmaW5lbWVudAoKICBkZWYgY2FsbF9wcm90ZWN0ZWQgPSBwcm90ZWN0ZWRfZm9vCiAg ZGVmIGNhbGxfcHJvdGVjdGVkX3Rocm91Z2hfcmVmaW5lbWVudCA9IHByb3RlY3RlZF9mb29faW5f cmVmaW5lbWVudAogIGRlZiBpc19kZWZpbmVkID0gZGVmaW5lZD8ocHJvdGVjdGVkX2ZvbykKZW5k CgoKCkEubmV3LmNhbGxfcHJpdmF0ZQojID0+IDpyZWZpbmVkCgpBLm5ldy5jYWxsX3ByaXZhdGVf dGhyb3VnaF9yZWZpbmVtZW50CiMgPT4gOnJlZmluZWQKCkEubmV3LmNhbGxfcHJvdGVjdGVkCiMg PT4gTm9NZXRob2RFcnJvcjogcHJvdGVjdGVkIG1ldGhvZCBgcHJvdGVjdGVkX2ZvbycgY2FsbGVk IGZvciAjPEE6MHgwMDAwN2YyM2YzNWU5MzkwPgoKQS5uZXcuY2FsbF9wcm90ZWN0ZWRfdGhyb3Vn aF9yZWZpbmVtZW50CiMgPT4gTm9NZXRob2RFcnJvcjogcHJvdGVjdGVkIG1ldGhvZCBgcHJvdGVj dGVkX2ZvbycgY2FsbGVkIGZvciAjPEE6MHgwMDAwN2YyM2YzNWU5MzkwPgoKQS5uZXcuaXNfZGVm aW5lZAojICJtZXRob2QiCmBgYAoKSSBmaW5kIGl0IGNvbmZ1c2luZyB0aGF0IGhlcmUgcHJvdGVj dGVkIGlzIG1vcmUgcmVzdHJpY3RpdmUgdGhhbiBwcml2YXRlIChwcml2YXRlIG1ldGhvZHMgZnJv bSBhIHJlZmluZW1lbnQgY2FuIGJlIGNhbGxlZCBhcyBub3JtYWwpLCBidXQgSSdtIG5vdCBzdXJl IGlmIGl0J3MgYSBydWxlIHRoYXQgaXQgc2hvdWxkIGJlIG9yIGp1c3QgaG93IEkndmUgYWx3YXlz IGFzc3VtZWQgaXQgaXMuCgpJdCdzIGFsc28gb2RkIHRoYXQgYGRlZmluZWQ/YCByZXR1cm5zIHRy dXRoeSwgYnV0IEkgdGhpbmsgdGhpcyBtaWdodCBhY3R1YWxseSBiZSBhIGJ1ZyBvbiBkZWZpbmVk IHdpdGggcHJvdGVjdGVkIG1ldGhvZHMgKGJlaGF2aW91ciBkb2Vzbid0IG1hdGNoIHRoYXQgb2Yg bWV0aG9kIGNhbGxzKS4KCkkgdGhpbmsgdGhpcyBpcyBwcm9iYWJseSBub3QgaW50ZW50aW9uYWwg b3IgZGVzaXJlZCBiZWhhdmlvdXIuIEl0J3Mgbm90IHVzZWZ1bCBmb3IgdXMgdG8gbWFrZSBtZXRo b2RzIHdoaWNoIGNhbid0IGJlIGNhbGxlZC4gVGhlIHJlYXNvbiB0aGlzIGhhcHBlbnMgSSB0aGlu ayBpcyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6IHRoZSAiZGVmaW5lZCBjbGFzcyIgb2YgdGhl IG1ldGhvZCB3ZSdyZSB0cnlpbmcgdG8gY2FsbCBpcyB0aGUgSUNMQVNTIGluY2x1ZGluZyB0aGUg cmVmaW5lbWVudCBtb2R1bGUgb250byB0aGUgYEFgIHN1cGVyY2xhc3MuCgpQb3NzaWJsZSBvcHRp b25zIEkgc2VlIGZvciBpbXByb3ZpbmcgdGhpczoKCjEuIFRyZWF0IGRlZmluZWQgbWV0aG9kcyBh cyB0aG91Z2ggdGhleSB3ZXJlIGRlZmluZWQgb24gdGhlIHJlZmluZWQgY2xhc3MuIEJvdGggZXhh bXBsZXMgYWJvdmUgd2lsbCBub3cgd29yaywgYW5kIGl0IGlzIHBvc3NpYmxlIHRvIGNhbGwgdGhl IHJlZmluZWQgbWV0aG9kIG9uIG9iamVjdHMgb3RoZXIgdGhhbiBzZWxmLgoKMi4gQWx3YXlzIGFs bG93ICJmY2FsbHMiIHRvIGBwcm90ZWN0ZWRgIG1ldGhvZHMuIE1ha2luZyB0aGVtIGJhc2ljYWxs eSBhbiBhbGlhcyBmb3IgYHByaXZhdGVgIHdoZW4gdXNlZCBpbiBhIHJlZmluZW1lbnQuCgozLiBG b3JiaWQgdXNpbmcgYHByb3RlY3RlZGAgaW5zaWRlIGEgcmVmaW5lbWVudCAoYW5kIGBSZWZpbmVt ZW50I2ltcG9ydF9tZXRob2RzYCksIHJhaXNpbmcgYW4gZXJyb3IuCgoKTXkgcHJlZmVyZW5jZSB3 b3VsZCBiZSAxLiBJIHRoaW5rIGl0IHdvdWxkIHJlcXVpcmUgb25lIGV4dHJhIGNoZWNrIHdoZW4g Y2FsbGluZyBwcm90ZWN0ZWQgbWV0aG9kcywgYnV0IGNhbGxpbmcgcHJvdGVjdGVkIG1ldGhvZHMg aXMgYWxyZWFkeSBhIHNsb3dlciBwYXRoIHNvIEkgdGhpbmsgaXQgaXMgZmluZS4KClRoYW5rcyBm b3IgcmVhZGluZyEKCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3Jp YmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vi c2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlv bnMvcnVieS1jb3JlPgo=