diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2026-10-13 16:54:02 -0400 |
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2026-10-13 16:54:02 -0400 |
| commit | 3f34ec6afde21801eff0b655949a6d219e47943c (patch) | |
| tree | 6e95a210663bcc7f41d0791de1769a2535988180 /pipeline/read.sh | |
| parent | format 2.1: the pipeline reads with ocda-read (diff) | |
The writer's version follows the format's: 2.1.0 in dub.json,
gleam.toml and both flakes (it was 2.0.0), and manifest.toml locks the
library at 2.1.0 to match. A release is numbered major.minor.patch,
major.minor being the format and shared with the specification and
the library, the patch the writer's own.
flake.lock, in dlang/ and gleam/, pins the library at its 2.1.0
release and nixpkgs as that release locks it, so the writer builds
with what the library was built and checked with. The READMEs say
plain nix build, and how to build against a working copy of the
library instead.
The pipeline no longer builds or runs sisudoc-ssp-reader and
sisudoc-ocda-db-reader, which are frozen: ocda-read, the library's
reader, covers both, and read.sh already ran it from both forms and in
both languages. Gone from build.sh, config.sh, one.sh and read.sh, and
from pipeline/README.md, which with config.sh now names spine's
--show-abstraction as the README does. build.sh still gives the writer
the library beside it, so that the library run and the library built in
are the same one.
README, to what was decided for these writers: the outputs must be
identical from every form and the D and Gleam writers must agree byte
for byte, but they are not held to spine's bytes; each format has its
own judge, and a difference from spine is there to read better. The
introduction said "identical to each other and to spine's", and the
example compared --text with spine's text file, which fails by
design; the example now compares the .ssp and the .ocda.db. The
documents the checks run over are the markup document samples, named
with their repository and the spine flags that build the artefacts,
and the counts read "all" or "every document" rather than a number,
here and in dlang/, gleam/ and pipeline/README.md. The format is 2.1,
and the license is stated.
Checked: D and Gleam build from the lock; over the markup document
samples, D == Gleam in text, markdown, html, epub and typst for every
document-language, and the .ssp and the .ocda.db give the same output.
(assisted by Claude-Code)
Diffstat (limited to 'pipeline/read.sh')
| -rwxr-xr-x | pipeline/read.sh | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/pipeline/read.sh b/pipeline/read.sh index ddbebe4..451f725 100755 --- a/pipeline/read.sh +++ b/pipeline/read.sh @@ -1,10 +1,8 @@ #!/usr/bin/env sh -# Every reader and both libraries, over every document, into $OUT/read/. +# The library and its reader, over every document, into $OUT/read/. # # What each produces: # -# read/ssp-{d,g}/<doc>.txt the .ssp readers' summary -# read/db-{d,g}/<doc>.txt the .ocda.db readers' summary # read/dump-{d,g}/<doc>.ssp the library's dump, loaded from the .ssp # read/dump-{d,g}/<doc>.db the same, loaded from the .ocda.db # read/read-{d,g}/<doc>.ssp ocda-read --tree, reading the .ssp @@ -17,7 +15,7 @@ set -e . "$(dirname "$0")/config.sh" : "${ARTEFACTS:?set ARTEFACTS to a directory of .ssp and .ocda.db files}" mkdir -p "$OUT/read" -for d in ssp-d ssp-g db-d db-g dump-d dump-g read-d read-g; do mkdir -p "$OUT/read/$d"; done +for d in dump-d dump-g read-d read-g; do mkdir -p "$OUT/read/$d"; done list=$(find "$ARTEFACTS" -name '*.ssp' | sort) [ -n "$LIMIT" ] && list=$(echo "$list" | head -n "$LIMIT") @@ -27,13 +25,9 @@ for ssp in $list; do stem=$(basename "$ssp" .ssp); lang=${stem##*.}; uid=${stem%.*} db=$(find "$ARTEFACTS" -name "$uid.ocda.db" | head -1) n=$((n+1)) - sh "$(dirname "$0")/one.sh" ssp-d "$ssp" > "$OUT/read/ssp-d/$stem.txt" - sh "$(dirname "$0")/one.sh" ssp-g "$ssp" > "$OUT/read/ssp-g/$stem.txt" sh "$(dirname "$0")/one.sh" dump-d "$ssp" > "$OUT/read/dump-d/$stem.ssp" sh "$(dirname "$0")/one.sh" dump-g "$ssp" > "$OUT/read/dump-g/$stem.ssp" [ -n "$db" ] || continue - sh "$(dirname "$0")/one.sh" db-d "$db" > "$OUT/read/db-d/$stem.txt" - sh "$(dirname "$0")/one.sh" db-g "$db" > "$OUT/read/db-g/$stem.txt" sh "$(dirname "$0")/one.sh" dump-d "$db" "$lang" > "$OUT/read/dump-d/$stem.db" sh "$(dirname "$0")/one.sh" dump-g "$db" "$lang" > "$OUT/read/dump-g/$stem.db" # the four-way agreement, which is the library's whole claim |
