`from bamboo.version import xx` here would catch all the imports that you added in `__init__.py` which means basically all the dependencies. This would thus prevent `setup.py` to run properly since it is the one retrieving the dependencies.

`imp` allows to import a module from a file path and import just that (not its parents).