diff options
author | Martin Liska <mliska@suse.cz> | 2021-06-29 08:49:26 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2021-06-29 08:49:26 +0200 |
commit | 490d1e1be15b62b51a2de248e6d7f76356402bc9 (patch) | |
tree | a140872a97abd647ca0e5287e5375b7514be227b /contrib/mklog.py | |
parent | adf0825ae77554b00615521a545b608892bb272c (diff) | |
parent | 095a01cf6e3883b3083cf339b680cdb39910f529 (diff) | |
download | gcc-490d1e1be15b62b51a2de248e6d7f76356402bc9.zip gcc-490d1e1be15b62b51a2de248e6d7f76356402bc9.tar.gz gcc-490d1e1be15b62b51a2de248e6d7f76356402bc9.tar.bz2 |
Merge branch 'master' into devel/sphinx
Diffstat (limited to 'contrib/mklog.py')
-rwxr-xr-x | contrib/mklog.py | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/contrib/mklog.py b/contrib/mklog.py index 674c1dc..ba70af0 100755 --- a/contrib/mklog.py +++ b/contrib/mklog.py @@ -38,6 +38,9 @@ import requests from unidiff import PatchSet +LINE_LIMIT = 100 +TAB_WIDTH = 8 + pr_regex = re.compile(r'(\/(\/|\*)|[Cc*!])\s+(?P<pr>PR [a-z+-]+\/[0-9]+)') prnum_regex = re.compile(r'PR (?P<comp>[a-z+-]+)/(?P<num>[0-9]+)') dr_regex = re.compile(r'(\/(\/|\*)|[Cc*!])\s+(?P<dr>DR [0-9]+)') @@ -134,6 +137,16 @@ def get_pr_titles(prs): return '\n'.join(output) +def append_changelog_line(out, relative_path, text): + line = f'\t* {relative_path}:' + if len(line.replace('\t', ' ' * TAB_WIDTH) + ' ' + text) <= LINE_LIMIT: + out += f'{line} {text}\n' + else: + out += f'{line}\n' + out += f'\t{text}\n' + return out + + def generate_changelog(data, no_functions=False, fill_pr_titles=False, additional_prs=None): changelogs = {} @@ -213,12 +226,12 @@ def generate_changelog(data, no_functions=False, fill_pr_titles=False, relative_path = file.path[len(changelog):].lstrip('/') functions = [] if file.is_added_file: - msg = 'New test' if in_tests else 'New file' - out += '\t* %s: %s.\n' % (relative_path, msg) + msg = 'New test.' if in_tests else 'New file.' + out = append_changelog_line(out, relative_path, msg) elif file.is_removed_file: - out += '\t* %s: Removed.\n' % (relative_path) + out = append_changelog_line(out, relative_path, 'Removed.') elif hasattr(file, 'is_rename') and file.is_rename: - out += '\t* %s: Moved to...\n' % (relative_path) + out = append_changelog_line(out, relative_path, 'Moved to...') new_path = file.target_file[2:] # A file can be theoretically moved to a location that # belongs to a different ChangeLog. Let user fix it. @@ -227,6 +240,7 @@ def generate_changelog(data, no_functions=False, fill_pr_titles=False, out += '\t* %s: ...here.\n' % (new_path) elif os.path.basename(file.path) in generated_files: out += '\t* %s: Regenerate.\n' % (relative_path) + append_changelog_line(out, relative_path, 'Regenerate.') else: if not no_functions: for hunk in file: |