Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1.7.0] ng serve not properly killed on CTRL+C with yarn/npm #9647

Closed
victornoel opened this issue Feb 16, 2018 · 15 comments · Fixed by #9668
Closed

[1.7.0] ng serve not properly killed on CTRL+C with yarn/npm #9647

victornoel opened this issue Feb 16, 2018 · 15 comments · Fixed by #9668

Comments

@victornoel
Copy link

Versions

Angular CLI: 1.7.0
Node: 6.9.5
OS: linux x64
Angular: 5.2.5
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.7.0
@angular-devkit/build-optimizer: 0.3.1
@angular-devkit/core: 0.3.1
@angular-devkit/schematics: 0.3.1
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.0
@schematics/angular: 0.3.1
@schematics/package-update: 0.3.1
typescript: 2.5.3
webpack: 3.11.0

Repro steps

  • create project with ng new
  • run yarn start or npm start
  • hit ctrl-c

Observed behavior

the ng process is still running

Desired behavior

The ng process should be stopped.
It is stopped with v1.6.8 but not with v1.7.0

Mention any other details that might be useful (optional)

It happens also with node 8, with yarn or npm. The version of those did not change: only switching between v1.6.8 and v1.7.0 exhibits the problem.

When running ng serve by hand, surprisingly hitting ctrl+c does not stop the ng process, but you have to hit ctrl+c again for it to happen!

@victornoel
Copy link
Author

Note that the problem happens both on windows and linux

@dottodot
Copy link

I'm seeing this too. Having to resort to running sudo lsof -t -i tcp:4200 | xargs kill -9 before serving again

@jtsom
Copy link
Contributor

jtsom commented Feb 16, 2018

Also appears on OS X. two Control-C to kill the server.

@switch120
Copy link

switch120 commented Feb 16, 2018

Oh my god this is the worst - same issue here. Anyone find a fix? So aggravating. Running CLI v1.6.8, Ubuntu 16.04LTS vagrant VM.

@MattMorrisDev
Copy link

MattMorrisDev commented Feb 16, 2018

I see this too, but it only happens when I use yarn to run my npm scripts. (OS X btw)

@athulreji
Copy link

Try ctrl + shift + c

@switch120
Copy link

Yeah I saw that on a SO answer and tried several variations, including ctrl + Z, etc. This was never an issue prior to updating from Angular CLI 1.5 to 1.6.8. Regular 'ol ctrl + c would stop everything. Now it just drops back to a command prompt and leaves 2 processes running. One for ng and one for an sh ng ... that runs the actual webserver. It's just aggravating. I ended up adding another command to my package.json called kill and set it to sudo lsof -t -i tcp:443 | xargs kill -s 9 (my app runs on SSL, sub 443 for whatever port you're using). Still would be great to find a way to make this work like it used to.

@sinedsem
Copy link

+1
Very annoying!
Thanks God I noticed this before upgrading my main project.

@ghost
Copy link

ghost commented Feb 19, 2018

+1 same here. I must kill intelij on windows...

devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 19, 2018
@devoto13
Copy link
Contributor

devoto13 commented Feb 19, 2018

To temporary workaround this issue you can remove line 382 from node_modules/@ngtools/webpack/src/angular_compiler_plugin.js. This line should have process.once('SIGINT', handleParentProcessExit);.

devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 19, 2018
devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 19, 2018
devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 19, 2018
@dilipkosuri
Copy link

If the above doesn't work the following can be tried.
Issue occurrence while running Angular-CLI: Sometimes the session doesn’t get killed even if the running local server is stopped. In such cases, use the following command to close the port.

lsof -n -i4TCP:4200
kill -9

This works for me.....

devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 20, 2018
devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 20, 2018
devoto13 added a commit to devoto13/angular-cli that referenced this issue Feb 20, 2018
@esanzgar
Copy link

killall ng

@switch120
Copy link

fwiw ... #9668 refers to this issue using ng serve --aot. I'm seeing this happen with just a regular ng serve and wanted to make sure that was accounted for in the other thread. Thanks!

@devoto13
Copy link
Contributor

@switch120 It should fix it without --aot as well.

dond2clouds pushed a commit to d2clouds/speedray-cli that referenced this issue Apr 23, 2018
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Sep 7, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.