[#105450] [Ruby master Feature#18228] Add a `timeout` option to `IO.copy_stream` — "byroot (Jean Boussier)" <noreply@...>
SXNzdWUgIzE4MjI4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGJ5cm9vdCAoSmVhbiBCb3Vzc2llciku
11 messages
2021/09/27
[ruby-core:105478] [Ruby master Bug#18194] No easy way to format exception messages per thread/fiber scheduler context.If you like, I can ask my contacts at several different APM companies to give their opinion too.
From:
"ioquatix (Samuel Williams)" <noreply@...>
Date:
2021-09-29 00:42:29 UTC
List:
ruby-core #105478
SXNzdWUgIzE4MTk0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFt cykuCgpTdWJqZWN0IGNoYW5nZWQgZnJvbSBObyBlYXN5IHdheSB0byBmb3JtYXQgZXhjZXB0aW9u IG1lc3NhZ2VzIHBlciB0aHJlYWQvZmliZXIgc2NoZWR1bGVyIGNvbnRleHQuIHRvIE5vIGVhc3kg d2F5IHRvIGZvcm1hdCBleGNlcHRpb24gbWVzc2FnZXMgcGVyIHRocmVhZC9maWJlciBzY2hlZHVs ZXIgY29udGV4dC5JZiB5b3UgbGlrZSwgSSBjYW4gYXNrIG15IGNvbnRhY3RzIGF0IHNldmVyYWwg ZGlmZmVyZW50IEFQTSBjb21wYW5pZXMgdG8gZ2l2ZSB0aGVpciBvcGluaW9uIHRvby4KCllvdSB0 aGluayBpdCdzIGFuIGFkdmFudGFnZSB0byBjaGFuZ2UgdGhlIGRlZmF1bHQgZXhjZXB0aW9uIG1l c3NhZ2UgdG8gaW5jbHVkZSBhZGRpdGlvbmFsIGZvcm1hdHRlZCBkZXRhaWxzLiBCdXQgSSdtIG5v dCBzbyBzdXJlIGFib3V0IHRoYXQuIEFub3RoZXIgd2F5IG9mIGxvb2tpbmcgYXQgaXQgaXMgYmVj YXVzZSB0aGVyZSBhcmUgb3RoZXIgQVBNcyBjb25zdW1pbmcgdGhpcyBpbmZvcm1hdGlvbiwgc3Vj aCBhIGNoYW5nZSBtYXkgYmUgdW5leHBlY3RlZC9pbmNvbXBhdGlibGUuCgpMZXQncyB0YWtlIEhv bmV5YmFkZ2VyIGFzIGFuIGV4YW1wbGUuIFRoZXkgZGVkdXBsaWNhdGUgZXJyb3JzIGJ5IGNsYXNz IGFuZCBtZXNzYWdlLiBJIGRvbid0IGtub3cgdGhlaXIgZXhhY3QgYWxnb3JpdGhtLCBidXQgaW5j bHVkaW5nIGV4dHJhIGluZm9ybWF0aW9uIGluIHRoZSBgRXhjZXB0aW9uI21lc3NhZ2VgIG1heSBj YXVzZSB0aGVtIHRvIGluY29ycmVjdGx5IGRlZHVwbGljYXRlIGVycm9ycy4gQ2hhbmdlcyBpbiB0 aGUgbG9hZGVkIGZpbGVzIG1pZ2h0IGNoYW5nZSBgZGlkX3lvdV9tZWFuYCBvdXRwdXQuCgpBbm90 aGVyIGV4YW1wbGUgSSBjYW4gdGhpbmsgb2Ygd291bGQgYmUgdGhlIHBlcmZvcm1hbmNlIGltcGFj dC4gQnkgZGVmYXVsdCwgYGRpZF95b3VfbWVhbmAgaW1wbGVtZW50YXRpb24gb3Igc291cmNlIGNv ZGUgaGlnaGxpZ2h0aW5nIG1pZ2h0IGJlIGNvbXB1dGF0aW9uYWxseSBleHBlbnNpdmUgKGxvYWRp bmcgc291cmNlIGNvZGUsIGV0YykuIEluIGEgcHJvZHVjdGlvbiBlbnZpcm9ubWVudCB0aGlzIG1p Z2h0IG5vdCBiZSBkZXNpcmFibGUsIG9yIG1heSBub3QgZXZlbiBiZSB1c2VmdWwuCgpJIHRoaW5r IHdoYXQncyBtb3JlIGltcG9ydGFudCBpcyBhbiBpbnRlcmZhY2UgdGhhdCBtYWtlcyBzZW5zZS4g UnVieSBoYXMgbm8gbWVjaGFuaXNtIGZvciBmb3JtYXR0aW5nIG9yIGNhdGNoaW5nIHRvcCBsZXZl bCBleGNlcHRpb25zLCBidXQgdGhpcyBJUyBhIGNyaXRpY2FsIGZlYXR1cmUgZm9yIEFQTXMsIG5v dCBvbmx5IEFQTXMgYnV0IGEgbG90IG9mIGFwcGxpY2F0aW9ucyB3b3VsZCBsaWtlIHRvIHByb3Zp ZGUgYmV0dGVyIGZvcm1hdHRpbmcgZm9yIGV4Y2VwdGlvbnMgd2hpY2ggYnViYmxlIGFsbCB0aGUg d2F5IHVwLCBlaXRoZXIgaW4gYSB0aHJlYWQgb3IgZ2xvYmFsbHkuCgpJIHRoaW5rIGhhdmluZyBh IHRvcCBsZXZlbCBob29rIGZvciBleGNlcHRpb25zIG1ha2VzIHRvdGFsIHNlbnNlLgoKZS5nLgoK YGBgCkV4Y2VwdGlvbi51bmhhbmRsZWQgZG8gfGV4Y2VwdGlvbnwKICAkc3RkZXJyLnB1dHMgZXhj ZXB0aW9uLmZvcm1hdHRlZF9tZXNzYWdlCmVuZAoKIyBvcgoKRXhjZXB0aW9uLnVuaGFuZGxlZCBk byB8ZXhjZXB0aW9ufAogICRzdGRvdXQucHV0cyBUZXJtaW5hbC5mb3JtYXQoZXhjZXB0aW9uKQpl bmQKYGBgCgpUaHJlYWRzIHNob3VsZCBkZWZlciB0byB0aGUgbWFpbiB0aHJlYWQgaWYgb3RoZXJ3 aXNlIHVuc2V0LgoKV2l0aCB0aGlzIGluIHBsYWNlLCBhbnkga2luZCBvZiBmb3JtYXR0aW5nIGJl Y29tZXMgcmVhbGx5IHRyaXZpYWwgZXNwZWNpYWxseSBpZiB3ZSBkZWZpbmUgaG9va3MgZm9yIGl0 LiBBUE1zIGNhbiBlaXRoZXIgb3B0IGluLCBvciB3ZSBjYW4gZXZlbiBtYWtlIGl0IHRoZSBkZWZh dWx0LCBlLmcuCgpgYGAKRXhjZXB0aW9uLnVuaGFuZGxlZCBkbyB8ZXhjZXB0aW9ufAogICRzdGRv dXQucHV0cyBleGNlcHRpb24uZnVsbF9tZXNzYWdlKGhpZ2hsaWdodDogJHN0ZG91dC50dHk/KQpl bmQKYGBgCgpGb3IgQVBNcywgdGhleSBjYW4gb3B0IGludG8gdGhlIHNhbWUgZm9ybWF0dGluZyBp bnRlcmZhY2UgaWYgdGhleSBzbyBkZXNpcmUuIEkgdGhpbmsgdGhlIGFzc3VtcHRpb24gaXMgYGhp Z2hsaWdodDogdHJ1ZWAgZ2l2ZXMgeHRlcm0yNTYgY29udHJvbCBzZXF1ZW5jZXMsIHNvIGV2ZW4g d2ViIGFwcGxpY2F0aW9ucyBjYW4gY29uc3VtZSB0aGlzIGFuZCBjb252ZXJ0IHRvIEhUTUwgcmVs YXRpdmVseSBlYXNpbHkuCgpHZW1zIGxpa2UgYGRpZF95b3VfbWVhbmAgb3IgYGVycm9yX2hpZ2hs aWdodGVyYCBzaG91bGQgZXh0ZW5kIGBmdWxsX21lc3NhZ2VgIG9yIHdlIHNob3VsZCBoYXZlIHNv bWUgaW50ZXJuYWwgaW50ZXJmYWNlIHdpdGggZXh0ZW5zaW9uIHBvaW50cywgZm9yIGV4YW1wbGU6 CgpgYGAKY2xhc3MgRXhjZXB0aW9uCiAgIyBUaGUgc3VwcGxpZWQgbWVzc2FnZS4KICBkZWYgbWVz c2FnZQogIGVuZAoKICBkZWYgZm9ybWF0X3N1bW1hcnkob3V0cHV0KQogICAgb3V0cHV0LnByaW50 KDp0aXRsZSwgc2VsZi5jbGFzcy5uYW1lLCAiOiIpCiAgICBvdXRwdXQucHJpbnQoOm1lc3NhZ2Us IHNlbGYubWVzc2FnZSkKICBlbmQKCiAgZGVmIGZvcm1hdF9iYWNrdHJhY2Uob3V0cHV0KQogICAg c2VsZi5iYWNrdHJhY2UuZWFjaCBkbyB8bGluZXwKICAgICAgb3V0cHV0LnByaW50KDpiYWNrdHJh Y2UsIGxpbmUpCiAgICBlbmQKICBlbmQKCiAgZGVmIGZvcm1hdChvdXRwdXQpCiAgICBmb3JtYXRf c3VtbWFyeShvdXRwdXQpCiAgICBmb3JtYXRfYmFja3RyYWNlKG91dHB1dCkKICBlbmQKZW5kCmBg YAoKTXkgcHJlZmVyZW5jZSBpcyB0byBpbmplY3QgYW4gb3V0cHV0IHdyYXBwZXIgd2hpY2ggY2Fu IGhhbmRsZSBzdHlsaW5nIGluIGEgc2ltcGxlIGJ1dCBnZW5lcmljIHdheS4gSXQncyBiZXR0ZXIg dGhhbiB0cnlpbmcgdG8gdXNlIGNvbnRyb2wgc2VxdWVuY2VzIGJlY2F1c2UgaXQgbmF0dXJhbGx5 IHN1cHBvcnRzIGFueSBraW5kIG9mIG91dHB1dCBmb3JtYXQgKHRleHQsIGxvZywganNvbiwgaHRt bCwgZXRjKS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQnVnICMx ODE5NDogTm8gZWFzeSB3YXkgdG8gZm9ybWF0IGV4Y2VwdGlvbiBtZXNzYWdlcyBwZXIgdGhyZWFk L2ZpYmVyIHNjaGVkdWxlciBjb250ZXh0LklmIHlvdSBsaWtlLCBJIGNhbiBhc2sgbXkgY29udGFj dHMgYXQgc2V2ZXJhbCBkaWZmZXJlbnQgQVBNIGNvbXBhbmllcyB0byBnaXZlIHRoZWlyIG9waW5p b24gdG9vLgpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTgxOTQjY2hhbmdlLTkz OTI3CgoqIEF1dGhvcjogaW9xdWF0aXggKFNhbXVlbCBXaWxsaWFtcykKKiBTdGF0dXM6IE9wZW4K KiBQcmlvcml0eTogTm9ybWFsCiogQXNzaWduZWU6IG1hbWUgKFl1c3VrZSBFbmRvaCkKKiBCYWNr cG9ydDogMi42OiBVTktOT1dOLCAyLjc6IFVOS05PV04sIDMuMDogVU5LTk9XTgotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkluIHRoZSBuZXcgZXJyb3IgaGlnaGxpZ2h0 aW5nIGdlbSwgZm9ybWF0dGluZyBleGNlcHRpb24gbWVzc2FnZXMgYXBwZWFycyB0byBiZSBwZXIt cHJvY2VzcyB3aGljaCBpcyBpbnN1ZmZpY2llbnRseSBudWFuY2VkIGZvciBleGlzdGluZyB1c2Ug Y2FzZXMuCgpBcyBpbjoKCmBgYHJ1YnkKY2xhc3MgVGVybWluYWxDb2xvckZvcm1hdHRlcgogIGRl ZiBtZXNzYWdlX2ZvcihzcG90KQogICAgIyBIb3cgZG8gd2Uga25vdyB0aGUgb3V0cHV0IGZvcm1h dCBoZXJlPyBNYXliZSBpdCdzIGJlaW5nIHdyaXR0ZW4gdG8gYSBsb2cgZmlsZT8KICAgICIuLi4i CiAgZW5kCmVuZAoKRXJyb3JIaWdobGlnaHQuZm9ybWF0dGVyID0gVGVybWluYWxDb2xvckZvcm1h dHRlci5uZXcKYGBgCgpCdXQgd2Ugd29uJ3Qga25vdyB1bnRpbCB0aGUgdGltZSB3ZSBhY3R1YWxs eSB3cml0ZSB0aGUgZXJyb3IgbWVzc2FnZSB3aGV0aGVyIHRlcm1pbmFsIGNvZGVzIGFyZSBzdWl0 YWJsZSBvciBhdmFpbGFibGUuIE9yIGFuIGVycm9yIG1lc3NhZ2UgbWlnaHQgYmUgZm9ybWF0dGVk IGZvciBib3RoIHRoZSB0ZXJtaW5hbCBhbmQgYSBsb2cgZmlsZSwgd2hpY2ggaGF2ZSBkaWZmZXJl bnQgZm9ybWF0dGluZyByZXF1aXJlbWVudHMuIFRoZXJlIGFyZSBtYW55IGNvbnN1bWVycyBvZiBl cnJvciBtZXNzYWdlcyBhbiBzb21lIG9mIHRoZW0gcHJvZHVjZSB0ZXh0LCBvciBIVE1MLCBvciBK U09OLCBldGMuCgpCZWNhdXNlIG9mIHRoaXMgZGVzaWduIHdlIGFyZSBlZmZlY3RpdmVseSBmb3Jj aW5nIGV2ZXJ5b25lIHRvIHBhcnNlIHRoZSBkZWZhdWx0IHRleHQgb3V0cHV0IGlmIHRoZXkgd2Fu dCB0byBkbyBhbnkga2luZCBvZiBmb3JtYXR0aW5nLCB3aGljaCB3aWxsIG9zc2lmeSB0aGUgZm9y bWF0IGFuZCBtYWtlIGl0IGltcG9zc2libGUgaW4gcHJhY3RpY2UgZm9yIGFueW9uZSB0byB1c2Ug YW55dGhpbmcgYnV0IHRoZSBkZWZhdWx0IGBFcnJvckhpZ2hsaWdodC5mb3JtYXRgLiBGb3Igd2hh dCBpcyBvdGhlcndpc2UgYSByZWFsbHkgZmFudGFzdGljIGlkZWEsIHRoaXMgaW1wbGVtZW50YXRp b24gY29uY2VybnMgbWUgZ3JlYXRseS4KCkkgd291bGQgbGlrZSB1cyB0byBjb25zaWRlciBpbnRy b2R1Y2luZyBzdWZmaWNpZW50IG1ldGFkYXRhIG9uIHRoZSBleGNlcHRpb24gb2JqZWN0IHNvIHRo YXQgY29tcGxldGUgZm9ybWF0dGluZyBjYW4gYmUgaW1wbGVtZW50ZWQgYnkgYW4gb3V0cHV0IGxh eWVyIChlLmcuIGxvZ2dlciwgdGVybWluYWwgd3JhcHBlciwgZXRjKS4gVGhpcyBhbGxvd3MgdGhl IG91dHB1dCBsYXllciB0byBpbnRlbGxpZ2VudGx5IGZvcm1hdCB0aGUgb3V0cHV0IGluIGEgc3Vp dGFibGUgd2F5LCBvciBjYXB0dXJlIHRoZSBtZXRhZGF0YSB0byBhbGxvdyBmb3IgcHJvY2Vzc2lu ZyBlbHNld2hlcmUuCgpJbiBhZGRpdGlvbiwgdG8gc2ltcGxpZnkgdGhpcyBnZW5lcmFsIHVzYWdl LCB3ZSBtaWdodCBsaWtlIHRvIGludHJvZHVjZSBgRXhjZXB0aW9uI2Zvcm1hdHRlZF9tZXNzYWdl YC4KCkluIG9yZGVyIHRvIGhhbmRsZSBkZWZhdWx0IGZvcm1hdHRpbmcgcmVxdWlyZW1lbnRzLCB3 ZSBuZWVkIHRvIHByb3ZpZGUgYSBob29rIGZvciBmb3JtYXR0aW5nIHVuY2F1Z2h0IGV4Y2VwdGlv bnMuIFRoaXMgd291bGQgYmUgZXhjZWxsZW50IGZvciBtYW55IGRpZmZlcmVudCB1c2UgY2FzZXMg KGUuZy4gSG9uZXlCYWRnZXIgdHlwZSBzeXN0ZW1zKSwgYW5kIEkgc3VnZ2VzdCB3ZSB0aGluayBh Ym91dCB0aGUgYmVzdCBpbnRlcmZhY2UuIFByb2JhYmx5IGEgdGhyZWFkLWxvY2FsIHdpdGggc29t ZSBkZWZhdWx0IGdsb2JhbCBpbXBsZW1lbnRhdGlvbiBtYWtlcyBzZW5zZS4uLiBtYXliZSBldmVu IHNvbWV0aGluZyBzaW1pbGFyIHRvIGBhdF9leGl0IHsgLi4uICQhIC4uLiB9YC4KCgoKLS0gCmh0 dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3Jl LXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3Rz LnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=