aboutsummaryrefslogtreecommitdiffstats
path: root/becommands
diff options
context:
space:
mode:
authorAaron Bentley <abentley@panoramicfeedback.com>2005-04-14 18:07:49 +0000
committerAaron Bentley <abentley@panoramicfeedback.com>2005-04-14 18:07:49 +0000
commit16a391aaf9d3934f7297b7a8fb87184cf555882f (patch)
treeb016864fd16dcbaaba1ab09ec0a6668dddcaa60b /becommands
parent82c1e85e1845d33b8e552c9f832f91d032466036 (diff)
downloadbugseverywhere-16a391aaf9d3934f7297b7a8fb87184cf555882f.tar.gz
Added preliminary tree-diffing support
Diffstat (limited to 'becommands')
-rw-r--r--becommands/diff.py35
-rw-r--r--becommands/template21
2 files changed, 56 insertions, 0 deletions
diff --git a/becommands/diff.py b/becommands/diff.py
new file mode 100644
index 0000000..bf8b66d
--- /dev/null
+++ b/becommands/diff.py
@@ -0,0 +1,35 @@
+# This is the standard command template. To use it, please fill in values for
+# Short description, long help and COMMANDSPEC
+#
+"""Compare bug reports with older tree"""
+from libbe import bugdir, diff, cmdutil
+import os
+def execute(args):
+ options, args = get_parser().parse_args(args)
+ if len(args) == 0:
+ spec = None
+ elif len(args) == 1:
+ spec = args[0]
+ else:
+ raise cmdutil.UsageError
+ tree = bugdir.tree_root(".")
+ if tree.rcs_name == "None":
+ print "This directory is not revision-controlled."
+ else:
+ diff.diff_report(diff.reference_diff(tree, spec), tree)
+
+
+def get_parser():
+ parser = cmdutil.CmdOptionParser("be diff [specifier]")
+ return parser
+
+longhelp="""
+Uses the RCS to compare the current tree with a previous tree, and prints
+a pretty report. If specifier is given, it is a specifier for the particular
+previous tree to use. Specifiers are specific to their RCS.
+
+For Arch: a fully-qualified revision name
+"""
+
+def help():
+ return get_parser().help_str() + longhelp
diff --git a/becommands/template b/becommands/template
new file mode 100644
index 0000000..3c871e6
--- /dev/null
+++ b/becommands/template
@@ -0,0 +1,21 @@
+"""Short description"""
+from libbe import bugdir, cmdutil, names
+import os
+def execute(args):
+ options, args = get_parser().parse_args(args)
+ if len(args) > 0:
+ raise cmdutil.UsageError
+
+
+def get_parser():
+ parser = cmdutil.CmdOptionParser("be list [options]")
+# parser.add_option("-w", "--wishlist", action="store_true", dest="wishlist",
+# help="List bugs with 'wishlist' severity")
+ return parser
+
+longhelp="""
+This is for the longwinded description
+"""
+
+def help():
+ return get_parser().help_str() + longhelp