R. David Murray wrote:
On Wed, 13 Jun 2012 20:46:50 +0200, Antoine Pitrou <solip...@pitrou.net> wrote:
On Wed, 13 Jun 2012 11:20:24 -0700
Toshio Kuratomi <a.bad...@gmail.com> wrote:
On Wed, Jun 13, 2012 at 01:58:10PM -0400, R. David Murray wrote:
OK, but you didn't answer the question :).  If I understand correctly,
everything you said applies to *writing* the bytecode, not reading it.

So, is there any reason to not use the .pyo file (if that's all that is
around) when -O is not specified?

The only technical reason I can see why -O should be required for a .pyo
file to be used (*if* it is the only thing around) is if it won't *run*
without the -O switch.  Is there any expectation that that will ever be
the case?

Yes.  For instance, if I create a .pyo with -OO it wouldn't have docstrings.
Another piece of code can legally import that and try to use the docstring
for something.  This would fail if only the .pyo was present.
Not only docstrings, but also asserts. I think running a pyo without -O
would be a bug.

Again, a program that depends on asserts is buggy.

As Ethan pointed out we are asking about the case where someone is
*deliberately* setting the .pyo file up to be run as the "normal"
case.

I'm not sure we want to support that, I just want us to be clear
about why we don't :)

Currently, the alternative to supporting this behavior is to either:

  1) require the end-user to specify -O (major nuisance)

  or

  2) have the distributor rename the .pyo file to .pyc

I think 1 is a non-starter (non-finisher? ;) but I could live with 2 -- after all, if someone is going to the effort of removing the .py file and moving the .pyo file into its place, renaming the .pyo to .pyc is trivial.

So the question, then, is: is option 2 better than just supporting .pyo files without -O when they are all that is available?

~Ethan~
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to