PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Monday the 18th of May, 2020

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[11:22:25] <taven> how do i force installation of wheel when trying install a package using `pip install -e .`.... i was told pyproject.toml can solve this..am i wrong?
[12:01:56] <ngoldbaum> huh? what wheel?
[12:02:10] <ngoldbaum> of the project you’re installing or one of its dependencies?
[12:02:43] <ngoldbaum> -e means that the project you are installing can’t be installed as a wheel, otherwise it wouldn’t be editable
[12:02:45] <taven> ngoldbaum: yeah on reinstalls of any package pip tries to rebuild a wheel for said package for some reason
[12:03:02] <ngoldbaum> what package?
[12:03:10] <ngoldbaum> more concrete details pls
[12:04:13] <taven> ngoldbaum: here's an example https://hasteb.in/juwujonu.bash
[12:04:53] <ngoldbaum> the complaints about six?
[12:05:18] <taven> no it's about wheel not being installed despite being specified as a build requirement in pyproject.toml file
[12:05:33] <taven> pip needs wheel to suppress those warnings
[12:05:53] <ngoldbaum> ahhh i see
[12:05:57] <ngoldbaum> not sure, sorry
[12:06:01] <taven> six is just an example requirement i put in my setup.cfg file
[12:06:22] <taven> oh well...seems like no one has answers :(
[12:06:31] <taven> i was redirected here from python discord server
[12:06:37] <ngoldbaum> i mean it’s pretty early on a monday
[12:06:45] <ngoldbaum> in the US
[12:07:06] <taven> i see lol, sorry dude
[12:07:57] <ngoldbaum> if you can make a self-contained toy project that demonstrates the issue and file an issue against pip’s github or ask on the psf discourse in theb packaging section you might get a better answer
[12:08:03] <ngoldbaum> or wait in here for a while
[12:08:34] <ngoldbaum> but the way you asked initially was extremely confusing so be sure to make sure you’re asking in as clear and concrete a manner as possible
[12:08:39] <taven> yeah i'll try to make an mvce then as well, should be easy...
[13:08:15] <taven> ngoldbaum: okay finally finished the MVCE for that error, it will be highlighted in pink when you click on "run" https://repl.it/@daegontaven/PEP518-MVCE-Wheels
[13:08:41] <ngoldbaum> ok, i can’t really help you but good luck elsewhere
[14:44:20] <McSinyx[m]> taven, I'm here just in case you want to have realtime discussion
[14:44:35] <taven> McSinyx[m]: cool, i'll just type here then
[14:44:58] <taven> McSinyx[m]: I hear `pip` is moving away from sdist inclusions in `site-packages` and tries to build wheels for every package or download one if it's already built and just includes it directly in python instead of the source files. Not sure I remember the source however.
[14:45:33] <taven> Editable installs may not be built, but that doesn't mean it should be ignored. Anyways isn't it pip's job to know what packages are required for build systems.
[14:46:15] <McSinyx[m]> I don't think i get what you mean, but I have a hunch that the sdist thing has something to do with https://github.com/pypa/pip/issues/7555
[14:46:38] <taven> why else would a build system config be made? wheel would be installed on site to build wheels...what's the point of isolation
[14:47:39] <McSinyx[m]> build requirements afaik is to build the package and is only useful while we're building the wheel
[14:48:16] <taven> i mean for instance if using poetry backend, pip would install poetry first if it's speciied in pyproject.toml right? or would poetry only work in isolation for building?
[14:50:29] <McSinyx[m]> with build isolation poetry would only be installed within the isolated environment (I don't think it's possible to install from source using pip w/o isolated build for poetry though)
[14:51:00] <McSinyx[m]> but after installation the user won't have additionally poetry installed
[14:51:44] <taven> i see...why was that choice made? doesn't it make sense to have the build tool on site?
[14:52:34] <McSinyx[m]> I think we'd need to read PEP 517 to find out (I've never read it really carefully)
[14:53:33] <taven> well afaik pep 517 is not final anyways
[14:53:51] <McSinyx[m]> https://www.python.org/dev/peps/pep-0517/#recommendations-for-build-frontends-non-normative
[14:54:11] <McSinyx[m]> agreed, people have lots of conflicts of interests
[14:54:45] <McSinyx[m]> i.e. for edge cases this kind of handling breaks another's (e.g. GH-7555 above)
[14:58:59] <taven> I guess this decision was on purpose...dang it. Now I have to campaign to get rid of it :/
[14:59:31] <McSinyx[m]> insert y tho meme
[15:00:21] <taven> McSinyx[m]: thanks for the help marking as solved with the correct sources :)
[15:01:14] <McSinyx[m]> there's new editable is coming (reading the discussion makes my head hurts tho, TMI: https://discuss.python.org/t/next-steps-for-editable-develop-proof-of-concept/4118)
[15:02:31] <McSinyx[m]> glad I could help
[15:02:35] <ngoldbaum> it’s pretty much impossible to stay up
[15:02:47] <ngoldbaum> to date on this stuff without it becoming a fulltime job
[15:03:36] <taven> yeah ...and little to no docs anywhere. I'm glad i'm not a package management dev lol
[15:03:45] <McSinyx[m]> well afaik most maintainers do it on their free time
[15:04:12] <taven> although i did flirt with the idea to make a package manager ...before pypa knocked some sense into me
[15:04:22] <ngoldbaum> sure, they just expend as much effort as a full time job to stay up to date :p
[15:04:38] <McSinyx[m]> not saying they don't dedicate other time pool into it tho
[15:05:28] <McSinyx[m]> it's weird that afaik pypa doesn't actually have any stable fund for human resources
[15:06:15] <McSinyx[m]> but that applies to most libre software projects, no matter how large it looks
[15:06:55] <taven> i'm scared to use package managers in python now...used pipenv for a while (hated it)...poetry (broken) and non even pip is fucking with me ...jesus
[15:07:08] <taven> s/non/now
[15:07:32] <McSinyx[m]> hey pip works if you don't put your expectation too high on convenience
[15:07:54] <taven> i know...i know :|
[15:08:01] <McSinyx[m]> i gave up on editable on one of my project to made it easier to manage metadata
[15:08:57] <McSinyx[m]> may add like 10s of latency every test run but it's not that bad
[15:09:01] <taven> i would use poetry if it weren't for that fact they don't have optional deps
[15:09:31] <McSinyx[m]> what's your use case to be specific?
[15:09:44] <sumanah> if any of you work for companies that don't sponsor packaging, please do let them know about https://pyfound.blogspot.com/2020/04/sponsoring-python-packaging.html and point out the things that we've been able to make long-delayed progress on once we got a bit of money
[15:09:50] <taven> i'm building a library for a simulation thingy
[15:10:10] <sumanah> (popping in to mention that since it was mentioned that nearly all the packaging maintainers are working in their free time)
[15:10:37] <McSinyx[m]> hi sumanah, hope you're still doing good
[15:10:41] <taven> i'm mostly a broke college student :)
[15:11:00] <sumanah> Thanks McSinyx[m] -- I'm ok physically, up & down mentally
[15:11:04] <McSinyx[m]> taven, is it pure python or extension?
[15:11:12] <sumanah> McSinyx[m]: hope you are well, thank you for inquiring
[15:11:16] <taven> pure python yeah
[15:12:35] <McSinyx[m]> thanks sumanah, I'm doing a lot better than last week (more used to the new schedule), sorry to hear about the down though
[15:14:02] <McSinyx[m]> taven, then IMHO editable should works perfectly if you use setuptools as backend?
[15:14:37] <taven> i am using setuptools, do you mean abaondoning pyproject.toml?
[15:14:55] <taven> and just sticking to setuptools alone
[15:15:21] <taven> i think i may go that route if it weren't for the case that setup_requires is deprecated
[15:15:37] <McSinyx[m]> as stated in pep 518, it doesn't matter if you have the TOML file or not if you use setuptools
[15:15:58] <McSinyx[m]> ooh yea unless you need more than setuptools and wheel as build backend
[15:16:42] <taven> yeah i can't put wheel into setup_requires, and can't put it in install_requires since that is done mid build
[15:17:16] <taven> i mean it's not a HUGE deal...just means i have to tell my users to remember to install wheel first
[15:17:41] <McSinyx[m]> wheel is assumed: https://www.python.org/dev/peps/pep-0518/#build-system-table
[15:18:59] <McSinyx[m]> > Because the use of setuptools and wheel are so expansive in the community at the moment, build tools are expected to use the example configuration file above as their default semantics when a pyproject.toml file is not present.
[15:19:09] <taven> um...didn't they put that there specifically because people are idiots...some people do uninstall wheel
[15:19:19] <taven> or maybe even install into system python
[15:19:37] <McSinyx[m]> it does not matter if wheel presents in their sites
[15:20:00] <McSinyx[m]> (we can't do anything about the system python tho lmao)
[15:20:57] <taven> well it does not matter if one doesn't care about redundant warnings ..sure. Most of my packages don't tell people to install wheel anyways, since it's included in virtualenv
[15:21:11] <McSinyx[m]> which warning?
[15:21:15] <taven> so in a way i don't care either
[15:21:25] <McSinyx[m]> ah the one posted on discourse, it's already fixed
[15:21:58] <taven> the one in pink in my example about wheels && no it's not fixed, they changed the message to something else...that's not really a fix.
[15:22:02] <McSinyx[m]> will be part of pip 20.1.1 when pradyunsg think it's ready
[15:22:27] <taven> ur talking about this pr right? https://github.com/pypa/pip/pull/8180
[15:22:38] <McSinyx[m]> I'm running on master as the message is no longer there
[15:23:23] <taven> interesting ...that means maybe there's a pr we dont' know that fixed it huh
[15:23:52] <McSinyx[m]> the PR fixed it by moving the check down
[15:24:02] <McSinyx[m]> you can git bisect just to be sure
[15:24:13] <McSinyx[m]> btw what do you think about having a nightly pip?
[15:25:02] <taven> that's not a bad idea, it's unlikely most will use it, but still a good idea..how would one update pip with nightly?
[15:25:26] <McSinyx[m]> i use the pip to update the pip
[15:25:32] <McSinyx[m]> > it's unlikely most will use it
[15:25:39] <McSinyx[m]> that's what I'm afraid
[15:26:16] <taven> yeah most won't use it since package maintainers don't like taking risks
[15:26:41] <ngoldbaum> i mean you shouldn’t be using the system pip or python package anyway
[15:26:46] <taven> and then there's the fact pip is not like any other package, people don't even update default pip
[15:26:48] <ngoldbaum> (for exactly this reason)
[15:27:08] <ngoldbaum> i wouldn’t update debian’s pip
[15:27:17] <ngoldbaum> i’d happily update a pyenv-installed pip
[15:27:20] <taven> no i mean the one you get in virtuenvs
[15:27:32] <McSinyx[m]> I'd just have a user pip
[15:27:53] <McSinyx[m]> the one provided by debian is just in case i accidentall delte the local site
[15:27:53] <ngoldbaum> i’m pretty sure the first thing i do when i set up a virtualenv is update pip
[15:28:00] <taven> i don't bother with --user...what's the point
[15:28:06] <ngoldbaum> but then again that’s all mediated by tox
[15:28:39] <McSinyx[m]> taven, in a venv it doesn't matter, outside, well I don't like typing my password
[15:28:57] <taven> lol true dat
[15:29:21] <ngoldbaum> just have a userland python install, problem solved :p
[15:29:22] <McSinyx[m]> but yea a large pip usage is automated
[15:29:35] <taven> userland?
[15:29:59] <McSinyx[m]> probably ngoldbaum meant user-site
[15:30:16] <ngoldbaum> one that lives in your home directory
[15:30:21] <McSinyx[m]> I'm not that ambitious, and I don't need it ither
[15:30:23] <ngoldbaum> e.g. pyenv
[15:30:33] <taven> i don't like those either ...i like to isolate everything to venvs
[15:30:41] <McSinyx[m]> userland iirc is the thing that's not within the kernel btw
[15:31:00] <taven> yeah pyenv ftw
[15:32:10] <McSinyx[m]> I'm heading out, nice to meet you both
[15:32:36] <taven> aight i gotta go too...see ya
[17:50:11] <rawplayer> /win 1
[18:08:18] <dude-x> weird. i got the wheel not found error when i tried to refresh my packages with a regular `pip install -r requirements.txt`
[18:08:31] <dude-x> it seemed to go away with `pip install --force wheel`
[18:19:30] <ngoldbaum> dude-x: ssl issues?
[18:20:01] <dude-x> i've had ssl issues on rare occasion and they do show up as urllib errors