qibla-dart/.github/docs/CHANGELOG.md
Aric Camarata cc3c227d2d
feat: surface-area parity audit vs qibla-js (v1.0.1) (#1)
* chore: surface-area parity audit vs qibla-js, bump to v1.0.1

Full gap analysis: qibla-dart already matches @acamarata/qibla on all five
public functions (qiblaAngle, compassDir, compassName, qiblaGreatCircle,
distanceKm) and three constants (kaabaLat, kaabaLng, earthRadiusKm).
No runtime gaps found; 48/48 tests pass unchanged.

Patch bump documents the audit and closes T-E10-01 (Mega Phase 1).

* docs: add CHANGELOG.md for v1.0.1 release

* chore: polish pubspec, add wiki docs
2026-05-29 06:49:15 -04:00

1.1 KiB

Changelog

1.0.1 - 2026-05-25

Verified

  • Full surface-area parity audit against @acamarata/qibla (JS reference package).
  • All five public functions (qiblaAngle, compassDir, compassName, qiblaGreatCircle, distanceKm) and three exported constants (kaabaLat, kaabaLng, earthRadiusKm) confirmed present with idiomatic Dart typed signatures and matching semantics. No gaps found.
  • 48 tests pass; no changes to runtime code required.

1.0.0 - 2026-03-08

Added

  • qiblaAngle(lat, lng) computes the initial bearing to the Ka'bah in degrees.
  • compassDir(bearing) returns an eight-point compass abbreviation (N, NE, E, etc.).
  • compassName(bearing) returns the full compass direction name (North, Northeast, etc.).
  • qiblaGreatCircle(lat, lng, [steps]) generates waypoints along the great circle to the Ka'bah via spherical linear interpolation.
  • distanceKm(lat1, lng1, lat2, lng2) computes haversine distance between two points.
  • Constants: kaabaLat, kaabaLng, earthRadiusKm.
  • RangeError validation for all coordinate inputs.