Skip to content

Conversation

@X0RW3LL
Copy link

@X0RW3LL X0RW3LL commented Jul 25, 2024

  • lib/six.py: Import upstream version 1.16.0
  • peda.py: Refactor deprecated gdb logging command syntax
  • peda:py: Fix Python 3.12 Syntax Warnings (use raw strings)
  • lib/{nasm,utils}.py: Fix Python 3.12 Syntax Warnings (use raw strings)

X0RW3LL added 3 commits July 25, 2024 05:31
This fixes the following traceback call on python3.12,

  Traceback (most recent call last):
    File "/usr/share/gdb-peda/peda.py", line 30, in <module>
      from six.moves import range
  ModuleNotFoundError: No module named 'six.moves'
  (gdb)

which ends up with gdb not sourcing peda

Signed-off-by: X0RW3LL <[email protected]>
This gets rid of the following deprecation warnings at the end
of running a binary:

  [Inferior 1 (process 6642) exited normally]
  Warning: 'set logging off', an alias for the command 'set logging enabled', is deprecated.
  Use 'set logging enabled off'.

  Warning: 'set logging on', an alias for the command 'set logging enabled', is deprecated.
  Use 'set logging enabled on'.

  Warning: not running
  gdb-peda$
This commit addresses the python3.6 deprecation of invalid
escape sequences in str/bytes by using raw strings, which in turn
addresses DeprecationWarning and SyntaxWarning in later versions

This change will also avoid a future SyntaxError as per the
python3.12 release highlights

Following is a complete dump of all the affected lines:

 $ find . -type f -name '*.py' -exec pycodestyle --select W605 {} \;
 ./lib/nasm.py:85:48: W605 invalid escape sequence '\s'
 ./lib/nasm.py:85:54: W605 invalid escape sequence '\s'
 ./lib/nasm.py:85:59: W605 invalid escape sequence '\s'
 ./lib/utils.py:526:42: W605 invalid escape sequence '\s'
 ./lib/utils.py:543:36: W605 invalid escape sequence '\s'
 ./lib/utils.py:592:28: W605 invalid escape sequence '\('
 ./peda.py:151:29: W605 invalid escape sequence '\['
 ./peda.py:151:35: W605 invalid escape sequence '\]'
 ./peda.py:373:41: W605 invalid escape sequence '\s'
 ./peda.py:550:27: W605 invalid escape sequence '\d'
 ./peda.py:550:31: W605 invalid escape sequence '\s'
 ./peda.py:550:48: W605 invalid escape sequence '\s'
 ./peda.py:550:61: W605 invalid escape sequence '\s'
 ./peda.py:550:69: W605 invalid escape sequence '\s'
 ./peda.py:550:81: W605 invalid escape sequence '\s'
 ./peda.py:554:31: W605 invalid escape sequence '\d'
 ./peda.py:554:35: W605 invalid escape sequence '\s'
 ./peda.py:554:47: W605 invalid escape sequence '\s'
 ./peda.py:554:60: W605 invalid escape sequence '\s'
 ./peda.py:554:68: W605 invalid escape sequence '\s'
 ./peda.py:567:33: W605 invalid escape sequence '\d'
 ./peda.py:596:29: W605 invalid escape sequence '\d'
 ./peda.py:916:33: W605 invalid escape sequence '\s'
 ./peda.py:916:49: W605 invalid escape sequence '\s'
 ./peda.py:916:59: W605 invalid escape sequence '\s'
 ./peda.py:918:38: W605 invalid escape sequence '\s'
 ./peda.py:918:46: W605 invalid escape sequence '\s'
 ./peda.py:918:56: W605 invalid escape sequence '\s'
 ./peda.py:937:36: W605 invalid escape sequence '\['
 ./peda.py:937:45: W605 invalid escape sequence '\]'
 ./peda.py:969:26: W605 invalid escape sequence '\s'
 ./peda.py:969:36: W605 invalid escape sequence '\s'
 ./peda.py:1116:33: W605 invalid escape sequence '\s'
 ./peda.py:1223:29: W605 invalid escape sequence '\s'
 ./peda.py:1223:37: W605 invalid escape sequence '\s'
 ./peda.py:1226:33: W605 invalid escape sequence '\s'
 ./peda.py:1226:37: W605 invalid escape sequence '\s'
 ./peda.py:1226:48: W605 invalid escape sequence '\w'
 ./peda.py:1235:37: W605 invalid escape sequence '\s'
 ./peda.py:1235:45: W605 invalid escape sequence '\s'
 ./peda.py:1235:59: W605 invalid escape sequence '\['
 ./peda.py:1235:65: W605 invalid escape sequence '\]'
 ./peda.py:1430:43: W605 invalid escape sequence '\s'
 ./peda.py:1430:60: W605 invalid escape sequence '\s'
 ./peda.py:1430:69: W605 invalid escape sequence '\s'
 ./peda.py:1430:75: W605 invalid escape sequence '\['
 ./peda.py:1430:79: W605 invalid escape sequence '\]'
 ./peda.py:1430:81: W605 invalid escape sequence '\s'
 ./peda.py:2096:56: W605 invalid escape sequence '\s'
 ./peda.py:2114:48: W605 invalid escape sequence '\s'
 ./peda.py:2214:41: W605 invalid escape sequence '\s'
 ./peda.py:2242:25: W605 invalid escape sequence '\s'
 ./peda.py:2242:62: W605 invalid escape sequence '\s'
 ./peda.py:2242:72: W605 invalid escape sequence '\s'
 ./peda.py:2316:40: W605 invalid escape sequence '\s'
 ./peda.py:2416:27: W605 invalid escape sequence '\['
 ./peda.py:2416:31: W605 invalid escape sequence '\]'
 ./peda.py:2416:35: W605 invalid escape sequence '\.'
 ./peda.py:2474:35: W605 invalid escape sequence '\s'
 ./peda.py:2474:64: W605 invalid escape sequence '\.'
 ./peda.py:2681:62: W605 invalid escape sequence '\ '
 ./peda.py:2681:81: W605 invalid escape sequence '\?'
 ./peda.py:2832:65: W605 invalid escape sequence '\ '
 ./peda.py:3414:26: W605 invalid escape sequence '\['
 ./peda.py:3414:32: W605 invalid escape sequence '\]'
 ./peda.py:3519:38: W605 invalid escape sequence '\['
 ./peda.py:3519:44: W605 invalid escape sequence '\]'
 ./peda.py:3529:32: W605 invalid escape sequence '\s'
 ./peda.py:3529:38: W605 invalid escape sequence '\s'
 ./peda.py:3531:30: W605 invalid escape sequence '\s'
 ./peda.py:3533:30: W605 invalid escape sequence '\s'
 ./peda.py:4125:29: W605 invalid escape sequence '\s'
 ./peda.py:4125:37: W605 invalid escape sequence '\s'

Fix Python 3.12 Syntax Warnings (use raw strings)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant