The jpeg2k tests fail on big endian arches like ppc and s390, so I guess it's again an endianity problem, either in pillow or in the jpeg2k library from build.log: ... Pillow 2.4.0 TEST SUMMARY -------------------------------------------------------------------- Python modules loaded from /builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL Binary modules loaded from /builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL -------------------------------------------------------------------- --- PIL CORE support ok --- TKINTER support ok --- JPEG support ok --- JPEG 2000 support ok --- ZLIB (PNG/ZIP) support ok --- LIBTIFF support ok --- FREETYPE2 support ok --- LITTLECMS2 support ok --- WEBP support ok --- Transparent WEBP support ok -------------------------------------------------------------------- Running selftest: --- 57 tests passed. + PYTHONPATH=/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7 + /usr/bin/python Tests/run.py -------------------------------------------------------------------- running test_000_sanity ... running test_001_archive ... running test_bmp_reference ... running test_cffi ... running test_file_bmp ... running test_file_fli ... running test_file_gif ... running test_file_icns ... running test_file_ico ... running test_file_jpeg ... running test_file_jpeg2k ... Tests/test_file_jpeg2k.py:59: im = roundtrip(test_card) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 59, in test_lossless_rt im = roundtrip(test_card) File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x10035436590> Tests/test_file_jpeg2k.py:63: im = roundtrip(test_card, quality_layers=[20]) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 63, in test_lossy_rt im = roundtrip(test_card, quality_layers=[20]) File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x1003a0243b0> Tests/test_file_jpeg2k.py:67: im = roundtrip(test_card, tile_size=(128, 128)) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 67, in test_tiled_rt im = roundtrip(test_card, tile_size=(128, 128)) File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x10035436590> Tests/test_file_jpeg2k.py:72: offset=(32, 32)) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 72, in test_tiled_offset_rt offset=(32, 32)) File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x1003a0243b0> Tests/test_file_jpeg2k.py:76: im = roundtrip(test_card, irreversible=True, quality_layers=[20]) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 76, in test_irreversible_rt im = roundtrip(test_card, irreversible=True, quality_layers=[20]) File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x10035436590> Tests/test_file_jpeg2k.py:80: im = roundtrip(test_card, quality_layers=[60, 40, 20], progression='LRCP') failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 80, in test_prog_qual_rt im = roundtrip(test_card, quality_layers=[60, 40, 20], progression='LRCP') File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x1003a0243b0> Tests/test_file_jpeg2k.py:84: im = roundtrip(test_card, num_resolutions=8, progression='RLCP') failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 84, in test_prog_res_rt im = roundtrip(test_card, num_resolutions=8, progression='RLCP') File "Tests/test_file_jpeg2k.py", line 23, in roundtrip im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x10035436590> Tests/test_file_jpeg2k.py:101: im = Image.open(out) failed: Traceback (most recent call last): File "Tests/test_file_jpeg2k.py", line 101, in test_layers im = Image.open(out) File "/builddir/build/BUILD/python-imaging-Pillow-72de37c/build/lib.linux-ppc64-2.7/PIL/Image.py", line 2126, in open % (filename if filename else fp)) IOError: cannot identify image file <_io.BytesIO object at 0x1003a0243b0> running test_file_libtiff ... running test_file_libtiff_small ... running test_file_msp ... running test_file_pcx ... running test_file_png ... running test_file_ppm ... running test_file_psd ... running test_file_tar ... running test_file_tiff ... running test_file_tiff_metadata ... running test_file_webp ... running test_file_webp_alpha ... running test_file_webp_lossless ... running test_file_webp_metadata ... running test_file_xbm ... running test_file_xpm ... running test_font_bdf ... running test_font_pcf ... running test_format_lab ... running test_image ... running test_image_array ... running test_image_convert ... running test_image_copy ... running test_image_crop ... running test_image_draft ... running test_image_filter ... running test_image_frombytes ... running test_image_getbands ... running test_image_getbbox ... running test_image_getcolors ... running test_image_getdata ... running test_image_getextrema ... running test_image_getim ... running test_image_getpalette ... running test_image_getpixel ... running test_image_getprojection ... running test_image_histogram ... running test_image_load ... running test_image_mode ... running test_image_offset ... running test_image_paste ... running test_image_point ... running test_image_putalpha ... running test_image_putdata ... running test_image_putpalette ... running test_image_putpixel ... running test_image_quantize ... running test_image_resize ... running test_image_rotate ... running test_image_save ... running test_image_seek ... running test_image_show ... running test_image_split ... running test_image_tell ... running test_image_thumbnail ... running test_image_tobitmap ... running test_image_tobytes ... running test_image_transform ... running test_image_transpose ... running test_image_verify ... running test_imagechops ... running test_imagecms ... running test_imagecolor ... running test_imagedraw ... running test_imageenhance ... running test_imagefile ... running test_imagefileio ... running test_imagefilter ... running test_imagefont ... running test_imagegrab ... --- skipped running test_imagemath ... running test_imagemode ... running test_imageops ... running test_imageops_usm ... running test_imagepalette ... running test_imagepath ... running test_imageqt ... running test_imagesequence ... running test_imageshow ... running test_imagestat ... running test_imagetk ... running test_imagetransform ... running test_imagewin ... running test_lib_image ... running test_lib_pack ... running test_locale ... running test_mode_i16 ... running test_numpy ... -------------------------------------------------------------------- --- 1 test skipped. ['test_imagegrab'] *** 1 test of 98 failed. Version-Release number of selected component (if applicable): python-pillow-2.4.0-7.fc21
Joy. I was actually just now looking at updating to openjpeg-2.1.0, but there I get all sorts of issues. But while I'm at it I can also hunt this one I guess.
I pushed openjpeg-2.1.0 to rawhide and patched pillow accordingly. As soon as openjpeg-2.1.0 lands in ppc, I'll check whether it happens to also fix this issue here.
Looks like tests pass now: http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1961835
http://koji.fedoraproject.org/koji/buildinfo?buildID=548179 * Sat Jul 26 2014 Sandro Mani <manisandro> - 2.5.1-2 - Reenable jpeg2k tests on big endian arches