COMPATIBILITY_NOTES_5.1.2 - TheDaniel166/moira GitHub Wiki
Compatibility Notes - Moira 5.1.2
Date: 2026-07-22
Moira 5.1.2 is API-compatible with 5.1.1. Public Python signatures, result vessels, exports, defaults, and REST request/response schemas are unchanged.
Corrected output
This patch intentionally changes results where the earlier eclipse geometry or topology was wrong:
- lunar searches now include the 1922-03-13 and 1940-03-23 penumbral events;
- 1988-03-03 is now penumbral rather than partial; and
- affected 2027-2031 solar footprints now return lawful closed penumbral components instead of malformed horizon junctions or an incidence-count exception.
Applications that persisted eclipse catalogs or cached footprint details should regenerate the affected records after upgrading.
Preserved boundaries
- Global lunar greatest eclipse, classification, and contacts use the physical geocentric Moon at the event TT epoch.
- Observer-facing lunar visibility geometry may still use reception-time apparent vectors where that separately named product requires them.
- Exact cone/disk geometry remains the lunar classifier; the two-degree latitude neighborhood is candidate discovery only.
- Python owns solar-footprint doctrine, topology, result assembly, and fallback. The new C++ helpers are an internal additive substrate and do not change the public interface.
- No NumPy dependency has been added to the base engine, optional runtime, or native binding contract.
- The NASA century fixture is validation evidence only and is never consulted by runtime eclipse computation.
Upgrade action
Upgrade to the published moira-astro==5.1.2 wheel and restart services that
import Moira so every process loads the corrected Python and native paths.
No caller-side flag or request migration is required.