Message ID | 0b0fbd64-2d49-fde5-51ec-8065e0ef2004@codesourcery.com |
---|---|
State | New |
Headers | show |
Series | [RFC] mklog.py: Parse first 10 lines for PR/DR number | expand |
On 9/8/20 3:47 AM, Tobias Burnus wrote: > Hi Martin, hi all, > > currently, mklog searches for "PR" (and "DR") only in the > first line of a new 'testsuite' file. > > I think in many cases, the PR is listed a bit later than > the first line – although, it is usually in the first few > lines; in my example, it is in line 3 and 4. > > Admittedly, I do have cases where later lines are wrong > like > "! Not tested due to PR ...' > > How about testing the first, e.g., ten lines? > That's what the attached patch does. I frequently use "prNNNNN" in dg-warning directives xfailed due to the pr. They're probably only rarely in the first 10 lines but stopping the search after the first dg- directive is seen would help reduce the likelihood of the false positives even further. Martin
On 9/8/20 5:50 PM, Martin Sebor wrote: > On 9/8/20 3:47 AM, Tobias Burnus wrote: >> currently, mklog searches for "PR" (and "DR") only in the >> first line of a new 'testsuite' file. >> >> I think in many cases, the PR is listed a bit later than >> the first line – although, it is usually in the first few >> lines; in my example, it is in line 3 and 4. >> >> Admittedly, I do have cases where later lines are wrong >> like >> "! Not tested due to PR ...' >> >> How about testing the first, e.g., ten lines? >> That's what the attached patch does. > > I frequently use "prNNNNN" in dg-warning directives xfailed due > to the pr. Those won't match pr_regex = re.compile(r'(\/(\/|\*)|[Cc*!])\s+(?P<pr>PR [a-z+-]+\/[0-9]+)') > They're probably only rarely in the first 10 lines > but stopping the search after the first dg- directive is seen > would help reduce the likelihood of the false positives even > further. I think stopping after the first 'dg-' directive does not make sense; at least I tend to start testcases with 'dg-do' followed by 'dg-(additional-)options'. However, the new version of the patch stops after the first 'dg-error/dg-warning'. Tobias ----------------- Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Alexander Walter
On 9/8/20 6:20 PM, Tobias Burnus wrote: > However, the new version of the patch stops after the first > 'dg-error/dg-warning'. LGTM. Martin
mklog.py: Parse first 10 lines for PR/DR number contrib/ChangeLog: * mklog.py: Parse first 10 lines for PR/DR number not only the first line. diff --git a/contrib/mklog.py b/contrib/mklog.py index 243edbb15c5..d334a3875c9 100755 --- a/contrib/mklog.py +++ b/contrib/mklog.py @@ -137,7 +137,10 @@ def generate_changelog(data, no_functions=False, fill_pr_titles=False): # Extract PR entries from newly added tests if 'testsuite' in file.path and file.is_added_file: - for line in list(file)[0]: + # Only search first ten lines as later lines may + # contains commented code which a note that it + # has not been tested due to a certain PR or DR. + for line in list(file)[0][0:10]: m = pr_regex.search(line.value) if m: pr = m.group('pr') @@ -149,8 +152,6 @@ def generate_changelog(data, no_functions=False, fill_pr_titles=False): dr = m.group('dr') if dr not in prs: prs.append(dr) - else: - break if fill_pr_titles: out += get_pr_titles(prs)