Return data in cli.info and add silent option (resolves #2196)

This commit is contained in:
ines 2018-04-29 01:59:44 +02:00
parent 1c6d77610c
commit 3c80f69ff5

View File

@ -13,8 +13,9 @@ from .. import about
@plac.annotations( @plac.annotations(
model=("optional: shortcut link of model", "positional", None, str), model=("optional: shortcut link of model", "positional", None, str),
markdown=("generate Markdown for GitHub issues", "flag", "md", str)) markdown=("generate Markdown for GitHub issues", "flag", "md", str),
def info(model=None, markdown=False): silent=("don't print anything (just return)", "flag", "s"))
def info(model=None, markdown=False, silent=False):
"""Print info about spaCy installation. If a model shortcut link is """Print info about spaCy installation. If a model shortcut link is
speficied as an argument, print model information. Flag --markdown speficied as an argument, print model information. Flag --markdown
prints details in Markdown for easy copy-pasting to GitHub issues. prints details in Markdown for easy copy-pasting to GitHub issues.
@ -33,14 +34,17 @@ def info(model=None, markdown=False):
meta['source'] = path2str(model_path.resolve()) meta['source'] = path2str(model_path.resolve())
else: else:
meta['source'] = path2str(model_path) meta['source'] = path2str(model_path)
print_info(meta, 'model %s' % model, markdown) if not silent:
else: print_info(meta, 'model %s' % model, markdown)
data = {'spaCy version': about.__version__, return meta
'Location': path2str(Path(__file__).parent.parent), data = {'spaCy version': about.__version__,
'Platform': platform.platform(), 'Location': path2str(Path(__file__).parent.parent),
'Python version': platform.python_version(), 'Platform': platform.platform(),
'Models': list_models()} 'Python version': platform.python_version(),
'Models': list_models()}
if not silent:
print_info(data, 'spaCy', markdown) print_info(data, 'spaCy', markdown)
return data
def print_info(data, title, markdown): def print_info(data, title, markdown):