aboutsummaryrefslogtreecommitdiff
path: root/lib/rites/rite_ef/lectionary_ef.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rites/rite_ef/lectionary_ef.mli')
-rw-r--r--lib/rites/rite_ef/lectionary_ef.mli18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/rites/rite_ef/lectionary_ef.mli b/lib/rites/rite_ef/lectionary_ef.mli
index fe9359e..65fbfe5 100644
--- a/lib/rites/rite_ef/lectionary_ef.mli
+++ b/lib/rites/rite_ef/lectionary_ef.mli
@@ -3,11 +3,29 @@ open Colitur_kernel
(** The EF lectionary resolution chain. All rubric knowledge about what a day
with no proper falls back to lives here, not in the kernel.
+ [lectionary] is caller-supplied, not loaded by this module -- the same
+ reasoning rite_ef.mli's own [context] doc comment already gives for why
+ the sanctoral {!Colitur_kernel.Layer.t} stays a separate argument rather
+ than an embedded field: it lets a caller load data/ef/lectionary.sexp
+ however suits it, and leaves room for a future diocesan/proper
+ lectionary overlay to attach without this module changing at all.
+
+ An eager filesystem read at module initialisation was tried first and
+ reverted (fix round 1, coordinator review): [readings] used to close
+ over a [lectionary] value loaded as a side effect of this module being
+ LINKED, so `colitur easter <year>` -- which touches no lectionary data
+ at all -- died at startup the moment data/ef/lectionary.sexp was
+ missing from a bare `dune build`'s own default target (it was only
+ present because test/dune's own deps happened to materialise it,
+ masking the gap in every test run). See the task report for the
+ reproduction.
+
Steps 1 and 2 only (Task 4): the observed celebration's own proper, else
the day's own temporal slug in the lectionary. A day matching neither
gets [] for now -- the ferial fallback to the preceding Sunday (Task 5)
and the Commons (Task 6) are not built here. *)
val readings :
+ lectionary:Lectionary.t ->
observed:Vocab_ef.rank Celebration.t ->
temporal:(Vocab_ef.season, Vocab_ef.rank) Temporal.t ->
date:Date.t ->