chiark / gitweb /
Allow the Repository.get_stack() to get a default argument
authorCatalin Marinas <catalin.marinas@gmail.com>
Wed, 28 May 2008 21:02:01 +0000 (22:02 +0100)
committerCatalin Marinas <catalin.marinas@gmail.com>
Wed, 28 May 2008 21:02:01 +0000 (22:02 +0100)
If no argument or if it is None, it returns the current stack. This is
useful for many of the functions taking a --branch option.

Signed-off-by: Catalin Marinas <catalin.marinas@gmail.com>
stgit/commands/applied.py
stgit/commands/delete.py
stgit/commands/series.py
stgit/commands/unapplied.py
stgit/lib/stack.py

index 522425b475bd4f6df9beee12cd2186932c2aff3f..e57c7960cab31a71fbe5522e850367103d40e487 100644 (file)
@@ -42,10 +42,7 @@ def func(parser, options, args):
     if len(args) != 0:
         parser.error('incorrect number of arguments')
 
-    if options.branch:
-        s = directory.repository.get_stack(options.branch)
-    else:
-        s = directory.repository.current_stack
+    s = directory.repository.get_stack(options.branch)
 
     if options.count:
         out.stdout(len(s.patchorder.applied))
index de46085f871d5768c57f39ebed45b08e41696b8d..c5d3754a2c24a781d542c309d812394564766c73 100644 (file)
@@ -34,11 +34,10 @@ options = [make_option('-b', '--branch',
 
 def func(parser, options, args):
     """Delete one or more patches."""
+    stack = directory.repository.get_stack(options.branch)
     if options.branch:
-        stack = directory.repository.get_stack(options.branch)
         iw = None # can't use index/workdir to manipulate another branch
     else:
-        stack = directory.repository.current_stack
         iw = stack.repository.default_iw
     if args:
         patches = set(common.parse_patches(args, list(stack.patchorder.all)))
index c525b9aee08cb8c324f0e1d38b4b360044b05414..04183bd64a658ef7bb661f6cac2dee577016095f 100644 (file)
@@ -106,10 +106,7 @@ def func(parser, options, args):
     if options.all and options.short:
         raise common.CmdException, 'combining --all and --short is meaningless'
 
-    if options.branch:
-        stack = directory.repository.get_stack(options.branch)
-    else:
-        stack = directory.repository.current_stack
+    stack = directory.repository.get_stack(options.branch)
     if options.missing:
         cmp_stack = stack
         stack = directory.repository.get_stack(options.missing)
index 770220763b2b3755456fee253b2de0607edc4999..732334643c5d6de15ae1cd1b07a484f95bc63e0f 100644 (file)
@@ -41,10 +41,7 @@ def func(parser, options, args):
     if len(args) != 0:
         parser.error('incorrect number of arguments')
 
-    if options.branch:
-        s = directory.repository.get_stack(options.branch)
-    else:
-        s = directory.repository.current_stack
+    s = directory.repository.get_stack(options.branch)
 
     if options.count:
         out.stdout(len(s.patchorder.unapplied))
index f82562dc742da0567550d7e98eafbafe863504a4..6a2b40d6d7d15bf38666854f76239a0c97666f52 100644 (file)
@@ -172,8 +172,10 @@ class Repository(git.Repository):
         return utils.strip_leading('refs/heads/', self.head)
     @property
     def current_stack(self):
-        return self.get_stack(self.current_branch)
-    def get_stack(self, name):
+        return self.get_stack()
+    def get_stack(self, name = None):
+        if not name:
+            name = self.current_branch
         if not name in self.__stacks:
             self.__stacks[name] = Stack(self, name)
         return self.__stacks[name]