- Various performance improvements
- throwOnInvalid causes the constructor to throw if the year is invalid
- Localized week support (#1454)
- Added custom inspect for Node (#1526)
- Fix sorting in
Interval.splitAt
(#1524)
- Fixes another regression from 3.4.0 (#1496)
- Fixes regression from 3.4.1 (#1493)
- Fixes for regressions from 3.4.0 (#1482 and #1488)
- Fix type checking on input zones
- Fix Islamic months listing
- Fix normalize() for negative inputs
- Fix off-by-one in Interval#count (#1308)
- Support formatting for custom zones (#1377)
- Fix parsing for narrow spaces (#1369)
- Handle leap year issue with AD 100 (#1390)
- Allow parsing of just an offset
- Fix for RFC-2822 regex vulnerability
- Better handling of BCP tags with -x- extensions
- Allow timeZone to be specified as an intl option
- Fix for diff's handling of end-of-month when crossing leap years (#1340)
- Add Interval.toLocaleString() (#1320)
- Add Settings.twoDigitCutoffYear
- Add Duration.rescale
- Fix quarters in diffs (#1279)
- Export package.json in package (#1239)
- Lots of doc changes
- Added DateTime.expandFormat
- Added support for custom conversion matrices in Durations
- Add DateTime.parseFormatForOpts
- Add "default" as an option for specifying a zone, and change "system" to really mean the system zone (breaking change)
- Support for ESM-style node imports
- Fix Wednesday parsing for RFC 850 strings
- Increase number of digits allowed in ISO durations
- Add support for parsing the ISO zone extension, like
2022-05-08T20:42:00.000-04:00[America/New_York]
- Add an
extendedZone
option totoISO()
andtoISOTime
- Improvements to
DateTime.isInDST()
- Fix for parsing in Vietnames (and probably other languages)
- Fix timezone calculations for negative years
- add week formatting token "w" for durations
- fix weekday computation for years 0-100
- Added an
includeOffsetSpace
option totoSQL
andtoSQLTime
- Added
toUnixInteger
- Don't use
-0
when negating durations with zeros in them
- Major perf improvements to
toISO()
,toISODate()
,toISOTime()
, andtoSQLDate()
- Fixed date padding for negative years in
toISO()
- Added Duration#toHuman()
- Allow offsets to pick among ambiguous times when both an offset and zone are provided to
fromFormat
- Fix a floating point bug in
Duration.shiftTo()
- Fix issue in quirky environments that lack
hourCycle
support and sometimes computed offsets 12 hours off
- Stop special casing of
Etc/GMT*
zones - export fromDurationLike
- memoize zone validation
- Support for fractional elements in duration ISO parsing
- Added
uu
anduuu
tokens for fractional millisecond parsing
Fix locale defaulting
- Fix ISO parsing for offset specifiers in Year-Ordinal formats
- Fix GMT zone parsing for older versions of Node
- Support multiple units in
toRelative
- Various documentation updates
- Add fromISOTime, toISOTime and toMillis to Duration (#803)
- Fix padding of negative years in IsoDate (#871)
- Fix hasSame unit comparison (#798)
- Export VERSION information (#794)
- Durations are considered equal with extra zero units. Fixes #809 (#811)
- fix fromFormat with Intl formats containing non-breaking spaces
- Support higher precision in ISO milliseconds
- Some fixes for 00:30 timezones
- Fix some throwOnInvalid for invalid Intervals
- Various doc fixes
- Fix Interval#isSame for empty intervals
- Mark package as side effect-free
- Add support for intervals with a large number of seconds
- Remove erroneous
console.log
call
- Update polyfills for pollyfilled build
- Allow minus sign prefix when creating Duration from ISO
- Added more details to error messages for type errors
- Added support for ISO basic format to DateTime#toISO
- Fix setZone's handling of pre-1970 dates with millisecond components
- Fix keepLocalTime for large jumps near the target zone's DST
- Fix cache perf for toRelative()
- Fix parsing of meridiems in macro tokens in newer versions of v8
- Fix bug in Chrome Canary that threw off time zone calculations
- Fix for quarter parsing
- Some documentation updates
- Added quarter support to the parser
- Fix some rounding issues in ISO formatting
- Added Duration#mapUnits
- added Interval#toISODate and Interval#toISOTime
- Some documentation fixes
- Cache offset values
- Fix handling of negative sub 1-hour offsets
- Speculative fix for Node 6
- Fix Intl.DateTimeFormat usage for polyfills
- Interval#splitAt now ignores input dates outside the interval
- Don't allow decimals in DateTime creation
- Fix handling of decimals in DateTime#plus and #minus
- Fix validity when adding or subtracting time that exceeds Date max/min boundaries
- Add support for macro tokens in the parser
- Fix issue with
toRelative
usingstyle: short
with plural days
- Reject out-of-range numbers in DateTime.fromMillis
- Reject 0s in ISO date inputs
- DateTime.min and DateTime.max throw if they get the wrong kind of arguments
- Fixed throwOnInvalid logic for Interval
- Added
DATETIME_MED_WITH_WEEKDAY
preset
- Catch errors trying to use Intl in weird versions of IE 11
- Fixed locale default logic for `DateTime#toFormat("ZZZZ")
- Added
formatOffset
to Zones
- Allow the zone argument to Interval.fromISO with duration components
- Ignore the zone argument to Duration factory methods
- Fix keepLocalTime calculations that span offset changes
- Fixed ISO formatting for dates > 999
- Performance improvements for regex parsing
- Support numberSystem in fromFormat
- Fix validity for bad initial zone specifiers
- Fix cross-month diffs in some scenarios
- Fix time zone parsing when the time zone isn't at the end
- Memoize IANA zone creation
- Add some explicit CDN support to the NPM package
- Add week token to duration ISO support
- Lots of cleanup and test coverage changes
setZone("local")
now returns the defaultZone if it is set- Fixes for the polyfilled build
- Allow 24:00 in ISO (and other) strings
- Fix some bugs with the typecheck functions like
DateTime.isDateTime()
- Fixed handling of some characters in fromFormat literal sections
- Handle string values in object arguments to DateTime methods
- Fixed toRelativeCalendar's handling of zones in the base date
- Fix DateTime#plus() when spanning across AD 100
- Fix low-year handling for IANA zones
DateTime#toLocal()
now uses the default locale- Fix zero duration formatting
- Many documentation fixes
- Fix endOf("day") during DSTs (#399)
- Add `Interval#mapEndpoints (#400)
- Add
DateTime#zone
andInfo.normalizeZone
(#404)
- Add
DateTime#toRelative
andDateTime#toRelativeCalendar
- Allow "UTC" in the zone position of
fromSQL
- Force
isDateTime
andisDuration
to return booleans in all cases
- Trim leading \u200e characters from offset names in Edge 16 and 17
- Add
DateTime.fromSeconds
andDateTime#toSeconds
- Floor the seconds instead of rounding them when outputting the 'X' format
- Change the options to toLocale to override the configuration (the previous options were essentially ignored)
- Fixing merge error that resulted in bad error messages
- midly breaking Rework negative durations
- Fix handling