On systems where os-level packaging is available (e.g., fedora linux), it is not unusual to want a newer python package installed than available from the vendor. pip install --user can be used for this. But then there is the danger that these pip installed packages are not maintained. At least, pip should have the ability to alert the user to potential updates, pip update could list which packages need updating, and offer to perform the update. I think this would go a long way to helping with this problem. -- -- Those who don't understand recursion are doomed to repeat it
On Wed, Aug 27, 2014 at 7:58 AM, Neal Becker <ndbecker2@gmail.com> wrote:
On systems where os-level packaging is available (e.g., fedora linux), it is not unusual to want a newer python package installed than available from the vendor. pip install --user can be used for this.
How? I have exactly this problem with nose. We actually get it bundled (currently at ancient 1.1.2, trying to get to 1.3.4) with a bunch of other open source software from an outside packaging company, and even though I add the --user flag, it still complains that a version is already installed. When I add the --upgrade flag it tries to uninstall the global version. Skip
On 27 August 2014 13:58, Neal Becker <ndbecker2@gmail.com> wrote:
At least, pip should have the ability to alert the user to potential updates,
pip update
could list which packages need updating, and offer to perform the update. I think this would go a long way to helping with this problem.
Do you mean something like "pip list --outdated"? Paul
Wow, I didn't know that existed. Maybe needs to be more obvious. But not quite. It doesn't distinguish between locally installed files, and globally installed. Here, globally installed are maintained by the OS vendor packaging, while locally (user, not virtualenv) installed are managed by pip. Really what's needed is for pip --user to apply to all pip commands, and tell pip to ignore the system stuff. Running pip list --outdated runs a long time, and gives me a very long list of packages that are outdated, leaving me to still sort through which are --user (and I might want to update via pip) and which are global (and I can't really do anything about, other than filing a bug report requesting an update). On Wed, Aug 27, 2014 at 9:24 AM, Paul Moore <p.f.moore@gmail.com> wrote:
On 27 August 2014 13:58, Neal Becker <ndbecker2@gmail.com> wrote:
At least, pip should have the ability to alert the user to potential updates,
pip update
could list which packages need updating, and offer to perform the update. I think this would go a long way to helping with this problem.
Do you mean something like "pip list --outdated"? Paul
-- *Those who don't understand recursion are doomed to repeat it*
On Wed, Aug 27, 2014 at 8:24 AM, Paul Moore <p.f.moore@gmail.com> wrote:
Do you mean something like "pip list --outdated"?
I was unaware of that command, as we were stuck at pip 1.2.1. I just updated pip manually to 1.5.6. That is a very helpful command. It would be even better if it understood --user so it could restrict it's view to user-installed stuff. Also, given that packages can be found in multiple places on a system, for me: * the OpenSuSE system packages * TWW-provided system-wide packages * our own system-wide packages in /opt/local * my private stuff in ~/.local it would be great if there was a way for it to tell me where on my system it found outdated package X. The --verbose flag tells me all sorts of other stuff I'm not really interested in, but not the installed location of the outdated package. Skip
On 27 August 2014 14:46, Skip Montanaro <skip@pobox.com> wrote:
it would be great if there was a way for it to tell me where on my system it found outdated package X. The --verbose flag tells me all sorts of other stuff I'm not really interested in, but not the installed location of the outdated package.
There's also packaged environments like conda. It would be nice if pip could distinguish between conda-managed packages and ones I installed myself. Really, though, this is what the PEP 376 "INSTALLER" file was intended for. As far as I know, though, it was never implemented (and you'd also need to persuade the Linux vendors, the conda people, etc, to use it as well if it were to be of any practical use). Agreed about reporting the installed location, though. Specific suggestions like this would be good things to add to the pip issue tracker. Paul
On Wed, Aug 27, 2014 at 8:24 AM, Paul Moore <p.f.moore@gmail.com> wrote:
On 27 August 2014 13:58, Neal Becker <ndbecker2@gmail.com> wrote:
At least, pip should have the ability to alert the user to potential updates,
pip update
could list which packages need updating, and offer to perform the update. I think this would go a long way to helping with this problem.
Do you mean something like "pip list --outdated"? Paul
Also, isn't this discussion better suited for Distutils-SIG?
participants (4)
-
Ian Cordasco
-
Neal Becker
-
Paul Moore
-
Skip Montanaro