diff --git a/docs/upgrading-dependencies.md b/docs/upgrading-dependencies.md
index 0bcc543..63eeb37 100644
--- a/docs/upgrading-dependencies.md
+++ b/docs/upgrading-dependencies.md
@@ -5,14 +5,6 @@ maintainers.
## Process
-To cleanly upgrade dependencies, you should have `yarn-deduplicate` installed:
-
-```sh
-yarn global add yarn-deduplicate
-```
-
-Then, follow along these steps:
-
1. First commit: Run `yarn upgrade-interactive --latest`, go through the list,
press space on all yellow and green entries, and confirm with
enter. This should always be fine and not break anything (unless
@@ -29,7 +21,7 @@ Then, follow along these steps:
(breaking) `dependencies`. Look up what the exact breaking change is and how
it affects the project. With one commit each, upgrade the dependency and fix
whatever (if anything) it broke as in *step 2*.
-6. Run `yarn-deduplicate` and then `yarn` to keep only the newest required
+6. Run `yarn deduplicate` and then `yarn` to keep only the newest required
versions of dependencies and hopefully address all security issues the
[Dependabot](https://github.com/jannis-baum/Vivify/security/dependabot) had
found.
diff --git a/package.json b/package.json
index b167747..9810668 100644
--- a/package.json
+++ b/package.json
@@ -7,7 +7,8 @@
"viv": "VIV_PORT=3000 node --loader ts-node/esm src/app.ts",
"lint": "eslint src static",
"lint-markdown": "markdownlint-cli2 --config .github/.markdownlint-cli2.yaml",
- "test": "node --loader ts-node/esm tests/unit/cli.ts"
+ "test": "node --loader ts-node/esm tests/unit/cli.ts",
+ "deduplicate": "yarn-deduplicate"
},
"type": "module",
"dependencies": {
@@ -63,6 +64,7 @@
"ts-node": "^10.9.2",
"typescript": "^5.7.3",
"webpack": "^5.97.1",
- "webpack-cli": "^6.0.1"
+ "webpack-cli": "^6.0.1",
+ "yarn-deduplicate": "^6.0.2"
}
}
diff --git a/yarn.lock b/yarn.lock
index 3d8b0f4..22f4b36 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -915,6 +915,11 @@
resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
+"@yarnpkg/lockfile@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
+ integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
+
accepts@~1.3.8:
version "1.3.8"
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
@@ -1207,6 +1212,11 @@ commander@7:
resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
+commander@^10.0.1:
+ version "10.0.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06"
+ integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==
+
commander@^12.1.0:
version "12.1.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3"
@@ -3115,6 +3125,11 @@ semver@^7.3.4, semver@^7.5.3, semver@^7.6.0:
resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143"
integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==
+semver@^7.5.0:
+ version "7.7.1"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f"
+ integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==
+
send@0.19.0:
version "0.19.0"
resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8"
@@ -3435,6 +3450,11 @@ ts-node@^10.9.2:
v8-compile-cache-lib "^3.0.1"
yn "3.1.1"
+tslib@^2.5.0:
+ version "2.8.1"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
+ integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
+
tslib@^2.6.2:
version "2.7.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01"
@@ -3670,6 +3690,16 @@ ws@^8.18.0:
resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc"
integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==
+yarn-deduplicate@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/yarn-deduplicate/-/yarn-deduplicate-6.0.2.tgz#63498d2d4c3a8567e992a994ce0ab51aa5681f2e"
+ integrity sha512-Efx4XEj82BgbRJe5gvQbZmEO7pU5DgHgxohYZp98/+GwPqdU90RXtzvHirb7hGlde0sQqk5G3J3Woyjai8hVqA==
+ dependencies:
+ "@yarnpkg/lockfile" "^1.1.0"
+ commander "^10.0.1"
+ semver "^7.5.0"
+ tslib "^2.5.0"
+
yn@3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"