Remove WebP support without anim, mux/demux, and with buggy alpha#8213
Remove WebP support without anim, mux/demux, and with buggy alpha#8213homm merged 15 commits intopython-pillow:mainfrom
Conversation
| "build": [ | ||
| *cmds_cmake( | ||
| "webp webpdemux webpmux", | ||
| "webp webpmux webpdemux", |
There was a problem hiding this comment.
Preserve order like in other places
| * very early versions had some significant differences, so we require later | ||
| * versions, before enabling animation support. | ||
| */ | ||
| #if WEBP_MUX_ABI_VERSION >= 0x0104 && WEBP_DEMUX_ABI_VERSION >= 0x0105 |
There was a problem hiding this comment.
This ABI versions actually was never released, v0.5.0 have 0x0106 and 0x0107:
https://github.com/webmproject/libwebp/blob/v0.5.0/src/webp/mux.h#L24
https://github.com/webmproject/libwebp/blob/v0.5.0/src/webp/demux.h#L58
There was a problem hiding this comment.
IIRC, some of that was for webp as shipped in debian derived distributions, now long deprecated.
Removing these without warning sounds a little concerning to me - using them doesn't mean someone is using software from 9 years ago, merely that they are supporting the idea of other people doing so. |
|
@radarhere pretty reasonable. I've moved them back. |
|
Rebased |
Removed: _webp.WebPDecode _webp.HAVE_WEBPANIM features.webp_anim
Improve compiler advice Update src/PIL/features.py
41c1047 to
924df9e
Compare
|
Rebased and squashed some commits |
|
@radarhere could you look at this? I'm not experienced with mypy at all |
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
Suggestions for deprecating older WebP versions
Rationale
There is a bunch of legacy code which is not even tested:
https://app.codecov.io/gh/python-pillow/Pillow/pull/8211/blob/src/PIL/WebPImagePlugin.py#L50
All Pillow capabilities require libwebp 0.5.0, which was released in Dec 2015.
Removed APIs
features.check("transp_webp"): Deprecated, will be removed in 12features.check("webp_mux"): Deprecated, will be removed in 12features.check("webp_anim"): Deprecated, will be removed in 12_webp.WebPDecoderVersion(): not documented and has alternative:_webp.webpdecoder_version_webp.WebPDecoderBuggyAlpha(): not documented_webp.HAVE_WEBPANIM: not documented_webp.WebPDecode(): obsolete webp decoderwebpmuxcompiling options