Diff
Modified: trunk/Tools/ChangeLog (275352 => 275353)
--- trunk/Tools/ChangeLog 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/ChangeLog 2021-04-01 11:36:19 UTC (rev 275353)
@@ -1,5 +1,24 @@
2021-04-01 Jonathan Bedard <[email protected]>
+ [webkitscmpy] Improve git-svn-id regex
+ https://bugs.webkit.org/show_bug.cgi?id=224008
+ <rdar://problem/76062561>
+
+ Rubber-stamped by Aakash Jain.
+
+ * Scripts/libraries/webkitcorepy/setup.py: Bump version.
+ * Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
+ * Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:
+ (Git.commit): Strip leading spaces before parsing the commit message.
+ * Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: Ensure that git-svn-id lines
+ are printed to stdout with leading spaces.
+ * Scripts/libraries/webkitscmpy/webkitscmpy/scm_base.py:
+ (ScmBase): Only match git-svn-id lines if they are at the beginning of a line.
+ * Scripts/libraries/webkitscmpy/webkitscmpy/test/canonicalize_unittest.py:
+ * Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py:
+
+2021-04-01 Jonathan Bedard <[email protected]>
+
[webkitscmpy] Support case where contributor did not define email
https://bugs.webkit.org/show_bug.cgi?id=224005
<rdar://problem/76058258>
Modified: trunk/Tools/Scripts/libraries/webkitcorepy/setup.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitcorepy/setup.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/setup.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -30,7 +30,7 @@
setup(
name='webkitcorepy',
- version='0.5.8',
+ version='0.5.9',
description='Library containing various Python support classes and functions.',
long_description=readme(),
classifiers=[
Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -37,7 +37,7 @@
from webkitcorepy.task_pool import TaskPool
from webkitcorepy.credentials import credentials
-version = Version(0, 5, 8)
+version = Version(0, 5, 9)
from webkitcorepy.autoinstall import Package, AutoInstall
if sys.version_info > (3, 0):
Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -247,7 +247,8 @@
if branch_point and parsed_branch_point and branch_point != parsed_branch_point:
raise ValueError("Provided 'branch_point' does not match branch point of specified branch")
- matches = self.GIT_SVN_REVISION.findall(log.stdout)
+ logcontent = '\n'.join(line[4:] for line in log.stdout.splitlines()[4:])
+ matches = self.GIT_SVN_REVISION.findall(logcontent)
revision = int(matches[-1].split('@')[0]) if matches else None
commit_time = run(
@@ -280,7 +281,7 @@
timestamp=timestamp,
order=order,
author=Contributor.from_scm_log(log.stdout.splitlines()[1], self.contributors),
- message='\n'.join(line[4:] for line in log.stdout.splitlines()[4:]) if include_log else None,
+ message=logcontent if include_log else None,
)
def find(self, argument, include_log=True, include_identifier=True):
Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -231,7 +231,7 @@
date=datetime.fromtimestamp(self.find(args[2]).timestamp).strftime('%a %b %d %H:%M:%S %Y'),
log='\n'.join([
(' ' + line) if line else '' for line in self.find(args[2]).message.splitlines()
- ] + (['git-svn-id: https://svn.{}/repository/{}/trunk@{} 268f45cc-cd09-0410-ab3c-d52691b4dbfc'.format(
+ ] + ([' git-svn-id: https://svn.{}/repository/{}/trunk@{} 268f45cc-cd09-0410-ab3c-d52691b4dbfc'.format(
self.remote.split('@')[-1].split(':')[0],
os.path.basename(path),
self.find(args[2]).revision,
Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/scm_base.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/scm_base.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/scm_base.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -37,7 +37,7 @@
# the following idioms seem common enough to be shared.
DEV_BRANCHES = re.compile(r'.*[(eng)(dev)(bug)]/.+')
PROD_BRANCHES = re.compile(r'\S+-[\d+\.]+-branch')
- GIT_SVN_REVISION = re.compile(r'[^ ]git-svn-id: \S+:\/\/.+@(?P<revision>\d+) .+-.+-.+-.+')
+ GIT_SVN_REVISION = re.compile(r'^git-svn-id: \S+:\/\/.+@(?P<revision>\d+) .+-.+-.+-.+', flags=re.MULTILINE)
DEFAULT_BRANCHES = ['main', 'master', 'trunk']
def __init__(self, dev_branches=None, prod_branches=None, contributors=None, id=None):
Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/canonicalize_unittest.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/canonicalize_unittest.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/canonicalize_unittest.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -139,7 +139,7 @@
commit.message,
'New commit\n'
'Identifier: 6@main\n'
- 'svn-id: https://svn.example.org/repository/repository/trunk@9 268f45cc-cd09-0410-ab3c-d52691b4dbfc',
+ 'git-svn-id: https://svn.example.org/repository/repository/trunk@9 268f45cc-cd09-0410-ab3c-d52691b4dbfc',
)
self.assertEqual(
Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py (275352 => 275353)
--- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py 2021-04-01 11:06:06 UTC (rev 275352)
+++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py 2021-04-01 11:36:19 UTC (rev 275353)
@@ -158,7 +158,7 @@
Hash: 1abe25b443e9
Identifier: 3@main
4th commit
- svn-id: https://svn.example.org/repository/repository/trunk@4 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+ git-svn-id: https://svn.example.org/repository/repository/trunk@4 268f45cc-cd09-0410-ab3c-d52691b4dbfc
'''.format(datetime.fromtimestamp(1601663000).strftime('%a %b %d %H:%M:%S %Y')),
)
@@ -181,7 +181,7 @@
), timestamp=1601663000,
order=0,
branch='main',
- message='4th commit\nsvn-id: https://svn.example.org/repository/repository/trunk@4 268f45cc-cd09-0410-ab3c-d52691b4dbfc',
+ message='4th commit\ngit-svn-id: https://svn.example.org/repository/repository/trunk@4 268f45cc-cd09-0410-ab3c-d52691b4dbfc',
))
def test_tag_svn(self):