From 72e90b69728d089de13974bd41aac29c4c08f513 Mon Sep 17 00:00:00 2001 From: Valentin Lorentz Date: Fri, 2 Aug 2024 07:49:45 +0200 Subject: [PATCH] Use cProfile instead of profile I can't open .prof files created with 'profile' using pyprof2calltree: ``` Traceback (most recent call last): File "/home/val/.local/bin/pyprof2calltree", line 8, in sys.exit(main()) ^^^^^^ File "/home/val/.local/lib/python3.11/site-packages/pyprof2calltree.py", line 339, in main kg = CalltreeConverter(pstats.Stats(args.infile)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/val/.local/lib/python3.11/site-packages/pyprof2calltree.py", line 178, in __init__ self.entries = pstats2entries(profiling_data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/val/.local/lib/python3.11/site-packages/pyprof2calltree.py", line 135, in pstats2entries cc, nc, tt, ct = call_info ^^^^^^^^^^^^^^ TypeError: cannot unpack non-iterable int object ``` --- src/scripts/limnoria.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/scripts/limnoria.py b/src/scripts/limnoria.py index eed67fb95..6eb1cbd6c 100644 --- a/src/scripts/limnoria.py +++ b/src/scripts/limnoria.py @@ -361,11 +361,11 @@ def main(): owner = Owner.Class() if options.profile: - import profile + import cProfile world.profiling = True - profile.runctx('run()', - globals=globals(), locals={**locals(), "run": run}, - filename='%s-%i.prof' % (nick, time.time())) + cProfile.runctx('run()', + globals=globals(), locals={**locals(), "run": run}, + filename='%s-%i.prof' % (nick, time.time())) else: run()