I announce the release of version 0.1.0 of my Date::Calendar::xxx modules.
Context ------- In the Gregorian calendar, days are defined as a span of time starting at midnight and stopping on the following midnight. While some other calendars use the same definition, several calendars define days as sunset-to-sunset. And there are even some calendars that define days as sunrise-to-sunrise. On one hand, the books and the static (and semi-static) websites I have read usually tell their readers how the days are defined in such and such calendar. On the other hand, all the programs I have used until now (and modules, and apps, and dynamic websites) ignore the definition of the day in the various calendars, and pretend that all days are midnight-to-midnight. Sometimes, not always, the documentations of these programs mention this as a limitation, a "known issue" or a "known bug". For example, Hannukah begins on 25 Kislev at sunset, so next Hannukah will begin on 2024-12-25 at sunset. Yet, all programs converts 5785-09-25 to 2024-12-26. What's new in version 0.1.0 --------------------------- When creating a date with any Date::Calendar::xxxx:ver<0.1.0>, you can add a `daypart` parameter to refine the date. The possible values are `before-sunrise', `daylight` and 'after-sunset'. So, when creating the instance from class `Date::Calendar::Hebrew:ver<0.1.0>` for Hannukah, you just take care of adding `daypart => after-sunset()` to the `new` constructor and the conversion to Gregorian will give 2024-12-25 (plain 2024-12-25 if using core class `Date`, or 2024-12-25 after-sunset if using `Date::Calendar::Gregorian:ver<0.1.0>`). On the other hand, if you create an instance for 5785-09-25 before-sunrise or 5785-09-25 daylight, the conversion will give 2024-12-26. What Date::Calendar::xxxx:ver<0.1.0> does not --------------------------------------------- The modules ignore any HHMMSS component and especially do not try to guess what part of the day this time stamp refers to. For example, you can create a D::C::Gregorian date with a HHMMSS component "224500" and still pretend this is daylight or before sunrise. Thank you for your interest. Jean Forget