{"record":{"id":"4aae34df044690ec","repo":"jordansissel/fpm","slug":"blanking-provides-field-provides-because-it","errorCode":null,"errorMessage":"Blanking 'provides' field '#{provides}' because it's invalid","messagePattern":"Blanking 'provides' field '#(.+?)' because it's invalid","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lib/fpm/package/deb.rb","lineNumber":1006,"sourceCode":"  end\n\n  def fix_provides(provides)\n    name_re = /^[^ \\(]+/\n    name = provides[name_re]\n    if name =~ /[A-Z]/\n      logger.warn(\"Downcasing provides '#{name}' because deb packages \" \\\n                   \" don't work so good with uppercase names\")\n      provides = provides.gsub(name_re) { |n| n.downcase }\n    end\n\n    if provides.include?(\"_\")\n      logger.warn(\"Replacing 'provides' underscores with dashes in '#{provides}' because \" \\\n                   \"debs don't like underscores\")\n      provides = provides.gsub(\"_\", \"-\")\n    end\n\n    if provides.include?(\"(\") and !provides.include?(\"(=\")\n      logger.warn(\"Blanking 'provides' field '#{provides}' because it's invalid\")\n      provides = \"\"\n    end\n\n    if m = provides.match(/^([A-Za-z0-9_-]+)\\s*=\\s*(\\d+.*$)/)\n      logger.warn(\"Replacing 'provides' entry #{provides} with syntax 'name (= version)'\")\n      provides = \"#{m[1]} (= #{m[2]})\"\n    end\n    return provides.rstrip\n  end\n\n  def control_path(path=nil)\n    @control_path ||= build_path(\"control\")\n    FileUtils.mkdir(@control_path) if !File.directory?(@control_path)\n\n    if path.nil?\n      return @control_path\n    else\n      return File.join(@control_path, path)","sourceCodeStart":988,"sourceCodeEnd":1024,"githubUrl":"https://github.com/jordansissel/fpm/blob/b6d77ba72a560b687723376a0e5115c3a92634ad/lib/fpm/package/deb.rb#L988-L1024","documentation":"Error \"Blanking 'provides' field '#{provides}' because it's invalid\" thrown in jordansissel/fpm.","triggerScenarios":"Thrown at lib/fpm/package/deb.rb:1006 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":"b6d77ba72a560b687723376a0e5115c3a92634ad","analyzedAt":"2026-08-21T16:39:02.570Z","schemaVersion":2},"datasetVersion":"2026-08-21T18:17:14.833Z"}