Hi Bruno, Bruno Haible <br...@clisp.org> writes:
> Could you please fix the ChangeLog entry (s/dependencies/dependents/)? Oops, good catch. Fixed with the attached. > And I also see a performance regression in one case: > > $ time ./gnulib-tool --extract-dependents stdlib > $ time ./gnulib-tool --extract-dependents stdlib > $ time ./gnulib-tool --extract-dependents stdlib > Before: ca. 0.2 to 0.25 seconds. > AFter: 1.0 seconds. > > In this case, when there is only a single call to getDependents(), it was > apparently faster to use the 'find modules ...' approach, compared to > _getAllModules(). > > Could you please make this case fast again? The way I'm thinking of is to add > a boolean argument 'top_level_call' to getDependents(), and pass this argument > as true from main.py and as false from everywhere else. Thanks, I reproduced your findings. I'll have a look at fixing it with your suggestions. Collin
>From a67335ecf3ac57feeacb156d7871c88f8ea80817 Mon Sep 17 00:00:00 2001 From: Collin Funk <collin.fu...@gmail.com> Date: Wed, 4 Dec 2024 17:28:44 -0800 Subject: [PATCH] Fix a recent ChangeLog entry. --- ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 88264000de..bc5f2b5f29 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,7 +8,7 @@ 2024-12-03 Collin Funk <collin.fu...@gmail.com> - gnulib-tool.py: Optimize --extract-recursive-dependencies. + gnulib-tool.py: Optimize --extract-recursive-dependents. * pygnulib/GLModuleSystem.py (GLModuleSystem.list): Add optional argument to include test modules. (GLModule._getDependents) New function. -- 2.47.1