On Thu, Aug 06, 2015 at 06:37:29PM +0200, Michael Schwendt wrote: > On Thu, 06 Aug 2015 13:15:02 +0000, Igor Gnatenko wrote: > > > We discussed with Jan Silhan yesterday. It looks like something broken in > > createrepo/createrepo_c in F22. So it's not dnf/yum/hawkey/libsolv issue. > > > > LOG: https://ignatenkobrain.fedorapeople.org/epoch_bug.log > > > > Also CCing Jan. > > Wow. createrepo is also affected. > > createrepo_c uses strtol() to accept only numbers as Epoch. Anything > else strol() cannot parse is ignored and defaults to "epoch=0" in the > repo metadata. This means it can break for typos as well as, not just > an undefined macro used as Epoch in a versioned dep. > > It couldn't find a comment in the source that would tell whether this > is by design. Does this really matter? If it's by design, then the design is wrong. If not, than the implementation is wrong. (Nevertheless, I think it's not by design, but because strtol() is so hard to use correctly. I think it's fair to say to it is designed to be used incorrectly. Systemd has a bunch of wrappers for strto*() that try to answer the question "was the conversion successful?" [1], and it's sad that they are needed and that they are so complex.) [1] https://github.com/systemd/systemd/blob/73974f6768e#L406 -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct