pip install sqlalchemy-migrate crashes and burns inexplicably
-
21-12-2019 - |
Question
Running Python in a virtualenv under Windows 8 x64, working my way through the flask megatutorial. There's a very thorough setup guide, and one of the things I have to do is install sqlalchemy-migrate.
I do this in the sequence given in the guide, no steps skipped. With the virtualenv active, taking care to use the right interpreter, I run:
pip install sqlalchemy-migrate
At which point it crunches and finally returns:
Installed c:\users\erez\code\flask-megatutorial\flask\build\sqlalchemy-migrate\pbr-0.5.23-py2.7.egg
running egg_info
creating pip-egg-info\sqlalchemy_migrate.egg-info
writing requirements to pip-egg-info\sqlalchemy_migrate.egg-info\requires.txt
writing pip-egg-info\sqlalchemy_migrate.egg-info\PKG-INFO
writing top-level names to pip-egg-info\sqlalchemy_migrate.egg-info\top_level.txt
writing dependency_links to pip-egg-info\sqlalchemy_migrate.egg-info\dependency_links.txt
writing entry points to pip-egg-info\sqlalchemy_migrate.egg-info\entry_points.txt
[pbr] Processing SOURCES.txt
writing manifest file 'pip-egg-info\sqlalchemy_migrate.egg-info\SOURCES.txt'
warning: LocalManifestMaker: standard file '-c' not found
error: The system cannot find the file specified
And now I'm stuck. :) Googled the heck out of this. Seems related to PBR, whatever that is, but no resolution. There's a pip.log file too, but it's too big to paste in here, and I know StackOverflow frowns on gists. Still, happy to paste it to a gist if you guys think it would help.
Any help would be most appreciated.
Solution
This is very interesting. The sqlalchemy-migrate project was inactive for a very long time, their last release was 0.7.2 and that release did not work well with SQLAlchemy 0.8.
Turns out that just three days ago http://www.openstack.org/ took ownership of the sqlalchemy-migrate project and pushed three new releases to PyPI, 0.8, 0.8.1 and 0.8.2.
So now you are getting 0.8.2, which has a few changes, among them a change in the dependency versions for pbr. This is, I think, what broke the Windows install.
I would consider these new 0.8.x releases from three days ago highly unstable for now. They don't seem to have bug tracking enabled in their github repo, unfortunately.
To get a successful install first clean up any dependencies that may have gotten installed as part of sqlalchemy-migrate, then install release 0.7.2 as follows:
pip install sqlalchemy-migrate==0.7.2
I will update the tutorial with this as well.