[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110302] [Ruby master Bug#19058] Introduce `Fiber.inheritable` attributes/varaibles for dealing with shared state.
From:
"ioquatix (Samuel Williams)" <noreply@...>
Date:
2022-10-15 02:52:10 UTC
List:
ruby-core #110302
SXNzdWUgIzE5MDU4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh bXMpLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCdWcgIzE5MDU4 OiBJbnRyb2R1Y2UgYEZpYmVyLmluaGVyaXRhYmxlYCBhdHRyaWJ1dGVzL3ZhcmFpYmxlcyBmb3Ig ZGVhbGluZyB3aXRoIHNoYXJlZCBzdGF0ZS4KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNz dWVzLzE5MDU4CgoqIEF1dGhvcjogaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFtcykKKiBTdGF0dXM6 IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCiogQXNzaWduZWU6IGlvcXVhdGl4IChTYW11ZWwgV2ls bGlhbXMpCiogQmFja3BvcnQ6IDIuNzogVU5LTk9XTiwgMy4wOiBVTktOT1dOLCAzLjE6IFVOS05P V04KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpUaGVyZSBhcmUgbWFu eSBpbnN0YW5jZXMgb2YgcHJvZ3JhbXMgdXNpbmcgZ2xvYmFscywgdGhyZWFkIGxvY2FscyBhbmQg ZmliZXIgbG9jYWxzIGZvciBzaGFyZWQgc3RhdGUuIFVuZm9ydHVuYXRlbHkgdGhlc2UgcHJvZ3Jh bXMgb2Z0ZW4gaGF2ZSBidWdzIG9yIHVudXN1YWwgYmVoYXZpb3VyIHdoZW4gb2JqZWN0cyBhcmUg dXNlZCBvbiBkaWZmZXJlbnQgdGhyZWFkcyBvciBmaWJlcnMuCgpIZXJlIGlzIGEgc2ltcGxlIGV4 YW1wbGUgb2YgdGhlIGtpbmQgb2YgcHJvYmxlbSB0aGF0IGNhbiBvY2N1cjoKCmBgYHJ1YnkKY2xh c3MgVXNlcnMKCWRlZiBlYWNoCgkJcmV0dXJuIHRvX2VudW0gdW5sZXNzIGJsb2NrX2dpdmVuPwoJ CXAgZWFjaDogRmliZXIuY3VycmVudAoJCXlpZWxkICJBIgoJCXlpZWxkICJCIgoJCXlpZWxkICJD IgoJZW5kCmVuZAoKcCBVc2Vycy5uZXcuZWFjaC56aXAoVXNlcnMubmV3LmVhY2gpCmBgYAoKV2hl biB0aGUgZW51bWVyYXRpb24gZGVwZW5kcyBvbiBhIGZpbmVyLWxvY2FsIGNvbm5lY3Rpb24gaW5z dGFuY2UgKGUuZy4gYFRocmVhZC5jdXJyZW50Wzpjb25uZWN0aW9uXWApIGl0IGNvdWxkIHVuZXhw ZWN0ZWRseSBicmVhayB0aGUgb3BlcmF0aW9uIGJlY2F1c2Ugd2l0aGluIHRoZSBlbnVtZXJhdGUs IHRoZSBmaWJlciBpcyBkaWZmZXJlbnQgbGVhZGluZyB0byBtaXNzaW5nIGNvbm5lY3Rpb24uCgpJ biBhbGwgdGhlc2UgY2FzZXMsIHRoZSBwcm9ibGVtIGNhbiBiZSBzb2x2ZWQgYnkgbm90IHJlbHlp bmcgb24gaW1wbGljaXQvaW52aXNpYmxlIHN0YXRlLiBVbmZvcnR1bmF0ZWx5LCBtYW55IHByb2dy YW1zIHRha2UgYWR2YW50YWdlIG9mIHByb2Nlc3MgKGdsb2JhbCksIHRocmVhZCBvciBmaWJlciBs b2NhbCB2YXJpYWJsZXMgdG8gY3JlYXRlIG1vcmUgZXJnb25vbWljIGludGVyZmFjZXMsIGUuZy4K CmBgYHJ1YnkKREIuY29ubmVjdCh1c2VybmFtZSwgcGFzc3dvcmQsIGhvc3QpCgpEQi5xdWVyeSgi U0VMRUNUICogRlJPTSBCVUdTIik7ICMgaW1wbGljaXQgZGVwZW5kZW5jeSBvbiBjb25uZWN0aW9u LgpgYGAKClJ1YnkgcHJvdmlkZXMgc2V2ZXJhbCwgc29tZXdoYXQgY29uZnVzaW5nIG9wdGlvbnMu CgpgYGBydWJ5ClRocmVhZC5jdXJyZW50Wzp4XSAjIEZpYmVyIGxvY2FsLgpUaHJlYWQuY3VycmVu dC50aHJlYWRfdmFyaWFibGVfZ2V0KDp4KSAjIFRocmVhZCBsb2NhbC4KCmNsYXNzIFRocmVhZAog IGF0dHIgOngKZW5kCgpUaHJlYWQuY3VycmVudC54ICMgdGhyZWFkIGxvY2FsCgpjbGFzcyBGaWJl cgogIGF0dHIgOngKZW5kCgpGaWJlci5jdXJyZW50LnggIyBmaWJlciBsb2NhbApgYGAKCk92ZXIg dGhlIHllYXJzIHRoZXJlIGhhdmUgYmVlbiBtdWx0aXBsZSBpc3N1ZXMgYWJvdXQgdGhlIGFib3Zl IGJlaGF2aW91cjoKCi0gaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE3MTcKLSBo dHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvNzA5NwotIGh0dHBzOi8vYnVncy5ydWJ5 LWxhbmcub3JnL2lzc3Vlcy84MjE1Ci0gaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVz LzEzODkzCi0gUmFpbHMgaXMgYWxzbyB3b3JraW5nIGFyb3VuZCB0aGlzIGlzc3VlOiBodHRwczov L2dpdGh1Yi5jb20vcmFpbHMvcmFpbHMvcHVsbC80MzU5NgoKVGhlIGhlYXJ0IG9mIHRoZSBpc3N1 ZSBpczogdGhlcmUgc2hvdWxkIGJlIGEgY29uc2lzdGVudCBhbmQgY29udmVuaWVudCB3YXkgdG8g ZGVmaW5lIHN0YXRlIGF0dGFjaGVkIHRvIHRoZSBjdXJyZW50IGV4ZWN1dGlvbiBjb250ZXh0LCB3 aGljaCBnZXRzIGluaGVyaXRlZCBieSBjaGlsZCBleGVjdXRpb24gY29udGV4dHMuIEVzc2VudGlh bGx5OgoKYGBgcnVieQpsZXQoeDogMTApIGRvCiAgIyBJbiBldmVyeSBleGVjdXRpb24gY29udGV4 dCBjcmVhdGVkIHdpdGhpbiB0aGlzIGJsb2NrLCB1bmxlc3Mgb3RoZXJ3aXNlIGNoYW5nZWQsIGB4 YCBpcyBib3VuZCB0byB0aGUgdmFsdWUgMTAuIFRoYXQgbWVhbnMsIHRocmVhZHMsIGZpYmVycywg ZXRjLgplbmQKYGBgCgpUaGlzIGlzIHNvbWV0aW1lcyByZWZlcnJlZCB0byBhcyBkeW5hbWljIHNj b3BlLiBUaGlzIHByb3Bvc2FsIGlzIHRvIGludHJvZHVjZSBhIHNpbWlsYXIgZHluYW1pYyBzY29w ZSBmb3IgZmliZXIgaW5oZXJpdGFibGUgYXR0cmlidXRlcy4KCiMjIFByb3Bvc2FsCgpXZSBoYXZl IHNldmVyYWwgdW5pdHMgb2YgZXhlY3V0aW9uIGluIFJ1YnksIGltcGxpY2l0bHkgYSBwcm9jZXNz LCB3aGljaCBoYXMgdGhyZWFkcyB3aGljaCBoYXMgZmliZXJzLiBJbnRlcm5hbGx5LCBSdWJ5IGhh cyBhbiAiZXhlY3V0aW9uIGNvbnRleHQiLiBFYWNoIGZpYmVyIGhhcyBhbiBleGVjdXRpb24gY29u dGV4dC4gRWFjaCB0aHJlYWQgaGFzIGEgbWFpbiBmaWJlciBhbmQgZXhlY3V0aW9uIGNvbnRleHQu IEkgcHJvcG9zZSB0byBpbnRyb2R1Y2UgYW4gaW50ZXJmYWNlIGZvciBkZWZpbmluZyBhIHBlci1m aWJlciBjb250ZXh0IHdoaWNoIGlzIHNlbWFudGljYWxseSB2ZXJ5IHNpbWlsYXIgdG8gZHluYW1p YyB2YXJpYWJsZXMuIFRydWUgZHluYW1pYyB2YXJpYWJsZXMgYXJlIHN0YWNrIGZyYW1lIHNjb3Bl ZCwgYnV0IG15IHByb3Bvc2FsIGRvZXNuJ3QgZ28gdGhhdCBmYXIuIFRoaXMgcHJvcG9zYWwgaXMg c2ltaWxhciB0byBLb3RsaW4ncyBDb3JvdXRpbmUgQ29udGV4dHMgPGh0dHBzOi8va290bGlubGFu Zy5vcmcvZG9jcy9jb3JvdXRpbmUtY29udGV4dC1hbmQtZGlzcGF0Y2hlcnMuaHRtbD4uCgpgYGBy dWJ5CnJlcXVpcmUgJ2ZpYmVyJwoKIyBDb21wYXRpYmxlIHNoaW0gdG8gaW50cm9kdWNlIHByb3Bv c2VkIGJlaGF2aW91cjoKY2xhc3MgRmliZXIKCW1vZHVsZSBJbmhlcml0YWJsZQoJCWRlZiBpbml0 aWFsaXplKC4uLikKCQkJc3VwZXIoLi4uKQoJCQkKCQkJc2VsZi5pbmhlcml0X2F0dHJpYnV0ZXNf ZnJvbShGaWJlci5jdXJyZW50KQoJCWVuZAoJCQoJCWRlZiBzZWxmLnByZXBlbmRlZChrbGFzcykK CQkJa2xhc3MuZXh0ZW5kKFNpbmdsZXRvbikKCQkJa2xhc3MuaW5zdGFuY2VfdmFyaWFibGVfc2V0 KDpAaW5oZXJpdGFibGVfYXR0cmlidXRlcywgSGFzaC5uZXcpCgkJZW5kCgkJCgkJbW9kdWxlIFNp bmdsZXRvbgoJCQlkZWYgaW5oZXJpdGFibGUoa2V5LCBkZWZhdWx0OiBuaWwpCgkJCQlAaW5oZXJp dGFibGVfYXR0cmlidXRlc1s6IkAje2tleX0iXSA9IGRlZmF1bHQKCQkJZW5kCgkJCQoJCQlkZWYg aW5oZXJpdGFibGVfYXR0cmlidXRlcwoJCQkJQGluaGVyaXRhYmxlX2F0dHJpYnV0ZXMKCQkJZW5k CgkJZW5kCgkJCgkJZGVmIGluaGVyaXRfYXR0cmlidXRlc19mcm9tKGZpYmVyKQoJCQlzZWxmLmNs YXNzLmluaGVyaXRhYmxlX2F0dHJpYnV0ZXMuZWFjaCBkbyB8bmFtZSwgZGVmYXVsdHwKCQkJCXZh bHVlID0gZmliZXIuaW5zdGFuY2VfdmFyaWFibGVfZ2V0KG5hbWUpIHx8IGRlZmF1bHQKCQkJCXNl bGYuaW5zdGFuY2VfdmFyaWFibGVfc2V0KG5hbWUsIHZhbHVlKQoJCQllbmQKCQllbmQKCWVuZApl bmQKCnVubGVzcyBGaWJlci5yZXNwb25kX3RvPyg6aW5oZXJpdGFibGUpCglGaWJlci5wcmVwZW5k KEZpYmVyOjpJbmhlcml0YWJsZSkKZW5kCmBgYAoKVGhpcyBhbGxvd3MgeW91IHRvIHdyaXRlIHRo ZSBmb2xsb3dpbmcgY29kZToKCmBgYHJ1YnkKY2xhc3MgRmliZXIKICBpbmhlcml0YWJsZSBhdHRy X2FjY2Vzc29yIDpjb25uZWN0aW9uCmVuZAoKIyBXaGVuIGxhenkgZW51bWVyYXRvciBjcmVhdGVz IGludGVybmFsIGZpYmVyLCB0aGUgY29ubmVjdGlvbiBhbmQgcmVsYXRlZCBzdGF0ZSB3aWxsIGJl IGluaGVyaXRlZCBjb3JyZWN0bHk6CnAgVXNlci5maXJzdCgxMDApLmZpbmRfZWFjaC56aXAoUG9z dC5maXJzdCgxMDApLmZpbmRfZWFjaCkKYGBgCgpTb21lIG9wZW4gcXVlc3Rpb25zOgoKLSBTaG91 bGQgd2UgaW50cm9kdWNlIHRoZSBzYW1lIGludGVyZmFjZSBmb3IgVGhyZWFkPwotIChvcikgU2hv dWxkIFRocmVhZC5uZXcncyBtYWluIGZpYmVyIGluaGVyaXQgZnJvbSB0aGUgY3VycmVudCBGaWJl cj8KCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vic2NyaWJlOiA8bWFp bHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNjcmliZT4K PGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25zL3J1Ynkt Y29yZT4K