From: "mame (Yusuke Endoh) via ruby-core" Date: 2025-03-13T11:53:57+00:00 Subject: [ruby-core:121334] [Ruby master Misc#21154] Document or change Module#autoload? Issue #21154 has been updated by mame (Yusuke Endoh). Status changed from Closed to Assigned Assignee set to mame (Yusuke Endoh) This was discussed at the dev meeting. It is decided to add a sentence to documents of `Kernel#autoload` and `Module#autoload` that prohibits registering a file being loaded. I have created a PR. https://github.com/ruby/ruby/pull/12926 It was also discussed to determine this condition at runtime and raise a warning or exception. However, the overhead of resolving file path when autoload is called may be a problem for programs that set a large number of autoloads, so it is not decided. ---------------------------------------- Misc #21154: Document or change Module#autoload? https://bugs.ruby-lang.org/issues/21154#change-112304 * Author: fxn (Xavier Noria) * Status: Assigned * Assignee: mame (Yusuke Endoh) ---------------------------------------- The documentation of `Module#autoload?` says > Returns filename to be loaded if name is registered as autoload in the namespace of mod or one of its ancestors. Cool, but in the following snippet ```ruby autoload :Foo, 'foo' autoload?(:Foo) ``` the second line could evaluate to `nil`, and this does not seem to agree. I just registered an autoload, therefore (according to the documentation) I should get "foo" back in line 2. I'd like to ask for clarification from the Ruby team: 1. Is the documentation complete? Should that second line always return "foo"? 2. If the answer is no, which is the logic missing in the docs? Thank you! -- 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/