3

The pip requirements.txt file format has the option to specify a line like this:

svn+https://username:password@hostname/repo/subpath#egg=modulename==version

Then you run this command and pip will make a checkout, run setup.py and install the module into the virtualenv:

pip install -r requirements.txt

This works fine with svn 1.7.x. However, I have problems running this with svn 1.8.x (which has been around for quite a while and I really don't want to downgrade all my checkouts again).

The error message from svn reads:

svn: E170000: "https://username:password@hostname/repo/subpath" is not the same repository as "https://username:XXXXXXXX@hostname/repo"

As you can see, apart from the "/subpath" at the end, the difference between the strings is that in the first one the password is preserved while in the second one it is replaced by "XXXXXXXX".

I tried the same with 1.8.x without the password in the requirements.txt, and configured svn to store the password after the first entry. It works, but not for my use case: basically I need to run pip install -r requirements.txt on a fresh virtual box...

Does svn 1.8.x get confused by its own password replacement feature?

How can I fix this problem without downgrading svn?

jonnie
  • 101
  • 1
  • 10

0 Answers0