Fix deepreload on Python 3 #1625

Merged
merged 1 commit into from Apr 18, 2012

Projects

None yet

2 participants

@takluyver
Member

As described in #1622, it seems that imp.find_module() on Python 3.2 imports other modules, like io, while running. We don't want deepreload to catch those, so this restores the original import hook for find_module.

It's not terribly neat, but I don't currently see a better way of doing it. Ideally, we'd just delay installing our __import__ until after find_module had run, but our implementation of __import__ can itself call find_module, so this little dance seems to be necessary.

Closes gh-1622, and hopefully fixes a test failure we saw last night.

@fperez
Member
fperez commented Apr 18, 2012

Great, thanks! Looks clean, merging now. And yet again, the Panda shines and caught this! I'm really happy that you set that up, we're reaping the benefits every day.

@fperez fperez merged commit 0eb2ae9 into ipython:master Apr 18, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment