[ruby-core:120808] [Ruby master Bug#21094] Module#set_temporary_name does not affect a name of a nested module

Issue #21094 has been reported by andrykonchin (Andrew Konchin). ---------------------------------------- Bug #21094: Module#set_temporary_name does not affect a name of a nested module https://bugs.ruby-lang.org/issues/21094 * Author: andrykonchin (Andrew Konchin) * Status: Open * ruby -v: 3.4.1 * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- Wondering whether it's intentional and correct behaviour: ```ruby m = Module.new m::N = Module.new p m::N.name # => "#<Module:0x000000010d0a00b0>::N" m.set_temporary_name("foo") p m::N.name # => "#<Module:0x000000010d0a00b0>::N" ``` I would expect that setting `foo` as a temporary name changes `m::N.name` to `foo::N`. -- https://bugs.ruby-lang.org/

Issue #21094 has been updated by eileencodes (Eileen Uchitelle). This seems like a bug to me because if you set the temp name before creating `N` it works as you expected. Opened a PR https://github.com/ruby/ruby/pull/12658 ---------------------------------------- Bug #21094: Module#set_temporary_name does not affect a name of a nested module https://bugs.ruby-lang.org/issues/21094#change-111678 * Author: andrykonchin (Andrew Konchin) * Status: Open * ruby -v: 3.4.1 * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- Wondering whether it's intentional and correct behaviour: ```ruby m = Module.new m::N = Module.new p m::N.name # => "#<Module:0x000000010d0a00b0>::N" m.set_temporary_name("foo") p m::N.name # => "#<Module:0x000000010d0a00b0>::N" ``` I would expect that setting `foo` as a temporary name changes `m::N.name` to `foo::N`. -- https://bugs.ruby-lang.org/

Issue #21094 has been updated by alanwu (Alan Wu). Backport changed from 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: REQUIRED to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: DONE 3.4 backport done at commit:5b3970f68b9108e0976b75b5d67da8c56eaa9db4 ---------------------------------------- Bug #21094: Module#set_temporary_name does not affect a name of a nested module https://bugs.ruby-lang.org/issues/21094#change-112464 * Author: andrykonchin (Andrew Konchin) * Status: Closed * ruby -v: 3.4.1 * Backport: 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: DONE ---------------------------------------- Wondering whether it's intentional and correct behaviour: ```ruby m = Module.new m::N = Module.new p m::N.name # => "#<Module:0x000000010d0a00b0>::N" m.set_temporary_name("foo") p m::N.name # => "#<Module:0x000000010d0a00b0>::N" ``` I would expect that setting `foo` as a temporary name changes `m::N.name` to `foo::N`. -- https://bugs.ruby-lang.org/

Issue #21094 has been updated by nagachika (Tomoyuki Chikanaga). Backport changed from 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: DONE to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONE, 3.4: DONE ruby_3_3 commit:aac5c546cd35ff0aeab120e3724fbb1296892ae3 merged revision(s) commit:f69ad0e810e1fdc18dc12f77bbecfa49999ef3bf. ---------------------------------------- Bug #21094: Module#set_temporary_name does not affect a name of a nested module https://bugs.ruby-lang.org/issues/21094#change-112479 * Author: andrykonchin (Andrew Konchin) * Status: Closed * ruby -v: 3.4.1 * Backport: 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONE, 3.4: DONE ---------------------------------------- Wondering whether it's intentional and correct behaviour: ```ruby m = Module.new m::N = Module.new p m::N.name # => "#<Module:0x000000010d0a00b0>::N" m.set_temporary_name("foo") p m::N.name # => "#<Module:0x000000010d0a00b0>::N" ``` I would expect that setting `foo` as a temporary name changes `m::N.name` to `foo::N`. -- https://bugs.ruby-lang.org/
participants (4)
-
alanwu (Alan Wu)
-
andrykonchin (Andrew Konchin)
-
eileencodes (Eileen Uchitelle)
-
nagachika (Tomoyuki Chikanaga)