changeset 30156:75c71c533977

demandimport: disable lazy import of __builtin__ Demandimport uses the "try to import __builtin__, else use builtins" trick to handle Python 3. External libraries and extensions might do something similar. On Fedora 25 subversion-python-1.9.4-4.fc25.x86_64 will do just that (except the opposite) ... and it failed all subversion convert tests because demandimport was hiding that it didn't have builtins but should use __builtin__. The builtin module has already been imported when demandimport is loaded so there is no point in trying to import it on demand. Just always ignore both variants in demandimport.
author Mads Kiilerich <madski@unity3d.com>
date Fri, 14 Oct 2016 03:03:39 +0200
parents b7a966ce89ed
children df224038c516
files mercurial/demandimport.py
diffstat 1 files changed, 2 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/demandimport.py	Thu Oct 13 12:50:27 2016 +0200
+++ b/mercurial/demandimport.py	Fri Oct 14 03:03:39 2016 +0200
@@ -291,6 +291,8 @@
     'sqlalchemy.events', # has import-time side effects (issue5085)
     # setuptools 8 expects this module to explode early when not on windows
     'distutils.msvc9compiler',
+    '__builtin__',
+    'builtins',
     ]
 
 if _pypy: