- New
MoonPhaseNameenum that represents all phases of the Moon with a machine-readable->valueand a human-readablelabel(). - New
getPhaseByEnum()to look up the UNIX timestamp of a phase via theMoonPhaseNameenum. - New
getPhaseNameEnum()to get the current phase as aMoonPhaseNameenum. - New
getPhaseByEnumDateTime()and newgetPhaseNewMoonDateTime(),getPhaseFirstQuarterDateTime(),getPhaseFullMoonDateTime(),getPhaseLastQuarterDateTime(),getPhaseNextNewMoonDateTime(),getPhaseNextFirstQuarterDateTime(),getPhaseNextFullMoonDateTime()andgetPhaseNextLastQuarterDateTime()getters, which return the quarter times asDateTimeImmutableobjects in UTC instead of UNIX timestamps. - New
Exceptionclass in theSolarisnamespace that is thrown when no phase data is available. - Extensive test coverage, including tests for every method of the library.
- The quarter-time getters now use the
MoonPhaseNameenum internally. - All methods and properties are now documented with detailed docblocks.
getPhaseByName()is deprecated in favor ofgetPhaseByEnum(). It will be removed in the next major version.getPhaseName()is deprecated in favor ofgetPhaseNameEnum(). It will be removed in the next major version.