mirror of
https://github.com/go-gitea/gitea.git
synced 2026-11-12 11:57:38 +00:00
Deleting a package or a package version from the web UI, the admin panel or `DELETE /api/v1/packages/...` removed the database rows but never rebuilt the Debian, Alpine, RPM or Arch repository index, so clients kept seeing the deleted version until something else triggered a rebuild. Only the registries' own delete endpoints and the cleanup task rebuilt it. https://github.com/go-gitea/gitea/pull/22810 was closed in favor of `OnBeforeRemovePackageVersion`, but that hook runs before the version is gone, so it can't refresh the index. This adds an `OnAfterRemovePackage` hook and rebuilds the owner's repository files there, the same way the cleanup task does. Deleting the last RPM of a group also removed the repodata of all other groups of the owner. Now only the emptied group's files are removed. Fixes: https://github.com/go-gitea/gitea/issues/32830 Fixes: https://github.com/go-gitea/gitea/issues/40304 Fixes: https://github.com/go-gitea/gitea/issues/40305 --- 🤖 Opened with [Superhuman](https://github.com/gaurav0107/superhuman), an open-source contribution agent. --------- Co-authored-by: silverwind <me@silverwind.io>