From: Simon G. <sga...@cs...> - 2007-06-05 19:42:47
|
FYI.... if you are trying to make a byte code JAR file with jythonc 2.2b1 and it includes modules with import statements that the module does not subsequently use, you will get compilation errors saying. For example: In \Lib\tokenize.py the statement: from __future__ import generators is never subsequently used (e.g. generators is never instantiated)... So I am not sure if this is a bug. The jython runtime itself seems to silently ignore such things.. is there a way to do that for jythonc ?? |
From: Petr G. <pet...@gm...> - 2007-06-06 04:25:56
|
On 6/6/07, Simon Galbraith <sga...@cs...> wrote: > FYI.... if you are trying to make a byte code JAR file with jythonc > 2.2b1 and it includes modules with import statements that the module > does not subsequently use, you will get compilation errors In Python import statements are procedural not declarative. That is import statement causes initialization of respective module. So strictly speaking this is not a bug. However optimisation that allows import features just in case would probably be useful. -- Petr Gladkikh |
From: Frank W. <fwi...@gm...> - 2007-06-06 23:37:10
|
On 6/5/07, Simon Galbraith <sga...@cs...> wrote: > FYI.... if you are trying to make a byte code JAR file with jythonc > 2.2b1 and it includes modules with import statements that the module > does not subsequently use, you will get compilation errors > saying. > > For example: In \Lib\tokenize.py the statement: > > from __future__ import generators > > is never subsequently used (e.g. generators is never instantiated)... > So I am not sure if this is a bug. The jython runtime itself seems to > silently ignore such things.. is there a way to do that for jythonc ?? Generators do not work at all with jythonc in 2.2 (They do work with regular Jython, but not jythonc. There are fundamental problems with the current implementation. To get generators in the next Jython release (after 2.2 is out) we will have to re-write jythonc. For most use cases, you can avoid the use of jythonc (for example see: http://wiki.python.org/jython/JythonMonthly/Articles/September2006/1) The one use case that cannot be worked around is working with a locked down security manager (for example, in an unsigned applet.) for this you will still need jythonc. -Frank |