﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
10144	get_comment_app calls __import__ with strings instead of dictionaries for 2nd and 3rd arguments	Jacob Fenwick	nobody	"When the comment_tests test is run under jython, I get this error:

======================================================================
ERROR: testGetCommentApp (regressiontests.comment_tests.tests.app_api_tests.CommentAppAPITests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File ""/Users/jacob/projects/djython/django-1.0.X/tests/regressiontests/comment_tests/tests/app_api_tests.py"", line 11, in testGetCommentApp
    self.assertEqual(comments.get_comment_app(), comments)
  File ""/Users/jacob/projects/djython/django-1.0.X/django/contrib/comments/__init__.py"", line 20, in get_comment_app
    package = __import__(comments_app, '', '', [''])
  File ""/Users/jacob/projects/djython/django-1.0.X/django/contrib/comments/__init__.py"", line 20, in get_comment_app
    package = __import__(comments_app, '', '', [''])
TypeError: str indices must be integers


The problem is that the __import__ function is taking a string for the second and third arguments when the parameters should be dictionaries. Python seems to coerce the strings into the correct format, but jython does not.

Here is the patch, which should be applied to all version of django:

svn diff __init__.py
Index: __init__.py
===================================================================
--- __init__.py	(revision 9791)
+++ __init__.py	(working copy)
@@ -17,7 +17,7 @@
 
     # Try to import the package
     try:
-        package = __import__(comments_app, '', '', [''])
+        package = __import__(comments_app, globals(), locals(), [''])
     except ImportError:
         raise ImproperlyConfigured(""The COMMENTS_APP setting refers to ""\
                                    ""a non-existing package."")
"		new	Testing framework	1.0			comments		Unreviewed	1	0	0	0	0	0
