You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@yetus.apache.org by se...@apache.org on 2016/07/31 15:55:31 UTC
yetus git commit: YETUS-415 shelldocs ability to ignore a file
Repository: yetus
Updated Branches:
refs/heads/master 54de2af97 -> adeefcaaa
YETUS-415 shelldocs ability to ignore a file
Signed-off-by: Kengo Seki <se...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/adeefcaa
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/adeefcaa
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/adeefcaa
Branch: refs/heads/master
Commit: adeefcaaad1211ed1c95adfc75f5eef1804609ce
Parents: 54de2af
Author: Ajay Yadava <aj...@gmail.com>
Authored: Sun Jul 17 12:54:25 2016 +0530
Committer: Kengo Seki <se...@apache.org>
Committed: Sun Jul 31 15:53:52 2016 +0000
----------------------------------------------------------------------
.../source/documentation/in-progress.html.md | 2 ++
shelldocs/shelldocs.py | 31 +++++++++++++++++++-
2 files changed, 32 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/adeefcaa/asf-site-src/source/documentation/in-progress.html.md
----------------------------------------------------------------------
diff --git a/asf-site-src/source/documentation/in-progress.html.md b/asf-site-src/source/documentation/in-progress.html.md
index a23136b..15f44d8 100644
--- a/asf-site-src/source/documentation/in-progress.html.md
+++ b/asf-site-src/source/documentation/in-progress.html.md
@@ -53,6 +53,8 @@ Options:
--skipprnorep Skip Private & Not Replaceable
```
+You can mark a file to be ignored by shelldocs by adding "SHELLDOC-IGNORE" as a comment in its own line.
+
# Yetus Audience Annotations
Audience Annotations allows you to use Java Annotations to denote which parts of your Java library is publicly consumable and which parts are reserved for a more restricted use. It also provides doclets and examples for generating javadocs limited by audience.
http://git-wip-us.apache.org/repos/asf/yetus/blob/adeefcaa/shelldocs/shelldocs.py
----------------------------------------------------------------------
diff --git a/shelldocs/shelldocs.py b/shelldocs/shelldocs.py
index 70d486c..cc206db 100755
--- a/shelldocs/shelldocs.py
+++ b/shelldocs/shelldocs.py
@@ -290,11 +290,36 @@ class ShellFunction(object):
return line
+def marked_as_ignored(file_path):
+ """Checks for the presence of the marker(SHELLDOC-IGNORE) to ignore the file.
+
+ Marker needs to be in a line of its own and can not
+ be an inline comment.
+
+ A leading '#' and white-spaces(leading or trailing)
+ are trimmed before checking equality.
+
+ Comparison is case sensitive and the comment must be in
+ UPPERCASE.
+ """
+ with open(file_path) as input_file:
+ for line_num, line in enumerate(input_file, 1):
+ if line.startswith("#") and line[1:].strip() == "SHELLDOC-IGNORE":
+ print >> sys.stderr, "Yo! Got an ignore directive in",\
+ "file:{} on line number:{}".format(file_path, line_num)
+ return True
+ return False
+
+
def main():
'''main entry point'''
parser = OptionParser(
usage="usage: %prog [--skipprnorep] " + "[--output OUTFILE|--lint] " +
- "--input INFILE " + "[--input INFILE ...]")
+ "--input INFILE " + "[--input INFILE ...]",
+ epilog=
+ "You can mark a file to be ignored by shelldocs by adding"
+ " 'SHELLDOC-IGNORE' as comment in its own line."
+ )
parser.add_option("-o",
"--output",
dest="outfile",
@@ -344,6 +369,10 @@ def main():
try:
for filename in options.infile:
with open(filename, "r") as shellcode:
+ # if the file contains a comment containing
+ # only "SHELLDOC-IGNORE" then skip that file
+ if marked_as_ignored(filename):
+ continue
funcdef = ShellFunction(filename)
linenum = 0
for line in shellcode: