On 17.09.19 13:22, Kevin Wolf wrote: > Am 17.09.2019 um 13:07 hat Max Reitz geschrieben: >> On 17.09.19 10:40, Kevin Wolf wrote: >>> Am 17.09.2019 um 10:18 hat Max Reitz geschrieben: >>>> On 13.09.19 20:30, John Snow wrote: >>>>> I'd still like to define func_wrapper with a nod to the type constraint >>>>> it has: >>>>> >>>>> def func_wrapper(instance: iotests.QMPTestCase, *args, **kwargs): >>>>> [...] >>>>> >>>>> >>>>> Then, you'd write: >>>>> >>>>> if callable(required_formats): >>>>> fmts = required_formats(instance) >>>>> else: >>>>> fmts = required_formats >>>> >>>> Yep, that anyway. (Although I didn’t know about the “param: type” >>>> syntax and put that constraint in a comment instead. Thanks again :-)) >>> >>> Note that function annotations are Python 3 only, so we can't use that >>> syntax yet anyway. If you want to use type hints that are understood by >>> tools (like mypy) and compatible with Python 2, you have to use >>> something like this (feel free to be more specific than Any): >> >> Do we really feel like staying compatible with Python 2, though? > > Feel like it? No. > > It's more that we are compelled to do so because we only deprecated it > in 4.1. Hm, yes, that’s too bad. :-) Max