Nuxt4 - ERR_INVALID_MODULE_SPECIFIER
pending triage
### Environment
- Operating System: `Linux`
- Node Version: `v22.14.0`
- Nuxt Version: `4.1.0`
- CLI Version: `3.28.0`
- Nitro Version: `2.12.5`
- Package Manager: `npm@11.4.1`
- Builder: `-`
- User Config: `modules`, `devtools`, `app`, `css`, `runtimeConfig`, `compatibilityDate`, `nitro`, `vite`, `eslint`, `i18n`, `primevue`, `tailwindcss`
- Runtime Modules: `@nuxt/eslint@1.9.0`, `@nuxtjs/tailwindcss@6.14.0`, `@primevue/nuxt-module@4.3.8`, `@pinia/nuxt@0.11.2`, `nuxt-queryref@1.0.5`, `pinia-plugin-persistedstate@4.5.0`, `@nuxtjs/i18n@10.0.6`
- Build Modules: `-`
### Package
@nuxt/eslint
### Reproduction
.
### Describe the bug
- Updated Pinia
- Nuxt4 (using https://nuxt.com/docs/4.x/getting-started/upgrade)
After a few changes, then everything is working fine.
Now I wanted to lint the project.
```
❯ eslint
Oops! Something went wrong! :(
ESLint: 9.34.0
TypeError [ERR_INVALID_MODULE_SPECIFIER]: Invalid module ".nuxt/eslint.config.mjs" is not a valid package name imported from <project>/eslint.config.mjs
at parsePackageName (node:internal/modules/package_json_reader:222:11)
at Object.getPackageJSONURL (node:internal/modules/package_json_reader:234:5)
at packageResolve (node:internal/modules/esm/resolve:768:81)
at moduleResolve (node:internal/modules/esm/resolve:854:18)
at defaultResolve (node:internal/modules/esm/resolve:984:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:685:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:634:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:617:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:273:38)
at ModuleJob._link (node:internal/modules/esm/module_job:135:49)
```
### Additional context
```mjs
// <root>/eslint.config.mjs
// @ts-check
import withNuxt from '.nuxt/eslint.config.mjs'
export default withNuxt(
// Your custom configs here
)
```
```mjs
// <root>/.nuxt/eslint.config.mjs
// ESLint config generated by Nuxt
/// <reference path="./eslint-typegen.d.ts" />
/* eslint-disable */
// @ts-nocheck
import typegen from '../node_modules/eslint-typegen/dist/index.mjs';
import { createConfigForNuxt, defineFlatConfigs, resolveOptions } from '../node_modules/@nuxt/eslint-config/dist/flat.mjs';
import { fileURLToPath } from 'node:url';
const r = (...args) => fileURLToPath(new URL(...args, import.meta.url))
export { defineFlatConfigs }
export const options = resolveOptions({
features: {
"standalone": true,
"stylistic": true
},
dirs: {
pages: ["app/pages"],
composables: ["app/composables", "app/utils"],
components: ["app/components"],
componentsPrefixed: [],
layouts: ["app/layouts"],
plugins: ["app/plugins"],
middleware: ["app/middleware"],
modules: ["modules"],
servers: [],
root: [],
src: ["app"],
}
})
export const configs = createConfigForNuxt(options)
configs.append(
// Set globals from imports registry
{
name: 'nuxt/import-globals',
languageOptions: {
globals: Object.fromEntries([" ..... redacted ..... "].map(i => [i, 'readonly'])),
},
}
)
export function withNuxt(...customs) {
return configs
.clone()
.append(...customs)
.onResolved(configs => typegen(configs, { dtsPath: r("./eslint-typegen.d.ts"), augmentFlatConfigUtils: true }))
}
export default withNuxt
### Logs
```shell-script
```
0 条评论