From 3b8a61c68fa61eadebf7b19329e8d3bffde9e6b4 Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Wed, 27 May 2015 09:56:36 +0800 Subject: Add patch tag infrastructure This change add patch 'tags', eg 'Acked-by' / 'Reviewed-by', etc., to patchwork. Tag parsing is implemented in the patch parser's extract_tags function, which returns a Counter object of the tags in a comment. These are stored in the PatchTag (keyed to Tag) objects associated with each patch. We need to ensure that the main patch lists do not cause per-patch queries on the Patch.tags ManyToManyField (this would result in ~500 queries per page), so we introduce a new QuerySet (and Manager) for Patch, adding a with_tag_counts() method to populate the tag counts in a single query. As users may be migrating from previous patchwork versions (ie, with no tag counts in the database), we add a 'retag' management command. Signed-off-by: Jeremy Kerr --- docs/INSTALL | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/INSTALL b/docs/INSTALL index cb0eccf..9630ad7 100644 --- a/docs/INSTALL +++ b/docs/INSTALL @@ -148,7 +148,12 @@ in brackets): PYTHONPATH=lib/python ./manage.py collectstatic - and add privileges for your mail and web users. This is only needed if + If you'd like to use the default tag set (Acked-by, Reviewed-by and + Tested-by), then load these default tags: + + PYTHONPATH=lib/python ./manage.py loaddata default_tags + + Finally, add privileges for your mail and web users. This is only needed if you use the ident-based approach. If you use password-based database authentication, you can skip this step. -- cgit v1.2.3