Differences between revisions 16 and 17
Revision 16 as of 2007-09-10 14:23:47
Size: 3083
Editor: n01-114
Comment: Some categorization
Revision 17 as of 2007-09-10 18:33:34
Size: 2966
Editor: n01-114
Comment: Some clarification about __builtins__. Reordered minor annoyances too.
Deletions are marked like this. Additions are marked like this.
Line 18: Line 18:
 * Jython does not have {{{__builtins__}}} as a module. Django adds "_" as a convenience method for calling gettext in {{{django/conf/__init__.py}}}. Jython needs an explicit import of {{{__builtin__}}} to achieve the same effect - django has been patched recently for this.
    * According to the Python docs, {{{__builtins__}}} is a implementation detail and shouldn't be used by portable applications. -- LeonardoSoto
 * slice should be a type, not a function.
 * {{{PyBoolean.__tojava__}}} returns an {{{Integer}}}
   * It affects zxJDBC unless a DataHandler sets the right type of boolean parameters. Fortunately, JDBC30DataHandler does this thing, at least on my limited tests -- LeonardoSoto
Line 23: Line 24:
 * {{{PyBoolean.__tojava__}}} returns an {{{Integer}}}
   * It affects zxJDBC unless a DataHandler sets the right type of boolean parameters. Fortunately, JDBC30DataHandler does this thing, at least on my limited tests -- LeonardoSoto
 * slice should be a type, not a function.
 * Jython does not have {{{__builtins__}}} as a module. Django adds "_" as a convenience method for calling gettext in {{{django/conf/__init__.py}}}.
    * According to the Python docs, {{{__builtins__}}} is a implementation detail and shouldn't be used by portable applications, so it's a Django problem

Gaps between Jython and Django

Mayor problems

Minor annoyances

  • slice should be a type, not a function.
  • PyBoolean.__tojava__ returns an Integer

    • It affects zxJDBC unless a DataHandler sets the right type of boolean parameters. Fortunately, JDBC30DataHandler does this thing, at least on my limited tests -- LeonardoSoto

  • Jython does not have os.W_OK needed in django/core/management.py. This probably will not be hard to add this since java.io.File has a canWrite().

    • os.chmod should be implemented too (After checking for write permissions, Django will try to change them if necessary).

      • That's hard. Maybe Django shouldn't check for permissions if running on Jython.
  • Jython does not have __builtins__ as a module. Django adds "_" as a convenience method for calling gettext in django/conf/__init__.py.

    • According to the Python docs, __builtins__ is a implementation detail and shouldn't be used by portable applications, so it's a Django problem

Already Fixed

  • Jython does not have sys.stdout.isatty. Jython should get added to the exclusions around that call in django/core/management.py (win32 and 'Pocket PC' are already excluded).

  • stringmap (or the __dict__ implementation) needs a pop(o) method.

DjangoOnJython (last edited 2014-05-22 23:24:19 by AdamBurke)