- Remove deprecated methods flagged for removal.
- Remove deprecated classes such as the redundant GeoLocationUtils.
- Possibly rename some classes such as the confusingly named ComplexZmanimCalendar.
getSofZman*Chametz*times will retun null if it is not Erev Pesach.- Possibly increase the minimum supported JRE version from version 8 (the code currently almost certainly works on 6 today).
- ...
2.6.0 (future)
ZmanimCalendarAstronomical Chatzos based changes:- Add setting
useAstronomicalChatzos(defaulted to true) to keep the mistaken compat break introduced in the v2.5.0 release. - Add setting
useAstronomicalChatzosForOtherZmanim(defaulted to false). - Add
getChatzosAsHalfDay()to retain the old behavior of chatzos being halfway between sunrise and sunset. - Use
useAstronomicalChatzosto control ifgetChatzos()returnsgetSunTransit()(astronomical chatzos) or getChatzosAsHalfDay(). - Add
getHalfDayBasedZman(Date startOfHalfDay, Date endOfHalfDay, double hours)to allow other zmanim to be impacted by chatzos. - Use
useAstronomicalChatzosForOtherZmanim. ZmanimCalendar- add utility method getPercentOfShaahZmanisFromDegrees(double degrees, boolean sunset)` to simplify zmaniyos time calculations. This allows calculations of various percentage of the day zmanim calculations.
- Add setting
- Use Astronomical Chatzos Halayla (as opposed as halfway between sunset and sunrise or 12 hours after chatzos hayom)
AstronomicalCalculator- addgetSunLowerTransit()AstronomicalCalculator- add abstract methodgetUTCMidnight()NOAACalculator- implementgetUTCMidnight()AstronomicalCalculator- add abstract methodgetUTCMidnight()
ComplexZmanimCalendar- significant updates- Deprecate
getTzaisGeonim3Point65Degrees()andgetTzaisGeonim3Point676Degrees(), very early tzais geonim time that are earlier than 13.5 minutes in Yerushalayim at the equinox / equilux. - Started coding some zmanim to use the half-day zmanim config.
- Deprecate
getFixedLocalChatzosBasedZmanim()in favor ofgetHalfDayBasedZman()in the parent ZmanimCalendar class. getFixedLocalChatzos()now just calls the new getLocalMeanTime(12.0) in the grandparent AstronomicalCalendar class.- Remove
getSolarMidnight()that was added to the AstronomicalCalendar grandparent class. - Undeprecate
getPlagAlosToSunset()since it is not a zman that can be too late. - Add
getSofZmanAchilasChametzMGA72MinutesZmanis()andgetSofZmanBiurChametzMGA72MinutesZmanis() - Add null checks in
getMinchaGedolaAhavatShalom() - Fix
getAlos60()to usegetElevationAdjustedSunrise() - Update Tefila method to Use Consistent Spelling.
- Deprecate
HebrewdateFormatter- add method
formatParsha(JewishCalendar.Parsha parsha)to allow formatting of a parsha retrieved fromJewishCalendar.getUpcomingParshah(). - Fix NullPointer in HebrewDateFormatter week formatting
- add method
TefilaRulesJewishCalendarGeoLocation- add NaN validation tosetLatitudeandsetLongitudeNOAACalculator- fix Solar Azimuth and ElevationAstronomicalCalculator- addgetSolarAzimuth()andgetSolarElevation()AstronomicalCalendar- Fix null handling in
getSunTransit(Date,Date) - Deprecate
getSunriseSolarDipFromOffsetandgetSunsetSolarDipFromOffset - Pass proper parameter to
getDateFromTimeingetLocalMeanTime - Add
getLocalMeanTime(). - Move
getSolarMidnight()to the parent class where it belongs. - Correct USNO noon calculation in some locations where it was sometimes 12 hours off.
- Fix null handling in
2.5.0 (2023-06-09)
- Update
ComplexZmanimCalendar.getSolarMidnight()to support astronomocal midnight that works even in the Arctic/Antarctic. - Add special Shabbasos/Parshiyos Shuva, Shira, Hagadol, Chazon and Nachamu
- Fix isYomTov() should return false on Erev Shavuos.
- Correct spelling of Bein Hashmashos methods the the
ComplexZmanimCalendar(was missing the second H). - Various Daf Yomi Yerushalmi fixes including:
- Correct calculation of the daf number.
- Correct the order of transliterated Yerushalmi masechtos.
- Correct the Hebrew spelling of the masechta Kilayim.
- Added number of IS methods such as is
isYomKippur(),isSuccos(),isPesach()etc. to theJewishCalendarclass. - Add
isAlHanissimRecited(JewishCalendar)andisYaalehVeyavoRecited(JewishCalendar)to theTefilaRulesclass. - Clarify documentation to explain that isMacharChodesh() Refers to the Haftorah
2.4.0 (2022-11-27)
- JewishCalendar.getUpcomingParshah() that will return the upcoming Parsha regardless of the day of week.
- Change YerushalmiYomiCalculator to return null on Yom Kippur and Tisha Be'Av when there is no Daf.
- Add some Luach Ahavat Shalom Zmanim
- Add BeHaB to the
JewishCalendarclass - Add Yom Kippur Katan and Isru Chag to the
JewishCalendarclass. - Add the
TefilaRulesclass, a utility class for info like:- is vesain tal umatar recited etc.
- is tachanun recited by shacharis or mincha.
- Is hallel or hallel shalem recited
- Deprecate the tefila rules methods that existed in JewishCalendar class in favor of using the ones in the
TefilaRulesclass. - Add
getSamuchLeMinchaKetanazman. - Deprecate
getSofZmanShmaFixedLocal()andgetSofZmanTfilaFixedLocal()with future plans of removal. - Deprecate multiple "dangerous" zmanim as an alert to developers, with plans on retaining them.
2.3.0 (2021-12-07)
- Fix an issue with sof zman kiddush levana being off by an hour when the molad is on one side of the DST change, and the sof zman on the other.
- Add seasonal davening based zmanim including Vesein Tal Umatar/ Vesein Berachah / Mashiv Haruach.
- Add Rav Moshe Feinstein's zmanim used in MTJ and Yeshiva of Staten Island.
- Refactor code for alos and tzeis zmaniyos based time (ports to other languages can simplify things by doing the same).
- Fix Hebrew spelling of Parshas Nitzavim.
2.2.0 (2021-03-15)
- Added JewishCalendar.isTaanisBechoros().
- Updated Javadocs - document sources for
getFixedLocalChatzos()and clarify Yerushalmi Yomi Start Date.
2.1.0 (2020-12-02)
- Added six variants of the Yereim's bain hashmashos zmanim.
AstronomicalCalculator.getRefraction()and.getSolarRadius()now have public access.- Deprecate the
GeoLocationUtilsclass. All of its functionality is in theGeoLocationclass. - Updated JavaDocs (no more errors or warnings).
- Added Lag Ba'omer.
- Added Shushan Purim Katan.
- Added
Daf.setMasechtaTransliterated(String[] masechtosBavliTransliterated)andDaf.setYerushlmiMasechtaTransliterated(String[] masechtosYerushalmiTransliterated). - Simplify and reduce code duplication in
ZmanimCalendargeneric zmanim calculations. - Fix
AstronomicalCalendargetSunriseSolarDipFromOffset()andgetSunsetSolarDipFromOffset(they are still inefficient) to properly allow calculations before and after sun rise/set. - Change some Hebrew lists that are not expected to change to be final.
- Semver change (just a versioning change).
- Fix JavaDoc references to new package structure.
- Fix #160
isShabbosMevorchimshould return false for the month of Tishrei. - Fix #161 a mistake in
Zman.toString(). - Fix java 6 compilation issues.
- Changed package structure to
com.kosherjava.zmanimfromnet.sourceforge.zmanim. - Added Maven and Gradle support.
- Use DST for TimeZone display name (#150).
- Convert
formatMolad()to static. - Convert
getTimeOffset()to static. - Pass alos and tzais parameters for
TchilasZmanKidushLevana3Days. - Historical daf yomi dates should be final.
- Add Birkas Hachama, update documentation.
- Update formatter class for Enums in
JewishCalendar.
- Default calculator changed from USNO to NOAA.
- Remove the redundant
ZmanimCalculatorclass (backwards breaking if you used this calculator). - Support optional elevation adjustments for zmanim besides sunrise and sunset.
- Added multiple alternative zmanim .
- Added Baal Hatanya zmanim.
- Replaced GPL parsha code with an LGPL kosher version.
- Added JSON serialization / output (was previously limited to XML).
- Add Daf Yomi Yerishalmi.
- Many
JewishCalendarrelated tweaks and enhancements. - Many minor bug fixes and enhancements.
See GitHub Commits for more details.