Implement fetch for Thread.current
It's a common idiom to use a fiber-local variable, but return a default value if it hasn't been assigned. Here's an example of Ruby code I would expect to be able to write:
def feature_enabled? Thread.current.fetch(:feature_enabled, true) end
Unfortunately, Thread.current does not implement fetch, like Hash does. So I have to write the more verbose:
def feature_enabled? Thread.current.key?(:feature_enabled) ? Thread.current[:feature_enabled] : true end
Thanks for your consideration!