News for hackers. Stuff that matters.
Re:Don't trust default timeouts by marcosdumay on Saturday August 29, 2020 @10:16AM (#24316257)
Yet, if you are making an interactive application, that easy to test codepath is a great way to put bugs into your requirements.
Re:Don't trust default timeouts by orisho on Saturday August 29, 2020 @10:40AM (#24316416)
In Go, it is a single code path. Contexts can be canceled and they also come with propagating timeouts. The timeouts simply trigger a cancellation, so the only code path is handling cancellation.

There's nothing complicated about it, so there's no reason your code can't implement timeouts and cancellation the same way: timeouts are a cancellation triggered autonomously after some time passes.

Re:Don't trust default timeouts by RhysU on Saturday August 29, 2020 @02:37PM (#24318389)
Not disagreeing, but having trouble seeing it. Could you elaborate?
Re:Don't trust default timeouts by marcosdumay on Saturday August 29, 2020 @03:21PM (#24318730)
By adding that timeout you just created a user-visible behavior that nobody asked for and people will only notice in production while dealing with the most complicated use-cases.
Re:Don't trust default timeouts by RhysU on Saturday August 29, 2020 @03:46PM (#24318896)
Nobody asks for it but some choice must be made. As a user, I have often cursed things that hang indefinitely. And I don't trust application state after touching a cancel button. That stuff is seldom tested well.