kollavarsham 1.2.1
kollavarsham: ^1.2.1 copied to clipboard
Malayalam calendar (Kollavarsham / Malayalam Era) for Dart. Convert between Gregorian and Malayalam dates, with month names, nakshatra, tithi and Malayalam numerals.
1.2.1 #
Fixed
vishuis the day of the first sunrise after the Mesha sankranti, not always Medam 1: when the sankranti falls after sunrise but before the month-start cut-off (14 April 2026, 09:39), Vishu is the next day (15 April 2026, as in Kerala's holiday list). Checked against 2021–2026.
1.2.0 #
Added
YogaandKarana, withyogaAt,yogaOn,yogaSpanAt,karanaAt,karanaOnandkaranaSpanAt.KalamandKollavarshamCalendar.kalamOn: Rahu kalam, Gulika kalam and Yamagandam.KollavarshamCalendar.moonriseandmoonset.KollavarshamCalendar.chandrashtamam, withRashi.eighth,Rashi.fromSiderealLongitudeandNakshatra.rashiOf.- Festivals: Sivaratri, Ashtami Rohini, Vinayaka Chathurthi, Durgashtami, Mahanavami, Vijayadasami, Deepavali, Guruvayur Ekadashi and Thaipooyam.
VratandKollavarshamCalendar.vratDays: Ekadashi, Pradosham, Shashti, Pournami and Amavasya for a year.ChristianFeast,christianFeastsInandeasterSunday.HijriFestival,hijriFestivalsInandtabularHijriToGregorian: tentative dates from the tabular Hijri calendar.
Fixed
onam,attukalPongala,thrissurPooramand sofestivalsInthrew for years in which the star fell between two sunrises, sunsets or midnights (for example Kollavarsham 1096).festivalsOnmissed a festival listed under the next year, such as an Atham that falls in Karkidakam.
1.1.0 #
Added
BirthDetails.fromInstantandBirthDetails.fromLocalTime: nakshatra with pada, rashi, tithi and Malayalam date of a moment of birth.Rashi, the twelve sidereal signs.Recurrence, withoccurrencesBetween,nextand JSON conversion:NakshatraInMonth(pirannal),NakshatraMonthly,TithiInMonth(shraddham),TithiEveryPaksha(every Ekadashi and the like),MalayalamDateYearly,MalayalamDateMonthlyandGregorianYearly.DuplicateRuleandAbsentRule, for days that are doubled or missing.
1.0.0 #
First stable release. The public API is now covered by semantic versioning.
KollavarshamCalendar.verifiedMonthStartsis unmodifiable.- Tests run on the web (Chrome) as well as the VM.
Changes since 0.1.0, in summary:
- Gregorian ↔ Kollavarsham conversion, cross-checked against the Swiss Ephemeris for every month 1900–2100 and backed by a precomputed table.
- Verified month starts for borderline months, with
monthStartMargin. MalayalamDateformatting and parsing in Malayalam script and transliteration, with Malayalam digits.- Nakshatra and tithi, with start and end times.
- Kerala festivals: Onam, Vishu, Attukal Pongala, Thrissur Pooram, Karkidaka Vavu, Mandala season and more.
- North Malabar year numbering (
YearStart.kanni).
0.3.0 #
Breaking
MalayalamDate.internalandKollavarshamCalendar.dayNumberOf,fromDayNumber,dateOfDayNumberanddayNumberOfGregorianare now@internal.MalayalamDate ==compares calendars by value (location, year convention, overrides) instead of identity.
Added
MalayalamDate.parse/tryParse,MalayalamMonth.tryParseName.- Format tokens
MMM,E,GandGGGG. YearStart.kannifor North Malabar year numbering.ObserverLocationandKollavarshamCalendarvalue equality.- Festivals: Attukal Pongala, Thrissur Pooram, Karkidaka Vavu;
KeralaFestival,festivalsIn(year)andfestivalsOn(date). - Every public member is documented.
0.2.0 #
- Solar theory cross-checked against the Swiss Ephemeris for every sankranti 1900–2100 (all within one minute).
- ΔT now comes from a yearly table (IERS observed values, then the Stephenson–Morrison–Hohenkerk 2016 extrapolation) for 1900–2100.
- Precomputed month-start table for ME 1075–1276: conversions for the
default location take well under a microsecond. Disable with
KollavarshamCalendar(usePrecomputedTable: false). - Verified month start: Vrischikam 1197 began on 2021-11-16.
- Borderline-month audit (
tool/borderline_audit.dart) and its list intest/fixtures/borderline_months.csv. - Supported range is now explicit:
KollavarshamCalendar.minYear(1) tomaxYear(2000); dates outside throw aRangeError. - Internal caches are bounded.
0.1.0-dev #
- Gregorian ↔ Kollavarsham conversion using the Kerala sankranti rule (VSOP87 Sun, Lahiri ayanamsa, location-aware sunrise and sunset).
MalayalamDatewith arithmetic, comparison, formatting and aDateTime.toMalayalamDate()extension.- Month, weekday, nakshatra and tithi names in Malayalam script and transliteration; Malayalam digit helpers.
- Nakshatra and tithi at sunrise or any instant, with start and end times.
- Festival dates: Onam, Atham, Vishu, Mandala season, Mandala Pooja and Makaravilakku.
- Verified month-start overrides and
monthStartMarginfor borderline months.