| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous regeneration predated lectio's Good Friday fix (RG 128(b) +
RG 132), so this table still coloured the day violet. Regenerated against
lectio 4b2e1a1. Distinct days 656 -> 657: black is a new colour in this
table, which had none before.
Verified this time by building the EF binary properly and reading its output,
not by decoding the table. The earlier commit could not check the vigil
colours because `make FORM=ef` does not do what it appears to -- FORM is
DERIVED from config.h, so that build used EF tables while compiling with
FORM_OF defined, and the binary self-reported "Ordinary Form". Setting
FORM_EF in config.h gives a genuine EF build.
Cross-checked date by date against colitur, the source of these corrections:
all ten corrected days now agree on colour, Good Friday included. A full
365-day sweep of 2026 leaves 23 colour differences, every one a known cited
class -- 10 the BVM Saturday Office (colitur C17, RG 78, which lectio does
not build), 6 the 6-13 January Christmastide boundary (C1, RG 72-73), and 7
the RG 124 red-colour class (colitur M21, verdict colitur, adjudicated
against the scans) which lectio has not yet adopted. Nothing unexplained.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gen/liturgy_ef.h is generated by lectio's clectio-gen, so it inherited the EF
calendar errors colitur found and lectio has now fixed: ubaldus and didacus
ranked as commemorations rather than III-class feasts, and both August vigils
coloured from missalemeum rather than from RG 128.
Regenerated with `go run ./cmd/clectio-gen old 2025 2054`, against lectio at
46653b2. Distinct days 661 -> 656.
Verified: "St. Ubaldus" and "St. Didacus" are now in the name table and were
absent before, so the two rank corrections are present and both saints now
displace the ferias that previously held those days.
NOT independently verified here: the vigil COLOURS. The days[] table is a
deduplicated 656-entry set indexed from elsewhere, and decoding that encoding
to read a colour back would be guesswork rather than a check. Those values
come from lectio, where they are pinned by TestTridentineMissalOverrides and
were mutation-tested. Saying so rather than implying a check that was not run.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Picks up the Lenten Ember fix: three lectionary sections were keyed
ef-lent-1-{wednesday,friday,saturday} while lectio's calendar computes
ef-lent-ember-{wed,fri,sat}, so the lookup missed them and every Lenten Ember
day served Lent I Sunday's Mass.
84 of the 10 957 days in the compiled 2025-2054 range change, all of them Lent
Ember days, all now carrying their proper Masses:
Ember Wed 1 Kgs 19:3-8 / Matt 12:38-50 (was 2 Cor 6:1-10 / Matt 4:1-11)
Ember Fri Ezech 18:20-28 / John 5:1-15 (same)
Ember Sat 1 Thess 5:14-23 / Matt 17:1-9 (same)
84 rather than 90 because six Ember days across the range are displaced by a
feast that outranks the feria and so were never affected: St Matthias
(2029, 2040, 2051), the Chair of St Peter (2040, 2051) and St Joseph (2038).
Verified by building an EF binary from the tables before and after and diffing
all 10 957 days; no unclassified difference remains.
The OF table regenerates byte-identical and is untouched.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Picks up the seven EF calendar defects fixed in lectio this week. The OF
table regenerates byte-identical and is untouched.
209 of the 10,957 days in the compiled 2025-2054 range change, every one
of them traceable to a cited fix:
88 colour only
30 Holy Thursday violet -> white
30 3rd Sunday of Advent violet -> rose (Gaudete)
28 4th Sunday of Lent violet -> rose (Laetare; the other two
years change name too,
see below)
121 a different day observed
84 the Lent Ember days, previously emitted as plain ferias
20 St Matthew (21 Sep) and St Thomas (21 Dec) now winning over a
coinciding Ember day -- a II-class privileged feria yields to a
feast
4 13 January, the Commemoration of the Baptism of the Lord, taking
an occurring Sunday's place as a feast of the Lord
3 St Joseph (19 Mar) now correctly transferred off a Sunday of
Lent instead of displacing it
10 the 6 March - 5 April cluster of III-class feasts that the
sanctoral generator had demoted to bare commemorations
(Felicitas & Perpetua, John of God, Frances of Rome, Isidore of
Seville, Vincent Ferrer)
Verified by building an EF binary from the tables before and after and
diffing all 10,957 days; no unclassified difference remains.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two QA-found bugs fixed:
- mktext now collapses runs of whitespace in verse text to a single space
(and trims), matching lectio's Fields-based rendering. The Vulgate source
has occasional double spaces that were leaking into the output.
- Regenerated gen/ with the hermetic, alias-fixed clectio-gen: the generator
no longer picks up the user's stale books.ini (which had silently dropped
~30 EF Ember-day lessons, e.g. St Lawrence-common Sir 45, Osee/Hosea 14,
2 Esdras/Nehemiah 8). Full range 2025-2054 now has 0 dropped readings.
Verified vs lectio: OF and EF 2026 are byte-identical (day names + verse
text, 0 mismatches); range boundaries 2025-01-01 / 2054-12-31 match; ASAN +
UBSAN clean over leap days, boundaries and edge cases; bad input never
crashes. Shipped total 1.28 MiB.
Claude-Session: https://claude.ai/code/session_01S1CD1u3tgSS4xNu6WHfp5a
|
|
|
clectio prints the Catholic liturgical day and its Mass readings for a date
with a single table lookup -- no computation, config file, network, or deps
beyond libc. The calendar, reading citations and scripture text are all
compiled in; the whole shipped package fits on a 1.44 MB floppy (~1.29 MiB)
and the binary is ~0.9 MB (OF) / ~0.3 MB (EF).
- suckless config.h: FORM_OF/FORM_EF, SIGLA_ENGLISH/SIGLA_LATIN, COLOR.
- Bring your own Bible: `make CORPUS=mybible.tsv` recompiles with any
Vulgate-numbered 6-column TSV; only the ~12k cited verses are embedded.
- The hard liturgical logic stays in lectio (Go, oracle-validated); its
clectio-gen emits the corpus-independent tables in gen/. The scripture text
is LZSS-packed (lz.h) to fit; mktext/bin2h resolve+embed it at build time.
- Verified byte-identical to lectio's readings; day names match 157/157 over
a 3-year sample. Default text: public-domain Latin Vulgate. ISC-licensed.
Claude-Session: https://claude.ai/code/session_01S1CD1u3tgSS4xNu6WHfp5a
|