Actions
Bug #21341
open`Namespace is not a module (TypeError)` without enabling the namespace
Bug #21341: `Namespace is not a module (TypeError)` without enabling the namespace
Status:
Open
Assignee:
-
Target version:
-
ruby -v:
ruby 3.5.0dev (2025-05-15T08:25:56Z master 427ede2dde) +PRISM [x86_64-linux]
Tags:
Description
Ruby on Rails test case has the module Namespace.
https://github.com/rails/rails/blob/main/activemodel/test/validators/namespace/email_validator.rb#L5
module Namespace class EmailValidator < ::EmailValidator end end This code fails against Ruby 3.5.0dev without enabling the namespace feature.
Steps to reproduce¶
$ ruby -ve 'module Namespace; end' Expected behavior¶
It should run without errors.
Actual behavior¶
It raises the TypeError.
$ ruby -ve 'module Namespace; end' ruby 3.5.0dev (2025-05-15T08:25:56Z master 427ede2dde) +PRISM [x86_64-linux] -e:1:in '<main>': Namespace is not a module (TypeError) ruby:0: previous definition of Namespace was here Raising this TypeError with RUBY_NAMESPACE=1 looks expected to me.
$ RUBY_NAMESPACE=1 ruby -ve 'module Namespace; end' ruby 3.5.0dev (2025-05-15T08:25:56Z master 427ede2dde) +PRISM [x86_64-linux] ruby: warning: Namespace is experimental, and the behavior may change in the future! See doc/namespace.md for known issues, etc. -e:1:in '<main>': Namespace is not a module (TypeError) ruby:0: previous definition of Namespace was here Actions