From: "drbrain (Eric Hodel)" Date: 2013-12-03T09:05:30+09:00 Subject: [ruby-core:58809] [ruby-trunk - Bug #9202][Assigned] Array#uniq freezes duplicate strings Issue #9202 has been reported by drbrain (Eric Hodel). ---------------------------------------- Bug #9202: Array#uniq freezes duplicate strings https://bugs.ruby-lang.org/issues/9202 Author: drbrain (Eric Hodel) Status: Assigned Priority: Normal Assignee: charliesome (Charlie Somerville) Category: core Target version: current: 2.1.0 ruby -v: ruby 2.0.0dev (2012-11-29 trunk 37968) [x86_64-darwin12.2.0] Backport: 1.9.3: DONTNEED, 2.0.0: DONTNEED I imagine this is related to the recent frozen string changes. This behavior change in Array#uniq breaks RubyGems: $ cat test.rb p unique: %w[a].uniq.any? { |item| item.frozen? } p duplicate: %w[a a].uniq.any? { |item| item.frozen? } $ ruby -v test.rb ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.4.0] {:unique=>false} {:duplicate=>false} $ make runruby ./miniruby -I../trunk/lib -I. -I.ext/common ../trunk/tool/runruby.rb --extout=.ext -- --disable-gems ../trunk/test.rb {:unique=>false} {:duplicate=>true} -- http://bugs.ruby-lang.org/