Skip to content

Commit 79a9488

Browse files
Copilotnwalters512
andauthored
Add CI check for duplicate dependencies (#194)
* Initial plan * Run yarn dedupe to remove duplicate dependencies Co-authored-by: nwalters512 <1476544+nwalters512@users.noreply.github.com> * Add CI step to check for duplicate dependencies with yarn dedupe Co-authored-by: nwalters512 <1476544+nwalters512@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: nwalters512 <1476544+nwalters512@users.noreply.github.com>
1 parent d59b021 commit 79a9488

File tree

2 files changed

+18
-231
lines changed

2 files changed

+18
-231
lines changed

.github/workflows/lint.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ jobs:
2525
- name: Install dependencies
2626
run: yarn install --immutable
2727

28+
- name: Check for duplicate dependencies
29+
run: yarn dedupe --check
30+
2831
- name: Run TypeScript type check
2932
run: yarn tsc --noEmit
3033

yarn.lock

Lines changed: 15 additions & 231 deletions
Original file line numberDiff line numberDiff line change
@@ -1000,16 +1000,7 @@ __metadata:
10001000
languageName: node
10011001
linkType: hard
10021002

1003-
"@types/node@npm:*":
1004-
version: 22.13.1
1005-
resolution: "@types/node@npm:22.13.1"
1006-
dependencies:
1007-
undici-types: "npm:~6.20.0"
1008-
checksum: 10c0/d4e56d41d8bd53de93da2651c0a0234e330bd7b1b6d071b1a94bd3b5ee2d9f387519e739c52a15c1faa4fb9d97e825b848421af4b2e50e6518011e7adb4a34b7
1009-
languageName: node
1010-
linkType: hard
1011-
1012-
"@types/node@npm:^24.9.2":
1003+
"@types/node@npm:*, @types/node@npm:^24.9.2":
10131004
version: 24.9.2
10141005
resolution: "@types/node@npm:24.9.2"
10151006
dependencies:
@@ -1173,15 +1164,6 @@ __metadata:
11731164
languageName: node
11741165
linkType: hard
11751166

1176-
"acorn@npm:^8.14.0":
1177-
version: 8.14.0
1178-
resolution: "acorn@npm:8.14.0"
1179-
bin:
1180-
acorn: bin/acorn
1181-
checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7
1182-
languageName: node
1183-
linkType: hard
1184-
11851167
"acorn@npm:^8.15.0":
11861168
version: 8.15.0
11871169
resolution: "acorn@npm:8.15.0"
@@ -1236,21 +1218,7 @@ __metadata:
12361218
languageName: node
12371219
linkType: hard
12381220

1239-
"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8":
1240-
version: 3.1.8
1241-
resolution: "array-includes@npm:3.1.8"
1242-
dependencies:
1243-
call-bind: "npm:^1.0.7"
1244-
define-properties: "npm:^1.2.1"
1245-
es-abstract: "npm:^1.23.2"
1246-
es-object-atoms: "npm:^1.0.0"
1247-
get-intrinsic: "npm:^1.2.4"
1248-
is-string: "npm:^1.0.7"
1249-
checksum: 10c0/5b1004d203e85873b96ddc493f090c9672fd6c80d7a60b798da8a14bff8a670ff95db5aafc9abc14a211943f05220dacf8ea17638ae0af1a6a47b8c0b48ce370
1250-
languageName: node
1251-
linkType: hard
1252-
1253-
"array-includes@npm:^3.1.9":
1221+
"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8, array-includes@npm:^3.1.9":
12541222
version: 3.1.9
12551223
resolution: "array-includes@npm:3.1.9"
12561224
dependencies:
@@ -1490,17 +1458,7 @@ __metadata:
14901458
languageName: node
14911459
linkType: hard
14921460

1493-
"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3":
1494-
version: 1.0.3
1495-
resolution: "call-bound@npm:1.0.3"
1496-
dependencies:
1497-
call-bind-apply-helpers: "npm:^1.0.1"
1498-
get-intrinsic: "npm:^1.2.6"
1499-
checksum: 10c0/45257b8e7621067304b30dbd638e856cac913d31e8e00a80d6cf172911acd057846572d0b256b45e652d515db6601e2974a1b1a040e91b4fc36fb3dd86fa69cf
1500-
languageName: node
1501-
linkType: hard
1502-
1503-
"call-bound@npm:^1.0.4":
1461+
"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4":
15041462
version: 1.0.4
15051463
resolution: "call-bound@npm:1.0.4"
15061464
dependencies:
@@ -1517,14 +1475,7 @@ __metadata:
15171475
languageName: node
15181476
linkType: hard
15191477

1520-
"caniuse-lite@npm:^1.0.30001579":
1521-
version: 1.0.30001699
1522-
resolution: "caniuse-lite@npm:1.0.30001699"
1523-
checksum: 10c0/e87b3a0602c3124131f6a21f1eb262378e17a2ee3089e3c472ac8b9caa85cf7d6a219655379302c29c6f10a74051f2a712639d7f98ee0444c73fefcbaf25d519
1524-
languageName: node
1525-
linkType: hard
1526-
1527-
"caniuse-lite@npm:^1.0.30001702, caniuse-lite@npm:^1.0.30001751":
1478+
"caniuse-lite@npm:^1.0.30001579, caniuse-lite@npm:^1.0.30001702, caniuse-lite@npm:^1.0.30001751":
15281479
version: 1.0.30001751
15291480
resolution: "caniuse-lite@npm:1.0.30001751"
15301481
checksum: 10c0/c3f2d448f3569004ace160fd9379ea0def8e7a7bc6e65611baadb57d24e1f418258647a6210e46732419f5663e2356c22aa841f92449dd3849eb6471bb7ad592
@@ -1652,7 +1603,7 @@ __metadata:
16521603
languageName: node
16531604
linkType: hard
16541605

1655-
"debug@npm:^4.1.0":
1606+
"debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.7":
16561607
version: 4.4.3
16571608
resolution: "debug@npm:4.4.3"
16581609
dependencies:
@@ -1664,18 +1615,6 @@ __metadata:
16641615
languageName: node
16651616
linkType: hard
16661617

1667-
"debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.7":
1668-
version: 4.4.0
1669-
resolution: "debug@npm:4.4.0"
1670-
dependencies:
1671-
ms: "npm:^2.1.3"
1672-
peerDependenciesMeta:
1673-
supports-color:
1674-
optional: true
1675-
checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de
1676-
languageName: node
1677-
linkType: hard
1678-
16791618
"deep-is@npm:^0.1.3":
16801619
version: 0.1.4
16811620
resolution: "deep-is@npm:0.1.4"
@@ -1746,17 +1685,7 @@ __metadata:
17461685
languageName: node
17471686
linkType: hard
17481687

1749-
"enhanced-resolve@npm:^5.15.0":
1750-
version: 5.18.1
1751-
resolution: "enhanced-resolve@npm:5.18.1"
1752-
dependencies:
1753-
graceful-fs: "npm:^4.2.4"
1754-
tapable: "npm:^2.2.0"
1755-
checksum: 10c0/4cffd9b125225184e2abed9fdf0ed3dbd2224c873b165d0838fd066cde32e0918626cba2f1f4bf6860762f13a7e2364fd89a82b99566be2873d813573ac71846
1756-
languageName: node
1757-
linkType: hard
1758-
1759-
"enhanced-resolve@npm:^5.18.3":
1688+
"enhanced-resolve@npm:^5.15.0, enhanced-resolve@npm:^5.18.3":
17601689
version: 5.18.3
17611690
resolution: "enhanced-resolve@npm:5.18.3"
17621691
dependencies:
@@ -1766,66 +1695,7 @@ __metadata:
17661695
languageName: node
17671696
linkType: hard
17681697

1769-
"es-abstract@npm:^1.17.5, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9":
1770-
version: 1.23.9
1771-
resolution: "es-abstract@npm:1.23.9"
1772-
dependencies:
1773-
array-buffer-byte-length: "npm:^1.0.2"
1774-
arraybuffer.prototype.slice: "npm:^1.0.4"
1775-
available-typed-arrays: "npm:^1.0.7"
1776-
call-bind: "npm:^1.0.8"
1777-
call-bound: "npm:^1.0.3"
1778-
data-view-buffer: "npm:^1.0.2"
1779-
data-view-byte-length: "npm:^1.0.2"
1780-
data-view-byte-offset: "npm:^1.0.1"
1781-
es-define-property: "npm:^1.0.1"
1782-
es-errors: "npm:^1.3.0"
1783-
es-object-atoms: "npm:^1.0.0"
1784-
es-set-tostringtag: "npm:^2.1.0"
1785-
es-to-primitive: "npm:^1.3.0"
1786-
function.prototype.name: "npm:^1.1.8"
1787-
get-intrinsic: "npm:^1.2.7"
1788-
get-proto: "npm:^1.0.0"
1789-
get-symbol-description: "npm:^1.1.0"
1790-
globalthis: "npm:^1.0.4"
1791-
gopd: "npm:^1.2.0"
1792-
has-property-descriptors: "npm:^1.0.2"
1793-
has-proto: "npm:^1.2.0"
1794-
has-symbols: "npm:^1.1.0"
1795-
hasown: "npm:^2.0.2"
1796-
internal-slot: "npm:^1.1.0"
1797-
is-array-buffer: "npm:^3.0.5"
1798-
is-callable: "npm:^1.2.7"
1799-
is-data-view: "npm:^1.0.2"
1800-
is-regex: "npm:^1.2.1"
1801-
is-shared-array-buffer: "npm:^1.0.4"
1802-
is-string: "npm:^1.1.1"
1803-
is-typed-array: "npm:^1.1.15"
1804-
is-weakref: "npm:^1.1.0"
1805-
math-intrinsics: "npm:^1.1.0"
1806-
object-inspect: "npm:^1.13.3"
1807-
object-keys: "npm:^1.1.1"
1808-
object.assign: "npm:^4.1.7"
1809-
own-keys: "npm:^1.0.1"
1810-
regexp.prototype.flags: "npm:^1.5.3"
1811-
safe-array-concat: "npm:^1.1.3"
1812-
safe-push-apply: "npm:^1.0.0"
1813-
safe-regex-test: "npm:^1.1.0"
1814-
set-proto: "npm:^1.0.0"
1815-
string.prototype.trim: "npm:^1.2.10"
1816-
string.prototype.trimend: "npm:^1.0.9"
1817-
string.prototype.trimstart: "npm:^1.0.8"
1818-
typed-array-buffer: "npm:^1.0.3"
1819-
typed-array-byte-length: "npm:^1.0.3"
1820-
typed-array-byte-offset: "npm:^1.0.4"
1821-
typed-array-length: "npm:^1.0.7"
1822-
unbox-primitive: "npm:^1.1.0"
1823-
which-typed-array: "npm:^1.1.18"
1824-
checksum: 10c0/1de229c9e08fe13c17fe5abaec8221545dfcd57e51f64909599a6ae896df84b8fd2f7d16c60cb00d7bf495b9298ca3581aded19939d4b7276854a4b066f8422b
1825-
languageName: node
1826-
linkType: hard
1827-
1828-
"es-abstract@npm:^1.24.0":
1698+
"es-abstract@npm:^1.17.5, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0":
18291699
version: 1.24.0
18301700
resolution: "es-abstract@npm:1.24.0"
18311701
dependencies:
@@ -2165,13 +2035,6 @@ __metadata:
21652035
languageName: node
21662036
linkType: hard
21672037

2168-
"eslint-visitor-keys@npm:^4.2.0":
2169-
version: 4.2.0
2170-
resolution: "eslint-visitor-keys@npm:4.2.0"
2171-
checksum: 10c0/2ed81c663b147ca6f578312919483eb040295bbab759e5a371953456c636c5b49a559883e2677112453728d66293c0a4c90ab11cab3428cf02a0236d2e738269
2172-
languageName: node
2173-
linkType: hard
2174-
21752038
"eslint-visitor-keys@npm:^4.2.1":
21762039
version: 4.2.1
21772040
resolution: "eslint-visitor-keys@npm:4.2.1"
@@ -2228,18 +2091,7 @@ __metadata:
22282091
languageName: node
22292092
linkType: hard
22302093

2231-
"espree@npm:^10.0.1":
2232-
version: 10.3.0
2233-
resolution: "espree@npm:10.3.0"
2234-
dependencies:
2235-
acorn: "npm:^8.14.0"
2236-
acorn-jsx: "npm:^5.3.2"
2237-
eslint-visitor-keys: "npm:^4.2.0"
2238-
checksum: 10c0/272beeaca70d0a1a047d61baff64db04664a33d7cfb5d144f84bc8a5c6194c6c8ebe9cc594093ca53add88baa23e59b01e69e8a0160ab32eac570482e165c462
2239-
languageName: node
2240-
linkType: hard
2241-
2242-
"espree@npm:^10.4.0":
2094+
"espree@npm:^10.0.1, espree@npm:^10.4.0":
22432095
version: 10.4.0
22442096
resolution: "espree@npm:10.4.0"
22452097
dependencies:
@@ -2452,25 +2304,7 @@ __metadata:
24522304
languageName: node
24532305
linkType: hard
24542306

2455-
"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7":
2456-
version: 1.2.7
2457-
resolution: "get-intrinsic@npm:1.2.7"
2458-
dependencies:
2459-
call-bind-apply-helpers: "npm:^1.0.1"
2460-
es-define-property: "npm:^1.0.1"
2461-
es-errors: "npm:^1.3.0"
2462-
es-object-atoms: "npm:^1.0.0"
2463-
function-bind: "npm:^1.1.2"
2464-
get-proto: "npm:^1.0.0"
2465-
gopd: "npm:^1.2.0"
2466-
has-symbols: "npm:^1.1.0"
2467-
hasown: "npm:^2.0.2"
2468-
math-intrinsics: "npm:^1.1.0"
2469-
checksum: 10c0/b475dec9f8bff6f7422f51ff4b7b8d0b68e6776ee83a753c1d627e3008c3442090992788038b37eff72e93e43dceed8c1acbdf2d6751672687ec22127933080d
2470-
languageName: node
2471-
linkType: hard
2472-
2473-
"get-intrinsic@npm:^1.3.0":
2307+
"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0":
24742308
version: 1.3.1
24752309
resolution: "get-intrinsic@npm:1.3.1"
24762310
dependencies:
@@ -2893,7 +2727,7 @@ __metadata:
28932727
languageName: node
28942728
linkType: hard
28952729

2896-
"is-string@npm:^1.0.7, is-string@npm:^1.1.1":
2730+
"is-string@npm:^1.1.1":
28972731
version: 1.1.1
28982732
resolution: "is-string@npm:1.1.1"
28992733
dependencies:
@@ -2930,7 +2764,7 @@ __metadata:
29302764
languageName: node
29312765
linkType: hard
29322766

2933-
"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0, is-weakref@npm:^1.1.1":
2767+
"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1":
29342768
version: 1.1.1
29352769
resolution: "is-weakref@npm:1.1.1"
29362770
dependencies:
@@ -3342,7 +3176,7 @@ __metadata:
33423176
languageName: node
33433177
linkType: hard
33443178

3345-
"nanoid@npm:^3.3.11":
3179+
"nanoid@npm:^3.3.11, nanoid@npm:^3.3.6":
33463180
version: 3.3.11
33473181
resolution: "nanoid@npm:3.3.11"
33483182
bin:
@@ -3351,15 +3185,6 @@ __metadata:
33513185
languageName: node
33523186
linkType: hard
33533187

3354-
"nanoid@npm:^3.3.6, nanoid@npm:^3.3.8":
3355-
version: 3.3.8
3356-
resolution: "nanoid@npm:3.3.8"
3357-
bin:
3358-
nanoid: bin/nanoid.cjs
3359-
checksum: 10c0/4b1bb29f6cfebf3be3bc4ad1f1296fb0a10a3043a79f34fbffe75d1621b4318319211cd420549459018ea3592f0d2f159247a6f874911d6d26eaaadda2478120
3360-
languageName: node
3361-
linkType: hard
3362-
33633188
"natural-compare@npm:^1.4.0":
33643189
version: 1.4.0
33653190
resolution: "natural-compare@npm:1.4.0"
@@ -3660,18 +3485,7 @@ __metadata:
36603485
languageName: node
36613486
linkType: hard
36623487

3663-
"postcss@npm:^8.4.41":
3664-
version: 8.5.2
3665-
resolution: "postcss@npm:8.5.2"
3666-
dependencies:
3667-
nanoid: "npm:^3.3.8"
3668-
picocolors: "npm:^1.1.1"
3669-
source-map-js: "npm:^1.2.1"
3670-
checksum: 10c0/3044d49bc725029ab62292e8bf9849741251b95f3b754e191bf8b4025414d40ec3b4ac05c5a563d4b50060b5c8e96683eb4d783d8d8fa3867eb7b763cbe66127
3671-
languageName: node
3672-
linkType: hard
3673-
3674-
"postcss@npm:^8.5.6":
3488+
"postcss@npm:^8.4.41, postcss@npm:^8.5.6":
36753489
version: 8.5.6
36763490
resolution: "postcss@npm:8.5.6"
36773491
dependencies:
@@ -3938,16 +3752,7 @@ __metadata:
39383752
languageName: node
39393753
linkType: hard
39403754

3941-
"semver@npm:^7.6.0, semver@npm:^7.6.3":
3942-
version: 7.7.1
3943-
resolution: "semver@npm:7.7.1"
3944-
bin:
3945-
semver: bin/semver.js
3946-
checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
3947-
languageName: node
3948-
linkType: hard
3949-
3950-
"semver@npm:^7.7.2":
3755+
"semver@npm:^7.6.0, semver@npm:^7.6.3, semver@npm:^7.7.2":
39513756
version: 7.7.3
39523757
resolution: "semver@npm:7.7.3"
39533758
bin:
@@ -4452,13 +4257,6 @@ __metadata:
44524257
languageName: node
44534258
linkType: hard
44544259

4455-
"undici-types@npm:~6.20.0":
4456-
version: 6.20.0
4457-
resolution: "undici-types@npm:6.20.0"
4458-
checksum: 10c0/68e659a98898d6a836a9a59e6adf14a5d799707f5ea629433e025ac90d239f75e408e2e5ff086afc3cace26f8b26ee52155293564593fbb4a2f666af57fc59bf
4459-
languageName: node
4460-
linkType: hard
4461-
44624260
"undici-types@npm:~7.16.0":
44634261
version: 7.16.0
44644262
resolution: "undici-types@npm:7.16.0"
@@ -4542,21 +4340,7 @@ __metadata:
45424340
languageName: node
45434341
linkType: hard
45444342

4545-
"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.18":
4546-
version: 1.1.18
4547-
resolution: "which-typed-array@npm:1.1.18"
4548-
dependencies:
4549-
available-typed-arrays: "npm:^1.0.7"
4550-
call-bind: "npm:^1.0.8"
4551-
call-bound: "npm:^1.0.3"
4552-
for-each: "npm:^0.3.3"
4553-
gopd: "npm:^1.2.0"
4554-
has-tostringtag: "npm:^1.0.2"
4555-
checksum: 10c0/0412f4a91880ca1a2a63056187c2e3de6b129b2b5b6c17bc3729f0f7041047ae48fb7424813e51506addb2c97320003ee18b8c57469d2cde37983ef62126143c
4556-
languageName: node
4557-
linkType: hard
4558-
4559-
"which-typed-array@npm:^1.1.19":
4343+
"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19":
45604344
version: 1.1.19
45614345
resolution: "which-typed-array@npm:1.1.19"
45624346
dependencies:

0 commit comments

Comments
 (0)