Skip to content

[BUG] Improper handling of graceful exits with npx #8164

Open
@greguz

Description

@greguz

Is there an existing issue for this?

  • I have searched the existing issues

This issue exists in the latest npm version

  • I am using the latest npm

Current Behavior

Sending a SIGINT signal using npx node anything.js will result in a double SIGINT received by the application code.

Expected Behavior

Just one signal to be received by the application code.

Steps To Reproduce

console.log('starting up')

process.on('SIGINT', () => {
  console.log('shutting down')

  // simulate cleanup
  setTimeout(() => {
    console.log('cleanly exiting')
    process.exit(0)
  }, 5000)
})

// run forever
setInterval(() => {}, 1 << 30)
╭─greguz@prunix ~/Development/issue 
╰─$ npx node z.js
starting up
^Cshutting down
shutting down
cleanly exiting

Environment

  • npm: v11.2.0
  • Node.js: v23.10.0
  • OS Name: macOS 15.3.2 (24D81)
  • System Model Name: Apple M2 Pro
  • npm config:
; "user" config from /Users/greguz/.npmrc

//registry.npmjs.org/:_authToken = (protected)

; node bin location = /Users/greguz/.local/share/fnm/node-versions/v23.10.0/installation/bin/node
; node version = v23.10.0
; npm local prefix = /Users/greguz/Development/evologi/orderpod-dlr
; npm version = 11.2.0
; cwd = /Users/greguz/Development/evologi/orderpod-dlr
; HOME = /Users/greguz
; Run `npm config ls -l` to show all defaults.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Bugthing that needs fixingNeeds Triageneeds review for next steps

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions