aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-12 14:50:34 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-12 14:50:34 +0200
commite122fa4368e156b9c90c128a8daad9545b22ed11 (patch)
treea652429898a4ee94908ad1a96b3bf4d7d5ed1fe8
parent50e39702bad835962b6e9c04253572e5b48a951f (diff)
downloadlectio-e122fa4368e156b9c90c128a8daad9545b22ed11.tar.gz
lectio-e122fa4368e156b9c90c128a8daad9545b22ed11.zip
gen-sanctoral-ef, caldata: fix round 2 -- review found five real problems
External review of the seven-defect fix (round 1) confirmed all seven correctly and structurally fixed, then found five further problems in what shipped alongside, two of them critical. All five verified independently before being fixed, not applied on the review's say-so alone -- see each item below for the primary-source check performed. CRITICAL 1: the regeneration destroyed all 322 Polish display names. main() preserved name.la across a regeneration (missalemeum has no Latin titles) but had no equivalent for name.pl, and never emitted one -- name.pl count went 322 -> 0 (confirmed: `git show 2386a45:internal/caldata/tridentine-calendar.ini | grep -c '^name.pl'` = 322; the pre-round-2 file = 0). naming.CelebrationName's own name[lang] -> name.en fallback then silently substituted English for every Polish EF display, reaching mobile.Day(date, "ef", version, "pl") -- a shipped dlectio entry point -- with no error anywhere in the chain, and nothing in this repo's test suite asserting any name.* field at all. Fixed at the root, not by re-adding name.pl specifically: `entry.la` (one hardcoded language) is replaced by `entry.otherNames map[string]string`, populated from every "name.<lang>" field already present except name.en (English always comes fresh from missalemeum) and re-emitted verbatim, sorted for deterministic output -- a third or fourth language added later survives a regeneration without this function changing again. CRITICAL 2: St Romanus was deleted, and St Eusebius (14 August) excluded, on a primary-source claim the primary source itself contradicts. The exclusion cited the calendarium's 9 August row as reading only "Vigilia, III classis.", no "Com." line -- checked against ONE of the three local Missal scans, "1962-06-23,...LT.pdf", an ELECTRONIC TRANSCRIPTION. The other two, PHOTOGRAPHIC scans of the actual 1962 Missale Romanum, both carry it: "missale-romanum-1962.pdf" calendarium, 9 August: "XVI d V 9 Vigilia, III classis, Commemoratio S. Romani Mart.", with the saint's own proper text elsewhere in the same scan ("Et fit commemoratio S. Romani Mar-") and its own back-of-book index ("Romani Mart., 9 augusti ... 621"). The transcription silently drops vigil commemorations generally (also missing there, present in both photographic scans: 7 August Donatus, 25 December Anastasia). 14 August's "St. Eusebius" is the identical shape (calendarium: "XI b XIX 14 Vigilia, II classis, Commemoratio S. Eusebii Conf.") and genuinely a DIFFERENT person from 16 December's "St. Eusebius, Ep. et Mart." (calendarium: "V XVII S. Eusebii Ep. et Mart., III classis.") -- a Confessor and a Bishop-and-Martyr, not the same saint duplicated. knownSpuriousComm (both entries) is removed outright; slugOverride gains "08-14/eusebius" -> "eusebius-confessor" so the two no longer collide by slug. Going forward: the photographic scans are the primary source; the electronic transcription is a convenience index only; where they disagree, the scan wins -- recorded in the generator's own comments, not just here. IMPORTANT 3+4: Thomas Becket (29 Dec) and Silvester (31 Dec) were silently promoted to class-4 by a hidden coupling. RG 68(d)/(e): "die 29 decembris, fit commemoratio S. Thomae Episcopi et Mart.; die 31 decembris, fit commemoratio S. Silvestri I Papae et Conf." -- both a bare "Commemoratio" with NO class of their own; the DAY they fall on (within the Nativity Octave) is II class, confirmed in the same calendarium row. refYearExplainsAbsence calls calendar.Compute and trusts a commemoration's own id-rank when the temporal day looks class-1/2-strong; after this task's own earlier fix promoted 26-31 December from class-4 to class-2 (RG 67/68), that trust flipped for these two from "not explained" to "explained" purely as a side effect of an unrelated temporal_ef.go change -- the generator's data inference reads the engine's own computed ranks, so a temporal_ef.go rank change can silently rewrite generated data. Fixed narrowly (6-31 December excluded from ever trusting the id-rank, citing RG 68(d)/(e) directly) and the coupling itself documented in refYearExplainsAbsence's own doc comment as a standing hazard for the next temporal_ef.go rank change, not just this one instance. Separately, the SAME function's doc comment overstated its own guarantee ("ANY class-1..4 saint would lose there") -- false for its Lent/Passiontide limb, where a III-class privileged feria does not beat a I- or II-class feast (RG 109(e) is privilege over an equal-or-lower class only) -- and the "commemoration id names the saint's TRUE rank" claim at the call site was falsified by its own worked example (St Blaise's id claims rank 4, and he is still correctly ruled RankCommemoration). Both rewritten to describe this as the rank-blind sampling heuristic it actually is, not a rubric evaluator. IMPORTANT 5: the Purification's own citation, strengthened. Three fixes to classOf's doc comment, no data change (the tag stays "lord", per round 1's own decision): the colitur cross-reference is removed (colitur bootstraps from lectio and was reading the same oracle a second time, not independent corroboration, and citing a sibling project's in-flight branch is not itself an argument); the rule that actually makes the occurrence pattern diagnostic is now named -- RG 91 entry 14 ("Festa Domini II classis") above entry 15 ("Dominicae II classis") above entry 16 ("Festa II classis... quae non [sunt Domini]"), each verified directly against the scan, not paraphrased; RG 120(b) is recorded as genuine primary-text counter-evidence ("Adhibetur color albus... b) B. Mariae Virg., etiam in benedictione et processione candelarum die 2 februarii" -- 2 February filed under the white-colour rule's OWN "B. Mariae Virg." heading, separate from 120(a)'s "Domini" heading), and RG 112(b) ("Officium, Missa aut commemoratio de dominica excludit commemorationem... de festo vel mysterio Domini, et vicissim") is cited as independently backing the empty commemoration list. A new committed fixture test replaces reliance on the report alone, since the deciding years (2 February on a Sunday) fall outside this repo's committed 2026-2027 oracle snapshot: TestPurificationBeatsFebruarySunday (internal/calendar/precedence_ef_repro_test.go), five independently fetched years. One of the years this reasoning is sometimes quoted against, 2036, is corrected in passing: 2 February 2036 is in fact a Saturday, not a Sunday (`date -d 2036-02-02 +%A`) -- checked here rather than repeated, 2042 used instead. Witnesses (internal/caldata/caldata_test.go): TestTridentineNamesPreservedAcrossRegeneration, TestTridentineRomanusAndEusebiusPresent (replaces TestTridentineNoSpuriousRomanus, whose own name asserted the now-corrected wrong claim). Pre-fix failures (captured against the committed pre-round-2 state, commit 50e3970): name.pl coverage = 0 entries, want >= 315 assumption-of-the-blessed-virgin-mary: name.pl = "", want the preserved Polish name romanus missing: the calendarium's photographic scans both carry "Commemoratio S. Romani Mart." on 9 August missing "eusebius-confessor" (08-14) internal/caldata/tridentine-calendar.ini regenerated from the ORIGINAL branch-point data (`git show 2386a45:...`), not from this session's own already-damaged intermediate file -- regenerating from an already-corrupted source would have preserved nothing, since the preservation mechanism can only preserve what is actually on disk when it runs. Verified directly (not merely re-tested): all 322 name.en/name.pl values byte-identical to the branch point; 15 rank fields and 2 class fields differ (the round-1 Lenten-rank and class-tag fixes, unchanged by this round); 5 new slugs added (agnes-secundo, boniface-martyr, eusebius-confessor, evaristus, theodore); 0 slugs removed.
-rw-r--r--internal/caldata/caldata_test.go94
-rw-r--r--internal/caldata/tridentine-calendar.ini342
-rw-r--r--internal/calendar/precedence_ef_repro_test.go38
-rw-r--r--scripts/gen-sanctoral-ef.go264
4 files changed, 641 insertions, 97 deletions
diff --git a/internal/caldata/caldata_test.go b/internal/caldata/caldata_test.go
index a9bc860..2ba052d 100644
--- a/internal/caldata/caldata_test.go
+++ b/internal/caldata/caldata_test.go
@@ -216,18 +216,49 @@ func TestTridentineNoMissingEntries(t *testing.T) {
}
}
-// TestTridentineNoSpuriousRomanus: the calendarium's 9 August row reads only
-// "Vigilia, III classis.", with no "Com." line -- missalemeum's own "St.
-// Romanus" commemoration that day has no calendarium support and is a
-// genuine upstream data quirk (the same standard already applied to "St.
-// Eusebius" on 14 August, also excluded).
-func TestTridentineNoSpuriousRomanus(t *testing.T) {
+// TestTridentineRomanusAndEusebiusPresent: CORRECTED after review found the
+// opposite claim resting on an incomplete primary-source check. An earlier
+// version of this test (and of scripts/gen-sanctoral-ef.go's
+// knownSpuriousComm) asserted Romanus ABSENT, on the strength of ONE of the
+// three local Missal scans -- "1962-06-23,…LT.pdf", an ELECTRONIC
+// TRANSCRIPTION that silently drops vigil commemorations generally (also
+// missing: 7 August Donatus, 25 December Anastasia, both present elsewhere).
+// The other two, PHOTOGRAPHIC scans of the actual 1962 Missale Romanum, both
+// carry it: "missale-romanum-1962.pdf" calendarium, 9 August row: "XVI d V
+// 9 Vigilia, III classis, Commemoratio S. Romani Mart.", with the saint's
+// own proper text elsewhere in the same scan ("Et fit commemoratio S. Romani
+// Mar-"), and its own back-of-book index ("Romani Mart., 9 augusti ... 621").
+// Where the scans and the transcription disagree, the scans win -- see
+// gen-sanctoral-ef.go's own primary-source note, same rule recorded there so
+// it is not lost a second time.
+//
+// 14 August's "St. Eusebius" is the identical shape (calendarium: "XI b XIX
+// 14 Vigilia, II classis, Commemoratio S. Eusebii Conf.") and a DIFFERENT
+// person from 16 December's "St. Eusebius, Ep. et Mart." (calendarium: "V
+// XVII S. Eusebii Ep. et Mart., III classis.") -- a Confessor and a Bishop
+// and Martyr, not the same saint moved or duplicated. missalemeum gives both
+// the same bare English title, so they collide by slug; slugOverride
+// disambiguates rather than either being dropped.
+func TestTridentineRomanusAndEusebiusPresent(t *testing.T) {
l := Tridentine()
- if _, ok := l.Cels["romanus"]; ok {
- t.Error("romanus present: the calendarium's 9 August row has no Com. line to support it")
+ if rc, ok := l.Cels["romanus"]; !ok {
+ t.Error("romanus missing: the calendarium's photographic scans both carry \"Commemoratio S. Romani Mart.\" on 9 August")
+ } else if rc.Fields["date"] != "08-09" {
+ t.Errorf("romanus: date = %q, want 08-09", rc.Fields["date"])
}
- if rc, ok := l.Cels["eusebius"]; ok && rc.Fields["date"] != "12-16" {
- t.Errorf("eusebius: date = %q, want 12-16 (14 August's Eusebius has no calendarium support)", rc.Fields["date"])
+ want := map[string]string{
+ "eusebius-confessor": "08-14", // "S. Eusebii Conf." -- a Confessor
+ "eusebius": "12-16", // "S. Eusebii Ep. et Mart." -- a Bishop and Martyr, a different person
+ }
+ for slug, date := range want {
+ rc, ok := l.Cels[slug]
+ if !ok {
+ t.Errorf("missing %q (%s)", slug, date)
+ continue
+ }
+ if rc.Fields["date"] != date {
+ t.Errorf("%s: date = %q, want %q", slug, rc.Fields["date"], date)
+ }
}
}
@@ -252,3 +283,46 @@ func TestTridentineNoTransferArtifacts(t *testing.T) {
}
}
}
+
+// TestTridentineNamesPreservedAcrossRegeneration is the coverage guard a
+// regeneration silently destroying a whole language's names needed and did
+// not have: an earlier version of scripts/gen-sanctoral-ef.go's main()
+// preserved existing name.la values across a regeneration (missalemeum
+// supplies English only) but had no equivalent for name.pl -- and, because
+// the bootstrapped file has in fact never carried a name.la value, that
+// mechanism looked correct while doing nothing at all. A regeneration
+// deleted all 322 Polish names outright (name.pl count 322 -> 0), silently:
+// no test here asserted anything about a name.* field, and
+// `len(l.Cels) < 250` (TestTridentineLoads) does not notice a field going
+// missing within entries that still exist. `naming.CelebrationName`'s own
+// name[lang] -> name.en fallback (internal/naming/naming.go) then quietly
+// substituted English for Polish on every EF display in that language,
+// reaching mobile.Day(date, "ef", version, "pl") -- a shipped dlectio entry
+// point -- with no error anywhere in the chain.
+//
+// Checks both a broad coverage floor (not exactly 322: a handful of entries
+// added by this same task's own fixes -- St Agnes secundo, St Boniface
+// Martyr, St Evaristus, St Theodore, St Romanus, St Eusebius Confessor --
+// never had a curated Polish name to preserve in the first place, so 322 is
+// not achievable) and one specific, checkable value (the coordinator's own
+// example) so a coverage-only guard cannot itself be satisfied by silently
+// wrong values.
+func TestTridentineNamesPreservedAcrossRegeneration(t *testing.T) {
+ l := Tridentine()
+ n := 0
+ for _, rc := range l.Cels {
+ if rc.Fields["name.pl"] != "" {
+ n++
+ }
+ }
+ if n < 315 {
+ t.Errorf("name.pl coverage = %d entries, want >= 315 (was 322 before any of this task's fixes; a regeneration must preserve it, not merely not-crash)", n)
+ }
+ rc, ok := l.Cels["assumption-of-the-blessed-virgin-mary"]
+ if !ok {
+ t.Fatal("missing assumption-of-the-blessed-virgin-mary")
+ }
+ if got := rc.Fields["name.pl"]; got != "Wniebowzięcie N. M. P." {
+ t.Errorf("assumption-of-the-blessed-virgin-mary: name.pl = %q, want the preserved Polish name", got)
+ }
+}
diff --git a/internal/caldata/tridentine-calendar.ini b/internal/caldata/tridentine-calendar.ini
index 9010845..55564d7 100644
--- a/internal/caldata/tridentine-calendar.ini
+++ b/internal/caldata/tridentine-calendar.ini
@@ -4,7 +4,9 @@
; by internal/calendar (temporalEF) and is NOT listed here.
; Ranks use the 1960 Code of Rubrics: class-1..class-4.
; Generated by scripts/gen-sanctoral-ef.go from missalemeum (Divinum Officium 1962
-; data). Latin names are hand-curated where present. See NOTICE.
+; data). name.en is always regenerated fresh from missalemeum; every other
+; name.<lang> (missalemeum supplies English only) is preserved verbatim from
+; whatever this file already carried before regeneration. See NOTICE.
[layer]
id = tridentine
@@ -16,12 +18,14 @@ date = 01-05
rank = commemoration
colour = red
name.en = St. Telesphorus Pope and Martyr
+name.pl = św. Telesfora, Papieża i Męczennika
[hyginus-pope-and-martyr]
date = 01-11
rank = commemoration
colour = red
name.en = St. Hyginus Pope and Martyr
+name.pl = św. Hygina, Papieża i Męczennika
[commemoration-of-the-baptism-of-the-lord]
date = 01-13
@@ -29,6 +33,7 @@ rank = class-2
colour = white
class = lord
name.en = Commemoration of the Baptism of the Lord
+name.pl = Wspomnienie Chrztu Pańskiego
reading.first = Isa 60:1-6
reading.gospel = John 1:29-34
@@ -37,12 +42,14 @@ date = 01-14
rank = commemoration
colour = red
name.en = S. Felicis
+name.pl = św. Feliksa, Kapłana i Męczennika
[hilary]
date = 01-14
rank = class-3
colour = white
name.en = St. Hilary
+name.pl = św. Hilarego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -51,12 +58,14 @@ date = 01-15
rank = commemoration
colour = white
name.en = St. Maur, Abbot
+name.pl = św. Maura, Opata
[paul-the-first-hermit]
date = 01-15
rank = class-3
colour = white
name.en = St. Paul, the First Hermit
+name.pl = św. Pawła, Pierwszego Pustelnika, Wyznawcy
reading.first = Phil 3:7-12
reading.gospel = Matt 11:25-30
@@ -65,6 +74,7 @@ date = 01-16
rank = class-3
colour = red
name.en = St. Marcellus I
+name.pl = św. Marcelego I, Papieża i Męczennika
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -73,6 +83,7 @@ date = 01-17
rank = class-3
colour = white
name.en = St. Anthony
+name.pl = św. Antoniego, Opata
reading.first = Ecclus 45:1-6
reading.gospel = Luke 12:35-40
@@ -81,24 +92,28 @@ date = 01-18
rank = commemoration
colour = white
name.en = St. Prisca
+name.pl = św. Pryski, Dziewicy
[canute-martyr]
date = 01-19
rank = commemoration
colour = red
name.en = St. Canute, Martyr
+name.pl = św. Kanuta, Króla i Męczennika
[sts-marius-martha-audifax-abachum]
date = 01-19
rank = commemoration
colour = red
name.en = Sts. Marius, Martha, Audifax & Abachum
+name.pl = śś. Mariusza, Marty, Audifaksa i Abachuma
[sts-fabian-sebastian]
date = 01-20
rank = class-3
colour = red
name.en = Sts. Fabian & Sebastian
+name.pl = śś. Fabiana, Papieża i Sebastiana, Męczenników
reading.first = Heb 11:33-39
reading.gospel = Luke 6:17-23
@@ -107,6 +122,7 @@ date = 01-21
rank = class-3
colour = red
name.en = St. Agnes
+name.pl = św. Agnieszki, Dziewicy i Męczennicy
reading.first = Sir 51:1-8; 51:12
reading.gospel = Matt 25:1-13.
@@ -115,6 +131,7 @@ date = 01-22
rank = class-3
colour = red
name.en = Sts. Vincent & Anastasius
+name.pl = śś. Wincentego i Anastazego, Męczenników
reading.first = Wis 3:1-8
reading.gospel = Luke 21:9-19
@@ -123,12 +140,14 @@ date = 01-23
rank = commemoration
colour = red
name.en = St. Emerentiana
+name.pl = św. Emercjanny, Dziewicy i Męczennicy
[raymond-of-pe-afort]
date = 01-23
rank = class-3
colour = white
name.en = St. Raymond of Peñafort
+name.pl = św. Rajmunda z Pennafort, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -137,6 +156,7 @@ date = 01-24
rank = class-3
colour = red
name.en = St. Timothy
+name.pl = św. Tymoteusza, Biskupa i Męczennika
reading.first = 1 Tim. 6:11-16
reading.gospel = Luke 14:26-33.
@@ -145,6 +165,7 @@ date = 01-25
rank = class-3
colour = white
name.en = Conversion of St. Paul
+name.pl = Nawrócenie św. Pawła, Apostoła
reading.first = Acts 9:1-22
reading.gospel = Matt 19:27-29.
@@ -153,12 +174,14 @@ date = 01-25
rank = commemoration
colour = white
name.en = St. Peter
+name.pl = św. Piotra, Apostoła
[polycarp]
date = 01-26
rank = class-3
colour = red
name.en = St. Polycarp
+name.pl = św. Polikarpa, Biskupa i Męczennika
reading.first = 1 John 3:10-16
reading.gospel = Matt 10:26-32.
@@ -167,6 +190,7 @@ date = 01-27
rank = class-3
colour = white
name.en = St. John Chrysostom
+name.pl = św. Jana Chryzostoma, Wyznawcy, Biskupa i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -181,6 +205,7 @@ date = 01-28
rank = class-3
colour = white
name.en = St. Peter Nolasco
+name.pl = św. Piotra Nolasco, Wyznawcy
reading.first = 1 Cor. 4:9-14
reading.gospel = Luke 12:32-34
@@ -189,6 +214,7 @@ date = 01-29
rank = class-3
colour = white
name.en = St. Francis de Sales
+name.pl = św. Franciszka Salezego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -197,6 +223,7 @@ date = 01-30
rank = class-3
colour = red
name.en = St. Martina
+name.pl = św. Martyny, Dziewicy i Męczennicy
reading.first = Sir 51:1-8; 51:12
reading.gospel = Matt 25:1-13.
@@ -205,6 +232,7 @@ date = 01-31
rank = class-3
colour = white
name.en = St. John Bosco
+name.pl = św. Jana Bosco, Wyznawcy
reading.first = Phil 4:4-9
reading.gospel = Matt 18:1-5
@@ -213,6 +241,7 @@ date = 02-01
rank = class-3
colour = red
name.en = St. Ignatius of Antioch
+name.pl = św. Ignacego, Biskupa i Męczennika
reading.first = Rom 8:35-39
reading.gospel = John 12:24-26
@@ -222,6 +251,7 @@ rank = class-2
colour = white
class = lord
name.en = Purification of the Blessed Virgin Mary
+name.pl = Oczyszczenie N. M. P.
reading.first = Mal 3:1-4
reading.gospel = Luke 2:22-32
@@ -230,12 +260,14 @@ date = 02-03
rank = commemoration
colour = red
name.en = St. Blaise
+name.pl = św. Błażeja, Biskupa i Męczennika
[andrew-corsini]
date = 02-04
rank = class-3
colour = white
name.en = St. Andrew Corsini
+name.pl = św. Andrzeja Corsini, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -244,6 +276,7 @@ date = 02-05
rank = class-3
colour = red
name.en = St. Agatha
+name.pl = św. Agaty, Dziewicy i Męczennicy
reading.first = 1 Cor. 1:26-31
reading.gospel = Matt 19:3-12.
@@ -252,12 +285,14 @@ date = 02-06
rank = commemoration
colour = red
name.en = St. Dorothy
+name.pl = św. Doroty, Dziewicy i Męczennicy
[titus]
date = 02-06
rank = class-3
colour = white
name.en = St. Titus
+name.pl = św. Tytusa, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Luke 10:1-9
@@ -266,6 +301,7 @@ date = 02-07
rank = class-3
colour = white
name.en = St. Romuald
+name.pl = św. Romualda, Opata
reading.first = Ecclus 45:1-6
reading.gospel = Matt 19:27-29.
@@ -274,6 +310,7 @@ date = 02-08
rank = class-3
colour = white
name.en = St. John of Matha
+name.pl = św. Jana z Maty, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -282,12 +319,14 @@ date = 02-09
rank = commemoration
colour = red
name.en = St. Appollonia
+name.pl = św. Apolonii, Dziewicy i Męczennicy
[cyril-of-alexandria]
date = 02-09
rank = class-3
colour = white
name.en = St. Cyril of Alexandria
+name.pl = św. Cyryla Aleksandryjskiego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -296,6 +335,7 @@ date = 02-10
rank = class-3
colour = white
name.en = St. Scholastica
+name.pl = św. Scholastyki
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -304,6 +344,7 @@ date = 02-11
rank = class-3
colour = white
name.en = Our Lady of Lourdes
+name.pl = Objawienie się N. M. P. Niepokalanie Poczętej w Lourdes
reading.first = Apoc 11:19; 12:1, 10
reading.gospel = Luke 1:26-31.
@@ -312,6 +353,7 @@ date = 02-12
rank = class-3
colour = white
name.en = Seven Holy Servite Founders
+name.pl = Siedmiu Założycieli Zakonu Serwitów N. M. P., Wyznawców
reading.first = Ecclus 44:1-15
reading.gospel = Matt 19:27-29.
@@ -320,24 +362,28 @@ date = 02-14
rank = commemoration
colour = red
name.en = St. Valentine
+name.pl = św. Walentego, Kapłana i Męczennika
[sts-faustinus-jovita]
date = 02-15
rank = commemoration
colour = red
name.en = Sts. Faustinus & Jovita
+name.pl = śś. Faustyna i Jowity, Męczenników
[simeon]
date = 02-18
rank = commemoration
colour = red
name.en = St. Simeon
+name.pl = św. Symeona, Biskupa i Męczennika
[chair-of-st-peter]
date = 02-22
rank = class-2
colour = white
name.en = Chair of St. Peter
+name.pl = Katedry św. Piotra Apostoła
reading.first = 1 Pet 1:1-7
reading.gospel = Matt 16:13-19
@@ -346,12 +392,14 @@ date = 02-22
rank = commemoration
colour = red
name.en = St. Paul
+name.pl = św. Pawła
[peter-damien]
date = 02-23
rank = class-3
colour = white
name.en = St. Peter Damien
+name.pl = św. Piotra Damiana, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -360,6 +408,7 @@ date = 02-24
rank = class-2
colour = red
name.en = St. Matthias
+name.pl = św. Macieja Apostoła
reading.first = Acts 1:15-26
reading.gospel = Matt 11:25-30
@@ -368,6 +417,7 @@ date = 02-27
rank = class-3
colour = white
name.en = St. Gabriel of Our Lady of Sorrows
+name.pl = św. Gabriela od Matki Bożej Bolesnej
reading.first = 1 John 2:14-17
reading.gospel = Mark 10:13-21
@@ -376,6 +426,7 @@ date = 03-04
rank = class-3
colour = white
name.en = St. Casimir
+name.pl = św. Kazimierza, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -384,60 +435,70 @@ date = 03-04
rank = commemoration
colour = red
name.en = St. Lucius
+name.pl = św. Lucjusza I, Papieża i Męczennika
[sts-felicitas-perpetua]
date = 03-06
rank = class-3
colour = red
name.en = Sts. Felicitas & Perpetua
+name.pl = śś. Perpetui i Felicyty, Męczennic
[thomas-aquinas]
date = 03-07
rank = class-3
colour = white
name.en = St. Thomas Aquinas
+name.pl = św. Tomasza z Akwinu, Wyznawcy i Doktora Kościoła
[john-of-god]
date = 03-08
rank = class-3
colour = white
name.en = St. John of God
+name.pl = św. Jana Bożego, Wyznawcy
[frances-rome]
date = 03-09
rank = class-3
colour = white
name.en = St. Frances Rome
+name.pl = św. Franciszki Rzymianki, Wdowy
[forty-holy-martyrs-of-sebaste]
date = 03-10
rank = class-3
colour = red
name.en = Forty Holy Martyrs of Sebaste
+name.pl = śś. Czterdziestu Męczenników
[gregory-the-great]
date = 03-12
rank = class-3
colour = white
name.en = St. Gregory the Great
+name.pl = św. Grzegorza Wielkiego, Papieża, Wyznawcy i Doktora Kościoła
[patrick]
date = 03-17
rank = class-3
colour = white
name.en = St. Patrick
+name.pl = św. Patryka, Biskupa i Wyznawcy
[cyril-of-jerusalem]
date = 03-18
rank = class-3
colour = white
name.en = St. Cyril of Jerusalem
+name.pl = św. Cyryla Jerozolimskiego, Biskupa, Wyznawcy i Doktora Kościoła
[joseph-spouse-of-the-bl-virgin-mary]
date = 03-19
rank = class-1
colour = white
name.en = St. Joseph, Spouse of the Bl. Virgin Mary
+name.pl = św. Józefa, Oblubieńca N. M. P.
reading.first = Ecclus 45:1-6
reading.gospel = Matt 1:18-21
@@ -446,18 +507,21 @@ date = 03-21
rank = class-3
colour = white
name.en = St. Benedict
+name.pl = św. Benedykta, Opata
[gabriel-the-archangel]
date = 03-24
rank = class-3
colour = white
name.en = St. Gabriel the Archangel
+name.pl = św. Gabriela Archanioła
[annunciation-of-the-blessed-virgin-mary]
date = 03-25
rank = class-1
colour = white
name.en = Annunciation of the Blessed Virgin Mary
+name.pl = Zwiastowanie N. M. P.
reading.first = Isa 7:10-15
reading.gospel = Luke 1:26-38
@@ -466,36 +530,42 @@ date = 03-27
rank = class-3
colour = white
name.en = St. John Damascene
+name.pl = św. Jana Damasceńskiego, Wyznawcy i Doktora Kościoła
[john-of-capistrano]
date = 03-28
rank = class-3
colour = white
name.en = St. John of Capistrano
+name.pl = św. Jana Kapistrana, Wyznawcy
[francis-of-paola]
date = 04-02
rank = class-3
colour = white
name.en = St. Francis of Paola
+name.pl = św. Franciszka z Pauli, Wyznawcy
[isidore-of-seville]
date = 04-04
rank = class-3
colour = white
name.en = St. Isidore of Seville
+name.pl = św. Izydora, Biskupa, Wyznawcy i Doktora Kościoła
[vincent-ferrer]
date = 04-05
rank = class-3
colour = white
name.en = St. Vincent Ferrer
+name.pl = św. Wincentego Fereriusza, Wyznawcy
[leo-the-great]
date = 04-11
rank = class-3
colour = white
name.en = St. Leo the Great
+name.pl = św. Leona Wielkiego, Papieża, Wyznawcy i Doktora Kościoła
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -504,6 +574,7 @@ date = 04-13
rank = class-3
colour = red
name.en = St. Hermenegild
+name.pl = św. Hermenegilda, Męczennika
reading.first = Wis 10:10-14
reading.gospel = Luke 14:26-33.
@@ -512,6 +583,7 @@ date = 04-14
rank = class-3
colour = red
name.en = St. Justin
+name.pl = św. Justyna, Męczennika
reading.first = 1 Cor 1:18-25; 1:30;
reading.gospel = Luke 12:2-8
@@ -520,18 +592,21 @@ date = 04-14
rank = commemoration
colour = red
name.en = Sts. Tiburtius, Valerian et Maximus, Martyrs
+name.pl = śś. Tyburcjusza, Waleriana i Maksyma, Męczenników
[anicetus]
date = 04-17
rank = commemoration
colour = red
name.en = St. Anicetus
+name.pl = św. Aniceta, Papieża i Męczennika
[anselm]
date = 04-21
rank = class-3
colour = white
name.en = St. Anselm
+name.pl = św. Anzelma, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -540,6 +615,7 @@ date = 04-22
rank = class-3
colour = red
name.en = Sts. Soter & Caius
+name.pl = śś. Sotera i Kajusa, Papieży i Męczenników
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -548,12 +624,14 @@ date = 04-23
rank = commemoration
colour = red
name.en = St. George
+name.pl = św. Jerzego, Męczennika
[fidelis-of-sigmaringen]
date = 04-24
rank = class-3
colour = red
name.en = St. Fidelis of Sigmaringen
+name.pl = św. Fidelisa z Sigmaringen, Męczennika
reading.first = Wis 5:1-5
reading.gospel = John 15:1-7
@@ -562,6 +640,7 @@ date = 04-25
rank = class-2
colour = red
name.en = St. Mark
+name.pl = św. Marka Ewangelisty
reading.first = Ezek 1:10-14
reading.gospel = Luke 10:1-9
@@ -570,6 +649,7 @@ date = 04-26
rank = class-3
colour = red
name.en = Sts. Cletus & Marcellinus
+name.pl = śś. Kleta i Marcelina, Papieży i Męczenników
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -578,6 +658,7 @@ date = 04-27
rank = class-3
colour = white
name.en = St. Peter Canisius
+name.pl = św. Piotra Kanizjusza, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -586,6 +667,7 @@ date = 04-28
rank = class-3
colour = white
name.en = St. Paul of the Cross
+name.pl = św. Pawła od Krzyża, Wyznawcy
reading.first = 1 Cor 1:17-25.
reading.gospel = Luke 10:1-9
@@ -594,6 +676,7 @@ date = 04-29
rank = class-3
colour = red
name.en = St. Peter of Verona
+name.pl = św. Piotra z Werony, Męczenika
reading.first = 2 Tim. 2:8-10; 3:10-12.
reading.gospel = Matt 10:34-42
@@ -602,6 +685,7 @@ date = 04-30
rank = class-3
colour = white
name.en = St. Catherine of Siena
+name.pl = św. Katarzyny Sieneńskiej, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -610,6 +694,7 @@ date = 05-01
rank = class-1
colour = white
name.en = St. Joseph the Workman
+name.pl = św. Józefa Robotnika, Oblubieńca N. M. P
reading.first = Col. 3:14-15, 17, 23-24
reading.gospel = Matt 13:54-58
@@ -618,6 +703,7 @@ date = 05-02
rank = class-3
colour = white
name.en = St. Athanasius
+name.pl = św. Atanazego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Cor. 4:5-14
reading.gospel = Matt 10:23-28
@@ -626,12 +712,14 @@ date = 05-03
rank = commemoration
colour = red
name.en = Sts. Alexander & Companions
+name.pl = śś. Aleksandra i Towarzyszy, Męczenników
[monica]
date = 05-04
rank = class-3
colour = white
name.en = St. Monica
+name.pl = św. Moniki, Wdowy
reading.first = 1 Tim. 5:3-10.
reading.gospel = Luke 7:11-16
@@ -640,6 +728,7 @@ date = 05-05
rank = class-3
colour = white
name.en = St. Pius V
+name.pl = św. Piusa V, Papieża i Wyznawcy
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -648,6 +737,7 @@ date = 05-07
rank = class-3
colour = red
name.en = St. Stanislaus
+name.pl = św. Stanisława, Biskupa i Męczennika
reading.first = Wis 5:1-5
reading.gospel = John 15:1-7
@@ -656,6 +746,7 @@ date = 05-09
rank = class-3
colour = white
name.en = St. Gregory of Nazianzen
+name.pl = św. Grzegorza z Nazjanzu, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = Ecclus 39:6-14
reading.gospel = Matt 5:13-19
@@ -664,6 +755,7 @@ date = 05-10
rank = class-3
colour = white
name.en = St. Antoninus
+name.pl = św. Antonina, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -672,12 +764,14 @@ date = 05-10
rank = commemoration
colour = red
name.en = St. Gordiano and Epimacho
+name.pl = śś. Gordiana i Epimacha, Męczenników
[sts-philip-james]
date = 05-11
rank = class-2
colour = red
name.en = Sts. Philip & James
+name.pl = Świętych Filipa i Jakuba, Apostołów
reading.first = Wis. 5:1-5
reading.gospel = John 14:1-13
@@ -686,6 +780,7 @@ date = 05-12
rank = class-3
colour = red
name.en = Sts. Nereus, Achilleus, Domitilla, & Pancras
+name.pl = Świętych Nereusza, Achillesa, Domicylli i Pankracego, Męczenników
reading.first = Wis. 5:1-5
reading.gospel = John 4:46-53
@@ -694,6 +789,7 @@ date = 05-13
rank = class-3
colour = white
name.en = St. Robert Bellarmine
+name.pl = św. Roberta Bellarmina, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = Wis 7:7-14.
reading.gospel = Matt 5:13-19
@@ -708,6 +804,7 @@ date = 05-15
rank = class-3
colour = white
name.en = St. John Baptist de la Salle
+name.pl = św. Jana Chrzciciela de la Salle, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Matt 18:1-5
@@ -716,12 +813,14 @@ date = 05-16
rank = commemoration
colour = white
name.en = St. Ubaldus
+name.pl = św. Ubalda, Biskupa i Wyznawcy
[paschal-baylon]
date = 05-17
rank = class-3
colour = white
name.en = St. Paschal Baylon
+name.pl = św. Paschalisa Baylon, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -730,6 +829,7 @@ date = 05-18
rank = class-3
colour = red
name.en = St. Venantius
+name.pl = św. Wenancjusza, Męczennika
reading.first = Wis 5:1-5
reading.gospel = John 15:1-7
@@ -738,6 +838,7 @@ date = 05-19
rank = class-3
colour = white
name.en = St. Peter Celestine
+name.pl = św. Piotra Celestyna, Papieża i Wyznawcy
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -746,12 +847,14 @@ date = 05-19
rank = commemoration
colour = white
name.en = St. Pudentiana Virginis
+name.pl = św. Pudencjany, Dziewicy
[bernardine-of-siena]
date = 05-20
rank = class-3
colour = white
name.en = St. Bernardine of Siena
+name.pl = św. Bernardyna ze Sieny, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Matt 19:27-29.
@@ -760,6 +863,7 @@ date = 05-25
rank = class-3
colour = white
name.en = St. Gregory VII
+name.pl = św. Grzegorza VII, Papieża i Wyznawcy
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -768,18 +872,21 @@ date = 05-25
rank = commemoration
colour = red
name.en = St. Urban, Pope and Martyr
+name.pl = św. Urbana I, Papieża i Męczennika
[eleutherius]
date = 05-26
rank = commemoration
colour = red
name.en = S. Eleutherius
+name.pl = św. Eleuteriusza, Papieża i Męczennika
[philip-neri]
date = 05-26
rank = class-3
colour = white
name.en = St. Philip Neri
+name.pl = św. Filipa Nereusza, Wyznawcy
reading.first = Wis 7:7-14.
reading.gospel = Luke 12:35-40
@@ -788,6 +895,7 @@ date = 05-27
rank = class-3
colour = white
name.en = St. Bede the Venerable
+name.pl = św. Bedy Czcigodnego, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -796,12 +904,14 @@ date = 05-27
rank = commemoration
colour = red
name.en = St. John I
+name.pl = św. Jana I, Papieża i Męczennika
[augustine-of-canterbury]
date = 05-28
rank = class-3
colour = white
name.en = St. Augustine of Canterbury
+name.pl = św. Augustyna z Canterbury, Biskupa i Wyznawcy
reading.first = 1 Thess 2:2-9
reading.gospel = Luke 10:1-9
@@ -810,6 +920,7 @@ date = 05-29
rank = class-3
colour = white
name.en = St. Mary Magdalene de Pazzi
+name.pl = św. Marii Magdaleny Pazzi, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -818,18 +929,21 @@ date = 05-30
rank = commemoration
colour = red
name.en = St. Felix I
+name.pl = św. Feliksa I, Papieża i Męczennika
[petronilla]
date = 05-31
rank = commemoration
colour = white
name.en = St. Petronilla
+name.pl = św. Petroneli, Dziewicy
[queenship-of-the-blessed-virgin-mary]
date = 05-31
rank = class-2
colour = white
name.en = Queenship of the Blessed Virgin Mary
+name.pl = N. M. P. Królowej
reading.first = Eccli 24:5; 14:7; 14:9-11; 24:30-31
reading.gospel = Luke 1:26-33
@@ -838,6 +952,7 @@ date = 06-01
rank = class-3
colour = white
name.en = St. Angela Merici
+name.pl = św. Anieli Merici, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -846,12 +961,14 @@ date = 06-02
rank = commemoration
colour = red
name.en = Sts. Marcellinus, Peter, & Erasmus
+name.pl = śś. Marcelina i Piotra, Męczenników oraz Erazma, Biskupa
[francis-caracciolo]
date = 06-04
rank = class-3
colour = white
name.en = St. Francis Caracciolo
+name.pl = św. Franciszka Caracciolo, Wyznawcy
reading.first = Wis. 4:7-14.
reading.gospel = Luke 12:35-40
@@ -860,6 +977,7 @@ date = 06-05
rank = class-3
colour = red
name.en = St. Boniface
+name.pl = św. Bonifacego, Biskupa i Męczennika
reading.first = Ecclus 44:1-15
reading.gospel = Matt 5:1-12
@@ -868,6 +986,7 @@ date = 06-06
rank = class-3
colour = white
name.en = St. Norbert
+name.pl = św. Norberta, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -876,12 +995,14 @@ date = 06-09
rank = commemoration
colour = red
name.en = Sts. Primus & Felicianus
+name.pl = śś. Pryma i Felicjana, Męczenników
[margaret-of-scotland]
date = 06-10
rank = class-3
colour = white
name.en = St. Margaret of Scotland
+name.pl = św. Małgorzaty, Królowej Szkockiej, Wdowy
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -890,6 +1011,7 @@ date = 06-11
rank = class-3
colour = red
name.en = St. Barnabas
+name.pl = św. Barnaby, Apostoła
reading.first = Acts 11:21-26; 13:1-3
reading.gospel = Matt 10:16-22
@@ -898,12 +1020,14 @@ date = 06-12
rank = commemoration
colour = red
name.en = St. Basilidus
+name.pl = śś. Bazylidesa, Cyryna, Nabora i Nazariusza, Męczenników
[john-of-san-fecundo]
date = 06-12
rank = class-3
colour = red
name.en = St. John of San Fecundo
+name.pl = św. Jana z Facundo, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -912,6 +1036,7 @@ date = 06-13
rank = class-3
colour = white
name.en = St. Anthony of Padua
+name.pl = św. Antoniego z Padwy, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -920,6 +1045,7 @@ date = 06-14
rank = class-3
colour = white
name.en = St. Basil the Great
+name.pl = św. Bazylego Wielkiego, Wyznawcy, Biskupa i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Luke 14:26-35
@@ -928,12 +1054,14 @@ date = 06-15
rank = commemoration
colour = white
name.en = St. Vitus
+name.pl = śś. Wita, Modesta i Krescencji, Męczenników
[gregory-barbarigo]
date = 06-17
rank = class-3
colour = white
name.en = St. Gregory Barbarigo
+name.pl = św. Grzegorza Barbarigo, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -942,6 +1070,7 @@ date = 06-18
rank = class-3
colour = red
name.en = St. Ephrem of Syria
+name.pl = św. Efrema, Diakona, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -950,12 +1079,14 @@ date = 06-18
rank = commemoration
colour = red
name.en = Ss. Marcus and Marcellianus
+name.pl = śś. Marka i Marcelina, Męczenników
[julia-of-falconieri]
date = 06-19
rank = class-3
colour = red
name.en = St. Julia of Falconieri
+name.pl = św. Juliany Falconieri, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -964,18 +1095,21 @@ date = 06-19
rank = commemoration
colour = red
name.en = Sts. Gervasius and Protasius
+name.pl = śś. Gerwazego i Protazego, Męczenników
[silverius]
date = 06-20
rank = commemoration
colour = red
name.en = St. Silverius
+name.pl = św. Sylweriusza, Papieża i Męczennika
[aloysius-gongzaga]
date = 06-21
rank = class-3
colour = white
name.en = St. Aloysius Gongzaga
+name.pl = św. Alojzego Gonzagi, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Matt 22:29-40
@@ -984,6 +1118,7 @@ date = 06-22
rank = class-3
colour = white
name.en = St. Paulinus of Nola
+name.pl = św. Paulina, Biskupa i Wyznawcy
reading.first = 2 Cor. 8:9-15
reading.gospel = Luke 12:32-34
@@ -992,6 +1127,7 @@ date = 06-23
rank = class-2
colour = violet
name.en = Vigil of the Nativity of St. John the Baptist
+name.pl = Wigilia Narodzenia Św. Jana Chrzciciela
reading.first = Jer 1:4-10
reading.gospel = Luke 1:5-17
@@ -1000,6 +1136,7 @@ date = 06-24
rank = class-1
colour = white
name.en = Nativity of St. John the Baptist
+name.pl = Narodzenie Św. Jana Chrzciciela
reading.first = Isa 49:1-3, 5-7.
reading.gospel = Luke 1:57-68
@@ -1008,6 +1145,7 @@ date = 06-25
rank = class-3
colour = white
name.en = St. William
+name.pl = św. Wilhelma, Opata
reading.first = Ecclus 45:1-6
reading.gospel = Matt 19:27-29.
@@ -1016,6 +1154,7 @@ date = 06-26
rank = class-3
colour = red
name.en = Sts. John & Paul
+name.pl = śś. Jana i Pawła, Męczenników
reading.first = Eccli 44:10-15
reading.gospel = Luke 12:1-8
@@ -1024,6 +1163,7 @@ date = 06-28
rank = class-2
colour = violet
name.en = Vigil of Sts. Peter & Paul
+name.pl = Wigilia śś. Apostołów Piotra i Pawła
reading.first = Acts 3:1-10
reading.gospel = John 21:15-19
@@ -1032,6 +1172,7 @@ date = 06-29
rank = class-1
colour = red
name.en = Sts. Peter & Paul
+name.pl = Świętych Piotra i Pawła, Apostołów
reading.first = Acts 12:1-11
reading.gospel = Matt 16:13-19
@@ -1040,6 +1181,7 @@ date = 06-30
rank = class-3
colour = red
name.en = In Commemoratione Sancti Pauli Apostoli
+name.pl = Wspomnienie św. Pawła, Apostoła
reading.first = Gal 1:11-20
reading.gospel = Matt 10:16-22
@@ -1049,6 +1191,7 @@ rank = class-1
colour = red
class = lord
name.en = The Precious Blood of Our Lord Jesus Christ
+name.pl = Uroczystość Najdroższej Krwi Pana Naszego Jezusa Chrystusa
reading.first = Heb 9:11-15.
reading.gospel = John 19:30-35
@@ -1057,12 +1200,14 @@ date = 07-02
rank = commemoration
colour = red
name.en = SS. Processus and Martinian
+name.pl = śś. Procesa i Martyniana, Męczenników
[visitation-of-the-blessed-virgin-mary]
date = 07-02
rank = class-2
colour = white
name.en = Visitation of the Blessed Virgin Mary
+name.pl = Nawiedzenia N. M. P.
reading.first = Song 2:8-14
reading.gospel = Luke 1:39-47
@@ -1071,6 +1216,7 @@ date = 07-03
rank = class-3
colour = red
name.en = St. Irenaeus
+name.pl = św. Ireneusza, Biskupa i Męczennika
reading.first = 2 Tim. 3:14-17; 4:1-5
reading.gospel = Matt 10:28-33
@@ -1079,6 +1225,7 @@ date = 07-05
rank = class-3
colour = white
name.en = St. Anthony Mary Zaccariah
+name.pl = św. Antoniego Marii Zaccaria, Wyznawcy
reading.first = 1 Tim. 4:8-16
reading.gospel = Mark 10:15-21
@@ -1087,6 +1234,7 @@ date = 07-07
rank = class-3
colour = white
name.en = Sts. Cyril & Methodius
+name.pl = śś. Cyryla i Metodego, Biskupów i Wyznawców
reading.first = Heb 7:23-27
reading.gospel = Luke 10:1-9
@@ -1095,6 +1243,7 @@ date = 07-08
rank = class-3
colour = white
name.en = St. Elizabeth of Portugal
+name.pl = św. Elżbiety, Królowej i Wdowy
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -1103,6 +1252,7 @@ date = 07-10
rank = class-3
colour = red
name.en = Seven Holy Brothers and Sts. Rufina & Secunda
+name.pl = Siedmiu Braci Męczenników oraz Śś. Rufiny i Sekundy, Dziewic i Męczennic
reading.first = Prov 31:10-31
reading.gospel = Matt 12:46-50
@@ -1111,12 +1261,14 @@ date = 07-11
rank = commemoration
colour = red
name.en = St. Pius I
+name.pl = św. Piusa I, Papieża i Męczennika
[john-gualbert]
date = 07-12
rank = class-3
colour = red
name.en = St. John Gualbert
+name.pl = św. Jana Gwalberta, Opata
reading.first = Ecclus 45:1-6
reading.gospel = Matt 5:43-48
@@ -1125,12 +1277,14 @@ date = 07-12
rank = commemoration
colour = red
name.en = Ss. Naboris et Felicis
+name.pl = śś. Nabora i Feliksa, Męczenników
[bonaventure]
date = 07-14
rank = class-3
colour = white
name.en = St. Bonaventure
+name.pl = św. Bonawentury, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -1139,6 +1293,7 @@ date = 07-15
rank = class-3
colour = white
name.en = St. Henry the Emperor
+name.pl = św. Henryka, Cesarza i Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1147,18 +1302,21 @@ date = 07-16
rank = commemoration
colour = white
name.en = Our Lady of Mt. Carmel
+name.pl = Wspomnienie N. M. P. z Góry Karmelu
[alexis]
date = 07-17
rank = commemoration
colour = white
name.en = St. Alexis
+name.pl = św. Aleksego, Wyznawcy
[camillus-de-lellis]
date = 07-18
rank = class-3
colour = red
name.en = Camillus de Lellis
+name.pl = św. Kamila de Lellis
reading.first = 1 John 3:13-18.
reading.gospel = John 15:12-16
@@ -1167,12 +1325,14 @@ date = 07-18
rank = commemoration
colour = red
name.en = Ss. Symphorosa and sons
+name.pl = śś. Symforozy i Siedmiu Jej Synów
[vincent-de-paul]
date = 07-19
rank = class-3
colour = white
name.en = St. Vincent de Paul
+name.pl = św. Wincentego a Paulo, Wyznawcy
reading.first = 1 Cor. 4:9-14
reading.gospel = Luke 10:1-9
@@ -1181,6 +1341,7 @@ date = 07-20
rank = class-3
colour = red
name.en = St. Jerome Emiliani
+name.pl = św. Hieronima Emiliani, Wyznawcy
reading.first = Isa 58:7-11
reading.gospel = Matt 19:13-21
@@ -1189,12 +1350,14 @@ date = 07-20
rank = commemoration
colour = white
name.en = St. Margaret
+name.pl = św. Małgorzaty, Dziewicy i Męczennicy
[laurence-of-brindisi]
date = 07-21
rank = class-3
colour = white
name.en = St. Laurence of Brindisi
+name.pl = św. Wawrzyńca z Brindisi, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -1203,12 +1366,14 @@ date = 07-21
rank = commemoration
colour = white
name.en = St. Praxedis Virginis
+name.pl = św. Praksedy, Dziewicy
[mary-magdalene]
date = 07-22
rank = class-3
colour = white
name.en = St. Mary Magdalene
+name.pl = św. Marii Magdaleny, Pokutnicy
reading.first = Song 3:2-5; 8:6-7
reading.gospel = Luke 7:36-50
@@ -1217,6 +1382,7 @@ date = 07-23
rank = class-3
colour = white
name.en = St. Apollinaris
+name.pl = św. Apolinarego, Biskupa i Męczennika
reading.first = 1 Pet. 5:1-11
reading.gospel = Luke 22:24-30
@@ -1225,24 +1391,28 @@ date = 07-23
rank = commemoration
colour = red
name.en = S. Liborii
+name.pl = św. Liboriusza, Biskupa i Wyznawcy
[christina]
date = 07-24
rank = commemoration
colour = red
name.en = St. Christina
+name.pl = św. Krystyny, Dziewicy i Męczennicy
[christopher]
date = 07-25
rank = commemoration
colour = red
name.en = St. Christopher
+name.pl = św. Krzysztofa, Męczennika
[james-the-greater]
date = 07-25
rank = class-2
colour = red
name.en = St. James the Greater
+name.pl = św. Jakuba, Apostoła
reading.first = 1 Cor. 4:9-15
reading.gospel = Matt 20:20-23
@@ -1251,6 +1421,7 @@ date = 07-26
rank = class-2
colour = white
name.en = St. Anne, Mother of the Blessed Virgin
+name.pl = św. Anny, Matki N. M. P.
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -1259,12 +1430,14 @@ date = 07-27
rank = commemoration
colour = red
name.en = St. Pantaleon
+name.pl = św. Pantaleona, Męczennika
[sts-nazarius-celsus-st-victor-i-st-innocent-i]
date = 07-28
rank = class-3
colour = red
name.en = Sts. Nazarius & Celsus, St. Victor I & St. Innocent I
+name.pl = śś. Nazariusza i Celsa, Męczenników, Wiktora I, Papieża i Męczennika, oraz Innocentego I, Papieża i Wyznawcy
reading.first = Wis 10:17-20
reading.gospel = Luke 21:9-19
@@ -1273,12 +1446,14 @@ date = 07-29
rank = commemoration
colour = red
name.en = Ss. Felicis, Simplicii, Faustini et Beatricis
+name.pl = śś. Feliksa, Symplicjusza, Faustyna i Beatryczy, Męczenników
[martha]
date = 07-29
rank = class-3
colour = red
name.en = St. Martha
+name.pl = św. Marty, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Luke 10:38-42
@@ -1287,12 +1462,14 @@ date = 07-30
rank = commemoration
colour = red
name.en = Sts. Abdon & Sennen
+name.pl = śś. Abdona i Sennena, Męczenników
[ignatius-loyola]
date = 07-31
rank = class-3
colour = white
name.en = St. Ignatius Loyola
+name.pl = św. Ignacego Loyoli, Wyznawcy
reading.first = 2 Tim. 2:8-10; 3:10-12.
reading.gospel = Luke 10:1-9
@@ -1301,12 +1478,14 @@ date = 08-01
rank = commemoration
colour = red
name.en = Holy Machabees
+name.pl = Siedmiu Braci Machabejskich, Męczenników
[alphonsus-liguori]
date = 08-02
rank = class-3
colour = red
name.en = St. Alphonsus Liguori
+name.pl = św. Alfonsa Marii Liguori, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim. 2:1-7
reading.gospel = Luke 10:1-9
@@ -1315,12 +1494,14 @@ date = 08-02
rank = commemoration
colour = red
name.en = St. Stephen I, Pope and Martyr
+name.pl = św. Stefana I, Papieża i Męczennika
[dominic]
date = 08-04
rank = class-3
colour = white
name.en = St. Dominic
+name.pl = św. Dominika, Wyznawcy
reading.first = 2 Tim. 4:1-8
reading.gospel = Luke 12:35-40
@@ -1329,6 +1510,7 @@ date = 08-05
rank = class-3
colour = white
name.en = Dedication of the Basilica of St. Mary Major
+name.pl = Rocznica Konsekracji N. M. P. Śnieżnej
reading.first = Ecclus 24:14-16
reading.gospel = Luke 11:27-28
@@ -1337,6 +1519,7 @@ date = 08-06
rank = commemoration
colour = red
name.en = Pope Sixtus II, Felicissimus and Agapitus, Martyrs
+name.pl = śś. Sykstusa II, Papieża, Felicysyma i Agapita, Męczenników
[transfiguration-of-our-lord]
date = 08-06
@@ -1344,6 +1527,7 @@ rank = class-2
colour = white
class = lord
name.en = Transfiguration of Our Lord
+name.pl = Przemienienie Pańskie
reading.first = 2 Pet. 1:16-19
reading.gospel = Matt 17:1-9
@@ -1352,6 +1536,7 @@ date = 08-07
rank = class-3
colour = white
name.en = St. Cajetan
+name.pl = św. Kajetana, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Matt 6:24-33
@@ -1360,26 +1545,37 @@ date = 08-07
rank = commemoration
colour = red
name.en = St. Donatus
+name.pl = św. Donata, Biskupa i Męczennika
[cyriacus-largus-and-smaragdus-martyrs]
date = 08-08
rank = commemoration
colour = red
name.en = Ss. Cyriacus, Largus and Smaragdus, Martyrs
+name.pl = śś. Cyriaka, Larga i Szmaragda, Męczenników
[john-mary-vianney]
date = 08-08
rank = class-3
colour = white
name.en = St. John Mary Vianney
+name.pl = św. Jana Marii Vianney, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
+[romanus]
+date = 08-09
+rank = commemoration
+colour = red
+name.en = St. Romanus
+name.pl = św. Romana, Męczennika
+
[vigil-of-st-lawrence]
date = 08-09
rank = class-3
colour = red
name.en = Vigil of St. Lawrence
+name.pl = Wigilia św. Wawrzyńca, Męczennika
reading.first = Ecclus 51:1-8, 12
reading.gospel = Matt 16:24-27
@@ -1388,6 +1584,7 @@ date = 08-10
rank = class-2
colour = red
name.en = St. Lawrence
+name.pl = św. Wawrzyńca
reading.first = 2 Cor. 9:6-10
reading.gospel = John 12:24-26
@@ -1396,12 +1593,14 @@ date = 08-11
rank = commemoration
colour = red
name.en = Sts. Tiburtius & Susanna
+name.pl = śś. Tyburcjusza i Zuzanny, Męczenników
[clare]
date = 08-12
rank = class-3
colour = white
name.en = St. Clare
+name.pl = św. Klary, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -1410,12 +1609,20 @@ date = 08-13
rank = commemoration
colour = red
name.en = Sts. Hippolytus & Cassian
+name.pl = śś. Hipolita i Kasjana, Męczenników
+
+[eusebius-confessor]
+date = 08-14
+rank = commemoration
+colour = red
+name.en = St. Eusebius
[vigil-of-the-assumption]
date = 08-14
rank = class-2
colour = white
name.en = Vigil of the Assumption
+name.pl = Wigilia Wniebowzięcia N. M. P.
reading.first = Sir 24:23-31
reading.gospel = Luke 11:27-28
@@ -1424,6 +1631,7 @@ date = 08-15
rank = class-1
colour = white
name.en = Assumption of the Blessed Virgin Mary
+name.pl = Wniebowzięcie N. M. P.
reading.first = Judith 13:22-25; 13:15; 13:10
reading.gospel = Luke 1:41-50
@@ -1432,6 +1640,7 @@ date = 08-16
rank = class-2
colour = white
name.en = St. Joachim, Father of the Blessed Virgin
+name.pl = św. Joachima, Ojca N. M. P.
reading.first = Sir 31:8-11
reading.gospel = Matt 1:1-16
@@ -1440,6 +1649,7 @@ date = 08-17
rank = class-3
colour = white
name.en = St. Hyacinth
+name.pl = św. Jacka, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1448,12 +1658,14 @@ date = 08-18
rank = commemoration
colour = white
name.en = St. Agapitus
+name.pl = św. Agapita, Męczennika
[john-eudes]
date = 08-19
rank = class-3
colour = white
name.en = St. John Eudes
+name.pl = św. Jana Eudes, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1462,6 +1674,7 @@ date = 08-20
rank = class-3
colour = white
name.en = St. Bernard of Clairvaux
+name.pl = św. Bernarda, Opata i Doktora Kościoła
reading.first = Ecclus 39:6-14
reading.gospel = Matt 5:13-19
@@ -1470,6 +1683,7 @@ date = 08-21
rank = class-3
colour = white
name.en = St. Jane Frances de Chantal
+name.pl = św. Joanny Franciszki Frémiot de Chantal, Wdowy
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -1478,6 +1692,7 @@ date = 08-22
rank = class-2
colour = white
name.en = Immaculate Heart of Mary
+name.pl = Uroczystość Niepokalanego Serca N. M. P.
reading.first = Sir 24:23-31
reading.gospel = John 19:25-27
@@ -1486,12 +1701,14 @@ date = 08-22
rank = commemoration
colour = red
name.en = Sts. Timothy, Hippolytus and Symphorianus, Martyrs
+name.pl = śś. Tymoteusza, Hipolita i Symforiana, Męczenników
[philip-benizi]
date = 08-23
rank = class-3
colour = white
name.en = St. Philip Benizi
+name.pl = św. Filipa Benicjusza, Wyznawcy
reading.first = 1 Cor. 4:9-14
reading.gospel = Luke 12:32-34
@@ -1500,6 +1717,7 @@ date = 08-24
rank = class-2
colour = red
name.en = St. Bartholomew
+name.pl = św. Bartłomieja, Apostoła
reading.first = 1 Cor. 12:27-31
reading.gospel = Luke 6:12-19
@@ -1508,6 +1726,7 @@ date = 08-25
rank = class-3
colour = white
name.en = St. Louis IX
+name.pl = św. Ludwika, Króla i Wyznawcy
reading.first = Wis 10:10-14
reading.gospel = Luke 19:12-26
@@ -1516,12 +1735,14 @@ date = 08-26
rank = commemoration
colour = red
name.en = St. Zephyrinus
+name.pl = św. Zefiryna, Papieża i Męczennika
[joseph-calasance]
date = 08-27
rank = class-3
colour = white
name.en = St. Joseph Calasance
+name.pl = św. Józefa Kalasantego, Wyznawcy
reading.first = Wis 10:10-14
reading.gospel = Matt 18:1-5
@@ -1530,6 +1751,7 @@ date = 08-28
rank = class-3
colour = red
name.en = St. Augustine
+name.pl = św. Augustyna, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -1538,12 +1760,14 @@ date = 08-28
rank = commemoration
colour = red
name.en = St. Hermes
+name.pl = św. Hermesa, Męczennika
[beheading-of-st-john-the-baptist]
date = 08-29
rank = class-3
colour = red
name.en = Beheading of St. John the Baptist
+name.pl = Ścięcie Św. Jana Chrzciciela
reading.first = Jer 1:17-19
reading.gospel = Mark 6:17-29
@@ -1552,12 +1776,14 @@ date = 08-29
rank = commemoration
colour = red
name.en = St. Sabina
+name.pl = św. Sabiny, Męczennicy
[rose-of-lima]
date = 08-30
rank = class-3
colour = red
name.en = St. Rose of Lima
+name.pl = św. Róży z Limy, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -1566,12 +1792,14 @@ date = 08-30
rank = commemoration
colour = red
name.en = Sts. Felix and Adauctus
+name.pl = śś. Feliksa i Adaukta, Męczenników
[raymond-nonnatus]
date = 08-31
rank = class-3
colour = white
name.en = St. Raymond Nonnatus
+name.pl = św. Rajmunda Nonnata, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1580,18 +1808,21 @@ date = 09-01
rank = commemoration
colour = white
name.en = St. Giles
+name.pl = św. Idziego, Opata
[twelve-holy-brothers-martyrs]
date = 09-01
rank = commemoration
colour = red
name.en = Twelve Holy Brothers, Martyrs
+name.pl = śś. Dwunastu Braci, Męczenników
[stephen-of-hungary]
date = 09-02
rank = class-3
colour = white
name.en = St. Stephen of Hungary
+name.pl = św. Stefana, Króla i Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 19:12-26
@@ -1600,6 +1831,7 @@ date = 09-03
rank = class-3
colour = white
name.en = St. Pius X
+name.pl = św. Piusa X, Papieża i Wyznawcy
reading.first = 1 Thess. 2:2-8
reading.gospel = John 21:15-17
@@ -1608,6 +1840,7 @@ date = 09-05
rank = class-3
colour = white
name.en = St. Lawrence Justinian
+name.pl = św. Wawrzyńca Justiniani, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -1616,12 +1849,14 @@ date = 09-08
rank = commemoration
colour = red
name.en = S. Hadriani
+name.pl = św. Hadriana, Męczennika
[nativity-of-the-blessed-virgin-mary]
date = 09-08
rank = class-2
colour = white
name.en = Nativity of the Blessed Virgin Mary
+name.pl = Narodzenie N. M. P.
reading.first = Prov 8:22-35
reading.gospel = Matt 1:1-16
@@ -1630,12 +1865,14 @@ date = 09-09
rank = commemoration
colour = red
name.en = St. Gorgonius
+name.pl = św. Gorgoniusza, Męczennika
[nicholas-of-tolentino]
date = 09-10
rank = class-3
colour = white
name.en = St. Nicholas of Tolentino
+name.pl = św. Mikołaja z Tolentynu, Wyznawcy
reading.first = 1 Cor. 4:9-14
reading.gospel = Luke 12:32-34
@@ -1644,12 +1881,14 @@ date = 09-11
rank = commemoration
colour = red
name.en = Sts. Protus & Hyacinth
+name.pl = św. Prota i Jacka, Męczenników
[most-holy-name-of-mary]
date = 09-12
rank = class-3
colour = white
name.en = Most Holy Name of Mary
+name.pl = Najświętszego Imienia Maryi
reading.first = Sir 24:23-31
reading.gospel = Luke 1:26-38
@@ -1659,6 +1898,7 @@ rank = class-2
colour = red
class = lord
name.en = Exaltation of the Holy Cross
+name.pl = Podwyższenia Świętego Krzyża
reading.first = Phil 2:5-11
reading.gospel = John 12:31-36
@@ -1667,12 +1907,14 @@ date = 09-15
rank = commemoration
colour = red
name.en = S. Nicomedes
+name.pl = św. Nikomedesa, Męczennika
[seven-sorrows-of-the-blessed-virgin-mary]
date = 09-15
rank = class-2
colour = white
name.en = Seven Sorrows of the Blessed Virgin Mary
+name.pl = Siedmiu Boleści N. M. P.
reading.first = Judith 13:22; 13:25
reading.gospel = John 19:25-27
@@ -1681,6 +1923,7 @@ date = 09-16
rank = class-3
colour = red
name.en = Sts. Cornelius & Cyprian
+name.pl = św. Korneliusza, Papieża i Cypriana, Męczenników
reading.first = Wis 3:1-8
reading.gospel = Luke 21:9-19
@@ -1689,18 +1932,21 @@ date = 09-16
rank = commemoration
colour = red
name.en = Sts. Euphemia, Lucy and Geminianus
+name.pl = śś. Eufemii, Łucji i Geminiana, Męczenników
[stigmata-of-st-francis]
date = 09-17
rank = commemoration
colour = white
name.en = Stigmata of St. Francis
+name.pl = Stygmatów św. Franciszka, Wyznawcy
[joseph-of-cupertino]
date = 09-18
rank = class-3
colour = white
name.en = St. Joseph of Cupertino
+name.pl = św. Józefa z Kupertynu, Wyznawcy
reading.first = 1 Cor 13:1-8
reading.gospel = Matt 22:1-14
@@ -1709,6 +1955,7 @@ date = 09-19
rank = class-3
colour = red
name.en = St. Januarius & Companions
+name.pl = św. Januarego i Towarzyszy, Męczenników
reading.first = Heb 10:32-38
reading.gospel = Matt 24:3-13
@@ -1717,12 +1964,14 @@ date = 09-20
rank = commemoration
colour = red
name.en = Sts. Eustace & Companions
+name.pl = św. Eustachego i Towarzyszy, Męczenników
[matthew]
date = 09-21
rank = class-2
colour = red
name.en = St. Matthew
+name.pl = św. Mateusza, Apostoła i Ewangelisty
reading.first = Ezek 1:10-14
reading.gospel = Matt 9:9-13
@@ -1731,12 +1980,14 @@ date = 09-22
rank = commemoration
colour = red
name.en = St. Maurice and Companions, Martyrs
+name.pl = śś. Maurycego i Towarzyszy, Męczenników
[thomas-of-villanova]
date = 09-22
rank = class-3
colour = white
name.en = St. Thomas of Villanova
+name.pl = św. Tomasza z Villanueva, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -1745,6 +1996,7 @@ date = 09-23
rank = class-3
colour = red
name.en = St. Linus
+name.pl = św. Linusa, Papieża i Męczennika
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -1753,24 +2005,28 @@ date = 09-23
rank = commemoration
colour = red
name.en = St. Thecla
+name.pl = św. Tekli, Dziewicy i Męczennicy
[our-lady-of-ransom]
date = 09-24
rank = commemoration
colour = white
name.en = Our Lady of Ransom
+name.pl = N. M. P. od Wykupu Jeńców
[sts-cyprian-justina]
date = 09-26
rank = commemoration
colour = red
name.en = Sts. Cyprian & Justina
+name.pl = śś. Cypriana i Justyny, Męczenników
[sts-cosmas-damian]
date = 09-27
rank = class-3
colour = red
name.en = Sts. Cosmas & Damian
+name.pl = św. Kosmy i Damiana, Męczenników
reading.first = Wis 5:16-20
reading.gospel = Luke 6:17-23
@@ -1779,6 +2035,7 @@ date = 09-28
rank = class-3
colour = red
name.en = St. Wenceslaus
+name.pl = św. Wacława, Księcia i Męczennika
reading.first = Wis 10:10-14
reading.gospel = Matt 10:34-42
@@ -1787,6 +2044,7 @@ date = 09-29
rank = class-1
colour = white
name.en = Dedication of St. Michael the Archangel
+name.pl = Świętego Michała Archanioła
reading.first = Rev 1:1-5
reading.gospel = Matt 18:1-10
@@ -1795,6 +2053,7 @@ date = 09-30
rank = class-3
colour = white
name.en = St. Jerome
+name.pl = św. Hieronima, Kapłana, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -1803,12 +2062,14 @@ date = 10-01
rank = commemoration
colour = white
name.en = St. Remigius
+name.pl = św. Remigiusza, Biskupa i Wyznawcy
[holy-guardian-angels]
date = 10-02
rank = class-3
colour = white
name.en = Holy Guardian Angels
+name.pl = Świętych Aniołów Stróżów
reading.first = Exod 23:20-23
reading.gospel = Matt 18:1-10
@@ -1817,6 +2078,7 @@ date = 10-03
rank = class-3
colour = white
name.en = St. Theresa of the Infant Jesus
+name.pl = św. Teresy od Dzieciątka Jezus, Dziewicy
reading.first = Isa 66:12-14
reading.gospel = Matt 18:1-4
@@ -1825,6 +2087,7 @@ date = 10-04
rank = class-3
colour = white
name.en = St. Francis of Assisi
+name.pl = św. Franciszka, Wyznawcy
reading.first = Gal 6:14-18
reading.gospel = Matt 11:25-30
@@ -1833,12 +2096,14 @@ date = 10-05
rank = commemoration
colour = red
name.en = St. Placid & Companions
+name.pl = śś. Placyda i Towarzyszy, Męczenników
[bruno]
date = 10-06
rank = class-3
colour = white
name.en = St. Bruno
+name.pl = św. Brunona, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1847,12 +2112,14 @@ date = 10-07
rank = commemoration
colour = red
name.en = St. Mark I
+name.pl = św. Marka I, Papieża i Wyznawcy
[our-lady-of-the-rosary]
date = 10-07
rank = class-2
colour = white
name.en = Our Lady of the Rosary
+name.pl = N. M. P. Różańcowej
reading.first = Prov 8:22-24, 32-35.
reading.gospel = Luke 1:26-38
@@ -1861,6 +2128,7 @@ date = 10-08
rank = class-3
colour = white
name.en = St. Bridget of Sweden
+name.pl = św. Brygidy, Wdowy
reading.first = 1 Tim. 5:3-10.
reading.gospel = Matt 13:44-52.
@@ -1869,18 +2137,21 @@ date = 10-08
rank = commemoration
colour = red
name.en = Ss. Sergio, Baccho, Marcello and Apulejo Martyrs
+name.pl = śś. Sergiusza, Bachusa, Marcelego i Apulejusza
[dionysius-and-companions]
date = 10-09
rank = commemoration
colour = red
name.en = St. Dionysius and companions
+name.pl = śś. Dionizego, Rustyka i Eleuteriusza
[john-leonardi]
date = 10-09
rank = class-3
colour = white
name.en = St. John Leonardi
+name.pl = św. Jana Leonardi, Wyznawcy
reading.first = 2 Cor 4:1-6; 4:15-18
reading.gospel = Luke 10:1-9
@@ -1889,6 +2160,7 @@ date = 10-10
rank = class-3
colour = white
name.en = St. Francis Borgia
+name.pl = św. Franciszka Borgiasza, Wyznawcy
reading.first = Ecclus 45:1-6
reading.gospel = Matt 19:27-29.
@@ -1897,6 +2169,7 @@ date = 10-11
rank = class-2
colour = white
name.en = Maternity of the Blessed Virgin Mary
+name.pl = Macierzyństwa N. M. P.
reading.first = Sir 24:23-31
reading.gospel = Luke 2:43-51
@@ -1905,6 +2178,7 @@ date = 10-13
rank = class-3
colour = white
name.en = St. Edward
+name.pl = św. Edwarda, króla i wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -1913,6 +2187,7 @@ date = 10-14
rank = class-3
colour = red
name.en = St. Callistus I
+name.pl = św. Kaliksta, papieża i męczennika
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -1921,6 +2196,7 @@ date = 10-15
rank = class-3
colour = white
name.en = St. Teresa of Avila
+name.pl = św. Teresy z Avili, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -1929,6 +2205,7 @@ date = 10-16
rank = class-3
colour = white
name.en = St. Hedwig
+name.pl = św. Jadwigi, Wdowy
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -1937,6 +2214,7 @@ date = 10-17
rank = class-3
colour = white
name.en = St. Margaret Mary Alacoque
+name.pl = św. Małgorzaty Marii Alacoque, Dziewicy
reading.first = Eph 3:8-9, 14-19
reading.gospel = Matt 11:25-30
@@ -1945,6 +2223,7 @@ date = 10-18
rank = class-2
colour = red
name.en = St. Luke the Evangelist
+name.pl = św. Łukasza, Ewangelisty
reading.first = 2 Cor. 8:16-24
reading.gospel = Luke 10:1-9
@@ -1953,6 +2232,7 @@ date = 10-19
rank = class-3
colour = white
name.en = St. Peter of Alcantara
+name.pl = św. Piotra z Alkantary, Wyznawcy
reading.first = Phil 3:7-12
reading.gospel = Luke 12:32-34
@@ -1961,6 +2241,7 @@ date = 10-20
rank = class-3
colour = white
name.en = St. John Cantius
+name.pl = św. Jana Kantego, Wyznawcy
reading.first = James 2:12-17
reading.gospel = Luke 12:35-40
@@ -1969,18 +2250,21 @@ date = 10-21
rank = commemoration
colour = white
name.en = St. Hilarion
+name.pl = św. Hilariona, Opata
[ursula-and-companions]
date = 10-21
rank = commemoration
colour = red
name.en = St. Ursula and Companions
+name.pl = śś. Urszuli i Towarzyszek, Dziewic i Męczennic
[anthony-mary-claret]
date = 10-23
rank = class-3
colour = white
name.en = St. Anthony Mary Claret
+name.pl = św. Antoniego Marii Claret, Biskupa i Wyznawcy
reading.first = Heb 7:23-27
reading.gospel = Matt 24:42-47
@@ -1989,6 +2273,7 @@ date = 10-24
rank = class-3
colour = white
name.en = St. Raphael the Archangel
+name.pl = św. Rafała Archanioła
reading.first = Tob 12:7-15
reading.gospel = John 5:1-4
@@ -1997,6 +2282,7 @@ date = 10-25
rank = commemoration
colour = red
name.en = Sts. Chrysanthus & Daria
+name.pl = śś. Chryzanta i Darii, Męczenników
[evaristus]
date = 10-26
@@ -2009,6 +2295,7 @@ date = 10-28
rank = class-2
colour = red
name.en = Sts. Simon & Jude
+name.pl = Świętych Szymona i Judy Tadeusza, Apostołów
reading.first = Eph. 4:7-13.
reading.gospel = John 15:17-25
@@ -2017,6 +2304,7 @@ date = 11-01
rank = class-1
colour = white
name.en = All Saints
+name.pl = Uroczystość Wszystkich Świętych
reading.first = Apoc 7:2-12
reading.gospel = Matt 5:1-12
@@ -2025,6 +2313,7 @@ date = 11-02
rank = class-1
colour = black
name.en = Commemoration of All Souls
+name.pl = Dzień Zaduszny
reading.first = 1 Cor. 15:51-57
reading.gospel = John 5:25-29
@@ -2033,6 +2322,7 @@ date = 11-04
rank = class-3
colour = white
name.en = St. Charles Borromeo
+name.pl = św. Karola Boromeusza, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Matt 25:14-23
@@ -2041,12 +2331,14 @@ date = 11-04
rank = commemoration
colour = red
name.en = Sts. Vitalis and Agricola, Martyrs
+name.pl = śś. Witalisa i Agrykoli, Męczenników
[four-holy-crowned-martyrs]
date = 11-08
rank = commemoration
colour = red
name.en = Four Holy Crowned Martyrs
+name.pl = Świętych Czterech Ukoronowanych Męczenników
[dedication-of-the-archbasilica-of-our-holy-savior]
date = 11-09
@@ -2054,6 +2346,7 @@ rank = class-2
colour = white
class = lord
name.en = Dedication of the Archbasilica of Our Holy Savior
+name.pl = Rocznica Konsekracji Bazyliki Najświętszego Zbawiciela na Lateranie
reading.first = Rev 21:2-5
reading.gospel = Luke 19:1-10
@@ -2068,6 +2361,7 @@ date = 11-10
rank = class-3
colour = white
name.en = St. Andrew Avellino
+name.pl = św. Andrzeja z Avellino, Wyznawcy
reading.first = Sir 31:8-11
reading.gospel = Luke 12:35-40
@@ -2076,12 +2370,14 @@ date = 11-10
rank = commemoration
colour = red
name.en = Sts. Tryphonis, Respicii, et Nymphae
+name.pl = śś. Tryfona, Respicjusza i Nimfy, Męczenników
[martin-of-tours]
date = 11-11
rank = class-3
colour = white
name.en = St. Martin of Tours
+name.pl = św. Marcina, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Luke 11:33-36
@@ -2090,12 +2386,14 @@ date = 11-11
rank = commemoration
colour = red
name.en = St. Menna
+name.pl = św. Mennasa, Męczennika
[martin-i]
date = 11-12
rank = class-3
colour = red
name.en = St. Martin I
+name.pl = św. Marcina I, Papieża i Męczennika
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -2104,12 +2402,14 @@ date = 11-13
rank = commemoration
colour = white
name.en = St. Didacus
+name.pl = św. Dydaka, Wyznawcy
[josaphat]
date = 11-14
rank = class-3
colour = white
name.en = St. Josaphat
+name.pl = św. Jozafata, Biskupa i Męczennika
reading.first = Heb 5:1-6
reading.gospel = John 10:11-16
@@ -2118,6 +2418,7 @@ date = 11-15
rank = class-3
colour = white
name.en = St. Albert the Great
+name.pl = św. Alberta Wielkiego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -2126,6 +2427,7 @@ date = 11-16
rank = class-3
colour = white
name.en = St. Gertrude the Great
+name.pl = św. Gertrudy, Dziewicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 25:1-13.
@@ -2134,6 +2436,7 @@ date = 11-17
rank = class-3
colour = white
name.en = St. Gregory the Wonderworker
+name.pl = św. Grzegorza Cudotwórcy, Biskupa i Wyznawcy
reading.first = Sir 44:16-27; 45:3-20
reading.gospel = Mark 11:22-24
@@ -2142,6 +2445,7 @@ date = 11-18
rank = class-3
colour = white
name.en = Dedication of the Basilicas of Sts. Peter & Paul
+name.pl = Rocznica Konsekracji Bazylik Świętych Apostołów Piotra i Pawła
reading.first = Rev 21:2-5
reading.gospel = Luke 19:1-10
@@ -2150,6 +2454,7 @@ date = 11-19
rank = class-3
colour = white
name.en = St. Elizabeth of Hungary
+name.pl = św. Elżbiety, Wdowy
reading.first = Prov 31:10-31
reading.gospel = Matt 13:44-52.
@@ -2158,12 +2463,14 @@ date = 11-19
rank = commemoration
colour = red
name.en = St. Pontian
+name.pl = św. Poncjana, Papieża i Męczennika
[felix-of-valois]
date = 11-20
rank = class-3
colour = white
name.en = St. Felix of Valois
+name.pl = św. Feliksa Walezego, Wyznawcy
reading.first = 1 Cor. 4:9-14
reading.gospel = Luke 12:32-34
@@ -2172,6 +2479,7 @@ date = 11-21
rank = class-3
colour = white
name.en = Presentation of the Blessed Virgin Mary
+name.pl = Ofiarowanie N. M. P.
reading.first = Ecclus 24:14-16
reading.gospel = Luke 11:27-28
@@ -2180,6 +2488,7 @@ date = 11-22
rank = class-3
colour = red
name.en = St. Cecilia
+name.pl = św. Cecylii, Dziewicy i Męczennicy
reading.first = Sir 51:13-17.
reading.gospel = Matt 25:1-13.
@@ -2188,6 +2497,7 @@ date = 11-23
rank = class-3
colour = red
name.en = St. Clement I
+name.pl = św. Klemensa I, Papieża i Męczennika
reading.first = Phil 3:17-21; 4:1-3
reading.gospel = Matt 16:13-19
@@ -2196,18 +2506,21 @@ date = 11-23
rank = commemoration
colour = red
name.en = St. Felicity
+name.pl = św. Felicyty, Męczennicy
[chrysogonus]
date = 11-24
rank = commemoration
colour = red
name.en = St. Chrysogonus
+name.pl = św. Chryzogona, Męczennika
[john-of-the-cross]
date = 11-24
rank = class-3
colour = white
name.en = St. John of the Cross
+name.pl = św. Jana od Krzyża, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -2216,6 +2529,7 @@ date = 11-25
rank = class-3
colour = red
name.en = St. Catherine of Alexandria
+name.pl = św. Katarzyny, Dziewicy i Męczennicy
reading.first = Sir 51:1-8; 51:12
reading.gospel = Matt 25:1-13.
@@ -2224,12 +2538,14 @@ date = 11-26
rank = commemoration
colour = red
name.en = St. Peter of Alexandria
+name.pl = św. Piotra z Aleksandrii, Biskupa i Męczennika
[sylvester]
date = 11-26
rank = class-3
colour = white
name.en = St. Sylvester
+name.pl = św. Sylwestra, Opata
reading.first = Ecclus 45:1-6
reading.gospel = Matt 19:27-29.
@@ -2238,12 +2554,14 @@ date = 11-29
rank = commemoration
colour = red
name.en = St. Saturninus
+name.pl = św. Saturnina, Męczennika
[andrew]
date = 11-30
rank = class-2
colour = red
name.en = St. Andrew
+name.pl = św. Andrzeja, Apostoła
reading.first = Rom 10:10-18
reading.gospel = Matt 4:18-22
@@ -2252,6 +2570,7 @@ date = 12-02
rank = class-3
colour = red
name.en = St. Vivian
+name.pl = św. Bibiany, Dziewicy i Męczennicy
reading.first = Sir 51:13-17.
reading.gospel = Matt 13:44-52.
@@ -2260,6 +2579,7 @@ date = 12-03
rank = class-3
colour = white
name.en = St. Francis Xavier
+name.pl = św. Franciszka Ksawerego, Wyznawcy
reading.first = Rom 10:10-18
reading.gospel = Mark 16:15-18
@@ -2268,6 +2588,7 @@ date = 12-04
rank = class-3
colour = white
name.en = St. Peter Chrysologus
+name.pl = św. Piotra Chryzologa, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -2276,12 +2597,14 @@ date = 12-05
rank = commemoration
colour = white
name.en = St. Sabbas
+name.pl = św. Saby, Opata
[nicholas]
date = 12-06
rank = class-3
colour = white
name.en = St. Nicholas
+name.pl = św. Mikołaja, Biskupa i Wyznawcy
reading.first = Heb 13:7-17
reading.gospel = Matt 25:14-23
@@ -2290,6 +2613,7 @@ date = 12-07
rank = class-3
colour = white
name.en = St. Ambrose
+name.pl = św. Ambrożego, Biskupa, Wyznawcy i Doktora Kościoła
reading.first = 2 Tim 4:1-8
reading.gospel = Matt 5:13-19
@@ -2298,6 +2622,7 @@ date = 12-08
rank = class-1
colour = white
name.en = Immaculate Conception of the Blessed Virgin Mary
+name.pl = Niepokalane Poczęcie N. M. P.
reading.first = Prov 8:22-35
reading.gospel = Luke 1:26-28
@@ -2306,12 +2631,14 @@ date = 12-10
rank = commemoration
colour = red
name.en = St. Melchiades
+name.pl = św. Melchiadesa, Papieża i Męczennika
[damasus-i]
date = 12-11
rank = class-3
colour = white
name.en = St. Damasus I
+name.pl = św. Damazego, Papieża i Wyznawcy
reading.first = 1 Pet 5:1-4; 5:10-11.
reading.gospel = Matt 16:13-19
@@ -2320,6 +2647,7 @@ date = 12-13
rank = class-3
colour = red
name.en = St. Lucy
+name.pl = św. Łucji, Dziewicy i Męczennicy
reading.first = 2 Cor 10:17-18; 11:1-2
reading.gospel = Matt 13:44-52.
@@ -2328,6 +2656,7 @@ date = 12-16
rank = class-3
colour = red
name.en = St. Eusebius
+name.pl = św. Euzebiusza, Biskupa i Męczennika
reading.first = 2 Cor. 1:3-7
reading.gospel = Matt 16:24-27.
@@ -2336,6 +2665,7 @@ date = 12-21
rank = class-2
colour = red
name.en = St. Thomas
+name.pl = św. Tomasza, Apostoła
reading.first = Eph 2:19-22
reading.gospel = John 20:24-29
@@ -2344,6 +2674,7 @@ date = 12-24
rank = class-1
colour = violet
name.en = Vigil of Christmas
+name.pl = Wigilia Bożego Narodzenia
reading.first = Rom 1:1-6
reading.gospel = Matt 1:18-21
@@ -2352,6 +2683,7 @@ date = 12-26
rank = class-2
colour = red
name.en = St. Stephen
+name.pl = św. Szczepana, Pierwszego Męczennika
reading.first = Acts 6:8-10; 7:54-59
reading.gospel = Matt 23:34-39
@@ -2360,6 +2692,7 @@ date = 12-27
rank = class-2
colour = white
name.en = St. John the Evangelist
+name.pl = św. Jana, Apostoła i Ewangelisty
reading.first = Ecclus 15:1-6
reading.gospel = John 21:19-24
@@ -2368,17 +2701,20 @@ date = 12-28
rank = class-2
colour = red
name.en = Holy Innocents
+name.pl = Świętych Młodzianków
reading.first = Apoc 14:1-5
reading.gospel = Matt 2:13-18
[thomas-becket]
date = 12-29
-rank = class-4
+rank = commemoration
colour = red
name.en = St. Thomas Becket
+name.pl = św. Tomasza z Canterbury, Biskupa i Męczennika
[silvester]
date = 12-31
-rank = class-4
+rank = commemoration
colour = white
name.en = St. Silvester
+name.pl = św. Sylwestra I, papieża i wyznawcy
diff --git a/internal/calendar/precedence_ef_repro_test.go b/internal/calendar/precedence_ef_repro_test.go
index 09cadbd..11fd6ca 100644
--- a/internal/calendar/precedence_ef_repro_test.go
+++ b/internal/calendar/precedence_ef_repro_test.go
@@ -120,3 +120,41 @@ func TestVigilOfChristmasSurvivesAdventSunday(t *testing.T) {
}
}
}
+
+// TestPurificationBeatsFebruarySunday: the fixture behind classOf's own
+// Purification decision (scripts/gen-sanctoral-ef.go), committed here rather
+// than left as an assertion only, because the deciding years (2 February on
+// a Sunday: 2014, 2020, 2025, 2031, 2042, 2048) fall entirely outside this
+// repo's own missalemeum oracle snapshot (sources/snapshot.tar.gz,
+// 2026-01-01 .. 2027-12-31), so nothing else in this repository can
+// reproduce the evidence classOf's decision rests on. (2036, sometimes
+// quoted alongside 2025/2031 as a third example: 2 February 2036 is in fact
+// a SATURDAY, `date -d 2036-02-02 +%A` -- checked here rather than repeated;
+// 2042 is the correct next instance after 2031.)
+//
+// RG 91 entry 14 ("Festa Domini II classis") sits above entry 15
+// ("Dominicae II classis"), which sits above entry 16 ("Festa II classis
+// Ecclesiae universae, quae non [sunt Domini]") -- entry 14 takes an
+// occurring Sunday's place outright, entry 16 is merely commemorated on
+// one. The Purification (2 February) matches entry 14's pattern, not entry
+// 16's, independently fetched live from missalemeum for five different
+// Sundays: 2014-02-02, 2020-02-02, 2025-02-02, 2031-02-02, 2042-02-02 (all
+// "id":"sancti:02-02:2:w", "commemorations":[]). Control:
+// nativity-of-the-blessed-virgin-mary (8 September, an undisputed ordinary
+// Marian feast, entry 16's own pattern) on a Sunday -- 2019-09-08 -- shows
+// the SUNDAY observed, the feast commemorated instead: the opposite shape,
+// proving the Purification's own treatment is a deliberate pattern in the
+// oracle, not a gap. This is a decision AGAINST the calendarium's own title
+// ("IN PURIFICATIONE B. MARIAE VIRG.") and RG 120(b) (which files 2
+// February under the white-colour rule's "B. Mariae Virg." heading, kept
+// separate from 120(a)'s "Domini" heading) -- both point BVM; the
+// occurrence-behaviour evidence here points Domini. See classOf's own doc
+// comment for the fuller account; not re-argued here.
+func TestPurificationBeatsFebruarySunday(t *testing.T) {
+ for _, year := range []string{"2014", "2020", "2025", "2031", "2042"} {
+ day := efCompute(year + "-02-02")
+ if day.Observed.Slug != "purification-of-the-blessed-virgin-mary" {
+ t.Errorf("%s-02-02 observed = %q want purification-of-the-blessed-virgin-mary (RG 91 entry 14 beats entry 15)", year, day.Observed.Slug)
+ }
+ }
+}
diff --git a/scripts/gen-sanctoral-ef.go b/scripts/gen-sanctoral-ef.go
index 75ee70d..0812472 100644
--- a/scripts/gen-sanctoral-ef.go
+++ b/scripts/gen-sanctoral-ef.go
@@ -10,8 +10,10 @@
// (Lectio) and Gospel (Evangelium) citations, plus any sancti co-celebrations
// listed as commemorations. Several reference years are tried per date so a
// saint whose date is a Sunday (or under a higher feast) in one year is still
-// captured, observed with its own readings, from another. Existing Latin names
-// in the file are preserved (missalemeum has no Latin titles).
+// captured, observed with its own readings, from another. Existing
+// non-English names (Polish, Latin, or any other language already present
+// in the file) are preserved verbatim -- missalemeum supplies English
+// titles only.
//
// One-time; requires network. Run from the repo root:
//
@@ -123,32 +125,54 @@ func rankOf(n int) calendar.Rank {
// this function produced -- but "purification" is a THIRD, DELIBERATELY
// DIFFERENT case, kept matching rather than narrowed, and the reason is
// itself worth recording:
+//
// - "purification" IS kept as a lord match, even though the calendarium's
// own title is "IN PURIFICATIONE B. MARIAE VIRG." (a feast of the BLESSED
-// VIRGIN by name). The tag's actual job here is not naming/colour
-// categorisation -- it exists solely to drive the occurrence rule
-// ("a II-class feast of the Lord takes an occurring Sunday's place
-// outright"), and on THAT question the calendarium's title is not the
-// decisive evidence: missalemeum -- the same oracle this generator's own
-// data is bootstrapped from -- shows the Purification taking a II-class
-// Sunday's place OUTRIGHT with commemorations EMPTY (confirmed live,
-// 2014-02-02, 2020-02-02, 2025-02-02), the exact "festum Domini" pattern,
-// not the ordinary-BVM-feast pattern (control: the Nativity of the BVM,
-// 8 September, on a Sunday -- 2019-09-08 -- shows the SUNDAY observed,
-// the feast merely commemorated, the opposite shape). An earlier version
-// of this comment (and this codebase) untagged it on the calendarium's
-// title alone; that was reversed after the same live check colitur's own
-// review independently ran (colitur git history: cab8b07 retags it BVM,
-// then 7d3b5ec reverses that "follow the oracle... a different project
-// could reasonably rule the other way on the same evidence" -- recorded
-// as a genuinely contested point, not a clean-cut error, but the
-// occurrence-behaviour evidence is what this tag is FOR).
+// VIRGIN by name) -- a DECISION AGAINST that primary text, made on
+// occurrence-behaviour evidence, not a reading of it, and recorded as
+// such rather than dressed up as textually clean.
+//
+// The tag's actual job is not naming/colour categorisation: it exists
+// solely to drive the occurrence rule that separates RG 91 entry 14
+// ("Festa Domini II classis" -- takes an occurring II-class Sunday's
+// place outright) from entry 16 ("Festa II classis Ecclesiae universae,
+// quae non [sunt Domini]" -- merely commemorated on one), entry 15
+// ("Dominicae II classis") sitting between the two. Checked live against
+// missalemeum (this generator's own data source): the Purification
+// takes a II-class Sunday's place OUTRIGHT, commemorations EMPTY
+// (2014-02-02, 2020-02-02, 2025-02-02, 2031-02-02, 2042-02-02, all
+// fetched independently) -- entry 14's pattern, not entry 16's (control:
+// the Nativity of the BVM, an undisputed ordinary Marian feast, on a
+// Sunday -- 2019-09-08 -- shows the SUNDAY observed, the feast merely
+// commemorated, entry 16's own pattern). RG 112(b), "Officium, Missa aut
+// commemoratio de dominica excludit commemorationem... de festo vel
+// mysterio Domini, et vicissim" (a Sunday's office and a feast/mystery
+// OF THE LORD mutually exclude each other as commemorations), backs the
+// empty commemoration list independently of RG 91's table position.
+//
+// Genuine primary-text counter-evidence exists and is not discarded:
+// RG 120(b), "Adhibetur color albus... b) B. Mariae Virg., etiam in
+// benedictione et processione candelarum die 2 februarii" -- 2 February
+// is filed under the WHITE-colour rule's "B. Mariae Virg." heading,
+// kept separate there from 120(a)'s own "Domini" heading. Both textual
+// tests available (the calendarium's title, RG 120's own taxonomy)
+// point BVM; the occurrence-behaviour evidence points Domini. This is a
+// live, acknowledged disagreement with the primary text on the
+// strength of oracle evidence about what the day actually DOES, not a
+// claim that the text is wrong or ambiguous. See
+// internal/calendar/precedence_ef_repro_test.go's
+// TestPurificationBeatsFebruarySunday for the fixture this rests on --
+// committed, not merely asserted, since the deciding years (2 February
+// on a Sunday) fall outside this repo's own 2026-2027 oracle snapshot
+// window.
+//
// - "holy name" alone is ambiguous: it matches BOTH "Holy Name of Jesus"
// (a feast of the Lord) and "Most Holy Name of Mary"/"Holy Name of Mary"
// (a feast of the BVM, calendarium: "Sanctissimi Nominis Mariae") --
// wrongly matching the latter too. Excluded whenever the title also
// names Mary. Unlike the Purification, this one is NOT contested: its
// occurrence behaviour matches the ordinary-BVM pattern too.
+//
// - "baptism" is a new case: "Commemoration of the Baptism of the Lord" (13
// January, calendarium: "IN COMMEMORATIONE BAPTISMATIS D. N. I. C.") did
// not match any existing case -- the HasSuffix check below requires "of
@@ -240,9 +264,16 @@ func fetch(date string) (*mmDay, error) {
}
type entry struct {
- slug, date, colour, class, en, la, first, gospel string
- rank calendar.Rank
- observed bool // has readings / reliable rank
+ slug, date, colour, class, en, first, gospel string
+ rank calendar.Rank
+ observed bool // has readings / reliable rank
+ // otherNames holds every "name.<lang>" field already present in the
+ // existing file for this slug, EXCLUDING "name.en" (English always
+ // comes fresh from missalemeum, in `en` above). Keyed by the full
+ // field name (e.g. "name.pl") so main() can emit it verbatim without
+ // hardcoding a language list -- see main()'s own preservedNames
+ // comment for why a hardcoded list is exactly the bug this fixes.
+ otherNames map[string]string
}
// idParts splits "sancti:MM-DD[sfx]:RANK:COLOUR" into rank word and colour word.
@@ -300,21 +331,25 @@ func readingsFrom(d *mmDay) (first, gospel string) {
return
}
-// knownSpuriousComm excludes specific missalemeum commemorations, keyed
-// "MM-DD/slug", that the 1962 calendarium's own row for that date does NOT
-// support -- confirmed by checking the primary text directly, not inferred.
-// 9 August's row reads only "Vigilia, III classis.", with no "Com." line, so
-// missalemeum's own "St. Romanus" commemoration that day has no calendarium
-// backing. This is a genuine upstream (missalemeum) data quirk, not something
-// derivable from the API response itself, so it is recorded here rather than
-// silently reproduced -- see the report for the primary-source citation.
-var knownSpuriousComm = map[string]bool{
- "08-09/romanus": true,
- // 14 August's row in the calendarium reads only "Vigilia, II classis.",
- // no "Com." line; the genuine St Eusebius (Bishop and Martyr) is
- // commemorated 16 December instead, where he is correctly present.
- "08-14/eusebius": true,
-}
+// PRIMARY-SOURCE NOTE (found and corrected during review): of the three
+// local scans this generator's citations are checked against
+// (docs/research/*.pdf in the sibling colitur repo), ONE --
+// "1962-06-23,…LT.pdf", the Archivum Liturgicum ELECTRONIC TRANSCRIPTION --
+// silently drops vigil commemorations that the other two, PHOTOGRAPHIC
+// scans of the actual 1962 Missale Romanum, both carry. Confirmed on four
+// entries: 7 August (Donatus), 9 August (Romanus), 14 August (Eusebius),
+// 25 December (Anastasia) -- all present in both photographic scans'
+// calendarium AND their own Proprium Sanctorum text ("Et fit
+// commemoratio S. Romani Mar-", "...S. Eusebii Con-", etc.), all silently
+// absent from the transcription. A `knownSpuriousComm` exclusion list once
+// stood here, built by checking ONLY the transcription and concluding two
+// of these four ("Romanus", "Eusebius" on 14 August) were spurious -- WRONG,
+// on evidence that itself was incomplete, not on a genuine absence. Treat
+// the photographic scans as the primary source and the electronic
+// transcription as a convenience index only; where they disagree, the scan
+// wins. (14 August's "St. Eusebius, Conf." and 16 December's "St. Eusebius,
+// Ep. et Mart." are two different people, both genuinely in the calendarium
+// -- see slugOverride below, not a reason to drop either.)
// slugOverride gives a proper, distinct slug to a small number of
// commemorations whose title slugifies IDENTICALLY to an unrelated feast on
@@ -323,44 +358,73 @@ var knownSpuriousComm = map[string]bool{
// feast (the same saint, repeated, not a coincidence); 14 May's "St.
// Boniface" is a different early martyr from 5 June's Boniface of Mainz, an
// entirely different person whose title happens to abbreviate to the same
-// English string. Keyed "MM-DD/original-slug" -> replacement slug.
+// English string; 14 August's "St. Eusebius" (a Confessor, calendarium "S.
+// Eusebii Conf.") is likewise a different person from 16 December's "St.
+// Eusebius" (a Bishop and Martyr, calendarium "S. Eusebii Ep. et Mart."),
+// both genuinely commemorated, missalemeum giving both the same bare
+// English title. Keyed "MM-DD/original-slug" -> replacement slug.
var slugOverride = map[string]string{
"01-28/agnes": "agnes-secundo",
+ "08-14/eusebius": "eusebius-confessor",
"05-14/boniface": "boniface-martyr",
}
-// refYearExplainsAbsence reports whether the TEMPORAL day alone (no
-// sanctoral data at all -- an empty layer stack) on this specific reference
-// date was already strong enough that ANY class-1..4 saint would lose there
-// regardless of its own merit: a Sunday or a named I/II-class feast, an
-// Ember day, the late-Advent or Christmas-octave privilege (I or II class),
-// or a privileged Lent/Passiontide feria (III class, but still privileged
-// over an equal-or-lower-class saint per RG 109(e)).
+// refYearExplainsAbsence is a RANK-BLIND SAMPLING HEURISTIC, not a rubric
+// evaluator: it does not know, and cannot know, the true class of the saint
+// it is being asked about -- only whether the TEMPORAL day alone (no
+// sanctoral data at all) on this one reference date looks privileged enough
+// that a saint failing to win there is unsurprising. It reports true for: a
+// Sunday or a named I/II-class feast, an Ember day, the late-Advent or
+// Christmas-octave privilege (I or II class), or a Lent/Passiontide feria
+// (III class, privileged per RG 109(e)).
+//
+// Two known imprecisions, recorded rather than silently accepted:
//
-// This is the discriminator between two different reasons a saint is never
-// OBSERVED in any of the six reference years:
+// - The Lent/Passiontide branch is privilege over an EQUAL-OR-LOWER-class
+// candidate only -- RG 109(e) does not let a mere III-class feria beat a
+// I- or II-class feast. Nothing in this codebase's actual data currently
+// exercises that gap (every saint this heuristic has ever been asked
+// about that is demoted throughout Lent is independently III class or
+// lower, per the calendarium), but the function does not itself enforce
+// it, so a future entry could reach it.
+// - It is a proxy for "why was this saint never observed", not a citation.
+// 6-31 December is excluded from ever trusting the id-derived rank
+// below, REGARDLESS of what this heuristic would otherwise say, because
+// RG 68(d)/(e) settles two specific cases (Thomas Becket, 29 December;
+// Silvester, 31 December) directly: the calendarium's own row names
+// each a bare "Commemoratio" with NO class of its own, even though the
+// DAY they fall on is II class (a day within the Nativity Octave). A
+// rank-blind heuristic reading the day's own class here would (and,
+// before this exclusion, did) wrongly conclude "the day was strong
+// enough to explain the demotion, so the id's rank is trustworthy" --
+// right about the day, wrong about what the rubric actually says about
+// THESE two named commemorations specifically.
//
-// 1. Genuinely without an independent Mass in the 1960-reformed books --
-// reduced to an added commemoration on ANY day, including an ordinary,
-// unprivileged one. Confirmed live: St Blaise (3 Feb, an ordinary
-// Septuagesima-season feria, non-privileged), St Canute (19 Jan, an
-// ordinary Time-after-Epiphany feria) and others are shown by
-// missalemeum as mere commemorations even then -- this is real 1962
-// data, not a sampling artefact, and RankCommemoration is the correct,
-// honest rank for them.
-// 2. A real class-1..4 feast that merely never won in these six
-// PARTICULAR reference years because its fixed date happens to fall,
-// in every one of them, on a day already strong enough to beat any
-// saint of its class -- the 15-entry, 6 March-5 April case this fix
-// originally targeted (every one of those dates falls within Lent in
-// all six reference years). Here the id's own embedded rank is
-// trustworthy.
+// The 6-31 December exclusion is also a warning about a structural hazard,
+// not just a one-off fix: this function calls calendar.Compute, i.e. it
+// reads the ENGINE's OWN computed temporal ranks to decide what DATA to
+// generate. A change to temporal_ef.go's ranking (e.g. promoting 26-31
+// December from class-4 to class-2, RG 67/68, landed in this same lineage)
+// can silently flip this function's verdict and rewrite generated data with
+// no code change to this file at all. Any future temporal_ef.go rank change
+// should re-check this function's own boundary cases, not just its own
+// tests.
//
// harvestDate keeps a saint's commemoration id rank ONLY if every reference
-// year in which it was seen was case 1 above (i.e. this function returned
-// true every time) -- a single unprivileged-day counter-example is enough
-// to fall back to RankCommemoration.
+// year in which it was seen returned true here -- a single false (an
+// unprivileged day, or the December exclusion) is enough to fall back to
+// RankCommemoration, the safe default (see St Blaise, whose own
+// commemoration id claims rank 4 and is still correctly overridden to
+// RankCommemoration, proving the id's rank is a candidate, not a verdict --
+// see the call site's own comment).
func refYearExplainsAbsence(date time.Time) bool {
+ if date.Month() == time.December && date.Day() >= 26 && date.Day() <= 31 {
+ // RG 68(d)/(e): "die 29 decembris, fit commemoratio S. Thomae
+ // Episcopi et Mart.; die 31 decembris, fit commemoratio S.
+ // Silvestri I Papae et Conf." -- both named as a bare
+ // "Commemoratio", no class. See this function's own doc comment.
+ return false
+ }
sel := calendar.DefaultSelection()
sel.Form = "old"
day := calendar.Compute(date, sel, nil)
@@ -422,7 +486,7 @@ func harvestDate(mmdd string) (*entry, []entry) {
continue // a transferred feast's commemoration, not a genuine one for THIS date
}
slug := slugify(c.Title)
- if slug == "" || knownSpuriousComm[mmdd+"/"+slug] {
+ if slug == "" {
continue
}
if t, ok := commTrack[slug]; ok {
@@ -431,14 +495,18 @@ func harvestDate(mmdd string) (*entry, []entry) {
}
continue // title/colour/id-rank already captured from the first sighting
}
- // The COMMEMORATION object's own id names THAT SAINT's true rank
- // (unlike the DAY's own info.id, which names the rank of whatever
+ // The COMMEMORATION object's own id is a BETTER rank signal than
+ // the DAY's own info.id (which names the rank of whatever
// propers are reused that day, not the commemorated saint's) --
- // idParts already extracts it; only the colour half used to be
- // kept. Whether this rank is actually TRUSTED depends on
- // `explained` across every year this slug is seen -- resolved
- // after the year loop, see refYearExplainsAbsence's own doc
- // comment.
+ // but "better" is not "always correct": St Blaise's own
+ // commemoration id is "sancti:02-03:4:r" (rank 4), and he is
+ // still, correctly, ruled RankCommemoration below, because he
+ // has no independent Mass at all in the 1960 books, not because
+ // his id's rank is wrong. The id's rank is a CANDIDATE value,
+ // trusted only when refYearExplainsAbsence's heuristic finds no
+ // counter-evidence across every reference year this slug is
+ // seen -- see that function's own doc comment for what the
+ // heuristic actually checks and its known limits.
rank, col := idParts(c.ID)
commTrack[slug] = &commTracker{
entry: entry{slug: slug, date: mmdd, colour: col, en: c.Title, rank: rank},
@@ -497,11 +565,34 @@ func harvestDate(mmdd string) (*entry, []entry) {
}
func main() {
- // Existing Latin names to preserve (missalemeum has no Latin titles).
- la := map[string]string{}
+ // preservedNames holds every "name.<lang>" field already present in the
+ // existing file, keyed by slug then by the full field name -- EVERY
+ // language missalemeum does not itself supply (it has English titles
+ // only), not a hardcoded whitelist of one or two. A whitelist is
+ // exactly the bug this replaces: an earlier version of this generator
+ // preserved only name.la, and -- unnoticed, because the bootstrapped
+ // file has in fact never carried a name.la value at all, so that
+ // mechanism was silently inert from the start -- name.pl had no
+ // preservation mechanism whatsoever. A regeneration deleted all 322
+ // Polish names outright (measured: name.pl 322 -> 0), reaching
+ // mobile.Day(date, "ef", version, "pl") -- a shipped dlectio entry
+ // point -- on the app's next build, with `naming.CelebrationName`'s own
+ // name[lang] -> name.en fallback silently substituting English and no
+ // error anywhere. Generalising to every "name.*" key except name.en
+ // (English is always freshly regenerated from missalemeum, the whole
+ // point of this tool) means a third, fourth, or Nth language added to
+ // the file later survives a regeneration without this function ever
+ // needing to change again.
+ preservedNames := map[string]map[string]string{}
for slug, rc := range caldata.Tridentine().Cels {
- if v := rc.Fields["name.la"]; v != "" {
- la[slug] = v
+ for k, v := range rc.Fields {
+ if v == "" || !strings.HasPrefix(k, "name.") || k == "name.en" {
+ continue
+ }
+ if preservedNames[slug] == nil {
+ preservedNames[slug] = map[string]string{}
+ }
+ preservedNames[slug][k] = v
}
}
@@ -580,9 +671,7 @@ func main() {
es := make([]entry, 0, len(entries))
for _, e := range entries {
- if l := la[e.slug]; l != "" {
- e.la = l
- }
+ e.otherNames = preservedNames[e.slug]
es = append(es, e)
}
sort.Slice(es, func(i, j int) bool {
@@ -599,7 +688,9 @@ func main() {
b.WriteString("; by internal/calendar (temporalEF) and is NOT listed here.\n")
b.WriteString("; Ranks use the 1960 Code of Rubrics: class-1..class-4.\n")
b.WriteString("; Generated by scripts/gen-sanctoral-ef.go from missalemeum (Divinum Officium 1962\n")
- b.WriteString("; data). Latin names are hand-curated where present. See NOTICE.\n\n")
+ b.WriteString("; data). name.en is always regenerated fresh from missalemeum; every other\n")
+ b.WriteString("; name.<lang> (missalemeum supplies English only) is preserved verbatim from\n")
+ b.WriteString("; whatever this file already carried before regeneration. See NOTICE.\n\n")
b.WriteString("[layer]\nid = tridentine\nname = General Roman Calendar of 1962\ntype = universal\n")
for _, e := range es {
fmt.Fprintf(&b, "\n[%s]\ndate = %s\nrank = %s\ncolour = %s\n", e.slug, e.date, e.rank, e.colour)
@@ -607,8 +698,13 @@ func main() {
fmt.Fprintf(&b, "class = %s\n", e.class)
}
fmt.Fprintf(&b, "name.en = %s\n", e.en)
- if e.la != "" {
- fmt.Fprintf(&b, "name.la = %s\n", e.la)
+ otherKeys := make([]string, 0, len(e.otherNames))
+ for k := range e.otherNames {
+ otherKeys = append(otherKeys, k)
+ }
+ sort.Strings(otherKeys) // deterministic output regardless of map iteration order
+ for _, k := range otherKeys {
+ fmt.Fprintf(&b, "%s = %s\n", k, e.otherNames[k])
}
if e.first != "" {
fmt.Fprintf(&b, "reading.first = %s\n", e.first)