jordansissel/fpm · error · FPM::Package::Python::MissingField
Missing required Python metadata field, '#{field}'. This mig
Error message
Missing required Python metadata field, '#{field}'. This might be a bug in the package or in fpm. What it means
Error "Missing required Python metadata field, '#{field}'. This might be a bug in the package or in fpm." thrown in jordansissel/fpm.
Source
Thrown at lib/fpm/package/python.rb:203
:@description => "Description",
:@keywords => "Keywords",
:@maintainer => "Author-email",
# Note: License can also come from the deprecated "License" field
# This is processed later in this method.
:@license => "License-Expression",
:@requires => "Requires-Dist",
}
REQUIRED_FIELDS = [ "Metadata-Version", "Name", "Version" ]
# headers - a Hash containing field-value pairs from headers as read from a python METADATA file.
# body - optional, a string containing the body text of a METADATA file
def initialize(headers, body=nil)
REQUIRED_FIELDS.each do |field|
if !headers.include?(field)
raise MissingField, "Missing required Python metadata field, '#{field}'. This might be a bug in the package or in fpm."
end
end
FIELD_MAP.each do |attr, field|
if headers.include?(field)
instance_variable_set(attr, headers.fetch(field))
end
end
# Do any extra processing on fields to turn them into their expected content.
process_description(headers, body)
process_license(headers)
process_homepage(headers)
process_maintainer(headers)
end # def initialize
private
def process_description(headers, body)View on GitHub (pinned to b6d77ba72a)
When it happens
Trigger: Thrown at lib/fpm/package/python.rb:203 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/c3c1370b12107679.
Report an issue: GitHub.