From: José Matos Date: Thu, 27 Jun 2024 20:20:49 +0000 (+0100) Subject: Remove profiling.py X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=7a79a416b8ab501ec8158afeb4171b5d92094b5e;p=lyx.git Remove profiling.py The hotshot module used there only works for Python 2. BTW the profiling turned out not be necessary. As a case in point Python 3.13 is twice as fast as Python 3.6 when using lyx2lyx. Not only that but Python 3 is almost 10 times faster than using Python 2 for this particular case. --- diff --git a/lib/lyx2lyx/Makefile.am b/lib/lyx2lyx/Makefile.am index fd7c92718c..b09f5b67f4 100644 --- a/lib/lyx2lyx/Makefile.am +++ b/lib/lyx2lyx/Makefile.am @@ -36,7 +36,6 @@ dist_lyx2lyx_PYTHON = \ lyx_2_3.py \ lyx_2_4.py \ lyx_2_5.py \ - profiling.py \ test_parser_tools.py install-data-hook: @@ -51,4 +50,3 @@ alltests-recursive: else \ echo -e "=====================\nlyx2lyx tests failed.\n====================="; \ fi - diff --git a/lib/lyx2lyx/profiling.py b/lib/lyx2lyx/profiling.py deleted file mode 100755 index e947cfd602..0000000000 --- a/lib/lyx2lyx/profiling.py +++ /dev/null @@ -1,55 +0,0 @@ -#! /usr/bin/python3 -# Copyright (C) 2004 José Matos -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -# We need all this because lyx2lyx does not have the .py termination -import imp - -lyx2lyx = imp.load_source("lyx2lyx", "lyx2lyx", open("lyx2lyx")) - -# Profiler used in the study -import os - -import hotshot -import hotshot.stats - -""" -This program profiles lyx2lyx. -Usage: - ./profiling.py option_to_lyx2lyx - -Example: - ./profiling.py -ou.lyx ../doc/UserGuide.lyx -""" - - -def main(): - # This will only work with python >= 2.2, the version where this module was added - prof = hotshot.Profile("lyx2lyx.prof") # Use temporary file, here? - benchtime = prof.runcall(lyx2lyx.main) - prof.close() - - # After the tests, show the profile analysis. - stats = hotshot.stats.load("lyx2lyx.prof") - stats.strip_dirs() - stats.sort_stats("time", "calls") - stats.print_stats(20) - - os.unlink("lyx2lyx.prof") - - -if __name__ == "__main__": - main()