pipework 0.272.0 → 0.273.0
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/CHANGELOG.md +4 -0
- package/REFERENCE.md +1 -1
- package/dist/lint/resolver.js +13 -9
- package/dist/lint/resolver.js.map +1 -1
- package/package.json +1 -1
- package/src/lint/resolver.ts +14 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.273.0
|
|
4
|
+
|
|
5
|
+
- **Fixed: `lint.modules['.']` reaches files at the workspace root** (#946). The root `eslint.config.js` ignored a `lint.modules['.']` entry (also `''`, `'./'`), so its `include` files were listed by `pipework lint --list-files` and handed to eslint, which refused them as unmatched. The entry's `include`, `rules` and `configs` now apply at the root; modules keep their own globs.
|
|
6
|
+
|
|
3
7
|
## 0.272.0
|
|
4
8
|
|
|
5
9
|
- **Added: inbound webhooks can opt out of cancel-on-disconnect** (#948). `webhook.defineInbound` and `mail.snsWebhook` hardcoded their route, so a receiver could not use the `.route(..., { cancelOnDisconnect: false })` option added in 0.269.0. Both configs now accept `cancelOnDisconnect`, passed to the route; `false` lets the handler run to completion and commit after the sender hangs up. The default is unchanged (`true`).
|
package/REFERENCE.md
CHANGED
|
@@ -601,7 +601,7 @@ Thrown for configuration problems — includes a suggestion for how to fix.
|
|
|
601
601
|
|
|
602
602
|
`pipework lint [eslint args and files...]` runs eslint in the current directory with the config, include globs, ignores and eslint binary `pipework check` uses for that module (at the workspace root: the whole workspace). With no files named it lints the module's include globs; with files named it lints only those. Every other argument goes to eslint verbatim, so `pipework lint --format json --output-file r.json src/a.ts` writes `r.json` for `src/a.ts` alone. The exit code is eslint's.
|
|
603
603
|
|
|
604
|
-
`pipework lint --list-files [--shard i/n]` prints, one per line and sorted, the repo-relative files `pipework check`'s lint pass covers, and lints nothing. The set comes from `pipework.config.ts` (`lint.include`, `lint.modules.<path>.include`, the declared modules), not from a package `lint` script, so a runner that shards or caches lint per file derives its population from the lint configuration. It is the same population `check` lints: each module's include globs, plus the files at the workspace root outside every module (`lint.include` globs applied at the root, such as `*.ts` and `scripts/**/*.ts`), which belong to shard 1. `--shard i/n` splits modules as `check --shard` does. `--list-files` takes no other argument and exits 1 naming one it is given.
|
|
604
|
+
`pipework lint --list-files [--shard i/n]` prints, one per line and sorted, the repo-relative files `pipework check`'s lint pass covers, and lints nothing. The set comes from `pipework.config.ts` (`lint.include`, `lint.modules.<path>.include`, the declared modules), not from a package `lint` script, so a runner that shards or caches lint per file derives its population from the lint configuration. It is the same population `check` lints: each module's include globs, plus the files at the workspace root outside every module (`lint.include` globs applied at the root, such as `*.ts` and `scripts/**/*.ts`), which belong to shard 1. `lint.modules['.'].include` names the root's files without changing the modules': `check`, the list and the generated root `eslint.config.js` all read it, and `rules`/`configs` under `'.'` apply to those root files. `--shard i/n` splits modules as `check --shard` does. `--list-files` takes no other argument and exits 1 naming one it is given.
|
|
605
605
|
|
|
606
606
|
Generated module manifests declare `"lint": "pipework lint"` and `"type-check": "tsc --noEmit -p tsconfig.check.json"` (the config `check` type-checks with, which resolves sibling packages from source), so `pnpm -C <module> run lint --format json --output-file r.json <file>` gives `check`'s verdict for that file. `test` stays `vitest run`: `pipework test` provisions test databases and project filters that a bare `vitest run` in a module does not. Run `pipework sync` (or `pipework install`) to regenerate the manifests and `eslint.config.js`.
|
|
607
607
|
|
package/dist/lint/resolver.js
CHANGED
|
@@ -94,6 +94,10 @@ function moduleEntries(modules, configDir) {
|
|
|
94
94
|
}
|
|
95
95
|
return entries;
|
|
96
96
|
}
|
|
97
|
+
// `.`, `./` and `` all key the workspace root in `lint.modules`.
|
|
98
|
+
function rootKey(path) {
|
|
99
|
+
return path.replace(/^\.\/+/, '').replace(/\/+$/, '').replace(/^\.$/, '') === '';
|
|
100
|
+
}
|
|
97
101
|
function prefixGlob(prefix, glob) {
|
|
98
102
|
const negated = glob.startsWith('!');
|
|
99
103
|
const bare = (negated ? glob.slice(1) : glob).replace(/^\.\//, '');
|
|
@@ -165,17 +169,17 @@ function resolveModuleOverride(modules, configDir, start) {
|
|
|
165
169
|
if (modules === undefined) {
|
|
166
170
|
return { rules: {}, configs: [] };
|
|
167
171
|
}
|
|
168
|
-
// `findConfig` only walks upward, so `configDir` is always an ancestor of
|
|
169
|
-
//
|
|
170
|
-
//
|
|
172
|
+
// `findConfig` only walks upward, so `configDir` is always an ancestor of `start`.
|
|
173
|
+
// An empty `rel` means `start` is the repo root (the generated root eslint.config.js):
|
|
174
|
+
// only the entry keyed `.` (or `./`, ``) applies there; other modules are handled by
|
|
175
|
+
// `resolveBelowOverrides`.
|
|
171
176
|
const rel = relative(configDir, start);
|
|
172
|
-
if (rel === '') {
|
|
173
|
-
return { rules: {}, configs: [] };
|
|
174
|
-
}
|
|
175
177
|
const entries = moduleEntries(modules, configDir);
|
|
176
|
-
const matching =
|
|
177
|
-
.filter(e =>
|
|
178
|
-
|
|
178
|
+
const matching = rel === ''
|
|
179
|
+
? entries.filter(e => rootKey(e.path))
|
|
180
|
+
: entries
|
|
181
|
+
.filter(e => rel === e.path || rel.startsWith(e.path + '/'))
|
|
182
|
+
.sort((a, b) => a.path.length - b.path.length);
|
|
179
183
|
let rules = {};
|
|
180
184
|
let configs = [];
|
|
181
185
|
let include;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/lint/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGxD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAY;IAClD,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEpC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACrC,YAAY,CAAC,SAAS,CAAC,CAAA;IACvB,sBAAsB,EAAE,CAAA;IAExB,IAAI,QAAkB,CAAA;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,IAAI,KAAK,CACb,gFAAgF;YAChF,KAAK,OAAO,MAAM;YAClB,0EAA0E;YAC1E,0CAA0C,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA;IACrC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,MAAM,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAE5E,MAAM,UAAU,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,KAAK,EAAE,CAAA;IAC/D,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IAE3E,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAE3D,MAAM,OAAO,GAAgB;QAC3B,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QACvG,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,YAAY,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtH,CAAA;IAED,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAA;AAClC,CAAC;AAED,SAAS,MAAM,CAAC,KAAwB;IACtC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CACpB,OAAqD,EACrD,SAAiB;IAEjB,MAAM,OAAO,GAAsD,EAAE,CAAA;IACrE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,OAAO,CAAA;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/E,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,IAAY;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACpC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAClE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;AACnD,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAAC,MAAc,EAAE,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;IACvE,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAc,EAAE,MAAe,EAAE,WAA8B;IACnF,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAA;IACzF,MAAM,KAAK,GAAG,EAAE,GAAI,MAAkC,EAAE,CAAA;IACxD,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,SAAS;QAChF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,MAAM,CAAC,CAAA;IAChE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IACtD,CAAC;SAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxB,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5G,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAC5B,IAAyG,EACzG,SAAiB,EACjB,KAAa;IAEb,MAAM,OAAO,GAAc,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;SACjD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC3F,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC7G,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEpD,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;QAC3F,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QAC3F,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAC5B,OAAqD,EACrD,SAAiB,EACjB,KAAa;IAEb,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IACnC,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/lint/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGxD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAY;IAClD,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEpC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACrC,YAAY,CAAC,SAAS,CAAC,CAAA;IACvB,sBAAsB,EAAE,CAAA;IAExB,IAAI,QAAkB,CAAA;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,IAAI,KAAK,CACb,gFAAgF;YAChF,KAAK,OAAO,MAAM;YAClB,0EAA0E;YAC1E,0CAA0C,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAA;IACrC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,MAAM,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAE5E,MAAM,UAAU,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,KAAK,EAAE,CAAA;IAC/D,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IAE3E,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAE3D,MAAM,OAAO,GAAgB;QAC3B,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QACvG,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,YAAY,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtH,CAAA;IAED,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAA;AAClC,CAAC;AAED,SAAS,MAAM,CAAC,KAAwB;IACtC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CACpB,OAAqD,EACrD,SAAiB;IAEjB,MAAM,OAAO,GAAsD,EAAE,CAAA;IACrE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,OAAO,CAAA;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/E,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,iEAAiE;AACjE,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,CAAA;AAClF,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,IAAY;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACpC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAClE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;AACnD,CAAC;AAED,iFAAiF;AACjF,SAAS,WAAW,CAAC,MAAc,EAAE,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;IACvE,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAc,EAAE,MAAe,EAAE,WAA8B;IACnF,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAA;IACzF,MAAM,KAAK,GAAG,EAAE,GAAI,MAAkC,EAAE,CAAA;IACxD,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,SAAS;QAChF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,MAAM,CAAC,CAAA;IAChE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IACtD,CAAC;SAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxB,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5G,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAC5B,IAAyG,EACzG,SAAiB,EACjB,KAAa;IAEb,MAAM,OAAO,GAAc,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;SACjD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC3F,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC7G,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEpD,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;QAC3F,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QAC3F,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAC5B,OAAqD,EACrD,SAAiB,EACjB,KAAa;IAEb,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IACnC,CAAC;IAED,mFAAmF;IACnF,uFAAuF;IACvF,qFAAqF;IACrF,2BAA2B;IAC3B,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IACtC,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAEjD,MAAM,QAAQ,GAAG,GAAG,KAAK,EAAE;QACzB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,OAAO;aACN,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;aAC3D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAElD,IAAI,KAAK,GAA4B,EAAE,CAAA;IACvC,IAAI,OAAO,GAAuB,EAAE,CAAA;IACpC,IAAI,OAAsC,CAAA;IAC1C,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAClC,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QACrC,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAA;QACjD,8EAA8E;QAC9E,yEAAyE;QACzE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC5D,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;AAC1E,CAAC"}
|
package/package.json
CHANGED
package/src/lint/resolver.ts
CHANGED
|
@@ -110,6 +110,11 @@ function moduleEntries(
|
|
|
110
110
|
return entries
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
// `.`, `./` and `` all key the workspace root in `lint.modules`.
|
|
114
|
+
function rootKey(path: string): boolean {
|
|
115
|
+
return path.replace(/^\.\/+/, '').replace(/\/+$/, '').replace(/^\.$/, '') === ''
|
|
116
|
+
}
|
|
117
|
+
|
|
113
118
|
function prefixGlob(prefix: string, glob: string): string {
|
|
114
119
|
const negated = glob.startsWith('!')
|
|
115
120
|
const bare = (negated ? glob.slice(1) : glob).replace(/^\.\//, '')
|
|
@@ -190,19 +195,18 @@ function resolveModuleOverride(
|
|
|
190
195
|
return { rules: {}, configs: [] }
|
|
191
196
|
}
|
|
192
197
|
|
|
193
|
-
// `findConfig` only walks upward, so `configDir` is always an ancestor of
|
|
194
|
-
//
|
|
195
|
-
//
|
|
198
|
+
// `findConfig` only walks upward, so `configDir` is always an ancestor of `start`.
|
|
199
|
+
// An empty `rel` means `start` is the repo root (the generated root eslint.config.js):
|
|
200
|
+
// only the entry keyed `.` (or `./`, ``) applies there; other modules are handled by
|
|
201
|
+
// `resolveBelowOverrides`.
|
|
196
202
|
const rel = relative(configDir, start)
|
|
197
|
-
if (rel === '') {
|
|
198
|
-
return { rules: {}, configs: [] }
|
|
199
|
-
}
|
|
200
|
-
|
|
201
203
|
const entries = moduleEntries(modules, configDir)
|
|
202
204
|
|
|
203
|
-
const matching =
|
|
204
|
-
.filter(e =>
|
|
205
|
-
|
|
205
|
+
const matching = rel === ''
|
|
206
|
+
? entries.filter(e => rootKey(e.path))
|
|
207
|
+
: entries
|
|
208
|
+
.filter(e => rel === e.path || rel.startsWith(e.path + '/'))
|
|
209
|
+
.sort((a, b) => a.path.length - b.path.length)
|
|
206
210
|
|
|
207
211
|
let rules: Record<string, unknown> = {}
|
|
208
212
|
let configs: readonly unknown[] = []
|