[00:36:35] <wsanchez_> File "/Users/wsanchez/Developer/IMS/Server/.develop/roots/py_modules/lib/python2.7/site-packages/pip/req.py", line 1605, in parse_requirements
[00:42:59] <wsanchez_> Why I'm doing this is less obvious in this project, but in others the idea is that there is a directory of requirements files. One for base (always needed) requirements, one for stuff you need while developing, and then optionally one each for optional requirements associated with optional features.
[00:45:40] <dstufft> any reason you don't just declare these in your setup.py with extras
[00:46:56] <wsanchez_> Because that's code, and it seems cleaner to just have some text files. Here's a better example: http://trac.calendarserver.org/browser/CalendarServer/trunk/requirements
[00:51:02] <dstufft> wsanchez_: some text files that you read by callng an undocmented private method of pip inside of code vs some static dictionaries in a .py file? ;)
[00:51:11] <dstufft> also https://caremad.io/blog/setup-vs-requirement/
[00:51:36] <wsanchez_> pip.req.parse_requirements is private?
[00:51:53] <wsanchez_> Or is all of pip's API private?
[00:52:50] <wsanchez_> Trying to remember how I found out about that function
[00:53:02] <dstufft> we techincally don't support being used as an API yea, I mean we try not to break it and what not
[00:53:12] <dstufft> but for instance, in 1.6 that function moves
[00:53:25] <dstufft> to pip.req.req_file.parse_requirements
[01:00:51] <dstufft> if you're familar with ruby and bundler at all yehuda katz has a similar post which inspired my post (linked at the bottom) which may be eaier to understand too
[01:01:36] <wsanchez_> I started to read a Ruby book a long time ago and saw something about the syntax for strings that made me close the book and move on.
[01:03:12] <dstufft> the primary take away is that setup.py lists symbolic names that don't specify where to get stuff from, and requirements.txt has a "location to get stuff from" (defualting to PyPI) which when pared with that symbolic name gives you an "aboslute" name
[01:06:37] <Alex_Gaynor> dstufft: in practice isn't the distinction bullshit because setuptools will happilly make up a place to get some stuff from?
[01:08:47] <wsanchez_> It does seem like there's still unnecessary duplication. At a minimum it's too easy for information in setup.py and requirements files to get out of sync and for one not to notice.
[01:10:07] <dstufft> Alex_Gaynor: well setuptools is bad yes
[01:10:14] <dstufft> wsanchez_: you don't have to list things in your requirements file
[01:33:26] <wsanchez_> dstufft: Thanks for the info. I posted on http://stackoverflow.com/questions/14399534/ that using the API may not be a great idea and will rethink my use of requirements.txt. Also off to dinner; laters.
[01:44:48] <Ivo> dstufft: do we actually mention anywhere that pip is explicitly not considered a library?
[11:42:30] <dstufft> Ivo: fuck around with https://bitbucket.org/pypa/pypi/src/ec1282bfe85c12c93005ca7271f56c9df5c9445e/description_utils.py?at=default#cl-102 until you figure it out
[11:51:22] <mgedmin> Ivo, actually restview --long-description is unhappy because pypa's setup.py refuses to run under python2, but restview -e 'python3 setup.py --long-description' --strict works
[11:51:27] <mgedmin> and emits this error message: <string>:65: (INFO/1) Hyperlink target "pip.conf" is not referenced.
[12:00:09] <dstufft> It's not how it'll work long term, it's relies on the MD being unrenderable, which not all MD is, some of it just renders terribly wrong
[12:00:15] <Ivo> ronny: if you're interested, i made a simple local pypi server made to do pip --cert correctly, if you would like to 'see how it works' https://pypi.python.org/pypi/pipa
[12:00:28] <dstufft> plus it makes it pretty annoying if you want to add a third markup type
[12:00:45] <dstufft> long term the metadata will support different markup types
[12:01:03] <ronny> Ivo: we have a devpi behind https
[12:01:06] <Ivo> pfmoore: man, you gotta step away from the argument and just ask for actual working code branches :)
[12:59:12] <Theuni2> dstufft: see our somewhat long issue last week when the fastly issue escalated o_O
[12:59:34] <dstufft> Theuni2: I see that! I'm glad y'all got it fixed :]
[12:59:45] <dstufft> apparently sending data around some tubes is kind of hard
[13:04:28] <Theuni2> especially when people f*$#& with the standards
[15:23:20] <pfmoore> dstufft: Ivo: I'm running an offline client (irccloud) so I just look like I'm here ;-) But yeah, Ivo, you're right re working code.
[15:38:20] <Ivo> Theuni2: life wouldn't be interesting if people didn't fuck with the standards
[15:39:13] <Theuni2> life would be much more interesting if people fucked people instead.
[15:40:40] <Ivo> I'm not sure we're ever satisfied with how many things we've fucked
[23:17:32] <nZac_> Question about local git repositories as Python packages. I am testing a Sphinx theme in directory X with project Y's documentation. I `pip install -e X` to install the theme in project Y. However if I make changes (git commit) to the theme how can I update project Y's copy? pip install --upgrade -e ../path/to/package/repo doesn't work, Would pip install --upgrade -e theme-name doesn't work.
[23:20:08] <pfmoore> nZac_: pip install -e should make project Y refer directly to X, not use a copy. So you shouldn't need to do anything, just make the changes in X and Y will see them immediately.
[23:20:36] <nZac_> pfmoore: thanks for the response. I am not seeing those changes.
[23:21:05] <nZac_> Can you think of anyplace I could have messed it up?
[23:21:28] <pfmoore> hmm, that's odd - but you refer to themes rather than Python files, so maybe there's something different going on. Sorry, I'm not sure what that could be
[23:21:54] <pfmoore> I don't know anything about how Sphinx organises themes, I'm afraid...
[23:22:43] <nZac_> Well, at least I know I am installing it correctly with -e for editable.
[23:23:16] <tomprince> Do you have sphinx installed in the virtualenv?
[23:26:29] <nZac_> I think I just figured it out... pfmoore was right it was something totally unrelated. I had to make clean and the make html to pull in the changes
[23:26:32] <tomprince> I'd be tempted to add some prints to conf.py to print out where sphinx is actully loading things from. So 'import sphinx_theme; print sphinx_theme.__file__' et al.
[23:27:21] <nZac_> -e appeared to be the correct action, I was just not completing all the proper steps. Thanks for the help tomprince ad pfmoore!
[23:56:14] <unstable> I have a package pyxmlsec in my requirements.txt, though it's failing on ...
[23:56:15] <unstable> Downloading/unpacking pyxmlsec Could not find any downloads that satisfy the requirement pyxmlsec Some externally hosted files were ignored (use --allow-external pyxmlsec to allow).