On Tue, Dec 22, 2009 at 11:05:56AM +0300, Alexey Tourbin wrote: > On Tue, Dec 22, 2009 at 02:36:16AM +0300, Alexey Tourbin wrote: [...] > > I think I am going to implement much stricter checking for both noarch > > packages and /usr/share part of arch packages. Also, I am going to > > implement new "force-noarch" check which will require some packages > > be noarch (by the principle of "extensional equality"). > > http://git.altlinux.org/people/at/packages/girar-builder.git > 642af655 gb-task-check-noarch-i: force noarch by extensional equality > 9bce38b3 gb-task-check-noarch-i: check for identical /usr/share part in arch pacakges > 60af4a7c gb-task-check-noarch-i: use rpmfile(1) to check noarch cpio contents > 67f83c43 gb-task-check-noarch-i: use ls again > 17d6d4ea gb-task-check-noarch, gb-task-check-noarch-i: factored from gb-task-check-build-i Let's summarise the discussion and decide what shall we do with it. The proposed patchset introduces two new restrictions: 1. Packages that mustn't be noarch because of essential payload mismatch on different architectures. 2. Packages that must be noarch because their payload is essentially the same on different architectures. The only drawback of the first restriction is that the proposed implementation fails to filter out non-essential differences, e.g. timestamps and random html reference names. That is, in its current form it would stop some grave packaging bugs, but also it would forbid some legal noarch packages. The second restriction was reported to have a major impact on packages because it affects about 600 source packages, and changing rules to break so many packages due to optimization purposes doesn't look good. Some ideas to avoid extra dumb work for packages were proposed later, but no implementation have been arisen yet. Also, the implementation in its current form may mistakenly decide that packages have to be noarch while they really shouldn't, e.g. cpuburn. That is, I'd be glad to make these restrictions taken effect when these three issues are dealt with. -- ldv