From 3982be14e853c38c51ec4b1823644c6843a654b6 Mon Sep 17 00:00:00 2001 From: Ines Montani Date: Thu, 24 Jun 2021 11:55:50 +1000 Subject: [PATCH] Improve fallbacks --- spacy/cli/package.py | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/spacy/cli/package.py b/spacy/cli/package.py index 6a34c1e16..1d0b9d401 100644 --- a/spacy/cli/package.py +++ b/spacy/cli/package.py @@ -253,8 +253,13 @@ def generate_readme(meta: Dict[str, Any]) -> str: components = ", ".join([md.code(p) for p in meta.get("components", [])]) vecs = meta.get("vectors", {}) vectors = f"{vecs.get('keys', 0)} keys, {vecs.get('vectors', 0)} unique vectors ({ vecs.get('width', 0)} dimensions)" - author = meta.get("author", "n/a") + author = meta.get("author") or "n/a" notes = meta.get("notes", "") + license_name = meta.get("license") + sources = _format_sources(meta.get("sources")) + description = meta.get("description") + label_scheme = _format_label_scheme(meta.get("labels")) + accuracy = _format_accuracy(meta.get("performance")) table_data = [ (md.bold("Name"), md.code(name)), (md.bold("Version"), md.code(version)), @@ -262,17 +267,20 @@ def generate_readme(meta: Dict[str, Any]) -> str: (md.bold("Default Pipeline"), pipeline), (md.bold("Components"), components), (md.bold("Vectors"), vectors), - (md.bold("Sources"), _format_sources(meta.get("sources"))), - (md.bold("License"), md.code(meta.get("license", "n/a"))), + (md.bold("Sources"), sources or "n/a"), + (md.bold("License"), md.code(license_name) if license_name else "n/a"), (md.bold("Author"), md.link(author, meta["url"]) if "url" in meta else author), ] # Put together Markdown body - md.add(meta.get("description", "")) + if description: + md.add(description) md.add(md.table(table_data, ["Feature", "Description"])) - md.add(md.title(3, "Label Scheme")) - md.add(_format_label_scheme(meta.get("labels"))) - md.add(md.title(3, "Accuracy")) - md.add(_format_accuracy(meta.get("performance"))) + if label_scheme: + md.add(md.title(3, "Label Scheme")) + md.add(label_scheme) + if accuracy: + md.add(md.title(3, "Accuracy")) + md.add(accuracy) if notes: md.add(notes) return md.text