Fix: workflow run failure due to use of invalid signal(SIGQUIT) on Windows Machines#316
Fix: workflow run failure due to use of invalid signal(SIGQUIT) on Windows Machines#316jishnundth wants to merge 1 commit intohatchet-dev:mainfrom
Conversation
|
Thanks for this contribution @Jishnu-Nandhiath. I'm open to improving windows developer experience but we're not planning on adding test coverage to windows at this time. Perhaps we should print a warning on start (or at the very least add a warning to the readme here)? @mrkaye97, open to your thoughts here as well. |
|
Hey, If that's the case, we can just mention that |
|
hey @Jishnu-Nandhiath - agreed with @grutt here! If this works I'd be happy to ship it, but I have some concerns about the rest of the SDK running correctly on Windows because of how much we rely on multiprocessing internally. Did you install this version of the package and try running a worker + some tasks by any chance? |
|
@mrkaye97 I've tested it with the python quick-start tutorial only. And after the fix, the workflow was successfully registered in the dashboard, and was able to play with it from there. One error that was showing here was Which seems to be fine, because noop_handler was not implemented in the SDK code |
|
hey @Jishnu-Nandhiath, thanks for looking into this and for putting in this change 😄 ultimately, even with this change, I think there are too many possible problems here for it to be worth trying to really support Windows on our end, and I don't think it's worth the rabbit hole. do you think that using WSL would be an option for you? I'm going to close this PR, but happy to discuss more on that front. Thanks again! |
|
@mrkaye97 Yeah, I think you guys are right. There's too much fix required here and there to make it work. The asyncio, loop event handlers written currently are also Unix specific. That's why https://docs.python.org/3/library/asyncio-eventloop.html#unix-signals |
|
When will full Windows support be added? |
|
Hey @JV-X - we don't have Windows support on our roadmap right now. I'd recommend trying out running Hatchet workers using WSL if you need to develop locally! |
signal.SIGQUITis not available in Windows machines, causing Worker setup failures.As a fix, replaced signal.SIGQUIT with signal.SIGBREAK if the user machine is windows.
closes #308
Reference: https://docs.python.org/3/library/signal.html#signal.signal