commit-sheriff 1.6.1 → 1.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -5
- package/bin/commit-sheriff.js +10 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -310,16 +310,22 @@ It installs whatever it needs automatically (via `npm install --save-dev`, same
|
|
|
310
310
|
`lint-staged`/`eslint`/`prettier`), skipping anything already present:
|
|
311
311
|
|
|
312
312
|
```bash
|
|
313
|
-
npm install --save-dev eslint@^9 typescript @typescript-eslint/parser \
|
|
314
|
-
@typescript-eslint/eslint-plugin @eslint/js @eslint/eslintrc eslint-plugin-sonarjs \
|
|
313
|
+
npm install --save-dev eslint@^9 typescript@^5 @typescript-eslint/parser \
|
|
314
|
+
@typescript-eslint/eslint-plugin @eslint/js@^9 @eslint/eslintrc eslint-plugin-sonarjs \
|
|
315
315
|
eslint-plugin-import eslint-plugin-prettier eslint-config-prettier eslint-plugin-react \
|
|
316
316
|
eslint-plugin-react-hooks eslint-plugin-jsx-a11y eslint-plugin-testing-library \
|
|
317
317
|
@vitest/eslint-plugin eslint-plugin-jest prettier
|
|
318
318
|
```
|
|
319
319
|
|
|
320
|
-
`eslint`
|
|
321
|
-
|
|
322
|
-
|
|
320
|
+
`eslint`, `@eslint/js`, and `typescript` are pinned on purpose rather than left to resolve to
|
|
321
|
+
whatever `latest` is — the plugin ecosystem here regularly lags behind both. Two concrete
|
|
322
|
+
conflicts this has already caused: `@eslint/js`'s own `latest` declares a hard peer on
|
|
323
|
+
`eslint@^10`, so leaving it unpinned next to `eslint@^9` is an instant `ERESOLVE`; and
|
|
324
|
+
`@typescript-eslint/eslint-plugin` currently only supports `typescript` up to `<6.1.0`, so an
|
|
325
|
+
unpinned `typescript` install (which resolves to its own `latest`, e.g. `7.x`) crashes plugin
|
|
326
|
+
loading with "typescript-eslint does not support TS 7.0". Pinning `eslint`/`@eslint/js` together
|
|
327
|
+
to `^9` and `typescript` to `^5` keeps the whole toolchain on versions that are actually
|
|
328
|
+
compatible with each other today.
|
|
323
329
|
|
|
324
330
|
If the install fails (offline, registry issue, etc.), it prints this exact command so you can run
|
|
325
331
|
it yourself.
|
package/bin/commit-sheriff.js
CHANGED
|
@@ -202,11 +202,19 @@ function init() {
|
|
|
202
202
|
const ESLINT_REACT_DEV_DEPS = [
|
|
203
203
|
// Pinned (not left to resolve to "latest") — see the comment on the eslint@^9 install in
|
|
204
204
|
// mergeConfig() for why: the plugin ecosystem here regularly lags behind ESLint's newest major.
|
|
205
|
+
// @eslint/js in particular is versioned in lockstep with ESLint core and its `latest` (10.x)
|
|
206
|
+
// declares a hard peerDependency on eslint@^10 — installing it unpinned alongside eslint@^9
|
|
207
|
+
// produces an immediate ERESOLVE conflict, which is exactly what this pin prevents.
|
|
205
208
|
"eslint@^9",
|
|
206
|
-
|
|
209
|
+
// Same lag problem, different package: @typescript-eslint/eslint-plugin@8.65.0 declares
|
|
210
|
+
// `typescript: ">=4.8.4 <6.1.0"` as a peer, but unpinned "typescript" resolves to npm's
|
|
211
|
+
// "latest" (7.x once TypeScript ships a 7.0) — that's outside the supported range and
|
|
212
|
+
// crashes plugin loading with "typescript-eslint does not support TS 7.0". Pinning to the
|
|
213
|
+
// latest 5.x line keeps us inside the range the plugin actually supports today.
|
|
214
|
+
"typescript@^5",
|
|
207
215
|
"@typescript-eslint/parser",
|
|
208
216
|
"@typescript-eslint/eslint-plugin",
|
|
209
|
-
"@eslint/js",
|
|
217
|
+
"@eslint/js@^9",
|
|
210
218
|
"@eslint/eslintrc",
|
|
211
219
|
"eslint-plugin-sonarjs",
|
|
212
220
|
"eslint-plugin-import",
|