Compare commits

...

8 Commits

Author SHA1 Message Date
skullY ebea7f7ea0 New release: 0.0.25 → 0.0.26 2019-11-28 08:42:55 -08:00
skullY 49b288786a Add support for hidden subcommands 2019-11-28 08:42:49 -08:00
skullY e75b4d4ed1 New release: 0.0.24 → 0.0.25 2019-11-18 22:33:19 -08:00
skullY 7f56cfd781 Add flake8 to requirements 2019-11-18 22:33:14 -08:00
skullY b04bf7a4da New release: 0.0.23 → 0.0.24 2019-11-15 23:25:13 -08:00
skullY fb260f29e1 Fix commands with no arguments 2019-11-15 23:15:07 -08:00
skullY e8e98ca15a New release: 0.0.22 → 0.0.23 2019-11-15 22:21:33 -08:00
skullY 4d1302696e Make folding arguments into config operate more correctly. 2019-11-15 22:21:26 -08:00
4 changed files with 17 additions and 14 deletions
+14 -12
View File
@@ -501,12 +501,12 @@ class MILC(object):
if argument not in self.arg_only: if argument not in self.arg_only:
# Find the argument's section # Find the argument's section
argument_found = True if self._entrypoint.__name__ in self.default_arguments and argument in self.default_arguments[self._entrypoint.__name__]:
for group in self.default_arguments: argument_found = True
if argument in self.default_arguments[group]: section = self._entrypoint.__name__
argument_found = True if argument in self.default_arguments['general']:
section = group argument_found = True
break section = 'general'
if not argument_found: if not argument_found:
raise RuntimeError('Could not find argument in `self.default_arguments`. This should be impossible!') raise RuntimeError('Could not find argument in `self.default_arguments`. This should be impossible!')
@@ -595,23 +595,25 @@ class MILC(object):
return entrypoint_func return entrypoint_func
def add_subcommand(self, handler, description, name=None, **kwargs): def add_subcommand(self, handler, description, name=None, hidden=False, **kwargs):
"""Register a subcommand. """Register a subcommand.
If name is not provided we use `handler.__name__`. If name is not provided we use `handler.__name__`.
""" """
if self._inside_context_manager: if self._inside_context_manager:
raise RuntimeError('You must run this before the with statement!') raise RuntimeError('You must run this before the with statement!')
if self._subparsers is None: if self._subparsers is None:
self.add_subparsers() self.add_subparsers(metavar="")
if not name: if not name:
name = handler.__name__.replace("_", "-") name = handler.__name__.replace("_", "-")
self.acquire_lock() self.acquire_lock()
if not hidden:
kwargs['help'] = description self._subparsers.metavar = "{%s,%s}" % (self._subparsers.metavar[1:-1], name) if self._subparsers.metavar else "{%s%s}" % (self._subparsers.metavar[1:-1], name)
kwargs['help'] = description
self.subcommands[name] = SubparserWrapper(self, name, self._subparsers.add_parser(name, **kwargs)) self.subcommands[name] = SubparserWrapper(self, name, self._subparsers.add_parser(name, **kwargs))
self.subcommands[name].set_defaults(entrypoint=handler) self.subcommands[name].set_defaults(entrypoint=handler)
@@ -619,11 +621,11 @@ class MILC(object):
return handler return handler
def subcommand(self, description, **kwargs): def subcommand(self, description, hidden=False, **kwargs):
"""Decorator to register a subcommand. """Decorator to register a subcommand.
""" """
def subcommand_function(handler): def subcommand_function(handler):
return self.add_subcommand(handler, description, **kwargs) return self.add_subcommand(handler, description, hidden=hidden, **kwargs)
return subcommand_function return subcommand_function
+1 -1
View File
@@ -1,3 +1,3 @@
"""A program to help you work with qmk_firmware.""" """A program to help you work with qmk_firmware."""
__version__ = '0.0.22' __version__ = '0.0.26'
+1 -1
View File
@@ -1,5 +1,5 @@
[bumpversion] [bumpversion]
current_version = 0.0.22 current_version = 0.0.26
commit = True commit = True
tag = True tag = True
tag_name = {new_version} tag_name = {new_version}
+1
View File
@@ -44,6 +44,7 @@ if __name__ == "__main__":
"appdirs", "appdirs",
"argcomplete", "argcomplete",
"colorama", "colorama",
"flake8",
"hjson", "hjson",
"yapf" "yapf"
], ],