[aur-dev] [PATCH] git-update: Only check HEAD for matching pkgbase

Lukas Fleischer lfleischer at archlinux.org
Wed Jun 3 10:16:06 UTC 2015


When renaming a package base, we want to keep commits of the former
package. Move the check that compares the package base name with the
repository name such that only HEAD is validated.

Fixes FS#45065.

Signed-off-by: Lukas Fleischer <lfleischer at archlinux.org>
---
 git-interface/git-update.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/git-interface/git-update.py b/git-interface/git-update.py
index b7eaa14..c4f9da7 100755
--- a/git-interface/git-update.py
+++ b/git-interface/git-update.py
@@ -20,6 +20,7 @@ aur_db_pass = config.get('database', 'password')
 aur_db_socket = config.get('database', 'socket')
 
 repo_path = config.get('serve', 'repo-path')
+repo_regex = config.get('serve', 'repo-regex')
 
 def extract_arch_fields(pkginfo, field):
     values = []
@@ -207,7 +208,7 @@ for commit in walker:
         exit(1)
 
     srcinfo_pkgbase = srcinfo._pkgbase['pkgname']
-    if srcinfo_pkgbase != pkgbase:
+    if not re.match(repo_regex, srcinfo_pkgbase):
         die_commit('invalid pkgbase: %s' % (srcinfo_pkgbase), commit.id)
 
     for pkgname in srcinfo.GetPackageNames():
@@ -251,6 +252,10 @@ srcinfo_raw = repo[repo[sha1_new].tree['.SRCINFO'].id].data.decode()
 srcinfo_raw = srcinfo_raw.split('\n')
 srcinfo = aurinfo.ParseAurinfoFromIterable(srcinfo_raw)
 
+srcinfo_pkgbase = srcinfo._pkgbase['pkgname']
+if srcinfo_pkgbase != pkgbase:
+    die('invalid pkgbase: %s' % (srcinfo_pkgbase))
+
 save_srcinfo(srcinfo, db, cur, user)
 
 db.close()
-- 
2.4.2


More information about the aur-dev mailing list