Teach webkitpy about wkb.ug URLs
authoraroben@webkit.org <aroben@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Feb 2012 16:49:11 +0000 (16:49 +0000)
committeraroben@webkit.org <aroben@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Feb 2012 16:49:11 +0000 (16:49 +0000)
Fixes <http://wkb.ug/79799> webkit-patch can't find bug numbers from ChangeLog entries that
use wkb.ug URLs

Patch by Adam Roben <aroben@apple.com> on 2012-02-28
Reviewed by Anders Carlsson.

* Scripts/webkitpy/common/checkout/changelog.py:
(parse_bug_id):
(parse_bug_id_from_changelog):
Fall back to the tiny URL format if neither the short nor long URL formats work.

* Scripts/webkitpy/common/checkout/changelog_unittest.py:
(ChangeLogTest.test_parse_bug_id_from_changelog): Added tests for the above changes.

* Scripts/webkitpy/common/config/urls.py: Added bug_url_tiny, which can be used to match
wkb.ug URLs.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@109110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/common/checkout/changelog.py
Tools/Scripts/webkitpy/common/checkout/changelog_unittest.py
Tools/Scripts/webkitpy/common/config/urls.py

index 5832395..6dacbf7 100644 (file)
@@ -1,3 +1,23 @@
+2012-02-28  Adam Roben  <aroben@apple.com>
+
+        Teach webkitpy about wkb.ug URLs
+
+        Fixes <http://wkb.ug/79799> webkit-patch can't find bug numbers from ChangeLog entries that
+        use wkb.ug URLs
+
+        Reviewed by Anders Carlsson.
+
+        * Scripts/webkitpy/common/checkout/changelog.py:
+        (parse_bug_id):
+        (parse_bug_id_from_changelog):
+        Fall back to the tiny URL format if neither the short nor long URL formats work.
+
+        * Scripts/webkitpy/common/checkout/changelog_unittest.py:
+        (ChangeLogTest.test_parse_bug_id_from_changelog): Added tests for the above changes.
+
+        * Scripts/webkitpy/common/config/urls.py: Added bug_url_tiny, which can be used to match
+        wkb.ug URLs.
+
 2012-02-28  J├ínos Badics  <dicska@gmail.com>
 
         [Qt] build-webkit does not detect the number of CPUs
index 55b0598..2d6cd7d 100644 (file)
@@ -50,6 +50,9 @@ def parse_bug_id(message):
     match = re.search(config_urls.bug_url_long, message)
     if match:
         return int(match.group('bug_id'))
+    match = re.search(config_urls.bug_url_tiny, message)
+    if match:
+        return int(match.group('bug_id'))
     return None
 
 
@@ -65,6 +68,9 @@ def parse_bug_id_from_changelog(message):
     match = re.search("^\s*" + config_urls.bug_url_long + "$", message, re.MULTILINE)
     if match:
         return int(match.group('bug_id'))
+    match = re.search("^\s*" + config_urls.bug_url_tiny + "$", message, re.MULTILINE)
+    if match:
+        return int(match.group('bug_id'))
     # We weren't able to find a bug URL in the format used by prepare-ChangeLog. Fall back to the
     # first bug URL found anywhere in the message.
     return parse_bug_id(message)
index 431c867..b29fb16 100644 (file)
@@ -197,6 +197,19 @@ class ChangeLogTest(unittest.TestCase):
         self.assertEquals(12345, parse_bug_id_from_changelog(commit_text))
 
         commit_text = '''
+2011-03-23  Ojan Vafai  <ojan@chromium.org>
+
+        Add failing result for WebKit2. All tests that require
+        focus fail on WebKit2. See https://bugs.webkit.org/show_bug.cgi?id=56988.
+        http://wkb.ug/12345
+
+        * platform/mac-wk2/fast/css/pseudo-any-expected.txt: Added.
+
+        '''
+
+        self.assertEquals(12345, parse_bug_id_from_changelog(commit_text))
+
+        commit_text = '''
 2011-03-31  Adam Roben  <aroben@apple.com>
 
         Quote the executable path we pass to ::CreateProcessW
@@ -232,6 +245,25 @@ class ChangeLogTest(unittest.TestCase):
 
         self.assertEquals(57354, parse_bug_id_from_changelog(commit_text))
 
+        commit_text = '''
+2011-03-31  Adam Roben  <aroben@apple.com>
+
+        Quote the executable path we pass to ::CreateProcessW
+
+        This will ensure that spaces in the path will be interpreted correctly.
+
+        Fixes <http://wkb.ug/57569> Web process sometimes fails to launch when there are
+        spaces in its path
+
+        Reviewed by Steve Falkenburg.
+
+        * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
+        (WebKit::ProcessLauncher::launchProcess): Surround the executable path in quotes.
+
+        '''
+
+        self.assertEquals(57569, parse_bug_id_from_changelog(commit_text))
+
     def test_parse_log_entries_from_changelog(self):
         changelog_file = StringIO(self._example_changelog)
         parsed_entries = list(ChangeLog.parse_entries_from_file(changelog_file))
index 1f902f4..380aa4a 100644 (file)
@@ -48,6 +48,7 @@ _bug_server_regex = "https?://%s/" % re.sub('\.', '\\.', bug_server_host)
 bug_server_url = "https://%s/" % bug_server_host
 bug_url_long = _bug_server_regex + r"show_bug\.cgi\?id=(?P<bug_id>\d+)(&ctype=xml)?"
 bug_url_short = r"https?\://webkit\.org/b/(?P<bug_id>\d+)"
+bug_url_tiny = r"http://wkb\.ug/(?P<bug_id>\d+)"
 
 buildbot_url = "http://build.webkit.org"
 chromium_buildbot_url = "http://build.chromium.org/p/chromium.webkit"