ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:122580] [Ruby Bug#21449] Set#divide is order dependent and not working correctly
@ 2025-06-23 13:15 tompng (tomoya ishida) via ruby-core
  2025-06-23 13:23 ` [ruby-core:122581] " tompng (tomoya ishida) via ruby-core
  0 siblings, 1 reply; 2+ messages in thread
From: tompng (tomoya ishida) via ruby-core @ 2025-06-23 13:15 UTC (permalink / raw)
  To: ruby-core; +Cc: tompng (tomoya ishida)

Issue #21449 has been reported by tompng (tomoya ishida).

----------------------------------------
Bug #21449: Set#divide is order dependent and not working correctly
https://bugs.ruby-lang.org/issues/21449

* Author: tompng (tomoya ishida)
* Status: Open
* ruby -v: ruby 3.5.0dev (2025-06-23T11:03:48Z master af6b98f7a2) +YJIT +MN +PRISM [arm64-darwin22]
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
~~~ruby
Set[0,1,2,3].divide{(_1 - _2).abs == 1}
#=> #<Set: {#<Set: {0, 1, 2, 3}>}>

Set[0,2,3,1].divide{(_1 - _2).abs == 1}
#=> #<Set: {#<Set: {0, 1, 2, 3}>}> (ruby 3.4)
#=> #<Set: {#<Set: {0, 1}>, #<Set: {2, 3, 1}>}> (ruby 3.5.0dev)
~~~

Result of `Set#divide` wrongly depends on set order.
~~~ruby
Set.new(1000.times.to_a.shuffle).divide{(_1 - _2).abs == 1}.size
#=> 1 (ruby 3.4)
#=> 250±20 (ruby 3.5.0dev)
~~~




-- 
https://bugs.ruby-lang.org/
______________________________________________
 ruby-core mailing list -- ruby-core@ml.ruby-lang.org
 To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
 ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [ruby-core:122581] [Ruby Bug#21449] Set#divide is order dependent and not working correctly
  2025-06-23 13:15 [ruby-core:122580] [Ruby Bug#21449] Set#divide is order dependent and not working correctly tompng (tomoya ishida) via ruby-core
@ 2025-06-23 13:23 ` tompng (tomoya ishida) via ruby-core
  0 siblings, 0 replies; 2+ messages in thread
From: tompng (tomoya ishida) via ruby-core @ 2025-06-23 13:23 UTC (permalink / raw)
  To: ruby-core; +Cc: tompng (tomoya ishida)

Issue #21449 has been updated by tompng (tomoya ishida).


pull request https://github.com/ruby/ruby/pull/13680

----------------------------------------
Bug #21449: Set#divide is order dependent and not working correctly
https://bugs.ruby-lang.org/issues/21449#change-113814

* Author: tompng (tomoya ishida)
* Status: Open
* ruby -v: ruby 3.5.0dev (2025-06-23T11:03:48Z master af6b98f7a2) +YJIT +MN +PRISM [arm64-darwin22]
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
~~~ruby
Set[0,1,2,3].divide{(_1 - _2).abs == 1}
#=> #<Set: {#<Set: {0, 1, 2, 3}>}>

Set[0,2,3,1].divide{(_1 - _2).abs == 1}
#=> #<Set: {#<Set: {0, 1, 2, 3}>}> (ruby 3.4)
#=> #<Set: {#<Set: {0, 1}>, #<Set: {2, 3, 1}>}> (ruby 3.5.0dev)
~~~

Result of `Set#divide` wrongly depends on set order.
~~~ruby
Set.new(1000.times.to_a.shuffle).divide{(_1 - _2).abs == 1}.size
#=> 1 (ruby 3.4)
#=> 250±20 (ruby 3.5.0dev)
~~~




-- 
https://bugs.ruby-lang.org/
______________________________________________
 ruby-core mailing list -- ruby-core@ml.ruby-lang.org
 To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
 ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-06-23 13:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-23 13:15 [ruby-core:122580] [Ruby Bug#21449] Set#divide is order dependent and not working correctly tompng (tomoya ishida) via ruby-core
2025-06-23 13:23 ` [ruby-core:122581] " tompng (tomoya ishida) via ruby-core

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).