On Dienstag, 23. Mai 2023 15:04:54 CEST Bartosz Golaszewski wrote: > On Tue, May 23, 2023 at 2:38 PM Nicolas Frattaroli > <frattaroli.nicolas@xxxxxxxxx> wrote: > > > > On Dienstag, 23. Mai 2023 14:33:12 CEST Bartosz Golaszewski wrote: > > > > > > ... > > > > > > As has been said elsewhere - the pythonic way is to interpret None as > > > indefinite timeout. It's just that it would change the current > > > behavior. The question is - should we interpret the current behavior > > > as "undefined" and change it, or "defined but not documented" and > > > consider it part of the API. > > > > > > Bart > > > > > > > As an alternate suggestion, we could change the default function argument > > to 0.0 and remove the None -> 0 code. That way, people who were calling > > the function with no arguments still get the same behaviour, and the > > only break is for users who explicitly passed None. > > > > Honestly, if we were to change the behavior, then I'd prefer to do it > right and not use any half-measures. > > Bart > That's fair, I don't mind either way. I don't think the behavioural change would be that big of an issue either way; the obviousness of a wait on events function that returns immediately by default is debatable in my eyes, as the only use for using it like that I could ever come up with is to peek at whether there are any events queued up based on its return value. What I do think is a bad solution now is the float("inf") stuff. While it's fun to assign meaning to special floating point values, I think it strictly makes the API worse for the sake of stability. Kind regards, Nicolas Frattaroli