You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@yetus.apache.org by aw...@apache.org on 2016/02/13 16:28:01 UTC
yetus git commit: YETUS-233. rdm release notes in markdown are
corrupting underscores in some instances
Repository: yetus
Updated Branches:
refs/heads/master e07c92605 -> 51a4bea87
YETUS-233. rdm release notes in markdown are corrupting underscores in some instances
Signed-off-by: Sean Busbey <bu...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/51a4bea8
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/51a4bea8
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/51a4bea8
Branch: refs/heads/master
Commit: 51a4bea87ea4f9404ed992938890e992134b0381
Parents: e07c926
Author: Allen Wittenauer <aw...@apache.org>
Authored: Fri Feb 12 07:45:18 2016 -0800
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Sat Feb 13 07:27:43 2016 -0800
----------------------------------------------------------------------
release-doc-maker/releasedocmaker.py | 46 +++++++++++++++----------------
1 file changed, 22 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/51a4bea8/release-doc-maker/releasedocmaker.py
----------------------------------------------------------------------
diff --git a/release-doc-maker/releasedocmaker.py b/release-doc-maker/releasedocmaker.py
index ae4e587..f1d7e14 100755
--- a/release-doc-maker/releasedocmaker.py
+++ b/release-doc-maker/releasedocmaker.py
@@ -60,7 +60,7 @@ ASF_LICENSE = '''
'''
def clean(_str):
- return tableclean(re.sub(NAME_PATTERN, "", _str))
+ return markdownsanitize(re.sub(NAME_PATTERN, "", _str))
def format_components(_str):
_str = re.sub(NAME_PATTERN, '', _str).replace("'", "")
@@ -72,22 +72,20 @@ def format_components(_str):
return clean(ret)
# convert to utf-8
-# protect some known md metachars
-# or chars that screw up doxia
-def tableclean(_str):
+def markdownsanitize(_str):
_str = _str.encode('utf-8')
- _str = _str.replace("_", r"\_")
_str = _str.replace("\r", "")
_str = _str.rstrip()
return _str
-# same thing as tableclean,
-# except table metachars are also
+# same thing as markdownsanitize,
+# except markdown metachars are also
# escaped as well as more
-# things we don't want doxia to
+# things we don't want doxia, etc, to
# screw up
-def notableclean(_str):
- _str = tableclean(_str)
+def textsanitize(_str):
+ _str = markdownsanitize(_str)
+ _str = _str.replace("_", r"\_")
_str = _str.replace("|", r"\|")
_str = _str.replace("<", r"\<")
_str = _str.replace(">", r"\>")
@@ -100,11 +98,11 @@ def notableclean(_str):
def processrelnote(_str):
fmt = RELNOTE_PATTERN.match(_str)
if fmt is None:
- return notableclean(_str)
+ return textsanitize(_str)
else:
return {
- 'markdown' : tableclean(_str),
- }.get(fmt.group(1),notableclean(_str))
+ 'markdown' : markdownsanitize(_str),
+ }.get(fmt.group(1),textsanitize(_str))
# clean output dir
def clean_output_dir(directory):
@@ -434,13 +432,13 @@ class Outputs(object):
def write_list(self, mylist):
for jira in sorted(mylist):
line = '| [%s](' + JIRA_BASE_URL + '/browse/%s) | %s | %s | %s | %s | %s |\n'
- line = line % (notableclean(jira.get_id()),
- notableclean(jira.get_id()),
- notableclean(jira.get_summary()),
- notableclean(jira.get_priority()),
+ line = line % (textsanitize(jira.get_id()),
+ textsanitize(jira.get_id()),
+ textsanitize(jira.get_summary()),
+ textsanitize(jira.get_priority()),
format_components(jira.get_components()),
- notableclean(jira.get_reporter()),
- notableclean(jira.get_assignee()))
+ textsanitize(jira.get_reporter()),
+ textsanitize(jira.get_assignee()))
self.write_key_raw(jira.get_project(), line)
def main():
@@ -588,10 +586,10 @@ def main():
else:
otherlist.append(jira)
- line = '* [%s](' % (notableclean(jira.get_id())) + JIRA_BASE_URL + \
+ line = '* [%s](' % (textsanitize(jira.get_id())) + JIRA_BASE_URL + \
'/browse/%s) | *%s* | **%s**\n' \
- % (notableclean(jira.get_id()),
- notableclean(jira.get_priority()), notableclean(jira.get_summary()))
+ % (textsanitize(jira.get_id()),
+ textsanitize(jira.get_priority()), textsanitize(jira.get_summary()))
if jira.get_incompatible_change() and len(jira.get_release_note()) == 0:
warning_count += 1
@@ -599,7 +597,7 @@ def main():
reloutputs.write_key_raw(jira.get_project(), line)
line = '\n**WARNING: No release note provided for this incompatible change.**\n\n'
lint_message += "\nWARNING: incompatible change %s lacks release notes." % \
- (notableclean(jira.get_id()))
+ (textsanitize(jira.get_id()))
reloutputs.write_key_raw(jira.get_project(), line)
if jira.get_important() and len(jira.get_release_note()) == 0:
@@ -608,7 +606,7 @@ def main():
reloutputs.write_key_raw(jira.get_project(), line)
line = '\n**WARNING: No release note provided for this important issue.**\n\n'
lint_message += "\nWARNING: important issue %s lacks release notes." % \
- (notableclean(jira.get_id()))
+ (textsanitize(jira.get_id()))
reloutputs.write_key_raw(jira.get_project(), line)
if jira.check_version_string():