Maybe this question is a bit weirded but I am struggling here.
By what criteria does rpm determine that a packet is an update or not?
The version and release is a string and so on it cannot be compared to other versions. There are three flags to define a version: epoch, version and release. Is rpm (and yum, dnf, ...) checking the build time to determine if a package is an update? I can't barely believe this but I cannot figure out anything else.
I am not skilled enough to find the location of this feature in the source code by myself. Maybe someone can help.
Thank you very much.