{"record":{"id":"89bc7d2e470d8a41","repo":"ruby/rubygems","slug":"file-prefix-name-has-a-too-long-base-path","errorCode":null,"errorMessage":"File \"#{prefix}/#{name}\" has a too long base path (should be 155 or less)","messagePattern":"File \"#(.+?)/#(.+?)\" has a too long base path \\(should be 155 or less\\)","errorType":"exception","errorClass":"Gem::Package::TooLongFileName","httpStatus":null,"severity":"error","filePath":"lib/rubygems/package/tar_writer.rb","lineNumber":326,"sourceCode":"      raise Gem::Package::TooLongFileName.new(\"File \\\"#{name}\\\" has a too long path (should be 256 or less)\")\n    end\n\n    prefix = \"\"\n    if name.bytesize > 100\n      parts = name.split(\"/\", -1) # parts are never empty here\n      name = parts.pop            # initially empty for names with a trailing slash (\"foo/.../bar/\")\n      prefix = parts.join(\"/\")    # if empty, then it's impossible to split (parts is empty too)\n      while !parts.empty? && (prefix.bytesize > 155 || name.empty?)\n        name = parts.pop + \"/\" + name\n        prefix = parts.join(\"/\")\n      end\n\n      if name.bytesize > 100 || prefix.empty?\n        raise Gem::Package::TooLongFileName.new(\"File \\\"#{prefix}/#{name}\\\" has a too long name (should be 100 or less)\")\n      end\n\n      if prefix.bytesize > 155\n        raise Gem::Package::TooLongFileName.new(\"File \\\"#{prefix}/#{name}\\\" has a too long base path (should be 155 or less)\")\n      end\n    end\n\n    [name, prefix]\n  end\nend\n","sourceCodeStart":308,"sourceCodeEnd":333,"githubUrl":"https://github.com/ruby/rubygems/blob/86cbb817a38ce8477b181c17467a703ded3f2be8/lib/rubygems/package/tar_writer.rb#L308-L333","documentation":"Error \"File \"#{prefix}/#{name}\" has a too long base path (should be 155 or less)\" thrown in ruby/rubygems.","triggerScenarios":"Thrown at lib/rubygems/package/tar_writer.rb:326 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Shorten the directory prefix to 155 characters or fewer and rebuild the gem"],"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"}