Terrible performance of Python dependency generator

Elan Ruusamäe glen at pld-linux.org
Mon Nov 23 09:54:30 CET 2015


On 22.11.2015 22:39, Jacek Konieczny wrote:
> /usr/lib/rpm/pythoneggs.py is used to find the dependencies and it is
> not that slow by itself… but it is called twice (Provides + Requires)
> for each file in /usr/share/pythonX.Y. And big Python packages have lots
> of files there. Most of them not adding any extra dependency
> information.
i tried once to make hack to that, when facing similar problem with php 
dependencies generator.

the idea was simple:
1. first time dep generator is invoked, it becames daemon and starts 
listening to unix socket
2. further calls talk to socket instead dispatching the "requests"

but i never finished it, don't know if i have some WIP saved somewhere.

and with rpm4.5 the python dep genreator just compared pythonX.Y 
version  to do print "python(abi) %s" print
that was "optimized" by providing PY_VER as env var.

-- 
glen



More information about the pld-devel-en mailing list