From 82fc0be53a36aebd4ca981f7e6bf2d63b1c5be2a Mon Sep 17 00:00:00 2001
From: Brian May <bam@debian.org>
Date: Mon, 26 Oct 2015 09:07:25 +1100
Subject: Fix python3 issues

Reported upsteam https://github.com/celery/django-celery/issues/342
---
 djcelery/loaders.py | 3 ++-
 djcelery/views.py   | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/djcelery/loaders.py b/djcelery/loaders.py
index c86455a..61c6d04 100644
--- a/djcelery/loaders.py
+++ b/djcelery/loaders.py
@@ -201,7 +201,8 @@ def find_related_module(app, related_name):
         return
 
     try:
-        imp.find_module(related_name, app_path)
+        file, _, _ = imp.find_module(related_name, app_path)
+        file.close()
     except ImportError:
         return
 
diff --git a/djcelery/views.py b/djcelery/views.py
index 34cb307..4d07e0a 100644
--- a/djcelery/views.py
+++ b/djcelery/views.py
@@ -34,7 +34,7 @@ def task_view(task):
         kwargs = kwdict(request.method == 'POST' and
                         request.POST or request.GET)
         # no multivalue
-        kwargs = dict(((k, v) for k, v in kwargs.iteritems()), **options)
+        kwargs = dict(((k, v) for k, v in kwargs.items()), **options)
         result = task.apply_async(kwargs=kwargs)
         return JsonResponse({'ok': 'true', 'task_id': result.task_id})
 
@@ -78,8 +78,8 @@ def task_status(request, task_id):
 
 def registered_tasks(request):
     """View returning all defined tasks as a JSON object."""
-    return JsonResponse({'regular': tasks.regular().keys(),
-                         'periodic': tasks.periodic().keys()})
+    return JsonResponse({'regular': list(tasks.regular().keys()),
+                         'periodic': list(tasks.periodic().keys())})
 
 
 def task_webhook(fun):
