AttributeError: 'GateKeeperLoader' object has no attribute 'is_package'
a bundle attempt in a recent virtualenv fails with:
INFO:PyInstaller.building.imphook:Loading module hook "hook-PIL.Image.py"...
Traceback (most recent call last):
File "/home/user/.local/share/virtualenvs/bitmask/bin/pyinstaller", line 11, in <module>
sys.exit(run())
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/__main__.py", line 90, in run
run_build(pyi_config, spec_file, **vars(args))
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/__main__.py", line 46, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 788, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 734, in build
exec(text, spec_namespace)
File "<string>", line 73, in <module>
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 212, in __init__
self.__postinit__()
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/datastruct.py", line 161, in __postinit__
self.assemble()
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 470, in assemble
module_hook.post_graph()
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/imphook.py", line 409, in post_graph
self._load_hook_module()
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/building/imphook.py", line 376, in _load_hook_module
self.hook_module_name, self.hook_filename)
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/hooks/hook-PIL.Image.py", line 18, in <module>
hiddenimports = collect_submodules('PIL', lambda name: 'ImagePlugin' in name)
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/utils/hooks/__init__.py", line 566, in collect_submodules
if not is_package(package):
File "/home/user/.local/share/virtualenvs/bitmask/local/lib/python2.7/site-packages/PyInstaller/utils/hooks/__init__.py", line 516, in is_package
return loader.is_package(module_name)
AttributeError: 'GateKeeperLoader' object has no attribute 'is_package'
it seems that the gatekeeper module in vext package breaks the PIL-hooks.
Workaround for now is manually deleting PIL* from the hooks folder in the virtualenv