User talk:Foxboron/Python packaging guidelines

From ArchWiki
Jump to navigation Jump to search

Whether to target two python versions

I don't think this makes much sense to recommend in the common case. It's only really useful in exceptional cases like when the setup.py itself specifies to run 2to3 for automated supporting of both python2 and python3. Worth noting that this isn't really recommended, and most projects do the sane thing and write polyglot code that runs everywhere instead...

Maybe make a special note that "if 2to3 is used, then you'll need to copy [...]".-- Eschwartz (talk) 21:10, 28 June 2018 (UTC)

Felix pointed out that he was seeing the .pyc be installed due to testsuite usage, but that that doesn't seem to be an issue today so I'm unsure what might have caused it. At least, python setup.py test via unittests, and pytest, both pick up the copy from the setup.py root, not the build/ directory, alongside the actual tests to run. Does anyone know of a case where that is actually an issue? At this stage I'm mostly just believing Felix that it was ever an issue, since I certainly cannot confirm. -- Eschwartz (talk) 18:23, 29 June 2018 (UTC)
As discussed on IRC, we're going to convert this into a note on 2to3 use. No other issues have been suggested and can be verified to currently exist, so I guess this seems reasonable. -- Eschwartz (talk) 18:42, 13 July 2018 (UTC)

Check: Is option to temporarily install the given package necessary

What packages need this to be done, and why? From memory, there are a couple packages felixonmars has dealt with, where the testsuite does inspection of setuptools metadata e.g. trying to load pkg_resources entrypoints. This should not be generally necessary, and virtualenv especially is not really better than using tox -- the problem there is that you're not actually testing the installation itself, e.g. pinned requires.txt dependencies are respected as opposed to the ones we ship.

If this isn't likely to be a thing users need to cope with, we should not take up wiki space discussing it. We don't need to enumerate everything ever, that will just fatigue users. It would be better to skip it in that case. -- Eschwartz (talk) 19:07, 29 August 2018‎ (UTC)