Issue #7704 has been updated by duerst (Martin Dürst).


I can only second Yui and Matthew. Directly checking is possible because Ruby is a dynamic language, it avoids management overhead, and tests on the actual feature, not some intention that may be out of sync with actual facts. There are many organizations that have tried to do this, and most if not all have failed; I don't see any reason why we can't learn from them and use our time for more productive work on other stuff.
----------------------------------------
Feature #7704: Add a list of enabled (experimental) language features.
https://bugs.ruby-lang.org/issues/7704#change-36757

Author: mpapis (Michal Papis)
Status: Open
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: next minor


With multiple Ruby implementations and "experimental" features like "refinements" it would be nice to have an array or hash including list of enabled language features so developers could check it instead of auto-discovering code with some hacks.

Additionally a new keyword like `require_features :refinements, ...` could be introduced to allow easy validation via either exception or return status.


-- 
http://bugs.ruby-lang.org/