From: "jeremyevans0 (Jeremy Evans)" Date: 2021-10-20T14:44:15+00:00 Subject: [ruby-core:105698] [Ruby master Bug#17146] Queue operations are allowed after it is frozen Issue #17146 has been updated by jeremyevans0 (Jeremy Evans). Eregon (Benoit Daloze) wrote in #note-7: > Why was this closed? Because there was no feedback after the last message from @ko1, and it was decided at the developer meeting last year that there was no benefit to changing the behavior. You are welcome to bring this issue up again at another developer meeting. However, if the same conclusion is reached, I think this issue should be closed again. ---------------------------------------- Bug #17146: Queue operations are allowed after it is frozen https://bugs.ruby-lang.org/issues/17146#change-94197 * Author: Eregon (Benoit Daloze) * Status: Open * Priority: Normal * ruby -v: ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-linux] * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- ``` [1] pry(main)> q = Queue.new => # [2] pry(main)> q.freeze => # [3] pry(main)> q << 1 => # [4] pry(main)> q.pop => 1 [5] pry(main)> q.frozen? => true ``` Found by @ko1 in https://bugs.ruby-lang.org/issues/17100#note-28 I think it's a bug, since those are clear mutations. I guess old Thread::Queue implemented in Ruby did not have this bug. -- https://bugs.ruby-lang.org/ Unsubscribe: