ruby/rubygems · error · ArgumentError
Valid types are #{TYPES.inspect}, not #{type.inspect}
Error message
Valid types are #{TYPES.inspect}, not #{type.inspect} What it means
Error "Valid types are #{TYPES.inspect}, not #{type.inspect}" thrown in ruby/rubygems.
Source
Thrown at lib/rubygems/dependency.rb:52
# <tt>:runtime</tt>.
def initialize(name, *requirements)
case name
when String then # ok
when Regexp then
msg = ["NOTE: Dependency.new w/ a regexp is deprecated.",
"Dependency.new called from #{Gem.location_of_caller.join(":")}"]
warn msg.join("\n") unless Gem::Deprecate.skip
else
raise ArgumentError,
"dependency name must be a String, was #{name.inspect}"
end
type = Symbol === requirements.last ? requirements.pop : :runtime
requirements = requirements.first if requirements.length == 1 # unpack
unless TYPES.include? type
raise ArgumentError, "Valid types are #{TYPES.inspect}, " \
"not #{type.inspect}"
end
@name = name
@requirement = Gem::Requirement.create requirements
@type = type
@prerelease = false
# This is for Marshal backwards compatibility. See the comments in
# +requirement+ for the dirty details.
@version_requirements = @requirement
end
##
# A dependency's hash is the XOR of the hashes of +name+, +type+,
# and +requirement+.
View on GitHub (pinned to 86cbb817a3)
When it happens
Trigger: Thrown at lib/rubygems/dependency.rb:52 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/0a2f02d46039864b.
Report an issue: GitHub.