diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 1f0ffd707376c8..4ff44126e3a0c5 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1858,10 +1858,8 @@ /types/eslint-plugin-prettier/ @ikatyang @JounQin /types/eslint-plugin-security/ @rhysd @porada /types/eslint-plugin-tailwindcss/ @eagerestwolf -/types/eslint-scope/ @mysticatea /types/eslint-utils/ @JoshuaKGoldberg /types/esm/ @Richienb -/types/espree/ @e6nlaq /types/esprima/ @teppeis @RReverser @peter-scott /types/esprima/v2/ @teppeis @RReverser /types/esprima-walk/ @tswaters @@ -4679,9 +4677,6 @@ /types/map-to-obj/ @JasonHK /types/map-values/ @ChocolateLoverRaj /types/mapbox/ @anahkiasen @Fluccioni -/types/mapbox-gl/ @dobrud @macobo @dmytro-gokun @LiamAttClarke @life777 @amxfonseca @Nosfit @mbullington @pascaloliv @mschilde -/types/mapbox-gl/v1/ @dobrud @macobo @dmytro-gokun @LiamAttClarke @life777 @mklopets @amxfonseca @pascaloliv -/types/mapbox-gl/v2/ @dobrud @macobo @dmytro-gokun @LiamAttClarke @life777 @amxfonseca @Nosfit @mbullington @pascaloliv @mschilde /types/mapbox-gl-leaflet/ @agorshkov23 /types/mapbox__aws-sdk-jest/ @stevensnoeijen /types/mapbox__geo-viewport/ @fnberta @@ -5293,7 +5288,6 @@ /types/notifyjs/ @soundTricker @NateScarlet @eikendev /types/notifyjs-browser/ @bahman616 /types/nova-editor/ @apexskier -/types/nova-editor-node/ @apexskier /types/novnc-core/ @smithkl42 @BendingBender /types/novnc__novnc/ @jakejarvis @ovcharik /types/nowigence-react-simple-maps/ @akashuplers @@ -5310,7 +5304,7 @@ /types/npm-registry-package-info/ @ffflorian /types/npm-user-packages/ @BendingBender /types/npm-whoami/ @JoshuaKGoldberg -/types/npmcli__arborist/ @forivall @russellhaering +/types/npmcli__arborist/ @forivall /types/npmcli__ci-detect/ @aminya /types/npmcli__config/ @forivall /types/npmcli__map-workspaces/ @forivall @@ -7602,7 +7596,6 @@ /types/styled-theming/ @ArjanJ @hieuhlc @tinynumbers /types/stylenames/ @bengry /types/styletron-engine-atomic/ @jh3y -/types/styletron-engine-monolithic/ @tbjgolden /types/styletron-react/ @erictaylor /types/styletron-standard/ @erictaylor /types/stylus/ @SomaticIT @STRd6 diff --git a/.github/actions/setup-for-scripts/action.yml b/.github/actions/setup-for-scripts/action.yml index 47b5be57205314..247ed3637b126a 100644 --- a/.github/actions/setup-for-scripts/action.yml +++ b/.github/actions/setup-for-scripts/action.yml @@ -6,7 +6,7 @@ runs: steps: - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 with: - node-version: '20' + node-version: '24' - uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0 with: run_install: | diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index d81234ecd9f86f..f671a426a85f84 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -37,7 +37,7 @@ jobs: fetch-depth: 0 # Default is 1; need to set to 0 to get the benefits of blob:none. - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 with: - node-version: '20' + node-version: '24' - uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0 @@ -69,7 +69,7 @@ jobs: fetch-depth: 0 # Default is 1; need to set to 0 to get the benefits of blob:none. - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 with: - node-version: '20' + node-version: '24' # forbid symlinks - name: 'Pre-run validation' diff --git a/.github/workflows/pnpm-cache.yml b/.github/workflows/pnpm-cache.yml index 38d7c2d62a2148..3a39d32058d7a3 100644 --- a/.github/workflows/pnpm-cache.yml +++ b/.github/workflows/pnpm-cache.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0 with: - node-version: '20' + node-version: '24' - uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0 - name: Get pnpm cache info diff --git a/dangerfile.ts b/dangerfile.ts index 813e72c9af484f..89bcb25ec23a27 100644 --- a/dangerfile.ts +++ b/dangerfile.ts @@ -1,9 +1,9 @@ import { mangleScopedPackage, suggestionsDir } from "@definitelytyped/utils"; -import { danger, fail, markdown } from "danger"; import cp from "node:child_process"; import fs from "node:fs"; import os from "node:os"; import path from "node:path"; +import { danger, fail, markdown } from "risk"; const lines: string[] = []; const missingProperty = /module exports a property named '(.+?)', which is missing/; diff --git a/package.json b/package.json index f3001271aa3546..83ceda64174d18 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,6 @@ "@definitelytyped/header-parser": "latest", "@definitelytyped/typescript-versions": "latest", "@definitelytyped/utils": "latest", - "danger": "^13.0.5", "dprint": "^0.49.0", "eslint-plugin-jsdoc": "^44.2.7", "husky": "^8.0.3", @@ -44,6 +43,7 @@ "remark-cli": "^12.0.0", "remark-gfm": "^4.0.0", "remark-validate-links": "^13.0.0", + "risk": "^0.0.4", "typescript": "next" }, "type": "module" diff --git a/types/lodash/common/array.d.ts b/types/lodash/common/array.d.ts index 54e76333f5178a..a33a90316b18b1 100644 --- a/types/lodash/common/array.d.ts +++ b/types/lodash/common/array.d.ts @@ -1784,6 +1784,28 @@ declare module "../index" { * @param array The array of grouped elements to process. * @return Returns the new array of regrouped elements. */ + unzip(array: Array<[T1, T2]>): [T1[], T2[]]; + /** + * @see _.unzip + */ + unzip( + array: Array<[T1, T2, T3]>, + ): [T1[], T2[], T3[]]; + /** + * @see _.unzip + */ + unzip( + array: Array<[T1, T2, T3, T4]>, + ): [T1[], T2[], T3[], T4[]]; + /** + * @see _.unzip + */ + unzip( + array: Array<[T1, T2, T3, T4, T5]>, + ): [T1[], T2[], T3[], T4[], T5[]]; + /** + * @see _.unzip + */ unzip(array: T[][] | List> | null | undefined): T[][]; } interface Collection { diff --git a/types/lodash/lodash-tests.ts b/types/lodash/lodash-tests.ts index b68e541f481522..562dec48a6ddb6 100644 --- a/types/lodash/lodash-tests.ts +++ b/types/lodash/lodash-tests.ts @@ -1480,6 +1480,10 @@ _.chain([1, 2, 3, 4]).unshift(5, 6); // $ExpectType CollectionChain _(list).unzip(); // $ExpectType Collection _.chain(list).unzip(); // $ExpectType CollectionChain fp.unzip(list); // $ExpectType AbcObject[][] + + _.unzip([[1, 'a'], [3, 'b'], [5, 'c']]); // $ExpectType [number[], string[]] + _.unzip([['a', 1, true], ['b', 2, false]]); // $ExpectType [string[], number[], boolean[]] + _.unzip([[1, undefined], [2, 'a']]); // $ExpectType [number[], (string | undefined)[]] } // _.unzipWith