ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:119751] [Ruby master Bug#20871] Including methods in Enumerable doesn't make them available in Array
@ 2024-11-05 20:09 sanderd17 (Sander Deryckere) via ruby-core
  2024-11-05 20:25 ` [ruby-core:119752] " sanderd17 (Sander Deryckere) via ruby-core
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: sanderd17 (Sander Deryckere) via ruby-core @ 2024-11-05 20:09 UTC (permalink / raw)
  To: ruby-core; +Cc: sanderd17 (Sander Deryckere)

Issue #20871 has been reported by sanderd17 (Sander Deryckere).

----------------------------------------
Bug #20871: Including methods in Enumerable doesn't make them available in Array
https://bugs.ruby-lang.org/issues/20871

* Author: sanderd17 (Sander Deryckere)
* Status: Open
* ruby -v: 3.3.6
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN
----------------------------------------
Today, our CI pipeline started failing after the automatic update from v3.3.5 to v3.3.6.

After researching, it turned out that our core extensions to the `Array` class weren't loaded anymore.

The core-extensions code looks like this:

```ruby

module CoreExt
  module Enumerable
    def average
      sum(&:to_f) / count if any?
    end

    # def ...
  end
end

Enumerable.include CoreExt::Enumerable
```

After some debugging, it turned out that the `average` method was included in the `instance_methods` of `Enumerable`, but not in the `instance_methods` of `Array`.

Explicitly adding `Array.include CoreExt::Enumerable` fixes CI for our case.


The very strange thing is that it only happens on a release branch we are still maintaining. It doesn't happen on our main development branch (which also updated to v3.3.6 today). I have been unable to find the difference between both branches so far (they diverged a couple of months ago, but the base system is still regularly updated on both, and pretty similar).

After some digging around, I assume this commit is related to our issue: https://github.com/ruby/ruby/commit/edeb0319f7a95dfe3f9b895bcf32371dd8514726



-- 
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] 13+ messages in thread

end of thread, other threads:[~2025-01-15  1:49 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-11-05 20:09 [ruby-core:119751] [Ruby master Bug#20871] Including methods in Enumerable doesn't make them available in Array sanderd17 (Sander Deryckere) via ruby-core
2024-11-05 20:25 ` [ruby-core:119752] " sanderd17 (Sander Deryckere) via ruby-core
2024-11-18  5:02 ` [ruby-core:119954] " jeremyevans0 (Jeremy Evans) via ruby-core
2024-11-18  7:24 ` [ruby-core:119955] " rolf (Rolf T) via ruby-core
2024-11-18  9:12 ` [ruby-core:119956] " rolf (Rolf T) via ruby-core
2024-11-19  8:43 ` [ruby-core:119964] " tdeo (Thierry Deo) via ruby-core
2024-11-19 14:37 ` [ruby-core:119968] " sanderd17 (Sander Deryckere) via ruby-core
2024-11-19 15:36 ` [ruby-core:119969] " jeremyevans0 (Jeremy Evans) via ruby-core
2024-11-19 20:35 ` [ruby-core:119970] " jeremyevans0 (Jeremy Evans) via ruby-core
2024-11-20  1:12 ` [ruby-core:119971] " jeremyevans0 (Jeremy Evans) via ruby-core
2024-11-20 18:23 ` [ruby-core:119976] " sanderd17 (Sander Deryckere) via ruby-core
2024-11-30  6:11 ` [ruby-core:120069] " nagachika (Tomoyuki Chikanaga) via ruby-core
2025-01-15  1:49 ` [ruby-core:120682] " k0kubun (Takashi Kokubun) 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).