PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Saturday the 17th of January, 2015

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[11:03:29] <Bhai> anybody home?
[11:04:32] <Bhai> Can anyone invite me to channel pip?
[14:32:16] <doismellburning> re my earlier question about rst syntax/style checker, I found doc8
[14:32:53] <doismellburning> which isn't ideal (it hasn't explained why https://github.com/doismellburning/django12factor/pull/19/files#diff-88b99bb28683bd5b7e3a204826ead112R144 doesn't render) but beats the nothing that I had previously
[17:38:24] <matham> !logs
[17:38:24] <pmxbot> http://chat-logs.dcpython.org/channel/pypa
[17:41:35] <matham> hi guys. I'm running into a issue where we when running install we generate a .py file in one of the packages but pip does not install it
[17:42:37] <matham> i.e. I can see the file generated in the temp dir, but it doesn't get copied over. When I added a empty version of the file to the src, pip installed the empty file, even though it's overwritten in the temp dir
[17:52:34] <ionelmc> matham: your setup.py generates it or?
[17:52:49] <matham> setup.py generates it
[18:25:36] <ionelmc> matham: are you including it in your manifest?
[18:25:43] <ionelmc> or package_data
[18:25:58] <ionelmc> assuming it's data file and not included in py_modules or packages
[18:29:14] <matham> ionelmc, the file is not explicitly included, but the package undr which the file is is included using packages=[...]
[18:29:39] <matham> also, I actually did add the file explicitly in the package_data
[18:30:40] <matham> what I don't understand, when I added the blank file and it gets overwritten by the gernerated file, where does pip get the blank file again?
[18:31:00] <matham> I did not see another place in temp where it could get stored
[18:32:51] <ionelmc> matham: ok maybe show how you write the file?
[18:33:02] <ionelmc> it's not clear to me what's going on
[18:33:04] <matham> https://github.com/kivy/kivy/blob/master/setup.py
[18:33:22] <matham> it's a large file.
[18:33:39] <matham> we create the missing file, setupconfig.py at https://github.com/kivy/kivy/blob/master/setup.py#L136
[18:35:10] <matham> the file is generated in the kivy module dir
[18:35:11] <ionelmc> matham: ah yes, so the files are already in build when the build commands are called i think
[18:35:34] <ionelmc> so you need to find out the build dir in the "expand" function
[18:36:08] <matham> I looked in the temp dir as pip was bukding stuff and it's generated in the correct place, under kivy/
[18:36:22] <matham> it's just not copied over to site-packages after pip is done
[18:36:31] <matham> or did you mean something else
[18:36:36] <matham> *building
[18:37:05] <ionelmc> matham: i mean something like build\temp.win-amd64-3.4\Release\
[18:37:28] <ionelmc> must be some attribute on build_ext's self with that path
[18:38:54] <matham> I don;t fully understand, expand points to the main kivy dir: https://github.com/kivy/kivy/blob/master/setup.py#L303
[18:39:14] <ionelmc> ok lemme try it :)
[18:40:02] <ionelmc> matham: so gl.h should be generated?
[18:40:29] <ionelmc> matham: what libraries does this need?
[18:40:38] <matham> linux?
[18:40:47] <ionelmc> ubuntu12.04
[18:41:22] <matham> I'm afraid it has a lot of deps: http://kivy.org/docs/installation/installation-linux.html
[18:41:34] <ionelmc> you should have some build failure help text, eg: https://github.com/ionelmc/python-lazy-object-proxy/blob/master/setup.py#L28
[18:42:34] <matham> you seem to be thinking that file isn't generated, but it is. I can see it in the temp dir used by pip (on windows btw)
[18:44:05] <matham> in our log, I can see that it's generated as well. It's just as if pip forgets to copy it over when moving it to site-packages
[18:44:17] <ionelmc> lemme try
[18:44:53] <ionelmc> matham: which was the file agian?
[18:45:01] <matham> setupconfig.py
[18:45:16] <matham> ok, but you'd need to use the one from master (https://github.com/kivy/kivy/archive/master.zip) because the one from pip is an older version which doesn;t use it
[18:45:39] <ionelmc> matham: ok, so i've built a wheel, it has a setupconfig.py in it
[18:46:21] <matham> I do pip install https://github.com/kivy/kivy/archive/master.zip
[18:48:01] <matham> here's a log btw of such an install: https://github.com/kivy/kivy/issues/2850
[18:49:24] <ionelmc> matham: ok, so it's there on linux
[18:49:33] <ionelmc> how do you get the libs on windows?
[18:50:16] <matham> get the zip from: http://kivy.org/#download
[18:50:22] <matham> I used py2.7
[18:51:01] <matham> extract it somewhere. It'll have a kivy dir, python, and mingw
[18:51:18] <ionelmc> mingw?!
[18:51:30] <matham> yes, to compile the kivy libs
[18:51:39] <matham> because most people onw in wouldn't have it
[18:52:04] <ionelmc> meh this is BIG
[18:52:09] <matham> yep
[18:52:09] <ionelmc> 126mb woot
[18:52:27] <matham> you should think of kivy as framework :)
[18:52:57] <matham> it also contains gstreamer
[18:53:25] <ionelmc> matham: ok this might sound silly but have you checked that the file is actually there?
[18:53:43] <ionelmc> cause kivy has some terrible things in it's __init__.py
[18:53:52] <ionelmc> might shadow modules
[18:54:14] <matham> haha, I see it when I browse to the temp dir during the pip install
[18:55:25] <matham> e.g. pip says: Running setup.py (path:c:\users\cpl\appdata\local\temp\pip-vxujfo-build\setup.py, I can then see the stupconfig.py file in c:\users\cpl\appdata\local\temp\pip-vxujfo-build\kivy
[18:56:04] <matham> is there somewhere a detailed log of all the files pip copies during a install?
[18:56:07] <ionelmc> matham: but is it in your site-packages?
[18:56:18] <matham> no, that's the problem
[18:56:28] <ionelmc> matham: there might be if you run it with the correct verbosity
[18:56:37] <matham> ok, I'll try
[19:14:07] <matham> ionelmc, I finally get what you mean with the build dir. I can see that we generate setupconfig it's generated in c:\users\matthe~1\appdata\local\temp\pip-nskscp-build\kivy\ but it should be generated to build\lib.win32-2.7\kivy
[19:14:21] <matham> I see the log item "copying kivy\setupconfig.py -> build\lib.win32-2.7\kivy"
[19:18:05] <matham> so like you said initially we need to set the expand path to point to the build dir
[19:18:33] <ionelmc> matham: ok i don't get it
[19:18:44] <ionelmc> you said the file it's not in site-packages
[19:19:02] <ionelmc> is it there but it's outdated?
[19:19:19] <ionelmc> you should have install logs in something like c:\Users\ionel_000\AppData\Local\pip\Logs\debug.log
[19:19:23] <matham> sorry, there's two instances. When you install from github it's not there at all because it's not in the source
[19:19:39] <matham> but I tested with a modified package where I added a empty setupconfig.py to src
[19:19:48] <matham> that's where I got the last log from
[19:20:06] <matham> in that case the outdated file is copied
[19:22:06] <ionelmc> matham: self.bdist_base
[19:22:11] <ionelmc> try using that
[19:22:23] <ionelmc> in the custom bdist command
[19:22:35] <matham> ok, will try. Here's the full log btw: https://dpaste.de/yCXp
[23:01:30] <matham> ionelmc, so I tried setting bdist and bdist_egg in cmdclass to point to an inherited class from bdist and bdist_egg, respecitvely, but when I just do pip install they never get created. I think it's all done internally in pip
[23:02:10] <ionelmc> matham: show how you did it
[23:03:41] <matham> ionelmc: https://dpaste.de/6ifX
[23:04:01] <matham> similarly I tried inheriting from bdist, but those things never printed
[23:04:46] <ionelmc> matham: not sure if bdist egg would be called
[23:04:58] <matham> I tried with bdist directly first
[23:05:01] <ionelmc> have you tried just the `build` command?
[23:05:03] <ionelmc> meh
[23:05:17] <matham> no, because I'm doing it with pip install
[23:05:38] <ionelmc> spooky
[23:05:48] <ionelmc> matham: note that pip might redirect outputs
[23:05:55] <_habnabit> matham, is there a reason in particular you want eggs?
[23:05:56] <ionelmc> i think
[23:06:11] <matham> no, I just want to be abke to do pip install :)
[23:06:17] <matham> *able
[23:06:42] <_habnabit> matham, https://dpaste.de/yCXp expired
[23:06:54] <ionelmc> matham: eg: try to print to sys.__stderr__ instead
[23:08:23] <matham> _habnabit, here it is again: https://dpaste.de/5EFb
[23:09:05] <matham> ionelmc, that's why I put the raise so that it'd raise an error, but I'll try it again with bdist, not bdist_egg
[23:15:05] <matham> ionelmc, here's another try with bdist https://dpaste.de/hMFv but error is not raised or anything printed. I;m letting it finish installing just to be sure, though
[23:16:06] <matham> I guess that means I have to hook pip to find the build path so I can generate the file in the correct location?
[23:24:34] <ionelmc> matham: works for me :|
[23:24:48] <ionelmc> matham: eg:
[23:24:49] <ionelmc> https://www.irccloud.com/pastebin/kQVxqoUt
[23:25:04] <ionelmc> that will do the right thing
[23:25:17] <ionelmc> kivy already has a custom command
[23:25:46] <ionelmc> just use self.build_lib in the run method (where you generate the setupconfig.py)
[23:34:06] <matham> ionelmc, yay, build_lib points to the correct location :) thanks a bunch