{"record":{"id":"45e0f00370e78f26","repo":"ruby/rubygems","slug":"spec-has-an-invalid-specification-version","errorCode":null,"errorMessage":"#{spec} has an invalid specification_version","messagePattern":"#(.+?) has an invalid specification_version","errorType":"exception","errorClass":"Gem::InstallError","httpStatus":null,"severity":"error","filePath":"lib/rubygems/installer.rb","lineNumber":705,"sourceCode":"  def verify_spec\n    unless Gem::Specification::VALID_NAME_PATTERN.match?(spec.name)\n      raise Gem::InstallError, \"#{spec} has an invalid name\"\n    end\n\n    if spec.raw_require_paths.any? {|path| path =~ /\\R/ }\n      raise Gem::InstallError, \"#{spec} has an invalid require_paths\"\n    end\n\n    if spec.extensions.any? {|ext| ext =~ /\\R/ }\n      raise Gem::InstallError, \"#{spec} has an invalid extensions\"\n    end\n\n    unless /\\A[\\w.-]+\\z/.match?(spec.platform.to_s)\n      raise Gem::InstallError, \"#{spec.platform} is an invalid platform\"\n    end\n\n    unless /\\A\\d+\\z/.match?(spec.specification_version.to_s)\n      raise Gem::InstallError, \"#{spec} has an invalid specification_version\"\n    end\n\n    if spec.dependencies.any? {|dep| dep.type != :runtime && dep.type != :development }\n      raise Gem::InstallError, \"#{spec} has an invalid dependencies\"\n    end\n\n    if spec.dependencies.any? {|dep| dep.name =~ /(?:\\R|[<>])/ }\n      raise Gem::InstallError, \"#{spec} has an invalid dependencies\"\n    end\n\n    if spec.executables.any? {|name| !name.is_a?(String) || name != File.basename(name) || /\\A\\.\\.?\\z|\\R/.match?(name) }\n      raise Gem::InstallError, \"#{spec} has an invalid executable\"\n    end\n\n    raise Gem::InstallError, \"#{spec} has an invalid bindir\" unless spec.bindir.is_a?(String)\n\n    expanded_gem_dir = File.expand_path(gem_dir)\n    expanded_bindir = File.expand_path(File.join(gem_dir, spec.bindir))","sourceCodeStart":687,"sourceCodeEnd":723,"githubUrl":"https://github.com/ruby/rubygems/blob/86cbb817a38ce8477b181c17467a703ded3f2be8/lib/rubygems/installer.rb#L687-L723","documentation":"Error \"#{spec} has an invalid specification_version\" thrown in ruby/rubygems.","triggerScenarios":"Thrown at lib/rubygems/installer.rb:705 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set a valid `spec.specification_version` (currently 4) or remove the assignment so RubyGems uses the default"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"86cbb817a38ce8477b181c17467a703ded3f2be8","analyzedAt":"2026-08-23T06:27:48.159Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}