From 72b56e4630f99608808522b2b5f768497f94d2bd Mon Sep 17 00:00:00 2001 From: Martin Kosek Date: Thu, 12 May 2011 08:28:22 +0200 Subject: Remove doc from API.txt Doc parts are not removed from the API completely. This leads to unnecessary updates to API.txt when the option/argument documentation is changed. This patch replaces unreliable doc stripping function with a regular expression. It works for all current doc strings (simple string or GetText). The only limitation is that the RE supports only up to 2 levels of nested parentheses in doc string. https://fedorahosted.org/freeipa/ticket/1057 --- makeapi | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'makeapi') diff --git a/makeapi b/makeapi index 757200d57..5f59a9766 100755 --- a/makeapi +++ b/makeapi @@ -45,14 +45,13 @@ def parse_options(): def strip_doc(line): """ - Remove the doc= line from the repr() of a Paramter. + Remove the doc= part from the repr() of a Parameter. """ - s = line.find(' doc=') - if s >= 0: - e = line.find('), ', s) - line = '%s%s' % (line[0:s], line[e+2:]) - return line + # this pattern allows up to 2 nested parentheses in doc part + newline = re.sub(r', doc=([^(,]+)(\([^()]*(\([^()]+\)[^()]*)?\))?', '', line) + + return newline def make_api(): """ -- cgit