fish-shell / fish-shell Public
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
About "A second attempt to exit will terminate them" #6269
Comments
This job is just generating completions based on your system's man pages, fish does that when you start it for the first time. I agree that this warning can be confusing for new users, but it's probably better than keeping the job running after exiting fish. Maybe we can make the job name more descriptive. |
To be clear, this warning is being thrown because there's a job still running in the background. In this case that job is fish generating man page completions. Usually this happens once, because it only does this if the directory doesn't exist. The options I can think of are:
|
The warning is very useful in general (looks like
Or just use |
The general users don't know what the command "$py $update_args >/dev/null 2>&1 &" is doing, it's really confusing(to me, the command looks like fish is updating itself, but interprupted by me, so I began to worring Is fish installation still being integrity..), and the users also don't know what should do next.. I think the warning message should be improved, tell the users can execute fish_update_completions command again by themself. Or even if "fish_update_completions" interpruped by user's exit and next time fish launches, fish can detect is generating of ~/.local/share/fish/generated_completions finished normally, if not, execute fish_update_completions command in background again, and let users don't know this background step. Of course, as @faho suggestion "Don't background this" is also a good option, just like zsh doing. |
I don't think blocking on first start is a good idea. |
I've ran into this many times myself when I just run fish to make sure it's correctly in the path and running fine after a clean install but exit before the background python job is done. I would be fine with just special-casing this task as a disposable that can be ignored (and re-run at next launch instead, ad infinitum). |
Any reason it should not just be |
My reason was because it's a function and all hell breaks loose but that's already handled by invoking python directly and not executing any follow up code... mainly because we don't have a As it is, the approach used to determine if the completions were previously generated relied merely on the existence of the completions directory, which is created as a precursor to actually generating the completions, so in the event of an early exit (like reported in this issue), the completions were never actually run. 364929e disowns the process per @ridiculousfish's recommendation; we may want to think about setting a flag when the completions have actually been generated and checking that instead in the future, but as it's not critical for them to be generated, this'll do for now. |
Someday, when I launched fish from a bash, after a very short time I exited fish (3-4 seconds),
After than I noticed a warning "A second attempt to exit will terminate them", I don't know what is the affect to my fish.. And I think this warning behavior should be avoid, it make user be worrying.
Below is env info:
The text was updated successfully, but these errors were encountered: