PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Saturday the 18th of October, 2014

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[11:08:51] <av__> how to get list of packages installed, but not dependencies?
[11:09:00] <av__> pip freeze prints dependencies also
[11:38:42] <nanonyme> av__, uninstall the dependencies?
[11:38:52] <av__> why?
[11:39:03] <nanonyme> 14:08 <av__> how to get list of packages installed, but not dependencies?
[11:39:19] <nanonyme> Your dependencies are installed, ergo pip freeze prints them
[11:39:34] <nanonyme> There isn't really any distinction between packages and their dependencies
[11:39:40] <av__> I am interested in getting the names, don't want to uninstall them
[11:40:42] <av__> oh there is no way? nanonyme
[11:40:45] <av__> :|
[11:40:48] <nanonyme> Not that I know of
[11:40:51] <av__> ok
[11:41:12] <nanonyme> dstufft, should we be tracking explicitly installed stuff for autoremove (see apt-get) kind of functionality in pip?
[12:09:19] <av__> nanonyme do u think its worth to submit it as a feature request?
[12:09:39] <av__> may be something like 'pip freeze --no-dependecies'
[12:20:41] <apollo13> av__: I don't think pip will know at this point what dependencies are
[12:20:55] <apollo13> av__: also what you really want would be "--no-auto-installed"
[12:21:15] <apollo13> ie if you install django and django-something and -something has a dep to django, is it a dependency or not?
[12:21:44] <av__> apollo13 I don't understand :-/
[12:21:56] <av__> wait
[12:22:00] <apollo13> av__: if you install django and then install something which has django as dependency
[12:22:07] <av__> yup, replying
[12:22:09] <av__> one sec
[12:22:10] <apollo13> should pip freeze --no-dependecies now list django or not
[12:22:11] <apollo13> k
[12:23:00] <av__> lets say I have done pip install django... and it also has installed django-something.... so I only want django and I dont want django-something to be in pip freeze
[12:23:43] <apollo13> yes, but what if you say "pip install django django-something" the latter has a dependency to the former
[12:23:51] <av__> should pip freeze --no-dependecies now list django or not..... it should list django, since I have done pip install... but not django-somehting, cos I never did pip install of it
[12:24:05] <apollo13> and the latter*
[12:24:07] <av__> yes, but what if you say "pip install django django-something" the latter has a dependency to the former.... then yes, cos I did ask pip to install it
[12:24:27] <av__> basically to keep track of pip installs
[12:24:40] <apollo13> so you don't want something like --no-dependencies but rather a concept of automatical installs
[12:24:55] <av__> yup you are right
[12:24:57] <apollo13> automatic* lol
[12:25:17] <av__> --no-dependencies is actually bad and ambigious
[12:26:53] <av__> okay submitting feature request
[12:27:19] <av__> but what do I call it
[12:27:59] <av__> 'allow pip freeze --no-auto-installs to list all the packages I installed, but not their dependencies'
[12:28:13] <apollo13> ha, the two hard things in CS; naming things, cache invalidation and off-by-one errors
[12:28:20] <av__> ha ha
[12:36:20] <av__> submitted: https://github.com/pypa/pip/issues/2100
[12:50:19] <pf_moore> av__ Just commented on the issue, but that info isn't available. PEP 376 proposes maintaining it, but no installer actually does so.
[12:50:32] <av__> let me check your reply
[12:50:41] <av__> btw pf_moore other day I forgot to reply
[12:50:56] <av__> sorry for that
[12:51:15] <av__> okay.. if such info is not available then may pip can start tracking it?
[12:51:48] <pf_moore> the problem is that if you install from source it's not pip that does the install, but setuptools/distutils.
[12:52:14] <pf_moore> You need to get a change into setuptools to record that data, *then* pip could use it
[12:52:57] <pf_moore> And anyway, the status of PEP 376 is dubious at best, bits of it are implemented, others aren't
[12:54:50] <pf_moore> av__ re the freeze --user thing, no problem, it was an interesting exercise. Gone into develop now, so should be available when pip 6.0 comes out
[12:57:04] <av__> nice :D
[12:57:47] <av__> why not pip maintain a extra file to hold all the pip install data?
[12:58:34] <av__> I don't know inner workings... but lets say whenever you do 'pip install django', why not write django to a file first and then do usual pip routine?
[13:38:42] <pf_moore> Basically because:
[13:39:02] <pf_moore> 1. pip doesn't actaully do the install, it just runs "setup.py install"
[13:39:32] <pf_moore> 2. There's no suitable "central place" that pip could put this (it should be per-installation but site-packages may not be writeable)
[13:40:01] <pf_moore> 3. The standards are based around distribution data being per-project in the dist-info file, not centralised
[13:40:53] <pf_moore> Essentially, each installed project maintains its own metadata (in dist-info) so that any tool can work with projects installed by any other tool
[13:40:57] <pf_moore> Standards ftw
[13:46:37] <av__> thanks for explaining!
[14:05:55] <nanonyme> pf_moore, you do agree though that it might be desirable if it was feasible, right?
[14:46:05] <pf_moore> nanonyne sure, I can see the value