pray-calc/.wiki/Changelog.md
Aric Camarata c02f197ece v2.0.0 — TypeScript rewrite, dual ESM/CJS, 14 methods + PCD dynamic algorithm
Complete rewrite from plain JavaScript to TypeScript with dual CJS/ESM output
via tsup. Removes all legacy .js source files and the old CommonJS-only index.

Key changes:
- Full TypeScript source in src/ with strict mode and declaration maps
- tsup build: dist/index.cjs + dist/index.mjs + dual .d.ts / .d.mts types
- 14 traditional fixed-angle methods (UOIF through MUIS) + MSC seasonal method
- PCD dynamic algorithm: MSC seasonal base + Earth-Sun distance correction +
  ecliptic geometry + atmospheric refraction + observer elevation
- getTimesAll() batches all 14x2 zenith angles into a single SPA call
- getMscFajr() / getMscIsha() expose MSC seasonal reference directly
- getAngles() returns the PCD-computed fajrAngle and ishaAngle
- High-latitude bounds: angles clipped to [10, 20] above 55N
- 106 tests across ESM and CJS (test.mjs + test-cjs.cjs)
- CI matrix: Node 20/22/24, typecheck, pack-check
- Wiki: 12 reference pages + 6-page research section with global accuracy study,
  home-territory comparison, observational evidence, and field observation matrix
- Moon functions removed (migrated to moon-sighting package)
- pnpm-only, Node >=20, sideEffects: false
2026-02-25 18:11:20 -05:00

22 lines
762 B
Markdown

# Changelog
See [CHANGELOG.md](https://github.com/acamarata/pray-calc/blob/main/CHANGELOG.md)
in the repository for the full version history.
## v2.0.0 Highlights
- Full TypeScript rewrite (dual CJS/ESM build)
- Physics-grounded dynamic angle algorithm (MSC base + r correction + Fourier + refraction + elevation)
- 14 traditional methods (added IGUT/Tehran, Kuwait, Qatar)
- Removed suncalc dependency; removed moon functionality (moved to moon-sighting)
- `getAsr` refactored to pure math using Meeus declination
- `formatTime` replaces `fractalTime` (nrel-spa v2 API)
- Node >= 20 requirement; proper exports field; publishConfig
## v1.7.x (Legacy)
CommonJS, JavaScript source, 10 traditional methods, suncalc for moon data.
---
*[Back to Home](Home)*