Unimport doesn't work with shebang in entry file.
Closed this issue · 0 comments
tmg0 commented
Environment
Stackblitz node cli project.
node: v18.18.0
Reproduction
https://stackblitz.com/edit/stackblitz-starters-hv4vuo
Describe the bug
I am not sure if this issue is caused by tsup or unimport.
In a Node CLI project, if the entry file includes a shebang code like #!/usr/bin/env node
, then it must be explicitly declared for import, otherwise it will cause an error message like ✘ [ERROR] Syntax error "!
tsup.config.ts
import { defineConfig } from 'tsup';
import Unimport from 'unimport/unplugin';
export default defineConfig((options) => ({
entry: ['./src'],
format: ['esm'],
esbuildPlugins: [Unimport.esbuild({ dts: true, dirs: ['./src'] })],
}));
entry file: src/cli.ts
#!/usr/bin/env node
output();
Additional context
No response
Logs
CLI Building entry: src/cli.ts, src/utils.ts
CLI Using tsconfig: tsconfig.json
CLI tsup v8.0.1
CLI Using tsup config: /home/projects/stackblitz-starters-hv4vuo/tsup.config.ts
CLI Target: esnext
ESM Build start
✘ [ERROR] Syntax error "!"
src/cli.ts:2:1:
2 │ #!/usr/bin/env node
╵ ^
ESM Build failed
Error: Build failed with 1 error:
src/cli.ts:2:1: ERROR: Syntax error "!"
at failureErrorWithLog (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:1641:15)
at eval (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:1049:25)
at runOnEndCallbacks (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:1476:45)
at buildResponseToResult (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:1047:7)
at eval (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:1076:16)
at responseCallbacks.<computed> (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:694:9)
at handleIncomingPacket (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:754:9)
at Socket.readFromStdout (/home/projects/stackblitz-starters-hv4vuo/node_modules/.pnpm/esbuild@0.19.11/node_modules/esbuild/lib/main.js:670:7)
at EventEmitter.emit (node:events:42:9202)
at addChunk (node:internal/streams/readable:105:4109)
ELIFECYCLE Command failed with exit code 1.