From 2f8dca735e9e30aab6cea2270875021b3098bd2a Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Sun, 25 May 2014 11:45:37 +0300 Subject: Issue #20197: Added support for the WebP image type in the imghdr module. Patch by Fabrice Aneche and Claudiu Popa. --- Doc/library/imghdr.rst | 5 +++++ Lib/imghdr.py | 6 ++++++ Lib/test/imghdrdata/python.webp | Bin 0 -> 432 bytes Lib/test/test_imghdr.py | 3 ++- Misc/ACKS | 1 + Misc/NEWS | 3 +++ 6 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 Lib/test/imghdrdata/python.webp diff --git a/Doc/library/imghdr.rst b/Doc/library/imghdr.rst index 9e89523..06faa88 100644 --- a/Doc/library/imghdr.rst +++ b/Doc/library/imghdr.rst @@ -48,6 +48,11 @@ from :func:`what`: +------------+-----------------------------------+ | ``'png'`` | Portable Network Graphics | +------------+-----------------------------------+ +| ``'webp'`` | WebP files | ++------------+-----------------------------------+ + +.. versionchanged:: 3.5 + The *webp* type was added. You can extend the list of file types :mod:`imghdr` can recognize by appending to this variable: diff --git a/Lib/imghdr.py b/Lib/imghdr.py index add2ea8..fe77e49 100644 --- a/Lib/imghdr.py +++ b/Lib/imghdr.py @@ -110,6 +110,12 @@ def test_bmp(h, f): tests.append(test_bmp) +def test_webp(h, f): + if h.startswith(b'RIFF') and h[8:12] == b'WEBP': + return 'webp' + +tests.append(test_webp) + #--------------------# # Small test program # #--------------------# diff --git a/Lib/test/imghdrdata/python.webp b/Lib/test/imghdrdata/python.webp new file mode 100644 index 0000000..e824ec7 Binary files /dev/null and b/Lib/test/imghdrdata/python.webp differ diff --git a/Lib/test/test_imghdr.py b/Lib/test/test_imghdr.py index 0ad4343..e2a1aca 100644 --- a/Lib/test/test_imghdr.py +++ b/Lib/test/test_imghdr.py @@ -16,7 +16,8 @@ TEST_FILES = ( ('python.ras', 'rast'), ('python.sgi', 'rgb'), ('python.tiff', 'tiff'), - ('python.xbm', 'xbm') + ('python.xbm', 'xbm'), + ('python.webp', 'webp'), ) class UnseekableIO(io.FileIO): diff --git a/Misc/ACKS b/Misc/ACKS index be089cd..68701c4 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -42,6 +42,7 @@ Pehr Anderson Erik Andersén Oliver Andrich Ross Andrus +Fabrice Aneche Juancarlo Añez Chris Angelico Jérémy Anger diff --git a/Misc/NEWS b/Misc/NEWS index 72f00dc..4970afd 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -89,6 +89,9 @@ Core and Builtins Library ------- +- Issue #20197: Added support for the WebP image type in the imghdr module. + Patch by Fabrice Aneche and Claudiu Popa. + - Issue #21513: Speedup some properties of IP addresses (IPv4Address, IPv6Address) such as .is_private or .is_multicast. -- cgit v0.12