Message ID | 20241216231128.211648-2-Ariel.Otilibili-Anieli@eurecom.fr (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | tools, xen/scripts: clear out Python syntax warnings | expand |
Hi Ariel, > On 16 Dec 2024, at 23:07, Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> wrote: > > * since 3.12 invalid escape sequences generate SyntaxWarning > * in the future, these invalid sequences will generate SyntaxError > * therefore changed syntax to raw string notation. > > Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes > Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") > Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") > Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") > Fixes: 622e368758b ("Add ZFS libfsimage support patch") > Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") > Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") > > Cc: Anthony PERARD <anthony.perard@vates.tech> > Cc: Luca Fancellu <luca.fancellu@arm.com> > Cc: Andrew Cooper <andrew.cooper3@citrix.com> > Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> For the xen_analysis tool: Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>
On Tuesday, December 17, 2024 09:31 CET, Luca Fancellu <Luca.Fancellu@arm.com> wrote: > Hi Ariel, > > > On 16 Dec 2024, at 23:07, Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> wrote: > > > > * since 3.12 invalid escape sequences generate SyntaxWarning > > * in the future, these invalid sequences will generate SyntaxError > > * therefore changed syntax to raw string notation. > > > > Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes > > Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") > > Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") > > Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") > > Fixes: 622e368758b ("Add ZFS libfsimage support patch") > > Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") > > Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") > > > > Cc: Anthony PERARD <anthony.perard@vates.tech> > > Cc: Luca Fancellu <luca.fancellu@arm.com> > > Cc: Andrew Cooper <andrew.cooper3@citrix.com> > > Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> > > For the xen_analysis tool: > > Reviewed-by: Luca Fancellu <luca.fancellu@arm.com> Awesome, Luca; thanks for review. I am looking forward a feedback on the other hunks. Ariel > >
On 16/12/2024 11:07 pm, Ariel Otilibili wrote: > * since 3.12 invalid escape sequences generate SyntaxWarning > * in the future, these invalid sequences will generate SyntaxError > * therefore changed syntax to raw string notation. > > Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes > Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") > Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") > Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") > Fixes: 622e368758b ("Add ZFS libfsimage support patch") > Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") > Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") > > Cc: Anthony PERARD <anthony.perard@vates.tech> > Cc: Luca Fancellu <luca.fancellu@arm.com> > Cc: Andrew Cooper <andrew.cooper3@citrix.com> > Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> Having poked about a bit more, this is all a big mess, but these do now work with Py3.12. leading \ for non-special characters are ignored in [], which is why ... > --- > tools/pygrub/src/GrubConf.py | 4 ++-- > tools/pygrub/src/pygrub | 6 +++--- > xen/scripts/xen_analysis/cppcheck_analysis.py | 4 ++-- > 3 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/tools/pygrub/src/GrubConf.py b/tools/pygrub/src/GrubConf.py > index 580c9628ca..904e7d5567 100644 > --- a/tools/pygrub/src/GrubConf.py > +++ b/tools/pygrub/src/GrubConf.py > @@ -320,7 +320,7 @@ class GrubConfigFile(_GrubConfigFile): > def grub2_handle_set(arg): > (com,arg) = grub_split(arg,2) > com="set:" + com > - m = re.match("([\"\'])(.*)\\1", arg) > + m = re.match(r"([\"\'])(.*)\1", arg) ... the \' works here. Anyway, I've checked the others and they seem to work, so I suggest taking this roughly this form. Some notes about the commit message. The subject ought to be: tools: Fix syntax warnings with Python 3.12 The text should be a regular paragraph, rather than bullet points like this. I can fix this all on commit if you're happy. ~Andrew
On Tuesday, December 17, 2024 17:26 CET, Andrew Cooper <andrew.cooper3@citrix.com> wrote: > On 16/12/2024 11:07 pm, Ariel Otilibili wrote: > > * since 3.12 invalid escape sequences generate SyntaxWarning > > * in the future, these invalid sequences will generate SyntaxError > > * therefore changed syntax to raw string notation. > > > > Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes > > Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") > > Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") > > Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") > > Fixes: 622e368758b ("Add ZFS libfsimage support patch") > > Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") > > Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") > > > > Cc: Anthony PERARD <anthony.perard@vates.tech> > > Cc: Luca Fancellu <luca.fancellu@arm.com> > > Cc: Andrew Cooper <andrew.cooper3@citrix.com> > > Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> > > Having poked about a bit more, this is all a big mess, but these do now > work with Py3.12. > > leading \ for non-special characters are ignored in [], which is why ... > > > --- > > tools/pygrub/src/GrubConf.py | 4 ++-- > > tools/pygrub/src/pygrub | 6 +++--- > > xen/scripts/xen_analysis/cppcheck_analysis.py | 4 ++-- > > 3 files changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/tools/pygrub/src/GrubConf.py b/tools/pygrub/src/GrubConf.py > > index 580c9628ca..904e7d5567 100644 > > --- a/tools/pygrub/src/GrubConf.py > > +++ b/tools/pygrub/src/GrubConf.py > > @@ -320,7 +320,7 @@ class GrubConfigFile(_GrubConfigFile): > > def grub2_handle_set(arg): > > (com,arg) = grub_split(arg,2) > > com="set:" + com > > - m = re.match("([\"\'])(.*)\\1", arg) > > + m = re.match(r"([\"\'])(.*)\1", arg) > > ... the \' works here. > > Anyway, I've checked the others and they seem to work, so I suggest > taking this roughly this form. > > Some notes about the commit message. The subject ought to be: > > tools: Fix syntax warnings with Python 3.12 > > The text should be a regular paragraph, rather than bullet points like this. > > I can fix this all on commit if you're happy. Thanks for the feedback, Andrew; I'm happy with your changes. > > ~Andrew
On 17/12/2024 5:13 pm, Ariel Otilibili-Anieli wrote: > On Tuesday, December 17, 2024 17:26 CET, Andrew Cooper <andrew.cooper3@citrix.com> wrote: > >> On 16/12/2024 11:07 pm, Ariel Otilibili wrote: >>> * since 3.12 invalid escape sequences generate SyntaxWarning >>> * in the future, these invalid sequences will generate SyntaxError >>> * therefore changed syntax to raw string notation. >>> >>> Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes >>> Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") >>> Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") >>> Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") >>> Fixes: 622e368758b ("Add ZFS libfsimage support patch") >>> Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") >>> Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") >>> >>> Cc: Anthony PERARD <anthony.perard@vates.tech> >>> Cc: Luca Fancellu <luca.fancellu@arm.com> >>> Cc: Andrew Cooper <andrew.cooper3@citrix.com> >>> Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> >> Having poked about a bit more, this is all a big mess, but these do now >> work with Py3.12. >> >> leading \ for non-special characters are ignored in [], which is why ... >> >>> --- >>> tools/pygrub/src/GrubConf.py | 4 ++-- >>> tools/pygrub/src/pygrub | 6 +++--- >>> xen/scripts/xen_analysis/cppcheck_analysis.py | 4 ++-- >>> 3 files changed, 7 insertions(+), 7 deletions(-) >>> >>> diff --git a/tools/pygrub/src/GrubConf.py b/tools/pygrub/src/GrubConf.py >>> index 580c9628ca..904e7d5567 100644 >>> --- a/tools/pygrub/src/GrubConf.py >>> +++ b/tools/pygrub/src/GrubConf.py >>> @@ -320,7 +320,7 @@ class GrubConfigFile(_GrubConfigFile): >>> def grub2_handle_set(arg): >>> (com,arg) = grub_split(arg,2) >>> com="set:" + com >>> - m = re.match("([\"\'])(.*)\\1", arg) >>> + m = re.match(r"([\"\'])(.*)\1", arg) >> ... the \' works here. >> >> Anyway, I've checked the others and they seem to work, so I suggest >> taking this roughly this form. >> >> Some notes about the commit message. The subject ought to be: >> >> tools: Fix syntax warnings with Python 3.12 >> >> The text should be a regular paragraph, rather than bullet points like this. >> >> I can fix this all on commit if you're happy. > Thanks for the feedback, Andrew; I'm happy with your changes. And committed. https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=826a9eb072d449cb777d71f52923e6f5f20cefbe Thankyou for your patch. ~Andrew
On Wednesday, December 18, 2024 15:21 CET, Andrew Cooper <andrew.cooper3@citrix.com> wrote: > On 17/12/2024 5:13 pm, Ariel Otilibili-Anieli wrote: > > On Tuesday, December 17, 2024 17:26 CET, Andrew Cooper <andrew.cooper3@citrix.com> wrote: > > > >> On 16/12/2024 11:07 pm, Ariel Otilibili wrote: > >>> * since 3.12 invalid escape sequences generate SyntaxWarning > >>> * in the future, these invalid sequences will generate SyntaxError > >>> * therefore changed syntax to raw string notation. > >>> > >>> Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes > >>> Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") > >>> Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") > >>> Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") > >>> Fixes: 622e368758b ("Add ZFS libfsimage support patch") > >>> Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") > >>> Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") > >>> > >>> Cc: Anthony PERARD <anthony.perard@vates.tech> > >>> Cc: Luca Fancellu <luca.fancellu@arm.com> > >>> Cc: Andrew Cooper <andrew.cooper3@citrix.com> > >>> Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> > >> Having poked about a bit more, this is all a big mess, but these do now > >> work with Py3.12. > >> > >> leading \ for non-special characters are ignored in [], which is why ... > >> > >>> --- > >>> tools/pygrub/src/GrubConf.py | 4 ++-- > >>> tools/pygrub/src/pygrub | 6 +++--- > >>> xen/scripts/xen_analysis/cppcheck_analysis.py | 4 ++-- > >>> 3 files changed, 7 insertions(+), 7 deletions(-) > >>> > >>> diff --git a/tools/pygrub/src/GrubConf.py b/tools/pygrub/src/GrubConf.py > >>> index 580c9628ca..904e7d5567 100644 > >>> --- a/tools/pygrub/src/GrubConf.py > >>> +++ b/tools/pygrub/src/GrubConf.py > >>> @@ -320,7 +320,7 @@ class GrubConfigFile(_GrubConfigFile): > >>> def grub2_handle_set(arg): > >>> (com,arg) = grub_split(arg,2) > >>> com="set:" + com > >>> - m = re.match("([\"\'])(.*)\\1", arg) > >>> + m = re.match(r"([\"\'])(.*)\1", arg) > >> ... the \' works here. > >> > >> Anyway, I've checked the others and they seem to work, so I suggest > >> taking this roughly this form. > >> > >> Some notes about the commit message. The subject ought to be: > >> > >> tools: Fix syntax warnings with Python 3.12 > >> > >> The text should be a regular paragraph, rather than bullet points like this. > >> > >> I can fix this all on commit if you're happy. > > Thanks for the feedback, Andrew; I'm happy with your changes. > > And committed. Awesome, Andrew! Thanks to you! > > https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=826a9eb072d449cb777d71f52923e6f5f20cefbe > > Thankyou for your patch. > > ~Andrew
diff --git a/tools/pygrub/src/GrubConf.py b/tools/pygrub/src/GrubConf.py index 580c9628ca..904e7d5567 100644 --- a/tools/pygrub/src/GrubConf.py +++ b/tools/pygrub/src/GrubConf.py @@ -320,7 +320,7 @@ class GrubConfigFile(_GrubConfigFile): def grub2_handle_set(arg): (com,arg) = grub_split(arg,2) com="set:" + com - m = re.match("([\"\'])(.*)\\1", arg) + m = re.match(r"([\"\'])(.*)\1", arg) if m is not None: arg=m.group(2) return (com,arg) @@ -402,7 +402,7 @@ class Grub2ConfigFile(_GrubConfigFile): continue # new image - title_match = re.match('^menuentry ["\'](.*?)["\'] (.*){', l) + title_match = re.match(r'^menuentry ["\'](.*?)["\'] (.*){', l) if title_match: if img is not None: raise RuntimeError("syntax error: cannot nest menuentry (%d %s)" % (len(img),img)) diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub index 9d51f96070..e1657c494b 100755 --- a/tools/pygrub/src/pygrub +++ b/tools/pygrub/src/pygrub @@ -614,7 +614,7 @@ class Grub: title = self.cf.default while 1: try: - title = re.search('(\S)>(\S.+$)',title).group(2) + title = re.search(r'(\S)>(\S.+$)',title).group(2) except AttributeError: break @@ -1039,7 +1039,7 @@ if __name__ == "__main__": # if boot filesystem is set then pass to fsimage.open bootfsargs = '"%s"' % incfg["args"] - bootfsgroup = re.findall('zfs-bootfs=(.*?)[\s\,\"]', bootfsargs) + bootfsgroup = re.findall(r'zfs-bootfs=(.*?)[\s\,\"]', bootfsargs) if bootfsgroup: bootfsoptions = bootfsgroup[0] else: @@ -1104,7 +1104,7 @@ if __name__ == "__main__": if chosencfg["args"]: zfsinfo = xenfsimage.getbootstring(fs) if zfsinfo is not None: - e = re.compile("zfs-bootfs=[\w\-\.\:@/]+" ) + e = re.compile(r"zfs-bootfs=[\w\-.:@/]+" ) (chosencfg["args"],count) = e.subn(zfsinfo, chosencfg["args"]) if count == 0: chosencfg["args"] += " -B %s" % zfsinfo diff --git a/xen/scripts/xen_analysis/cppcheck_analysis.py b/xen/scripts/xen_analysis/cppcheck_analysis.py index 850335c998..ce7bda91b6 100644 --- a/xen/scripts/xen_analysis/cppcheck_analysis.py +++ b/xen/scripts/xen_analysis/cppcheck_analysis.py @@ -93,7 +93,7 @@ def __generate_suppression_list(out_file): # start of a comment '/*' comment_line_starts = re.match('^[ \t]*/\*.*$', line) # Matches a line with text and the end of a comment '*/' - comment_line_stops = re.match('^.*\*/$', line) + comment_line_stops = re.match(r'^.*\*/$', line) if (not comment_section) and comment_line_starts: comment_section = True if (len(line.strip()) != 0) and (not comment_section): @@ -157,7 +157,7 @@ def generate_cppcheck_deps(): "Error occured retrieving cppcheck version:\n{}\n\n{}" ) - version_regex = re.search('^Cppcheck (\d+)\.(\d+)(?:\.\d+)?$', + version_regex = re.search(r'^Cppcheck (\d+)\.(\d+)(?:\.\d+)?$', invoke_cppcheck, flags=re.M) # Currently, only cppcheck version >= 2.7 is supported, but version 2.8 is # known to be broken, please refer to docs/misra/cppcheck.txt
* since 3.12 invalid escape sequences generate SyntaxWarning * in the future, these invalid sequences will generate SyntaxError * therefore changed syntax to raw string notation. Link: https://docs.python.org/3/whatsnew/3.12.html#other-language-changes Fixes: d8f3a67bf98 ("pygrub: further improve grub2 support") Fixes: dd03048708a ("xen/pygrub: grub2/grub.cfg from RHEL 7 has new commands in menuentry") Fixes: d1b93ea2615 ("tools/pygrub: Make pygrub understand default entry in string format") Fixes: 622e368758b ("Add ZFS libfsimage support patch") Fixes: 02b26c02c7c ("xen/scripts: add cppcheck tool to the xen-analysis.py script") Fixes: 56c0063f4e7 ("xen/misra: xen-analysis.py: Improve the cppcheck version check") Cc: Anthony PERARD <anthony.perard@vates.tech> Cc: Luca Fancellu <luca.fancellu@arm.com> Cc: Andrew Cooper <andrew.cooper3@citrix.com> Signed-off-by: Ariel Otilibili <Ariel.Otilibili-Anieli@eurecom.fr> --- tools/pygrub/src/GrubConf.py | 4 ++-- tools/pygrub/src/pygrub | 6 +++--- xen/scripts/xen_analysis/cppcheck_analysis.py | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-)