Issue #12863 has been reported by Prathamesh Sonpatki.

----------------------------------------
Misc #12863: Hash#compact! behavior different from the Active Support Hash#compact!
https://bugs.ruby-lang.org/issues/12863

* Author: Prathamesh Sonpatki
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Hash#compact and Hash#compact! were added in https://bugs.ruby-lang.org/issues/11818 but the Hash#compact! is different from Active Support. Please check following snippet:

~~~ ruby
# Active Support
>> hash = { a: true, b: false, c: nil }
=> {:a=>true, :b=>false, :c=>nil}
>> hash.compact!
=> {:a=>true, :b=>false}
>> hash.compact!
=> nil

# Ruby dev

>> hash = { a: true, b: false, c: nil }
=> {:a=>true, :b=>false, :c=>nil}
>> hash.compact!
=> {:a=>true, :b=>false}
>> hash.compact!
=> {:a=>true, :b=>false}
>> 
~~~

@nobu Was it intentional to not return nil in case of compact! when none of the values are nil?





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

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>