Project

General

Profile

Actions

Bug #20962

closed

Change in behaviour in 3.4.0rc1 of `Hash#inspect`

Added by aharan (Aidan Haran) about 10 hours ago. Updated about 3 hours ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.4.0rc1 (2024-12-12 master 29caae9991) +PRISM [aarch64-linux]
[ruby-core:120297]

Description

The output from Hash#inspect in v3.4.0rc1 does not match the documentation and is different from v3.3.6.

# ruby -v
ruby 3.4.0rc1 (2024-12-12 master 29caae9991) +PRISM [aarch64-linux]
# irb
irb(main):001> h = {foo: 0, bar: 1, baz: 2}
=> {foo: 0, bar: 1, baz: 2}
irb(main):002> h.inspect
=> "{foo: 0, bar: 1, baz: 2}"
irb(main):003>

The documentation says that the output should be @"{:foo=>0, :bar=>1, :baz=>2}"@ https://github.com/ruby/ruby/blob/707c6420b1ea599c223a17781185c0b6fb0f3518/hash.c#L3492

In Ruby v3.3.6 the output is:

# ruby -v
ruby 3.3.6 (2024-11-05 revision 75015d4c1f) [aarch64-linux]
# irb
irb(main):001> h = {foo: 0, bar: 1, baz: 2}
=> {:foo=>0, :bar=>1, :baz=>2}
irb(main):002> h.inspect
=> "{:foo=>0, :bar=>1, :baz=>2}"

Related issues 1 (0 open1 closed)

Related to Ruby master - Bug #20433: Hash.inspect for some hash returns syntax invalid representationClosedActions
Actions #1

Updated by mame (Yusuke Endoh) about 9 hours ago

  • Related to Bug #20433: Hash.inspect for some hash returns syntax invalid representation added
Actions #3

Updated by tompng (tomoya ishida) about 3 hours ago

  • Status changed from Open to Closed

Applied in changeset git|477c505ac0d4d23a860ffafbb487f7598aa89ca3.


[DOC] Fix output examples containing old Hash#inspect format

The inspect format was intentionally changed as an outcome of
[Bug #20433] [ruby-core:118668], but some documentation update
was missing, as [Bug #20962] pointed out. Update some output
examples that clearly use Hash#inspect.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0