summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-06-15 18:16:47 +0300
committerPaul Buetow <paul@buetow.org>2026-06-15 23:50:41 +0300
commitb684fa5113239e595ecd1ccbcbd267ebbed9e62d (patch)
tree64b0a196f8510a3e974bdae114dff52f4fe5eb9f /docs
parent9d7c6ec3de935ef846e9f9a0512129990a1ddec4 (diff)
Persist the EXIF cache in a volatile ./cache dir parallel to ./dist
The per-photo `identify -verbose` cache lived in $DIST_DIR/.shuriken-cache, which is inside the throwaway staging dir and the published dist: a fresh/cleared dist lost it (forcing a full, slow re-identify of every original) and it got deployed to web servers. Move it to a volatile ./cache/exif directory parallel to ./dist (dirname of DIST_DIR resolves to the working dir in both the staging and direct contexts). Now an unchanged photo skips identify on every regenerate, the cache survives a cleared dist, and it is never deployed. --force clears ./cache/exif once up front (clear_exif_cache) and the run repopulates it, so force still does exactly one identify per photo. Dropped .shuriken-cache from the staging-copy loop. Tests and the audit doc updated for the new cache location. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/stats-exif-audit.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/docs/stats-exif-audit.md b/docs/stats-exif-audit.md
index 7076254..1b1023b 100644
--- a/docs/stats-exif-audit.md
+++ b/docs/stats-exif-audit.md
@@ -13,8 +13,8 @@ library (there is none to point at):
* `src/lib/imagemagick.source.sh` runs `magick identify -verbose <file>` (or
`convert <file> -verbose info:` when only the legacy `convert` is present).
-* `src/lib/album.source.sh` caches that raw output per photo under
- `$DIST_DIR/.shuriken-cache/exif/<photo>.txt` and parses it.
+* `src/lib/album.source.sh` caches that raw output per photo under a volatile
+ `./cache/exif/<photo>.txt` (parallel to `./dist`) and parses it.
The parser detail that drives every decision below: shuriken only reads EXIF
through this regex (`photo_exif_details_html`, `_photo_exif_values_to`):