-
Notifications
You must be signed in to change notification settings - Fork 3.1k
"--user" fixes #511
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"--user" fixes #511
Conversation
@@ -184,6 +185,8 @@ def run(self, options, args): | |||
options.src_dir = os.path.abspath(options.src_dir) | |||
install_options = options.install_options or [] | |||
if options.use_user_site: | |||
if running_under_virtualenv() and virtualenv_no_global(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why check both here, since virtualenv_no_global
implies running_under_virtualenv
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
early on in the commit history, "virtualenv_no_global" didn't imply "running_under_virtualenv". the former was just checking for the global file. later I changed "virtualenv_no_global", but didn't update these if statments.
I can change this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
well, even when "virtualenv_no_global" was only checking for the existence of a "no-global-site-packages.txt" in the right place, that's still pretty conclusive. not sure really why I ever had both checks in there : )
Thanks for working on this, generally looks great! More tests would be excellent, though I'd probably merge it with the current level of testing, pending comments above. |
ok, cool, I'll post some updates in a day or two. |
I think i've addressed everything that's been mentioned questions:
next weekend (when I have some more time) I plan on getting my environment straight once and for all, so I can pass all the tests. tests I've been running: |
@@ -112,6 +113,14 @@ def fwrite(f, s): | |||
|
|||
from distutils.sysconfig import get_python_lib, get_python_version | |||
|
|||
def get_user_site(): | |||
"return site.USER_SITE or None if not implemented in earlier version of python" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit we should follow http://www.python.org/dev/peps/pep-0257/#one-line-docstrings and make it a sentence ie capitalize Return and end in a period.
lgtm - if you're happy with your testing |
ok, I worked on my environments, and ran tests again for for linux testing, down to 2 unrelated failures:
on windows:
|
Github is complaining about mergability. I can try merge and thus cause a travis CI run on my personal develop branch, or maybe we can wait a little longer and get the test on pull request working see Issue #527 |
I'm willing to rebase my userscheme branch on my locally updated develop branch (and retest) and then force push userscheme to my origin. github shouldn't complain then about you merging userscheme, but I guess that would blow away all the comment references in this pull request. so probably not desired? |
Are you on |
Conflicts: pip/util.py
ok, I think I did what we talked about on #pip |
Carl/Paul: I fear the scope of this branch has gotten too large for anyone to feel comfortable merging it. let me know, if you think that would help? |
If you feel willing and more comfortable doing that - that's fine with me. However I'm probably happy enough to merge this shortly - I was hoping to fix #530 first so we have a good green build to depend on. |
hmm...It's hard to decide. I know I'm more making more work for myself. : ) OTOH, if that sounds like more work for you, I understand. |
That works for me, thanks for all your work on this! I'm travelling back home this weekend so I wouldn't expect responsiveness, but I'll try address next week. |
I'm with Paul - I wouldn't have asked you to do that extra work, but I do find more smaller pull requests easier to deal with when possible. |
here's my plan for breaking this up I'll reference the plan when I do requests. |
closing, as this request is being handled in smaller parts: |
Pull request to fix various "--user" issues
493: pip shouldn't allow --user installs in virtualenvs (w/o --system-site-packages)
440: pip install --user tries to uninstall system package
494: can't uninstall --user "develop" install
495: user site should be "local" in virtualenvs with --system-site-packages (mostly so we can test)
Tests are passing for py25, py26, py27, and py32 (against rebased branch from 4/15)
I'm happy to trim out or alter parts that may cause concern in the interest of getting as many of these issues resolved.
As mentioned to Carl over email, I'm concerned about the level of testing we can achieve for the "--user" feature, given that the test framework uses virtualenvs, and that full coverage would require real python installs.
I'd like to still add some mock/patch tests for the significantly altered util.egg_link_path, and more tests in general.