]> git.ipfire.org Git - thirdparty/patchwork.git/commitdiff
Revert "api: Only provide JSON version of events list"
authorStephen Finucane <stephen@that.guru>
Thu, 10 May 2018 14:45:06 +0000 (15:45 +0100)
committerDaniel Axtens <dja@axtens.net>
Fri, 11 May 2018 16:45:35 +0000 (02:45 +1000)
This reverts commit 90d9ee14e73e8ec9248e89c788d64867c4a4bb74.

The root cause of this performance issue was not the use of the
JSONRenderer but rather the population of filter forms. The latter is
now disabled, meaning we can start using the original renderer.

Signed-off-by: Stephen Finucane <stephen@that.guru>
Cc: Daniel Axtens <dja@axtens.net>
Acked-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Daniel Axtens <dja@axtens.net>
patchwork/api/event.py
patchwork/templates/patchwork/event-list.html [deleted file]

index b6626ec724735749edad4cfa836fc16230493827..cce25a75e3ab8128630176eedb1d070a9afd71ac 100644 (file)
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
 from collections import OrderedDict
-import json
 
 from rest_framework.generics import ListAPIView
 from rest_framework.serializers import ModelSerializer
 from rest_framework.serializers import SerializerMethodField
-from rest_framework.renderers import JSONRenderer
-from rest_framework.renderers import TemplateHTMLRenderer
 
 from patchwork.api.embedded import CheckSerializer
 from patchwork.api.embedded import CoverLetterSerializer
@@ -88,21 +85,9 @@ class EventSerializer(ModelSerializer):
         read_only_fields = fields
 
 
-# The standard template html renderer is broken:
-# https://github.com/encode/django-rest-framework/issues/5236
-class JSONListHTMLRenderer(TemplateHTMLRenderer):
-    def get_template_context(self, data, renderer_context):
-        response = renderer_context['response']
-        if response.exception:
-            data['status_code'] = response.status_code
-        return {'data': json.dumps(data, indent=4)}
-
-
 class EventList(ListAPIView):
     """List events."""
 
-    renderer_classes = (JSONRenderer, JSONListHTMLRenderer)
-    template_name = 'patchwork/event-list.html'
     serializer_class = EventSerializer
     filter_class = EventFilterSet
     page_size_query_param = None  # fixed page size
diff --git a/patchwork/templates/patchwork/event-list.html b/patchwork/templates/patchwork/event-list.html
deleted file mode 100644 (file)
index 821c689..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-{% extends "base.html" %}
-
-{% load person %}
-{% load static %}
-
-{% block title %}Event List{% endblock %}
-{% block patch_active %}active{% endblock %}
-
-{% block body %}
-
-<p>Due to a currently undiagnosed issue with django-rest-framework, the browsable API is very CPU intensive and has been disabled. The JSON output is:</p>
-
-<pre>
-{{data}}
-</pre>
-
-{% endblock %}