PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Tuesday the 12th of May, 2020

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[04:32:57] <TomDotTom> !logs
[04:32:57] <pmxbot> http://kafka.dcpython.org/channel/pypa
[10:59:35] <ixje> hi, is there an option to add a custom install flag that I can use to ignore a specific install_requirement item? Some context; I have a project that supports multiple databases and I'd like the option to prevent installing wrappers for databases they do not want (as some wrappers fail to build without the underlying header files). For `setup.py`
[10:59:36] <ixje> I've added a `--without-leveldb` flag via install/develop commands which removes the `plyvel` (leveldb wrapper) package from the requirements list. The problem I'm seeing is that `pip` gathers the `install_requires` before the custom `setup.py` commands are executed thus installing requirements I do not want.
[11:54:28] <ngoldbaum> ixje: you probably want extras ans extras_require
[11:55:31] <ngoldbaum> that’s not quite the same as what you’re asking for but i think you can set things up to get what you want
[12:01:58] <ixje> ngoldbaum: thanks! For this use-case it actually makes even more sense as well :-)
[13:03:00] <kuwv> Hello, I have couple of questions I've been wondering for a while.
[13:03:29] <kuwv> What is a partial install called example: pip install --user "molecule[lint]"
[13:04:07] <kuwv> And how can my project be setup to implement this myself?
[13:10:40] <ngoldbaum> the [lint] bit is called an “extra”
[13:10:53] <ngoldbaum> you can define them vis extras_require
[13:11:23] <ngoldbaum> (someone else asked about this before you joined kuwv)
[13:36:41] <kuwv> oh, I see.
[13:37:31] <kuwv> Let me see if I can find any reading material on this.
[19:26:09] <kodiak_f> any chance anyone is running a bandersnatch mirror behind Apache2 on Ubuntu/Debian? I think I'm really close but pointing a pip client at it as an index ends in tracebacks
[19:28:14] <kodiak_f> for whatever reason curl'ing the pypi mirror's /simple/ dir results in a 301 to... ...itself - I think that might be part of it. But I don't have any rewrite rules
[19:31:05] <cooperlees> kodiak_f: Should work. You using hash-index = true in your config or not?
[19:31:32] <cooperlees> Can you pastebin pip tracebacks too - That will tell me what it's upset about :)
[19:32:01] <kodiak_f> I shied away from using hash-indexes based on a 2 second read of the doc, which I might have gotten wrong and sure one sec while I p-bin
[19:33:53] <kodiak_f> https://paste.centos.org/view/be9e5e76
[19:34:02] <kodiak_f> thanks @cooperless
[19:34:12] <kodiak_f> er, @cooperlees (sorry)
[19:36:06] <cooperlees> pip -vvv --no-cache-dir search testrun
[19:36:06] <cooperlees> Search can't hit a bandersnatch mirror
[19:36:21] <cooperlees> It talks to a dynamic XML RPC endpoint
[19:37:01] <cooperlees> bandersnatch only mirror's the static side of the mirror. /simple + the binary sdists and wheels of the packages
[19:37:10] <cooperlees> + JSON metadata if you enable it
[19:37:31] <cooperlees> But you will need your Apache to set the JSON mime type on those directories to make a lot of callers happy :)
[19:38:00] <kodiak_f> ah - sorry - I'm a bit out of my element. I'm a dreadful coder so I'm not too up w/ Pip's inner workings. I'm just another ops janitor supporting people who needed a mirror ha.
[19:38:08] <kodiak_f> Good stuff - I appreciate it!
[19:39:57] <cooperlees> kodiak_f: No worries - I maintain bandersnatch and I guess am a sys adminy type as well
[19:40:00] <kodiak_f> thanks again @cooperlees - I tried an install and that's much more promising. It's dying on missing requirements, which I can understand
[19:40:02] <kodiak_f> https://paste.centos.org/view/ad218a8e
[19:40:05] <cooperlees> if you have more questions fire away
[19:40:18] <kodiak_f> So now I have to figure out a model for pulling in requirements automagically if possible
[19:40:35] <cooperlees> Try an install of appdirs or click
[19:40:42] <kodiak_f> I'm kind of hoping to maintain an extensive whitelist as an ansible block_in_file
[19:40:59] <cooperlees> ahhh ok - yeah pypi is huge now
[19:41:05] <kodiak_f> 6TB!
[19:41:21] <cooperlees> Look at poetry or some resolver to help find recursive dependencies
[19:41:37] <kodiak_f> not only that but this is going to be the beginnings of an internal mirror that comes from the stance of: "We don't trust what's on pypi - only bring in vetted materials"
[19:41:42] <cooperlees> https://python-poetry.org
[19:42:35] <kodiak_f> awesome - thanks so much for the tips - every time I talk to pythonistas it makes me wish I wasn't such a crap coder - Python is really fun for what little I can do of it
[19:49:09] <cooperlees> Just start automating more things with it and you’ll be useful in no time
[19:49:38] <kodiak_f> I'm 8 years deep into Puppet but recently moved to an Ansible shop so the lang is closer at least
[19:54:16] <kodiak_f> here's one for bandersnatch - say I use pip3 to install bandersnatch and mirror a test package - testrun - it pulls down the python3.6+ version of testrun. Python2 clients can't use this version - is bandersnatch going to pull down every version of a package that is available, or just the python major version that bandersnatch is running?
[20:00:28] <cooperlees> kodiak_f: All the versions unless you use plugins to filer
[20:00:35] <cooperlees> *filter
[20:00:51] <cooperlees> whitelist by default will pull down all tho
[20:01:57] <kodiak_f> fantastic - thanks cooperlees