From: "ioquatix (Samuel Williams)" Date: 2022-10-15T12:34:58+00:00 Subject: [ruby-core:110311] [Ruby master Feature#19056] Introduce `Fiber.annotation` for attaching messages to fibers. Issue #19056 has been updated by ioquatix (Samuel Williams). File clipboard-202210160132-n7lzp.png added Here is a picture of an interactive debugger (async-debug) which uses similar annotations to present useful information about the state of the system. ![](clipboard-202210160132-n7lzp.png) @eregon proposed that there should be a way to switch it on and off. I don't have a strong opinion about it- I've not run into any performance issues with `Async::Task#annotation`. That being said, we could introduce something like `Fiber.annotate{..}` which is only evaluated if annotations are switched on (e.g. `Fiber.annotations = true/false`). ---------------------------------------- Feature #19056: Introduce `Fiber.annotation` for attaching messages to fibers. https://bugs.ruby-lang.org/issues/19056#change-99602 * Author: ioquatix (Samuel Williams) * Status: Open * Priority: Normal * Assignee: ioquatix (Samuel Williams) ---------------------------------------- It's useful to know what a fiber is doing especially when they have a temporal execution (i.e. sockets connecting vs connected, binding vs accepting, queue popping, etc) Let's introduce `Fiber.annotate` and `Fiber#annotation` for logging a short message attached to Fibers. ```ruby Fiber.annotate "Counting to 10" 10.times{|I| puts I} # Fiber.current.annotation => "Counting to 10" ``` Pull Request: https://github.com/ruby/ruby/pull/6554 ---Files-------------------------------- clipboard-202210160132-n7lzp.png (865 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: