On Wed, 2 May 2018 11:26:35 +0200 Victor Stinner firstname.lastname@example.org wrote:
AFAIK, Mercurial already has its own lazy importer.
Nick Coghlan is working on the C API to configure Python startup: PEP 432. When it will be ready, maybe Mercurial could use a custom Python optimized for its use case.
IMHO Python import system is inefficient. We try too many alternative names.
The overhead of importing is not in trying too many names, but in loading the module and executing its bytecode.
Why do we still check for the .pyc file outside __pycache__ directories?
Because we support sourceless distributions.
Why do we have to check for 3 different names for .so files?