> On Aug 22, 2018, at 5:01 PM, Vladimir D. Seleznev <vsele...@altlinux.org> > wrote: > > You convinced me that there should be whitelist filter, so I rewrote > code for it. Follow Panu suggestion [1] I wrote .C generator to filter > proper rpm tags. But currently it does not allow this suggestion [2] by > jbj@: > > "The members (and ordering) of the IDENTITY tag set might also > need to be configurable without recompiling." > > Currently I have no idea what is better way to do that. May be one of > solution can be to define some macro that contains tag that should be in > calculation, but this doest seem to be convenient and practical. > > Also its value may be needs a prefix for versioning tag value. When new > tags are marked to be involve to calculating the prefix changes. I think > the prefix should also include a vendor identifier e.g. fc, alt, mga, > suse etc. >
You might wish to read this thread to understand the complexities involved in maintaining plaintext that is reduced to a single value using a hash: https://lists.fedoraproject.org/archives/list/de...@lists.fedoraproject.org/thread/YOYJEKGZ3N4Q67TVOQ6MHBK37RESBVAQ/ The thread is about (essentially) an IDENTITY-like computation of installed packages, the discussion is about which representation of the tuple {N,E,V,R,A} is "best". > While here is marker for tags that values should be involve to identity > calculation, I think here should be special case for some of string > array tags: a marker for processing array before calculation. For > example, we want to filter some of value from package provides but we > don't want to exclude the whole array from identity calculation. I think > it could be done with one more marker with argument of array processing > function that return (char *) — the result of string processing. There > is difficulty that RPMTAG_PROVIDE* is three separate tags and I have no > idea how to take it in consideration. > One way to reduce the triple of tags used for dependencies into a single value to be added to IDENTITY is to convert to a string by using headerFormat. See what rpm does with queries like --provides. > About patches: they are RFC, 0002 is mostly draft: there are obviously > marked more than needed tags. I forgot to enhance commit message for > 0003, so I'll do it in the next iteration. > > Please comment. 73 de Jeff > [1] http://lists.rpm.org/pipermail/rpm-maint/2018-April/007725.html > [2] http://lists.rpm.org/pipermail/rpm-maint/2018-April/007721.html > > > _______________________________________________ > Rpm-maint mailing list > Rpm-maint@lists.rpm.org > http://lists.rpm.org/mailman/listinfo/rpm-maint
_______________________________________________ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint