[issue13400] packaging: build command should have options to control byte-compilation

Éric Araujo report at bugs.python.org
Mon Nov 28 17:24:56 CET 2011


Éric Araujo <merwok at netwok.org> added the comment:

> Jython's *$py.class files are byte-compiled modules, not extension modules.
Thanks for the data point.  Agreed distutils[2] should not say “pyc” and “pyo” then.

> There should be a way to disable generation of *.pyo files on command line even if
> setup.cfg enables it.
There is.  The precedence of options is: stdlib distutils.cfg < (overriden by) user .pydistutils.cfg < local setup.cfg < options on the command line.  Pass --no-compile --optimize=0 to never ever byte-compile (or pass --no-user-cfg and rely on the defaults).

> IMHO it would make more sense if --optimize-bytecode was dependant on --byte-compile option:
It was also my expectation, as I told.  The scheme that you propose keeps all current possibilities, it’s nice!  What do you think about conflating two options into one?

> --no-byte-compile         -> No *.pyc or *.pyo
> --byte-compile            -> Only *.pyc
> --byte-compile=0          -> Only *.pyc
> --byte-compile=0,1        -> *.pyc and *.pyo (level 1)
(etc.)
There may be a technical hurdle to overcome (not sure the option parsing system will allow 0 or more arg), but I’m asking for human interface feedback first.  (I’m just trying to make the list of options a bit smaller to reduce the overload, but if it feels complicated I won’t do it.)

> Byte-compiled files in Gentoo are generated separately, after installation.
Are you using standard py_compile or compileall modules or your own scripts?  I’ve seen that Debian for example has its own scripts and I’m sad to see no feature requests upstreamed to us instead.

----------
assignee: tarek -> eric.araujo

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue13400>
_______________________________________


More information about the Python-bugs-list mailing list