matplotlib / basemap

Plot on map projections (with coastlines and political boundaries) using matplotlib
MIT License
772 stars 390 forks source link

Fix AttributeError with Pillow >= 10.0 #580

Closed cgohlke closed 1 year ago

cgohlke commented 1 year ago

The deprecated Image.ANTIALIAS constant was removed in Pillow 10.0. See https://pillow.readthedocs.io/en/stable/deprecations.html#constants

molinav commented 1 year ago

Hi @cgohlke! Thanks for your contribution, I will try to accept the merge request as soon as possible.

I need to check if Image.LANCZOS is available only on recent pillow versions or if the name has been there for a while. Otherwise I will need to update the PR change to something like getattr(Image, "LANCZOS", "ANTIALIAS").

The error in the GitHub actions is unrelated to your change, I am also trying to find a solution.

cgohlke commented 1 year ago

Image.LANCZOS was added in Pillow 2.7.0, released Dec 31, 2014. See https://github.com/python-pillow/Pillow/commit/43d5d06ce4269e8ccc045f60c1bd419d67ccac4f

molinav commented 1 year ago

@cgohlke Sorry for the late reply. Thanks for digging into the pillow history. This constant name is really coming from very long ago, so it should be perfectly safe to apply the PR.

As I mentioned some days before, the workflow is failing but due to an unrelated problem, which I am currently looking at. Being the PR merged into the develop branch, this change would appear in the basemap release 1.4.0.

molinav commented 1 year ago

In the end I backported this bugfix to the hotfix-1.3.8 branch, so it will also be available for the basemap release 1.3.8.