Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #21767

Re: avoid import short-circuiting

From Robert Kern <robert.kern@gmail.com>
Subject Re: avoid import short-circuiting
Date 2012-03-16 17:19 +0000
References <4F636F0D.3060006@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.729.1331918404.3037.python-list@python.org> (permalink)

Show all headers | View raw


On 3/16/12 4:49 PM, Andrea Crotti wrote:
> I started the following small project:
>
> https://github.com/AndreaCrotti/import-tree
>
> because I would like to find out what exactly depends on what at run-time, using
> an import hook.
>
> It works quite well for small examples but the main problem is that once a
> module is imported
> it's added to sys.modules and then it doesn't go through the import hook anymore.
>
> I tried to mess around with sys.modules but it might not be a good idea, and it
> leads to easy
> infinite loops.
> Is there a good way to achieve this?
> I guess I could do the loop detection myself, but that should not be too hard..

You want to monkeypatch __builtin__.__import__() instead. It always gets called.

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
  that is made terrible by our own mad attempt to interpret it as though it had
  an underlying truth."
   -- Umberto Eco

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: avoid import short-circuiting Robert Kern <robert.kern@gmail.com> - 2012-03-16 17:19 +0000

csiph-web