jordansissel/fpm · error · FPM::InvalidPackageConfiguration
Invalid dependency '#{dep}'
Error message
Invalid dependency '#{dep}' What it means
Error "Invalid dependency '#{dep}'" thrown in jordansissel/fpm.
Source
Thrown at lib/fpm/package/python.rb:552
end
# Evaluate python package requirements and only show ones matching the current environment
# (Environment markers, etc)
# Additionally, 'extra' features such as a requirement named `django[bcrypt]` isn't quite supported yet,
# since the marker.evaluate() needs to be passed some environment like { "extra": "bcrypt" }
execmd([attributes[:python_bin], File.expand_path(File.join("pyfpm", "parse_requires.py"), File.dirname(__FILE__))]) do |stdin, stdout, stderr|
requires.each { |r| stdin.puts(r) }
stdin.close
data = stdout.read
logger.pipe(stderr => :warn)
reqs += JSON.parse(data)
end
reqs.each do |dep|
match = dep_re.match(dep)
if match.nil?
logger.error("Unable to parse dependency", :dependency => dep)
raise FPM::InvalidPackageConfiguration, "Invalid dependency '#{dep}'"
end
name, cmp, version = match.captures
next if attributes[:python_disable_dependency].include?(name)
# convert == to =
if cmp == "==" or cmp == "~="
logger.info("Converting == dependency requirement to =", :dependency => dep )
cmp = "="
end
# dependency name prefixing is optional, if enabled, a name 'foo' will
# become 'python-foo' (depending on what the python_package_name_prefix
# is)
name = fix_name(name) if attributes[:python_fix_dependencies?]
# convert dependencies from python-Foo to python-fooView on GitHub (pinned to b6d77ba72a)
When it happens
Trigger: Thrown at lib/fpm/package/python.rb:552 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of jordansissel/fpm@b6d77ba72a (2026-08-21).
Data as JSON: /api/errors/43c1280c7ac7d0ea.
Report an issue: GitHub.