[Python-checkins] r85151 - in tracker/instances/python-dev: lib/identify_patch.py scripts/fillrevs

martin.v.loewis python-checkins at python.org
Fri Oct 1 23:40:04 CEST 2010


Author: martin.v.loewis
Date: Fri Oct  1 23:40:04 2010
New Revision: 85151

Log:
Add script to fill out revision information.


Added:
   tracker/instances/python-dev/scripts/fillrevs   (contents, props changed)
Modified:
   tracker/instances/python-dev/lib/identify_patch.py

Modified: tracker/instances/python-dev/lib/identify_patch.py
==============================================================================
--- tracker/instances/python-dev/lib/identify_patch.py	(original)
+++ tracker/instances/python-dev/lib/identify_patch.py	Fri Oct  1 23:40:04 2010
@@ -5,7 +5,7 @@
 def identify(db, patch):
     """Return revision number and branch of a patch;
     either value may become None."""
-    m = re.search('---.* ([0-9]+)', patch)
+    m = re.search(r'---.* ([0-9]+)\)', patch)
     if not m:
         return None, None
     rev = int(m.group(1))

Added: tracker/instances/python-dev/scripts/fillrevs
==============================================================================
--- (empty file)
+++ tracker/instances/python-dev/scripts/fillrevs	Fri Oct  1 23:40:04 2010
@@ -0,0 +1,19 @@
+#!/usr/bin/python
+# Fill branch information for all file objects where it's missing
+import identify_patch
+import roundup.instance
+tracker = roundup.instance.open('.')
+db = tracker.open('admin')
+
+for fileid in db.file.list():
+    fname = db.file.get(fileid, 'name')
+    if fname.endswith('.patch') or fname.endswith('.diff'):
+        if db.file.get(fileid, 'revision'):
+            continue
+        data = db.file.get(fileid, 'content')
+        revid, branch = identify_patch.identify(db, data)
+        if revid:
+            db.file.set_inner(fileid, revision=str(revid))
+        if branch:
+            db.file.set_inner(fileid, branch=branch)
+        db.commit()


More information about the Python-checkins mailing list