[bug]: typescript errors when building with pnpm
Maintainers usually reply within 6 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 65/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- node.js, typescript
- Domain
- build-system, cli, devtools
Research direction
Reproduce the issue by creating a plugin with init and running pnpm run build. Inspect TypeScript definition generation around server/src/controllers/index.ts, server/src/index.ts, and server/src/services/index.ts, along with the @strapi/pack-up entry point. Done means a newly initialized plugin builds successfully without TS2742 errors.
Written by the indexing model from the issue text.
Description
What version of @strapi/sdk-plugin are you using?
@strapi/sdk-plugin 5.1.0
pnpm 9.1.0
What's Wrong?
Building a plugin with pnpm doesn't work
➜ myplugin5 pnpm run build
> [email protected] build /Users/ben/dev/strapi/myplugin5
> strapi-plugin build
✔ Verified package.json
✔ Created build context
Building type files:
entries:
– myplugin5/admin/src/index.ts ./admin/src/index.ts -> ./dist/admin/src/index.d.ts
– myplugin5/server/src/index.ts ./server/src/index.ts -> ./dist/server/src/index.d.ts
[ERROR] server/src/controllers/index.ts:3:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/services/index.ts:3:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/controllers/index.ts:3:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/services/index.ts:3:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] server/src/index.ts:19:1 - TS2742: The inferred type of 'default' cannot be named without a reference to '.pnpm/@[email protected]_@[email protected][email protected]/node_modules/@strapi/types/dist/core'. This is likely not portable. A type annotation is necessary.
[ERROR] Failed to compile TypeScript definitions
[ERROR] There seems to be an unexpected error, try again with --debug for more information
┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ │
│ Error: Failed to compile TypeScript definitions │
│ at /Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/@[email protected]_@[email protected]_@[email protected][email protected]/node_modules/@strapi/pack-up/dist/index.js:835:19 │
│ at Array.map (<anonymous>) │
│ at Observable._subscribe (/Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/@[email protected]_@[email protected]_@[email protected][email protected]/node_modules/@strapi/pack-up/dist/index.js:813:22) │
│ at Observable._trySubscribe (/Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/Observable.js:41:25) │
│ at /Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/Observable.js:35:31 │
│ at Object.errorContext (/Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/util/errorContext.js:22:9) │
│ at Observable.subscribe (/Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/Observable.js:26:24) │
│ at /Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/Observable.js:86:19 │
│ at new Promise (<anonymous>) │
│ at Observable.toPromise (/Users/ben/dev/strapi/myplugin5/node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/cjs/internal/Observable.js:84:16) │
│ │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
To Reproduce
create a new plugin with init
then run pnpm run build
Expected Behaviour
plugin should build
- Dominant language
- TypeScript
- Stars
- 24
- Forks
- 13
- Avg merge
- 5d 3h
- Merged PRs (30d)
- 5
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from strapi/sdk-plugin
-
Difficulty 4/5 Half a day Newbie friendliness 15/100
strapi/sdk-plugin#244 ·
Maintainers usually reply within 6 days
-
[bug]: build ignores exports file names and package.json#type, breaking "type": "module" pluginsPossibly taken @unrevised6419 claimed this 43 days ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 45/100
strapi/sdk-plugin#242 ·
Maintainers usually reply within 6 days
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
strapi/sdk-plugin#241 ·
Maintainers usually reply within 6 days
-
[feat]: build a subset of bundles with --bundle, for per-bundle task cachingPossibly taken @unrevised6419 claimed this 51 days ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 35/100
strapi/sdk-plugin#238 ·
Maintainers usually reply within 6 days
-
[bug]: When building with latest sdk-plugin version, I loose sub folders typesMay be free again @jhoward1994 claimed this 247 days ago, and no pull request is open. Openissue: bug
strapi/sdk-plugin#115 · 2 comments · 1 assignee ·
Maintainers usually reply within 6 days
All issues in strapi/sdk-plugin
Similar issues
-
Add: BOM CineOpenapproved check:passed streams:add
Difficulty 1/5 Under an hour Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
bug platform-android
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Termix-SSH/Mobile#146 · 1 comment ·
Maintainers usually reply within 2 days
-
MCP mcp-feedback-pattern
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
getsentry/toolkit#2276 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
devswha/herdr-web-ui#3875 ·