Don't create requirement in metadata if field value is unset
While testing a new firmware release sourced from embargo channel, a version issue is seen which is preventing the system to get the latest update over the air.
The fwupd engine tries to compare version if the xml-node exists in metadata. The version requirement is unset in lvfs however the xml node is somehow generated in metadata.
<requires>
<firmware compare="any"/>
</requires>
The system with Ubuntu 18.04 and fwupd 1.2.14 installed, removing the xml node would be easier in this case.
$ fwupdmgr get-devices
OptiPlex 5270 AIO-China HDD Protection System Firmware
DeviceId: 2591bfb6b4e0289aeb71ae5498a9892c1df4d09d
Guid: 51b5f98c-650b-49e4-b5e1-4a42d161d7bf
Plugin: uefi
Flags: internal|updatable|require-ac|supported|registered|needs-reboot
Vendor: Dell Inc.
Version: 0.1.26.0
VersionLowest: 0.1.26.0
VersionFormat: quad
Icon: computer
Created: 2023-12-26
$ fwupdmgr get-updates
No upgrades for OptiPlex 5270 AIO-China HDD Protection System Firmware, current is 0.1.26.0: 0.1.23.2=older, 0.1.21.0=older, 0.1.20.0=older
$ fwupdmgr install ./4ac9ece394eb195967f18e4d849ab796bcd11acd20e6b9701ce1f9aa544d9d8d-firmware_OptiPlex_5270_AIO_China_Hdd_Deluxe_1.27.0.cab
Decompressing… [***************************************]
Not compatible with firmware version: failed to compare [(null)] and [0.1.26.0]