On Friday, April 1, 2022 12:51:36 PM CEST Michael J Gruber wrote: > Hi there > > I know why we do not allow to force push to dist-git in the rpms namespace, You can easily do force pushes in your own fork. Rewriting the authoritative branches in the official repositories is problematic for too many reasons, regardless of builds. > but I am wondering whether we can implement this more in line with the > reason: > > dist-git has to be a permanent record for the "source" (spec etc.) against > which a package is built, but currently we deny pushing even when there is > no build against the rewritten commits. Instead, I suggest the following > behaviour for the update-hook of git-receive-pack: > > - check which commit contained in "old object name" is the most recent one > (topology order) which has been built (successfully) There is an inherent time-of-check/time-of-use race condition in the proposal. > - call it "old build object name" > - check whether the "new object name" is descendant of > (contains) "old build object name" (rather than "old object name", which > would forbid any force push) > This would allow to rewrite a branch as long as the last commit hasn't been > built yet (but allow only rewrites to commits since the last build). In > particular, this would allow to avoid the many "commit missing patch", > "actually commit the change", "duh" commits which happen after a successful > `fedpkg build --scratch --srpm` followed by a half-(how do you say this > nicely)ed commit. I thought the plan was to use pull requests with some CI checks to avoid this. Kamil _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure