decentralized-identity / veramo

A JavaScript Framework for Verifiable Data
https://veramo.io
Apache License 2.0
445 stars 133 forks source link

fix(deps): update dependency date-fns to v3 - autoclosed #1310

Closed renovate[bot] closed 9 months ago

renovate[bot] commented 11 months ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
date-fns ^2.30.0 -> ^3.0.0 age adoption passing confidence

Release Notes

date-fns/date-fns (date-fns) ### [`v3.3.1`](https://togithub.com/date-fns/date-fns/releases/tag/v3.3.1) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.3.0...v3.3.1) Kudos to [@​kossnocorp](https://togithub.com/kossnocorp) and [@​fturmel](https://togithub.com/fturmel) for working on the release. ##### Fixed - Fixed DST issue in `getOverlappingDaysInIntervals`, resulting in an inconsistent number of days returned for intervals starting and ending in different DST periods. - Fixed functions incorrectly using `trunc` instead of `round`. The bug was introduced in v3.3.0. The affected functions: `differenceInCalendarDays`, `differenceInCalendarISOWeeks`, `differenceInCalendarWeeks`, `getISOWeek`, `getWeek`, and `getISOWeeksInYear`. ### [`v3.3.0`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v330---2024-01-20) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.2.0...v3.3.0) On this release worked [@​kossnocorp](https://togithub.com/kossnocorp), [@​TheKvikk](https://togithub.com/TheKvikk), [@​fturmel](https://togithub.com/fturmel) and [@​ckcherry23](https://togithub.com/ckcherry23). ##### Fixed - Fixed the bug in `getOverlappingDaysInIntervals` caused by incorrect sorting of interval components that led to 0 for timestamps of different lengths. - Fixed bugs when working with negative numbers caused by using `Math.floor` (`-1.1` → `-2`) instead of `Math.trunc` (`-1.1` → `-1`). Most of the conversion functions (i.e., `hoursToMinutes`) were affected when passing some negative fractional input. Also, some other functions that could be possibly affected by unfortunate timezone/date combinations were fixed. The functions that were affected: `format`, `parse`, `getUnixTime`, `daysToWeeks`, `hoursToMilliseconds`, `hoursToMinutes`, `hoursToSeconds`, `milliseconds`, `minutesToMilliseconds`, `millisecondsToMinutes`, `monthsToYears`, `millisecondsToHours`, `millisecondsToSeconds`, `minutesToHours`, `minutesToSeconds`, `yearsToQuarters`, `yearsToMonths`, `yearsToDays`, `weeksToDays`, `secondsToMinutes`, `secondsToHours`, `quartersToYears`, `quartersToMonths` and `monthsToQuarters`. - [Fixed the Czech locale's `formatDistance` to include `1` in `formatDistance`.](https://togithub.com/date-fns/date-fns/pull/3269) - Fixed `differenceInSeconds` and other functions relying on rounding options that can produce a negative 0. - [Added a preprocessor to the locales API, enabling fixing a long-standing bug in the French locale.](https://togithub.com/date-fns/date-fns/pull/3662) ([#​1391](https://togithub.com/date-fns/date-fns/issues/1391)) - Added missing `yearsToDays` to the FP submodule. - Made functions using rounding methods always return `0` instead of `-0`. ##### Added - [Added `format` alias `formatDate` with corresponding `FormatDateOptions` interface](https://togithub.com/date-fns/date-fns/pull/3653). ### [`v3.2.0`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v320---2024-01-09) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.1.0...v3.2.0) This release is brought to you by [@​kossnocorp](https://togithub.com/kossnocorp), [@​fturmel](https://togithub.com/fturmel), [@​grossbart](https://togithub.com/grossbart), [@​MelvinVermeer](https://togithub.com/MelvinVermeer), and [@​jcarstairs-scottlogic](https://togithub.com/jcarstairs-scottlogic). ##### Fixed - Fixed types compatability with Lodash's `flow` and fp-ts's `pipe`. ([#​3641](https://togithub.com/date-fns/date-fns/issues/3641)) - [Fixed inconsistent behavior of `roundToNearestMinutes`.](https://togithub.com/date-fns/date-fns/pull/3132) ##### Added - Added exports of `format`, `lightFormat`, and `parse` internals that enable 3rd-parties to consume those. ### [`v3.1.0`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v310---2024-01-05) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.6...v3.1.0) This release is brought to you by [@​kossnocorp](https://togithub.com/kossnocorp), [@​makstyle119](https://togithub.com/makstyle119) and [@​dmgawel](https://togithub.com/dmgawel). ##### Fixed - [Fixed the plural form of weeks in Swedish](https://togithub.com/date-fns/date-fns/pull/3448). ##### Added - [Added `yearsToDays` function](https://togithub.com/date-fns/date-fns/pull/3540). - Added warning about using protected tokens like `Y` or `D` without passing a corresponding option. [See #​2950](https://togithub.com/date-fns/date-fns/issues/2950). ### [`v3.0.6`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v306---2023-12-22) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.5...v3.0.6) On this release worked [@​imwh0im](https://togithub.com/imwh0im), [@​jamcry](https://togithub.com/jamcry) and [@​tyrw](https://togithub.com/tyrw). ##### Fixed - [Fixed bug in `areIntervalsOverlapping` caused by incorrect sorting](https://togithub.com/date-fns/date-fns/pull/3628) ([#​3614](https://togithub.com/date-fns/date-fns/issues/3614)) ### [`v3.0.5`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v305---2023-12-21) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.4...v3.0.5) This release is brought to you by [@​goku4199](https://togithub.com/goku4199). ##### Fixed - [Fixed internal `toDate` not processing string arguments properly](https://togithub.com/date-fns/date-fns/pull/3626) ### [`v3.0.4`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v304---2023-12-21) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.3...v3.0.4) This release is brought to you by [@​kossnocorp](https://togithub.com/kossnocorp). ##### Fixed - Fixed isWithinInterval bug caused by incorrectly sorting dates ([#​3623](https://togithub.com/date-fns/date-fns/issues/3623)). ### [`v3.0.3`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v303---2023-12-21) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.2...v3.0.3) ##### Fixed - Rolled back pointing ESM types to the same `d.ts` files. Instead now it copies the content to avoid [the Masquerading as CJS problem](https://togithub.com/arethetypeswrong/arethetypeswrong.github.io/blob/main/docs/problems/FalseCJS.md) reported by "Are the types wrong?". ### [`v3.0.2`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v302---2023-12-21) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.1...v3.0.2) ##### Fixed - Fixed [yet another issue caused by ESM types](https://togithub.com/date-fns/date-fns/issues/3620) by pointing to the same `d.ts` files. - [Added `package.json` to exports](https://togithub.com/date-fns/date-fns/pull/3601) to provide access to tooling. - [Fixed TypeScript 5.4 build break](https://togithub.com/date-fns/date-fns/pull/3598) by using the latest type names. ### [`v3.0.1`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v301---2023-12-20) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v3.0.0...v3.0.1) ##### Fixed - [Fixed an error](https://togithub.com/date-fns/date-fns/pull/3618) in certain environments caused by `d.mts` files exporting only types. ### [`v3.0.0`](https://togithub.com/date-fns/date-fns/blob/HEAD/CHANGELOG.md#v300---2023-12-18) [Compare Source](https://togithub.com/date-fns/date-fns/compare/v2.30.0...v3.0.0) ##### Changed - **BREAKING**: date-fns is now a dual-package with the support of both ESM and CommonJS. The files exports are now explicitly in the `package.json`. The ESM files now have `.mjs` extension. - **BREAKING**: The package now has a flat structure, meaning functions are now named `node_modules/date-fns/add.mjs`, locales are `node_modules/date-fns/locale/enUS.mjs`, etc. - **BREAKING**: Now all file content’s exported via named exports instead of `export default`, which will require change direct imports i.e. `const addDays = require(‘date-fns/addDays’)` to `const { addDays } = require(‘date-fns/addDays’)`. - **BREAKING**: TypeScript types are now completely rewritten, check out the `d.ts` files for more information. - **BREAKING**: `constants` now is not exported via the index, so to import one use `import { daysInYear } from "date-fns/constants";`. It improves compatibility with setups that modularize imports [like Next.js](https://twitter.com/kossnocorp/status/1731181274579325260). - **BREAKING**: Functions now don’t check the number of passed arguments, delegating this task to type checkers. The functions are now slimmer because of this. - **BREAKING** The arguments are not explicitly converted to the target types. Instead, they are passed as is, delegating this task to type checkers. - **BREAKING**: Functions that accept `Interval` arguments now do not throw an error if the start is before the end and handle it as a negative interval. If one of the properties in an `Invalid Date`, these functions also do not throw and handle them as invalid intervals. - `areIntervalsOverlapping` normalize intervals before comparison, so `{ start: a, end: b }` is practically equivalent to `{ start: b, end: a }`. When comparing intervals with one of the properties being `Invalid Date`, the function will return false unless the others are valid and equal, given the `inclusive` option is passed. Otherwise, and when even one of the intervals has both properties invalid, the function will always return `false`. - `getOverlappingDaysInIntervals` now normalizes intervals before comparison, so `{ start: a, end: b }` is practically equivalent to `{ start: b, end: a }`. If any of the intervals’ properties is an `Invalid Date`, the function will always return 0. - `isWithinInterval` now normalizes intervals before comparison, so `{ start: a, end: b }` is practically equivalent to `{ start: b, end: a }`. If any of the intervals’ properties is an `Invalid Date`, the function will always return false. - `intervalToDuration` now returns negative durations for negative intervals. If one or both of the interval properties are invalid, the function will return an empty object. - The eachXOfInterval functions (`eachDayOfInterval`, `eachHourOfInterval`, `eachMinuteOfInterval`, `eachMonthOfInterval`, `eachWeekendOfInterval`, `eachWeekendOfMonth`, `eachWeekendOfYear`, `eachWeekOfInterval`, `eachYearOfInterval`) now return a reversed array if the passed interval’s start is after the end. Invalid properties will result in an empty array. Functions that accept the `step` option now also allow negative, 0, and NaN values and return reversed results if the step is negative and an empty array otherwise. - **BREAKING**: `intervalToDuration` now skips 0 values in the resulting duration, resulting in more compact objects with only relevant properties. - **BREAKING**: `roundToNearestMinutes` now returns `Invalid Date` instead of throwing an error when `nearestTo` option is less than 1 or more than 30. - **BREAKING**: IE is no longer supported. - **BREAKING**: Now all functions use `Math.trunc` rounding method where rounding is required. The behavior is configurable on a per-function basis. - **BREAKING**: Undocumented `onlyNumeric` option was removed from `nn` and `sv` locales. If you relied on it, [please contact me](mailto:koss@nocorp.me). - **BREAKING**: Flow is not supported anymore. If you relied on it, [please contact me](mailto:koss@nocorp.me). - **BREAKING**: The locales now use regular functions instead of the UTC version, which should not break any code unless you used locales directly. ##### Added - All functions that accept date arguments now also accept strings. - All functions now export options interfaces. - Now functions allow passing custom Date extensions like [UTCDate](https://togithub.com/date-fns/utc). They will detect and use the arguments constructor to generate the result of the same class. - `eachMonthOfInterval`, `eachQuarterOfInterval`, `eachWeekOfInterval`, and `eachYearOfInterval` now accept the `step` option like most of the eachXOfInterval functions. - A new `interval` function that validates interval, emulating the v2 interval functions behavior. - `differenceInX` functions now accept options and allow setting up `roundingMethod` that configures how the result is rounded. `Math.trunc` is the default method.

Configuration

📅 Schedule: Branch creation - "before 4am on Monday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

codecov-commenter commented 11 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (b2a63b4) 89.83% compared to head (5f9bfda) 89.83%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## next #1310 +/- ## ======================================= Coverage 89.83% 89.83% ======================================= Files 176 176 Lines 27292 27292 Branches 2166 2166 ======================================= Hits 24517 24517 Misses 2775 2775 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.