From: djberg96@... Date: 2015-05-04T02:12:47+00:00 Subject: [ruby-core:69066] [Ruby trunk - Feature #9423] Improve warning semantics Issue #9423 has been updated by Daniel Berger. Any thoughts on structured warnings core team? ---------------------------------------- Feature #9423: Improve warning semantics https://bugs.ruby-lang.org/issues/9423#change-52316 * Author: Atlas Prime * Status: Feedback * Priority: Normal * Assignee: ---------------------------------------- Two suggestions for future version of Ruby that wold make warning levels more intuitive easier to work with. First, rename $VERBOSE to $WARN for these reasons: * `ruby` flags that set $VERBOSE are `-w` and `-W` (warnings levels). * $VERBOSE controls output produced by `warn` method. * $VERBOSE and FileUtils:Verbose are unrelated. * $WARN is shorter ;-) Second, it is confusing that `nil` and `false` mean different levels. Instead of the current `nil` as level 0, `false` as level 1, and `true` as level 2, it would be nice if `nil` and `false` both mean "off", and then go from 0 on up to mean "on" of increasing degree. Just to clarify my meaning (not a use case example): # nil, false mean no warning if $WARN case $WARN when 0 # lesser level of warning when 1 # greater level of warning when 2 # can go higher if needed for rare use case end end These are incompatible changes, but can be phased-in with support both $WARN and $VERBOSE for intermediate period. -- https://bugs.ruby-lang.org/