use Parse::DebControl::Patch $parser = new Parse::DebControl::Patch; $data = $parser->parse_mem($control_data, $options); $data = $parser->parse_file('./debian/control', $options); $data = $parser->parse_web($url, $options);
The patch-file metadata specification (DEP3) diverts from the normal debian/control rules primarly of the "free-form" field specification. To handle this we most create an parser specifically for this format and hardcode these rules direclty into the code. As we will always only have one block of data, we will return the hashref directly instead of enclosing it into an array. The field B<Forwarded> is magic and will always exists in the out data, even if not specified in the indata. It can only have three values, I<yes>, I<no>, and I<not-needed>. If not specified it will have the value I<yes>.