{"record":{"id":"ec6d1d7ad15a8362","repo":"ruby/rubygems","slug":"specs-name-from-remote-is-expected-to-be-an","errorCode":null,"errorMessage":"Specs #{name} from #{remote} is expected to be an Array but was unexpected class #{specs.class}","messagePattern":"Specs #(.+?) from #(.+?) is expected to be an Array but was unexpected class #(.+?)","errorType":"exception","errorClass":"Bundler::MarshalError","httpStatus":null,"severity":"error","filePath":"lib/bundler/rubygems_integration.rb","lineNumber":365,"sourceCode":"      redefine_method(gem_class, :load_plugins) do |*|\n        load_plugin_files specs.flat_map(&:plugins)\n      end\n    end\n\n    def plain_specs\n      Gem::Specification._all\n    end\n\n    def plain_specs=(specs)\n      Gem::Specification.all = specs\n    end\n\n    def fetch_specs(remote, name, fetcher)\n      require \"rubygems/remote_fetcher\"\n      path = remote.uri.to_s + \"#{name}.#{Gem.marshal_version}.gz\"\n      string = fetcher.fetch_path(path)\n      specs = Bundler.safe_load_marshal(string)\n      raise MarshalError, \"Specs #{name} from #{remote} is expected to be an Array but was unexpected class #{specs.class}\" unless specs.is_a?(Array)\n      specs\n    rescue Gem::RemoteFetcher::FetchError\n      # it's okay for prerelease to fail\n      raise unless name == \"prerelease_specs\"\n    end\n\n    def fetch_all_remote_specs(remote, gem_remote_fetcher)\n      specs = fetch_specs(remote, \"specs\", gem_remote_fetcher)\n      pres = fetch_specs(remote, \"prerelease_specs\", gem_remote_fetcher) || []\n\n      specs.concat(pres)\n    end\n\n    def download_gem(spec, uri, cache_dir, fetcher)\n      require \"rubygems/remote_fetcher\"\n      uri = Bundler.settings.mirror_for(uri)\n      redacted_uri = Gem::Uri.redact(uri)\n","sourceCodeStart":347,"sourceCodeEnd":383,"githubUrl":"https://github.com/ruby/rubygems/blob/86cbb817a38ce8477b181c17467a703ded3f2be8/lib/bundler/rubygems_integration.rb#L347-L383","documentation":"Error \"Specs #{name} from #{remote} is expected to be an Array but was unexpected class #{specs.class}\" thrown in ruby/rubygems.","triggerScenarios":"Thrown at lib/bundler/rubygems_integration.rb:365 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"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"}