From 66a88a4669bc43447b9bae08606e262cf739c35b Mon Sep 17 00:00:00 2001 From: Daniel Axtens Date: Tue, 21 Feb 2017 16:45:29 +1100 Subject: [PATCH] REST: allow fetching of subject prefixes Some mailing lists accept patches for multiple projects, and use a subject prefix to differentiate the projects. Therefore, for snowpatch, it's useful to be able to fetch the subject prefixes. Export subject prefixes in the REST API. Signed-off-by: Daniel Axtens Tested-by: Russell Currey Reviewed-by: Andrew Donnellan Reviewed-by: Stephen Finucane --- patchwork/api/patch.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/patchwork/api/patch.py b/patchwork/api/patch.py index 1a7be584..ded49101 100644 --- a/patchwork/api/patch.py +++ b/patchwork/api/patch.py @@ -31,6 +31,7 @@ from patchwork.api.base import PatchworkPermission from patchwork.api.filters import PatchFilter from patchwork.models import Patch from patchwork.models import State +from patchwork.parser import clean_subject def format_state_name(state): @@ -116,17 +117,21 @@ class PatchListSerializer(HyperlinkedModelSerializer): class PatchDetailSerializer(PatchListSerializer): headers = SerializerMethodField() + prefixes = SerializerMethodField() def get_headers(self, patch): if patch.headers: return email.parser.Parser().parsestr(patch.headers, True) + def get_prefixes(self, instance): + return clean_subject(instance.name)[1] + class Meta: model = Patch fields = PatchListSerializer.Meta.fields + ( - 'headers', 'content', 'diff') + 'headers', 'content', 'diff', 'prefixes') read_only_fields = PatchListSerializer.Meta.read_only_fields + ( - 'headers', 'content', 'diff') + 'headers', 'content', 'diff', 'prefixes') extra_kwargs = PatchListSerializer.Meta.extra_kwargs -- 2.47.3