mirror of
https://github.com/acamarata/pray-calc.git
synced 2026-06-30 19:04:26 +00:00
3.3 KiB
3.3 KiB
Changelog
All notable changes to this project will be documented in this file.
[2.0.0] - 2026-02-25
Added
- Full TypeScript rewrite with dual CJS/ESM build (tsup)
- Physics-grounded dynamic twilight angle algorithm: MSC seasonal base + Earth-Sun distance correction + Fourier harmonic smoothing + atmospheric refraction + elevation horizon dip
- Three new traditional methods: IGUT/Tehran (17.7°/14°), Kuwait (18°/17.5°), Qatar (18°/90 min): total now 14
getAngles()exported as a standalone functiongetMscFajr()/getMscIsha()exported withshafaqmode parameter (general,ahmer,abyad)solarEphemeris()/toJulianDate()exported: Jean Meeus solar ephemeris (declination, r, ecliptic lon)METHODSarray exported for documentation and tooling- All TypeScript types exported (
PrayerTimes,FormattedPrayerTimes,PrayerTimesAll, etc.) .wiki/documentation: Home, API Reference, Dynamic Algorithm, Traditional Methods, Architecture, Twilight Physics, High-Latitude, Asr Calculation, Changelog- GitHub Actions CI (Node 20/22/24 matrix, typecheck, pack-check) and wiki sync workflow
- 100-scenario ESM test suite + CJS smoke tests
Changed
getAsrrefactored from internal SPA dependency to pure math using Meeus declinationgetTimesAllnow batches all 14×2 + 2 dynamic angles in a single SPA callnrel-spaupdated from v1.x to v2.0.1 (formatTimereplacesfractalTime)- Node engine requirement raised from >=12 to >=20
- Package
exportsfield added with types-first conditional exports sideEffects: falsefor tree-shakingpublishConfig.access: publicaddedrepository.urlusesgit+https://prefix
Removed
- All moon-related functions (
getMoon,getMoonPhase,getMoonPosition,getMoonIllumination,getMoonVisibility): moved tomoon-sightingpackage suncalcruntime dependency (removed with moon functions)getEarthSunDistancehelper (inlined intogetSolarEphemeris)methods.json(methods now embedded ingetTimesAll.tswith full metadata)- CommonJS
index.jssource (replaced by TypeScriptsrc/) index.d.tshand-written types (replaced by generateddist/index.d.ts)mochaandeslintdev dependencies (replaced by plainnode:asserttests)
[1.0.0] - 2023-11-11
- Initial release
[1.1.0] - 2023-11-12
- Updated calculation behavior to be more accurate (major)
[1.2.3] - 2023-11-12
- Moved timezone to main args and changed default behavior (major)
- Updated test cases and readme to reflect new usage (minor)
[1.3.2] - 2023-11-13
- Major updates to getMoon with own functions
[1.4.0] - 2023-11-14
- Renamed to "pray-calc" and removed old package
- Improved Synodic accuracy slightly and lastKnownMoon
[1.4.1] = 2023-12-01
- Modified getMoonVisibility to use adjusted moon phase for end of cycle
[1.6.0] = 2025-05-04
- Major fixes for core files and calculations
- Updated to use the new "nrel-spa" v1.3.0
[1.6.1] - 2025-05-04
- Fixed missing modules and types definitions lost in last update
- Locked
suncalcdependency to^1.9.0 - Clarified scripts:
build,test, andprepublishOnlyinpackage.json
[1.6.2] - 2025-05-04
- Fixed Package issues
[1.7.0] = 2025-05-04
- Major update to main algorithm
- Fixes to syntax and bugs
[1.7.1] = 2025-05-14
- Update to package meta and location
[1.7.2] = 2025-05-14
- Added tests