On Tue, 9 Oct 2018 at 15:17, Eric Fahlgren <ericfahlg...@gmail.com> wrote:

> On Tue, Oct 9, 2018 at 3:16 AM Ivan Levkivskyi <levkivs...@gmail.com>
> wrote:
>
>> class PathLike(Protocol[AnyStr]):
>>
>
> I had been working on this same problem intermittently for several months,
> so thanks, but...
>
>     error: Invariant type variable 'AnyStr' used in protocol where
> covariant one is expected
>
> is called out on the class  by mypy 0.630 (Python 3.6.6).  Do I just need
> to wait for 0.640?  Or should I define a new TypeVar for AnyStr_co and use
> that?
>

Hm, it looks like mypy overreacts here. I think it should be safe to use a
constrained type variable if there are no constraints that are subtypes of
other constraints (which is the case for AnyStr on Python 3, where bytes is
not a subtype of str). Could you please open an issue about this on mypy
tracker? In the meantime, you can just silence the error with a `# type:
ignore`.

--
Ivan
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to