[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110391] [Ruby master Bug#19062] Introduce `Fiber#locals` for shared inheritable state.
From:
"byroot (Jean Boussier)" <noreply@...>
Date:
2022-10-18 10:37:25 UTC
List:
ruby-core #110391
SXNzdWUgIzE5MDYyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgYnlyb290IChKZWFuIEJvdXNzaWVyKS4K Cgo+IEknbSBjb25jZXJuZWQgYWJvdXQgdGhlIG1lbW9yeSBhbmQgcGVyZm9ybWFuY2UgY29zdCBv ZiBjYWxsaW5nIGR1cCBwZXIgZmliZXIuCgpJdCdzIGV4dHJlbWVseSBuZWdsaWdpYmxlLgoKPiBJ J20gYWxzbyBjb25jZXJuZWQgYWJvdXQgaGlkZGVuIGZpYmVycyAoYW5kIHRocmVhZHMpIGNhdXNp bmcgdGhlIHZpc2libGUgYmVoYXZpb3VyIHRvIGNoYW5nZSB1bmV4cGVjdGVkbHkuCgpJIHJlYWxs eSBkb24ndCBzZWUgaG93LgoKPiBJdCBhbHNvIHByZXZlbnRzIHNoYXJlZCBvcHRpbWlzYXRpb25z IHdoaWNoIGlzIHNvbWV0aGluZyBJIHdhbnQgdG8gdXNlIGZvciBteSBjb25uZWN0aW9uIHBvb2wg Y29kZS4KCk5vLCBhZ2FpbiwgbmV3IGZpYmVycyBhcmUgaW5pdGlhbGl6ZWQgd2l0aCBhIGR1cCBv ZiB0aGUgYGxvY2Fsc2AgaGFzaCwgc28gdGhleSBoYXZlIGFjY2VzcyB0byB0aGUgc2FtZSBgQ29u bmVjdGlvblBvb2xgIGluc3RhbmNlLCB3aGljaCBjYW4gYmUgbXV0YWJsZSBpZiB5b3UgZGVzaXJl IHNvLgoKPiBJdCBhbHNvIHN0YW5kcyB0byByZWFzb24sIHRoYXQgZXZlbiBpZiB3ZSBmb2xsb3dl ZCB5b3VyIHN1Z2dlc3Rpb24sIHNpbXBseSBoYXZpbmcgRmliZXIuY3VyZW50LmxvY2Fsc1s6c2hh cmVkXSA9IHt9IGF0IHRoZSB2ZXJ5IHJvb3QgcmVpbnRyb2R1Y2VzIHRoZSBzYW1lIGJlaGF2aW91 ciBhcyBJJ20gcHJvcG9zaW5nCgpZZXMgYW5kIGl0J3MgZmluZSwgb25seSB0aGUgdG9wIGxldmVs IHN0b3JlIGlzIHNoYWxsb3ctY29waWVkLCBpdCdzIG9rIGlmIHlvdSB3aXNoIHRvIHVzZSBtdXRh YmxlIHZhbHVlcyBpbiB0aGVyZS4gCgpOb3cgaW1hZ2luZSBzb21ldGhpbmcgbGlrZSB0aGlzOgoK YGBgcnVieQptb2R1bGUgTXlMaWJyYXJ5CiAgZXh0ZW5kIHNlbGYKCiAgZGVmIHdpdGhfbG9nX2xl dmVsKGxldmVsKQogICBvbGRfbGV2ZWwgPSBGaWJlcls6bG9nX2xldmVsXQogICBGaWJlcls6bG9n X2xldmVsXSA9IGxldmVsCiAgIHlpZWxkCiAgZW5zdXJlCiAgIEZpYmVyWzpsb2dfbGV2ZWxdID0g b2xkX2xldmVsCiAgZW5kCmVuZApgYGAKCi0gU2hvdWxkIGEgbmV3bHkgc3Bhd24gZmliZXIgaW5o ZXJpdCB3aGF0ZXZlciBsb2dfbGV2ZWwgaXQncyBwYXJlbnQgc2V0PyBZZXMgZGVmaW5pdGVseS4K LSBTaG91bGQgYSBjaGlsZCBmaWJlciBiZSBhYmxlIHRvIGZsaXAgdGhlIGxvZyBsZXZlbCBpbiBp dHMgcGFyZW50IGFuZCBzaWJibGluZ3M/IERlZmluaXRlbHkgbm90LgoKVGhhdCBpcyBmb3IgdGhp cyBraW5kIG9mIHVzZSBjYXNlcyBJIHRoaW5rIGBkdXBgIGlzIG5lY2Vzc2FyeS4KCklmIHlvdSBk b24ndCBgZHVwYCwgdGhlcmUgdGhpcyBpcyBhYnNvbHV0ZWx5IG5vdCAibG9jYWxzIiBpdCdzIGp1 c3Qgc29tZSBmYWlybHkgY29udHJpdmVkIGdsb2JhbCB2YXJpYWJsZS4KCj4gQnV0IGVzcGVjaWFs bHkgdGhlIHBlcmZvcm1hbmNlIGNvc3QgY29uY2VybnMgbWUgYSBsb3QKCkhhc2gjZHVwIGlzIHNv bWV0aGluZyBSdWJ5IGNvZGUgZG9lcyBjb25zdGFudGx5LiBUaGF0IGlzbid0IHJlbW90ZWx5IGEg cGVyZm9ybWFuY2UgY29uY2Vybi4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KQnVnICMxOTA2MjogSW50cm9kdWNlIGBGaWJlciNsb2NhbHNgIGZvciBzaGFyZWQgaW5o ZXJpdGFibGUgc3RhdGUuCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xOTA2MiNj aGFuZ2UtOTk2OTcKCiogQXV0aG9yOiBpb3F1YXRpeCAoU2FtdWVsIFdpbGxpYW1zKQoqIFN0YXR1 czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKKiBBc3NpZ25lZTogaW9xdWF0aXggKFNhbXVlbCBX aWxsaWFtcykKKiBCYWNrcG9ydDogMi43OiBVTktOT1dOLCAzLjA6IFVOS05PV04sIDMuMTogVU5L Tk9XTgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkFmdGVyIGV4cGxv cmluZyA8aHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE5MDU4PiwgSSBmZWx0IHVu Y29tZm9ydGFibGUgYWJvdXQgdGhlIHBlcmZvcm1hbmNlIG9mIGNvcHlpbmcgbG90cyBvZiBpbmhl cml0YWJsZSBhdHRyaWJ1dGVzLiBQbGVhc2UgcmV2aWV3IHRoYXQgaXNzdWUgZm9yIHRoZSBiYWNr Z3JvdW5kIGFuZCBzdW1tYXJ5IG9mIHRoZSBwcm9ibGVtLgoKIyMgUHJvcG9zYWwKCkludHJvZHVj ZSBgRmliZXIjbG9jYWxzYCB3aGljaCBpcyBhIGhhc2ggdGFibGUgb2YgbG9jYWwgYXR0cmlidXRl cyB3aGljaCBhcmUgaW5oZXJpdGVkIGJ5IGNoaWxkIGZpYmVycy4KCmBgYHJ1YnkKRmliZXIuY3Vy cmVudC5sb2NhbHNbOnhdID0gMTAKCkZpYmVyLm5ldyBkbwogIHBwIEZpYmVyLmN1cnJlbnQubG9j YWxzWzp4XSAjID0+IDEwCmVuZApgYGAKCkl0J3MgcG9zc2libGUgdG8gcmVzZXQgYEZpYmVyLmN1 cnJlbnQubG9jYWxzYCwgZS5nLgoKYGBgcnVieQpkZWYgYWNjZXB0X2Nvbm5lY3Rpb24ocGVlcikK ICBGaWJlci5uZXcobG9jYWxzOiBuaWwpIGRvICMgVGhpcyBjYXVzZXMgYSBuZXcgaGFzaCB0YWJs ZSB0byBiZSBhbGxvY2F0ZWQuCiAgICAjIEdlbmVyYXRlIGEgbmV3IHJlcXVlc3QgaWQgZm9yIGFs bCBmaWJlcnMgbmVzdGVkIGluIHRoaXMgb25lOgogICAgRmliZXJbOnJlcXVlc3RfaWRdID0gU2Vj dXJlUmFuZG9tLmhleCgzMikKICAgIEBhcHAuY2FsbChlbnYpCiAgZW5kLnJlc3VtZQplbmQKYGBg CgpBIGhpZ2ggbGV2ZWwgb3ZlcnZpZXcgb2YgdGhlIHByb3Bvc2VkIGNoYW5nZXM6CgpgYGBydWJ5 CmNsYXNzIEZpYmVyCiAgZGVmIGluaXRpYWxpemUoLi4uLCBsb2NhbHM6IEZpYmVyLmN1cnJlbnQu bG9jYWxzKQogICAgQGxvY2FscyA9IGxvY2FscyB8fCBIYXNoLm5ldwogIGVuZAoKICBhdHRyX2Fj Y2Vzc29yIDpsb2NhbHMKCiAgZGVmIHNlbGYuW10ga2V5CiAgICBzZWxmLmN1cnJlbnQubG9jYWxz W2tleV0KICBlbmQKCiAgZGVmIHNlbGYuW109IGtleSwgdmFsdWUKICAgIHNlbGYuY3VycmVudC5s b2NhbHNba2V5XSA9IHZhbHVlCiAgZW5kCmVuZApgYGAKClNlZSB0aGUgcHVsbCByZXF1ZXN0IDxo dHRwczovL2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvNjU2Nj4gZm9yIHRoZSBmdWxsIHByb3Bv c2VkIGltcGxlbWVudGF0aW9uLgoKIyMgRXhwZWN0ZWQgVXNhZ2UKCkN1cnJlbnRseSwgYSBsb3Qg b2YgbGlicmFyaWVzIHVzZSBgVGhyZWFkLmN1cnJlbnRbOnhdYCB3aGljaCBpcyB1bmV4cGVjdGVk bHkgImZpYmVyIGxvY2FsIi4gQSBjb21tb24gYnVnIHNob3dzIHVwIHdoZW4gbGF6eSBlbnVtZXJh dG9ycyBhcmUgdXNlZCwgYmVjYXVzZSBpdCBtYXkgY3JlYXRlIGFuIGludGVybmFsIGZpYmVyLiBC ZWNhdXNlIGBsb2NhbHNgIGFyZSBpbmhlcml0ZWQsIGNvZGUgd2hpY2ggdXNlcyBgRmliZXJbOnhd YCB3aWxsIG5vdCBzdWZmZXIgZnJvbSB0aGlzIHByb2JsZW0uCgpBbnkgcHJvZ3JhbSB0aGF0IHVz ZXMgdHJ1ZSB0aHJlYWQgbG9jYWxzIGZvciBwZXItcmVxdWVzdCBzdGF0ZSwgY2FuIGFkb3B0IHRo ZSBwcm9wb3NlZCBgRmliZXIjbG9jYWxzYCBhbmQgZ2V0IHNpbWlsYXIgYmVoYXZpb3VyLCB3aXRo b3V0IGJyZWFraW5nIG9uIHBlci1maWJlciBzZXJ2ZXJzIGxpa2UgRmFsY29uLCBiZWNhdXNlIEZh bGNvbiBjYW4gInJlc2V0IiBgRmliZXIuY3VycmVudC5sb2NhbHNgIGZvciBlYWNoIHJlcXVlc3Qg ZmliZXIsIHdoaWxlIHNlcnZlcnMgbGlrZSBQdW1hIHdvbid0IGhhdmUgdG8gZG8gdGhhdCBhbmQg d2lsbCByZXRhaW4gdGhyZWFkLWxvY2FsIGJlaGF2aW91ci4KCkxpYnJhcmllcyBsaWtlIEFjdGl2 ZVJlY29yZCBjYW4gYWRvcHQgYEZpYmVyI2xvY2Fsc2AgdG8gYXZvaWQgdGhlIG5lZWQgZm9yIHVz ZXJzIHRvIG9wdCBpbnRvIGRpZmZlcmVudCAiSXNvbGF0ZWRFeGVjdXRpb25TdGF0ZSIgbW9kZWxz LCBzaW5jZSBpdCBjYW4gYmUgdHJhbnNwYXJlbnRseSBoYW5kbGVkIGJ5IHRoZSB3ZWIgc2VydmVy IChzZWUgPGh0dHBzOi8vZ2l0aHViLmNvbS9yYWlscy9yYWlscy9wdWxsLzQzNTk2PiBmb3IgbW9y ZSBkZXRhaWxzKS4KCldlIGhvcGUgYnkgaW50cm9kdWNpbmcgYEZpYmVyI2xvY2Fsc2AsIHdlIGNh biBhdm9pZCBhbGwgdGhlIGNvbmZ1c2lvbiBhbmQgYnVncyBvZiB0aGUgcGFzdCBkZXNpZ25zLgoK CgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpy dWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRw Oi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+ Cg==