ruby/rubygems · error · Gem::Exception
ruby_code case not handled: #{obj.class}
Error message
ruby_code case not handled: #{obj.class} What it means
Error "ruby_code case not handled: #{obj.class}" thrown in ruby/rubygems.
Source
Thrown at lib/rubygems/specification.rb:2267
# object.
def ruby_code(obj)
case obj
when String then obj.dump + ".freeze"
when Array then "[" + obj.map {|x| ruby_code x }.join(", ") + "]"
when Hash then
seg = obj.keys.sort.map {|k| "#{k.to_s.dump} => #{obj[k].to_s.dump}" }
"{ #{seg.join(", ")} }"
when Gem::Version then ruby_code(obj.to_s)
when DateLike then obj.strftime("%Y-%m-%d").dump
when Time then obj.strftime("%Y-%m-%d").dump
when Numeric then obj.inspect
when true, false, nil then obj.inspect
when Gem::Platform then "Gem::Platform.new(#{ruby_code obj.to_a})"
when Gem::Requirement then
list = obj.as_list
"Gem::Requirement.new(#{ruby_code(list.size == 1 ? obj.to_s : list)})"
else raise Gem::Exception, "ruby_code case not handled: #{obj.class}"
end
end
private :ruby_code
##
# List of dependencies that will automatically be activated at runtime.
def runtime_dependencies
dependencies.select(&:runtime?)
end
##
# True if this gem has the same attributes as +other+.
def same_attributes?(spec)
@@attributes.all? {|name, _default| send(name) == spec.send(name) }
endView on GitHub (pinned to 86cbb817a3)
Solutions
- This is an internal RubyGems gap for an unsupported object type; report it at https://github.com/rubygems/rubygems/issues
When it happens
Trigger: Thrown at lib/rubygems/specification.rb:2267 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruby/rubygems@86cbb817a3 (2026-08-23).
Data as JSON: /api/errors/a4f100aee7406547.
Report an issue: GitHub.