Add upper bound for lxml
lxml==4.9.3 was released yesterday which caused the wheel builder to fail again.
https://github.com/mypyc/mypy_mypyc-wheels/actions/runs/5473072463/jobs/9966070811#step:4:6979
The lxml project decided to change the manylinux builds from manylinux2014 to manylinux_2_28. Thus to test our wheels we would need to compile lxml from source. Until will update to manylinux_2_28 ourselves, I think pinning lxml<4.9.3 is the best option.
https://pypi.org/project/lxml/4.9.2/#files https://pypi.org/project/lxml/4.9.3/#files
Should we also add an upper bound here?
https://github.com/python/mypy/blob/e0b159e0bb6bd414d2999bfcecbb5432541ec3fd/setup.py#L231
Should we also add an upper bound here?
https://github.com/python/mypy/blob/e0b159e0bb6bd414d2999bfcecbb5432541ec3fd/setup.py#L231
Not sure. It's not impossible to build lxml from source. Just the docker image to build the mypy wheels isn't setup to do that. Furthermore if the target OS already ships with glibc>=2.28 the wheels for lxml can be installed as usual.
Also, we don't prevent anyone from installing mypy[reports] on windows. We just don't install it as test requirement there.
According to mypy_primer, this change doesn't affect type check results on a corpus of open source code. ✅