When running the squirrel full install on some systems, the post install action fails to execute. This seems to be because the timeout set on the action cancels after 15 seconds and causes the application to crash. Is it possible to set a flag to ignore timeouts for post install actions?
This isn't possible at the moment, you should finish what you need to do in less than 15sec
Thanks for the reply, I was wondering if it would it still be possible to add a flag which defaults to 15, and then use a custom bootstrapper to set it, alongside the --install flag? Can I submit a pull request to do this?
I explicitly do not want to allow this because I think people who are running >15sec hooks on install are Doing It Wrong
Understandable, the problem I am having though is that the hook itself is fast but launching the application itself on certain systems is slow and can cause it to exceed the timeout
Slower than 15sec? One thing you could do is decide to run this action on --squirrel-firstrun which doesn't have any time limit
It would be great if we could disable the timeout. I think 15 seconds is not enough in some cases.
For example we might want to install and start some Windows Services that are needed by our application. Prior to that we might need to stop and uninstall the older Services before installing the new one.
In addition, when we try to self-elevate the process that handle onInitialInstall event, UAC screen will show up, and user might spend some time before deciding to approve or reject the self-elevation request.
We cannot do the post-install task in the --squirrel-firstrun event because the Services need to be installed properly before we run the application.
@paulcbetts I think the current limit for hooks (at least uninstall) is even smaller, if I read the source code correctly, 10 * 1000ms.
What is your suggestion to implement an obsoletion/uninstall process, that takes longer than that (and can not be optimized or run prior to uninstallation)? Unfortunately, I have to wait for it to finish, as there are files and resources to be cleaned up before actual uninstall. It seems to me, I am using the wrong tool then (which would be unfortunate, as Squirrel seems to be a nice thing to use).
I am not asking for help, more of adding some reasoning behind ability to specify customizable (maybe even infinite) timeouts for the hooks.
Most helpful comment
@paulcbetts I think the current limit for hooks (at least uninstall) is even smaller, if I read the source code correctly, 10 * 1000ms.
What is your suggestion to implement an obsoletion/uninstall process, that takes longer than that (and can not be optimized or run prior to uninstallation)? Unfortunately, I have to wait for it to finish, as there are files and resources to be cleaned up before actual uninstall. It seems to me, I am using the wrong tool then (which would be unfortunate, as Squirrel seems to be a nice thing to use).
I am not asking for help, more of adding some reasoning behind ability to specify customizable (maybe even infinite) timeouts for the hooks.