Open yangchristina opened 1 month ago
Unfortunately I came across the bug(s) that this should fix. I'll see if I can fix it otherwise for now, only way I found that would fix (without additional code or patches) is to force the NodeJS environment always to run in UTC timezone as this disables the DST logic in JS. Then make sure the dates are properly converted to local timezone for places that are needed.
After testing and debugging. I just cannot get it working correctly. If you wish to use these formatters without DST issues, you have run in UTC timezone. For the formatting now had small workaround by doing it manually from the date to continue.
It is unfortunate and the time zones are pretty much solid in MomentJS. The native JS date and Intl and other parts are quite a mess even if trying to do all the correct tricks or offset adjustments. Best just to put your NodeJS process into TZ=UTC timezone and work from there.
Fixes #252 Fixes #258
Not sure if you'd want to use this since it involves another peer dependency (
@date-fns/utc
)Replaces
toZonedTime
informatInTimeZone
withUTCDate
, to prevent output from being affected by daylight savings happening in system timezone.