[object Object]

← back to CelebritySignatures

collage builder: merge authors.json into the data view (Authors collage was silently empty)

5d38631b431840a89f68bb7534a24a83771e65b3 · 2026-08-03 12:11:05 -0700 · Steve Abrams

Files touched

Diff

commit 5d38631b431840a89f68bb7534a24a83771e65b3
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon Aug 3 12:11:05 2026 -0700

    collage builder: merge authors.json into the data view (Authors collage was silently empty)
---
 scripts/build-collages.py | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/scripts/build-collages.py b/scripts/build-collages.py
index 6b00151..87b3f0f 100644
--- a/scripts/build-collages.py
+++ b/scripts/build-collages.py
@@ -270,12 +270,13 @@ def main():
     # postmortem right of publicity (§3344.1) for commercial sale.
     safe_only = bool(os.environ.get("SAFE_ONLY"))
     data = json.load(open(DATA))
-    # merged view: + generated Artists set (server merges the same two files
-    # for /api/signatures; dedupe on wikidata URL like server.js does)
-    artists_path = os.path.join(ROOT, "data", "artists.json")
-    if os.path.exists(artists_path):
-        seen = {r.get("wikidata") for r in data}
-        data += [r for r in json.load(open(artists_path)) if r.get("wikidata") not in seen]
+    # merged view: + generated Artists/Authors sets (server merges the same
+    # files for /api/signatures; dedupe on wikidata URL like server.js does)
+    for gen in ("artists.json", "authors.json"):
+        gp = os.path.join(ROOT, "data", gen)
+        if os.path.exists(gp):
+            seen = {r.get("wikidata") for r in data}
+            data += [r for r in json.load(open(gp)) if r.get("wikidata") not in seen]
     by = {}
     for r in data:
         if r["usable_in_commercial_collage"] != "yes":

← 4b5b421 Authors category LIVE: 5,686 deceased authors with verified  ·  back to CelebritySignatures  ·  typography unification: Playfair Display headings across mur 7084e36 →