Source: python-imageio Version: 2.4.1-4 Severity: serious Justification: FTBFS Tags: bookworm sid ftbfs User: lu...@debian.org Usertags: ftbfs-20220412 ftbfs-bookworm
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > make[2]: Entering directory '/<<PKGBUILDDIR>>/docs' > sphinx-build -b html -d _build/doctrees . _build/html > Running Sphinx v4.5.0 > Special preparations for imageio docs: > Prepare Format.Reader and Format.Writer for doc generation. > Prepare imageio.core for doc generation. > Create docs for creating plugins. > Create documentation for the formats. > Create documentation for imageio's standard images. > making output directory... done > [autosummary] generating autosummary for: cmdlinescripts.rst, devapi.rst, > drop27.rst, envvariables.rst, examples.rst, format_avbin.rst, > format_bmp-fi.rst, format_bmp-pil.rst, format_bsdf.rst, format_bufr-pil.rst, > ..., index.rst, installation.rst, plugins.rst, releasenotes.rst, scipy.rst, > sec_developer.rst, sec_gettingstarted.rst, sec_reference.rst, > standardimages.rst, userapi.rst > building [mo]: targets for 0 po files that are out of date > building [html]: targets for 112 source files that are out of date > updating environment: [new config] 112 added, 0 changed, 0 removed > reading sources... [ 0%] cmdlinescripts > reading sources... [ 1%] devapi > reading sources... [ 2%] drop27 > reading sources... [ 3%] envvariables > reading sources... [ 4%] examples > reading sources... [ 5%] format_avbin > reading sources... [ 6%] format_bmp-fi > reading sources... [ 7%] format_bmp-pil > reading sources... [ 8%] format_bsdf > reading sources... [ 8%] format_bufr-pil > reading sources... [ 9%] format_clipboardgrab > reading sources... [ 10%] format_cur-pil > reading sources... [ 11%] format_cut-fi > reading sources... [ 12%] format_dcx-pil > reading sources... [ 13%] format_dds-fi > reading sources... [ 14%] format_dds-pil > reading sources... [ 15%] format_dib-pil > reading sources... [ 16%] format_dicom > reading sources... [ 16%] format_dummy > reading sources... [ 17%] format_eps-pil > reading sources... [ 18%] format_exr-fi > reading sources... [ 19%] format_fei > reading sources... [ 20%] format_ffmpeg > reading sources... [ 21%] format_fits > reading sources... [ 22%] format_fits-pil > reading sources... [ 23%] format_fli-pil > reading sources... [ 24%] format_fpx-pil > reading sources... [ 25%] format_ftex-pil > reading sources... [ 25%] format_g3-fi > reading sources... [ 26%] format_gbr-pil > reading sources... [ 27%] format_gdal > reading sources... [ 28%] format_gif-fi > reading sources... [ 29%] format_gif-pil > reading sources... [ 30%] format_grib-pil > reading sources... [ 31%] format_hdf5-pil > reading sources... [ 32%] format_hdr-fi > reading sources... [ 33%] format_icns-pil > reading sources... [ 33%] format_ico-fi > reading sources... [ 34%] format_ico-pil > reading sources... [ 35%] format_iff-fi > reading sources... [ 36%] format_im-pil > reading sources... [ 37%] format_imt-pil > reading sources... [ 38%] format_iptc-pil > reading sources... [ 39%] format_itk > reading sources... [ 40%] format_j2k-fi > reading sources... [ 41%] format_jng-fi > reading sources... [ 41%] format_jp2-fi > reading sources... [ 42%] format_jpeg-fi > reading sources... [ 43%] format_jpeg-pil > reading sources... [ 44%] format_jpeg-xr-fi > reading sources... [ 45%] format_jpeg2000-pil > reading sources... [ 46%] format_koala-fi > reading sources... [ 47%] format_lytro-f01-raw > reading sources... [ 48%] format_lytro-illum-raw > reading sources... [ 49%] format_lytro-lfp > reading sources... [ 50%] format_lytro-lfr > reading sources... [ 50%] format_mcidas-pil > reading sources... [ 51%] format_mic-pil > reading sources... [ 52%] format_mpo-pil > reading sources... [ 53%] format_msp-pil > reading sources... [ 54%] format_npz > reading sources... [ 55%] format_pbm-fi > reading sources... [ 56%] format_pbmraw-fi > reading sources... [ 57%] format_pcd-fi > reading sources... [ 58%] format_pcd-pil > reading sources... [ 58%] format_pcx-fi > reading sources... [ 59%] format_pcx-pil > reading sources... [ 60%] format_pfm-fi > reading sources... [ 61%] format_pgm-fi > reading sources... [ 62%] format_pgmraw-fi > reading sources... [ 63%] format_pict-fi > reading sources... [ 64%] format_pixar-pil > reading sources... [ 65%] format_png-fi > reading sources... [ 66%] format_png-pil > reading sources... [ 66%] format_ppm-fi > reading sources... [ 67%] format_ppm-pil > reading sources... [ 68%] format_ppmraw-fi > reading sources... [ 69%] format_psd-fi > reading sources... [ 70%] format_psd-pil > reading sources... [ 71%] format_ras-fi > reading sources... [ 72%] format_raw-fi > reading sources... [ 73%] format_screengrab > reading sources... [ 74%] format_sgi-fi > reading sources... [ 75%] format_sgi-pil > reading sources... [ 75%] format_spe > reading sources... [ 76%] format_spider-pil > reading sources... [ 77%] format_sun-pil > reading sources... [ 78%] format_swf > reading sources... [ 79%] format_targa-fi > reading sources... [ 80%] format_tga-pil > reading sources... [ 81%] format_tiff > reading sources... [ 82%] format_tiff-fi > reading sources... [ 83%] format_tiff-pil > reading sources... [ 83%] format_wbmp-fi > reading sources... [ 84%] format_webp-fi > reading sources... [ 85%] format_wmf-pil > reading sources... [ 86%] format_xbm-fi > reading sources... [ 87%] format_xbm-pil > reading sources... [ 88%] format_xpm-fi > reading sources... [ 89%] format_xpm-pil > reading sources... [ 90%] format_xvthumb-pil > reading sources... [ 91%] formats > reading sources... [ 91%] index > reading sources... [ 92%] installation > reading sources... [ 93%] plugins > reading sources... [ 94%] releasenotes > reading sources... [ 95%] scipy > reading sources... [ 96%] sec_developer > reading sources... [ 97%] sec_gettingstarted > reading sources... [ 98%] sec_reference > reading sources... [ 99%] standardimages > reading sources... [100%] userapi > > /<<PKGBUILDDIR>>/docs/format_wmf-pil.rst:41: WARNING: Literal block ends > without a blank line; unexpected unindent. > looking for now-outdated files... none found > pickling environment... done > checking consistency... /<<PKGBUILDDIR>>/docs/drop27.rst: WARNING: document > isn't included in any toctree > done > preparing documents... done > writing output... [ 0%] cmdlinescripts > writing output... [ 1%] devapi > writing output... [ 2%] drop27 > writing output... [ 3%] envvariables > writing output... [ 4%] examples > writing output... [ 5%] format_avbin > writing output... [ 6%] format_bmp-fi > writing output... [ 7%] format_bmp-pil > writing output... [ 8%] format_bsdf > writing output... [ 8%] format_bufr-pil > writing output... [ 9%] format_clipboardgrab > writing output... [ 10%] format_cur-pil > writing output... [ 11%] format_cut-fi > writing output... [ 12%] format_dcx-pil > writing output... [ 13%] format_dds-fi > writing output... [ 14%] format_dds-pil > writing output... [ 15%] format_dib-pil > writing output... [ 16%] format_dicom > writing output... [ 16%] format_dummy > writing output... [ 17%] format_eps-pil > writing output... [ 18%] format_exr-fi > writing output... [ 19%] format_fei > writing output... [ 20%] format_ffmpeg > writing output... [ 21%] format_fits > writing output... [ 22%] format_fits-pil > writing output... [ 23%] format_fli-pil > writing output... [ 24%] format_fpx-pil > writing output... [ 25%] format_ftex-pil > writing output... [ 25%] format_g3-fi > writing output... [ 26%] format_gbr-pil > writing output... [ 27%] format_gdal > writing output... [ 28%] format_gif-fi > writing output... [ 29%] format_gif-pil > writing output... [ 30%] format_grib-pil > writing output... [ 31%] format_hdf5-pil > writing output... [ 32%] format_hdr-fi > writing output... [ 33%] format_icns-pil > writing output... [ 33%] format_ico-fi > writing output... [ 34%] format_ico-pil > writing output... [ 35%] format_iff-fi > writing output... [ 36%] format_im-pil > writing output... [ 37%] format_imt-pil > writing output... [ 38%] format_iptc-pil > writing output... [ 39%] format_itk > writing output... [ 40%] format_j2k-fi > writing output... [ 41%] format_jng-fi > writing output... [ 41%] format_jp2-fi > writing output... [ 42%] format_jpeg-fi > writing output... [ 43%] format_jpeg-pil > writing output... [ 44%] format_jpeg-xr-fi > writing output... [ 45%] format_jpeg2000-pil > writing output... [ 46%] format_koala-fi > writing output... [ 47%] format_lytro-f01-raw > writing output... [ 48%] format_lytro-illum-raw > writing output... [ 49%] format_lytro-lfp > writing output... [ 50%] format_lytro-lfr > writing output... [ 50%] format_mcidas-pil > writing output... [ 51%] format_mic-pil > writing output... [ 52%] format_mpo-pil > writing output... [ 53%] format_msp-pil > writing output... [ 54%] format_npz > writing output... [ 55%] format_pbm-fi > writing output... [ 56%] format_pbmraw-fi > writing output... [ 57%] format_pcd-fi > writing output... [ 58%] format_pcd-pil > writing output... [ 58%] format_pcx-fi > writing output... [ 59%] format_pcx-pil > writing output... [ 60%] format_pfm-fi > writing output... [ 61%] format_pgm-fi > writing output... [ 62%] format_pgmraw-fi > writing output... [ 63%] format_pict-fi > writing output... [ 64%] format_pixar-pil > writing output... [ 65%] format_png-fi > writing output... [ 66%] format_png-pil > writing output... [ 66%] format_ppm-fi > writing output... [ 67%] format_ppm-pil > writing output... [ 68%] format_ppmraw-fi > writing output... [ 69%] format_psd-fi > writing output... [ 70%] format_psd-pil > writing output... [ 71%] format_ras-fi > writing output... [ 72%] format_raw-fi > writing output... [ 73%] format_screengrab > writing output... [ 74%] format_sgi-fi > writing output... [ 75%] format_sgi-pil > writing output... [ 75%] format_spe > writing output... [ 76%] format_spider-pil > writing output... [ 77%] format_sun-pil > writing output... [ 78%] format_swf > writing output... [ 79%] format_targa-fi > writing output... [ 80%] format_tga-pil > writing output... [ 81%] format_tiff > writing output... [ 82%] format_tiff-fi > writing output... [ 83%] format_tiff-pil > writing output... [ 83%] format_wbmp-fi > writing output... [ 84%] format_webp-fi > writing output... [ 85%] format_wmf-pil > writing output... [ 86%] format_xbm-fi > writing output... [ 87%] format_xbm-pil > writing output... [ 88%] format_xpm-fi > writing output... [ 89%] format_xpm-pil > writing output... [ 90%] format_xvthumb-pil > writing output... [ 91%] formats > writing output... [ 91%] index > writing output... [ 92%] installation > writing output... [ 93%] plugins > writing output... [ 94%] releasenotes > writing output... [ 95%] scipy > writing output... [ 96%] sec_developer > writing output... [ 97%] sec_gettingstarted > writing output... [ 98%] sec_reference > writing output... [ 99%] standardimages > writing output... [100%] userapi > > generating indices... genindex py-modindex done > writing additional pages... search done > copying static files... done > copying extra files... done > dumping search index in English (code: en)... done > dumping object inventory... done > build succeeded, 2 warnings. > > The HTML pages are in _build/html. > > Build finished. The HTML pages are in _build/html. > make[2]: Leaving directory '/<<PKGBUILDDIR>>/docs' > make[1]: Leaving directory '/<<PKGBUILDDIR>>' > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:239: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build; > python3.9 -m pytest tests > ============================= test session starts > ============================== > platform linux -- Python 3.9.12, pytest-6.2.5, py-1.10.0, pluggy-1.0.0 > rootdir: /<<PKGBUILDDIR>> > collected 124 items > > tests/test_avbin.py .sssss [ > 4%] > tests/test_bin.py xxx [ > 7%] > tests/test_bsdf.py s......s [ > 13%] > tests/test_core.py sss..........F. [ > 25%] > tests/test_dicom.py ..ssss [ > 30%] > tests/test_fei_tiff.py s [ > 31%] > tests/test_ffmpeg.py ..sssssss...ssss [ > 44%] > tests/test_ffmpeg_info.py ...s [ > 47%] > tests/test_fits.py ss [ > 49%] > tests/test_format.py ......... [ > 56%] > tests/test_freeimage.py sssssssssssssss [ > 68%] > tests/test_gdal.py s [ > 69%] > tests/test_grab.py .. [ > 70%] > tests/test_lytro.py ssssssss [ > 77%] > tests/test_meta.py .... [ > 80%] > tests/test_npz.py .. [ > 82%] > tests/test_pillow.py .Fs.s.Fsss. [ > 91%] > tests/test_simpleitk.py s [ > 91%] > tests/test_spe.py .s [ > 93%] > tests/test_swf.py ssssss [ > 98%] > tests/test_tifffile.py .s > [100%] > > =================================== FAILURES > =================================== > ________________________________ test_functions > ________________________________ > > def test_functions(): > """ Test the user-facing API functions """ > > # Test help(), it prints stuff, so we just check whether that goes ok > imageio.help() # should print overview > imageio.help("PNG") # should print about PNG > > fname1 = get_remote_file("images/chelsea.png", test_dir) > fname2 = fname1[:-3] + "jpg" > fname3 = fname1[:-3] + "notavalidext" > open(fname3, "wb") > > # Test read() > R1 = imageio.read(fname1) > R2 = imageio.read(fname1, "png") > assert R1.format is R2.format > # Fail > raises(ValueError, imageio.read, fname3) # existing but not readable > raises(FileNotFoundError, imageio.read, "notexisting.barf") > raises(IndexError, imageio.read, fname1, "notexistingformat") > > # Test save() > W1 = imageio.save(fname2) > W2 = imageio.save(fname2, "JPG") > W1.close() > W2.close() > assert W1.format is W2.format > # Fail > raises(FileNotFoundError, imageio.save, > "~/dirdoesnotexist/wtf.notexistingfile") > > # Test imread() > im1 = imageio.imread(fname1) > im2 = imageio.imread(fname1, "png") > assert im1.shape[2] == 3 > assert np.all(im1 == im2) > > # Test imsave() > if os.path.isfile(fname2): > os.remove(fname2) > assert not os.path.isfile(fname2) > imageio.imsave(fname2, im1[:, :, 0]) > imageio.imsave(fname2, im1) > assert os.path.isfile(fname2) > > # Test mimread() > fname3 = get_remote_file("images/newtonscradle.gif", test_dir) > > ims = imageio.mimread(fname3) > > tests/test_core.py:483: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:295: in mimread > reader = read(uri, format, "I", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillowmulti.py:57: in _open > return PillowFormat.Reader._open(self) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.GifImagePlugin.GifImageFile image mode=P size=200x150 at > 0x7FE2E0EFBA00> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 384 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > ----------------------------- Captured stdout call > ----------------------------- > TIFF - TIFF format [.tif, .tiff, .stk, .lsm] > BMP-PIL - Windows Bitmap [.bmp] > BUFR-PIL - BUFR [.bufr] > CUR-PIL - Windows Cursor [.cur] > DCX-PIL - Intel DCX [.dcx] > DDS-PIL - DirectDraw Surface [.dds] > DIB-PIL - Windows Bitmap [] > EPS-PIL - Encapsulated Postscript [.ps, .eps] > FITS-PIL - FITS [.fit, .fits] > FLI-PIL - Autodesk FLI/FLC Animation [.fli, .flc] > FPX-PIL - FlashPix [.fpx] > FTEX-PIL - Texture File Format (IW2:EOC) [.ftc, .ftu] > GBR-PIL - GIMP brush file [.gbr] > GIF-PIL - Static and animated gif (Pillow) [.gif] > GRIB-PIL - GRIB [.grib] > HDF5-PIL - HDF5 [.h5, .hdf] > ICNS-PIL - Mac OS icns resource [.icns] > ICO-PIL - Windows Icon [.ico] > IM-PIL - IFUNC Image Memory [.im] > IMT-PIL - IM Tools [] > IPTC-PIL - IPTC/NAA [.iim] > JPEG-PIL - JPEG (ISO 10918) [.jfif, .jpe, .jpg, .jpeg] > JPEG2000-PIL - JPEG 2000 (ISO 15444) [.jp2, .j2k, .jpc, .jpf, .jpx, .j2c] > MCIDAS-PIL - McIdas area file [] > MIC-PIL - Microsoft Image Composer [.mic] > MPO-PIL - MPO (CIPA DC-007) [.mpo] > MSP-PIL - Windows Paint [.msp] > PCD-PIL - Kodak PhotoCD [.pcd] > PCX-PIL - Paintbrush [.pcx] > PIXAR-PIL - PIXAR raster image [.pxr] > PNG-PIL - Portable network graphics [.png] > PPM-PIL - Pbmplus image [.pbm, .pgm, .ppm] > PSD-PIL - Adobe Photoshop [.psd] > SGI-PIL - SGI Image File Format [.bw, .rgb, .rgba, .sgi] > SPIDER-PIL - Spider 2D image [] > SUN-PIL - Sun Raster File [.ras] > TGA-PIL - Targa [.tga] > TIFF-PIL - TIFF format (Pillow) [.tif, .tiff] > WMF-PIL - Windows Metafile [.wmf, .emf] > XBM-PIL - X11 Bitmap [.xbm] > XPM-PIL - X11 Pixel Map [.xpm] > XVTHUMB-PIL - XV thumbnail image [] > SCREENGRAB - Grab screenshots (Windows and OS X only) [] > CLIPBOARDGRAB - Grab from clipboard (Windows only) [] > BMP-FI - Windows or OS/2 Bitmap [.bmp] > CUT-FI - Dr. Halo [.cut] > DDS-FI - DirectX Surface [.dds] > EXR-FI - ILM OpenEXR [.exr] > G3-FI - Raw fax format CCITT G.3 [.g3] > HDR-FI - High Dynamic Range Image [.hdr] > IFF-FI - IFF Interleaved Bitmap [.iff, .lbm] > J2K-FI - JPEG-2000 codestream [.j2k, .j2c] > JNG-FI - JPEG Network Graphics [.jng] > JP2-FI - JPEG-2000 File Format [.jp2] > JPEG-FI - JPEG - JFIF Compliant [.jpg, .jif, .jpeg, .jpe] > JPEG-XR-FI - JPEG XR image format [.jxr, .wdp, .hdp] > KOALA-FI - C64 Koala Graphics [.koa] > PBM-FI - Portable Bitmap (ASCII) [.pbm] > PBMRAW-FI - Portable Bitmap (RAW) [.pbm] > PCD-FI - Kodak PhotoCD [.pcd] > PCX-FI - Zsoft Paintbrush [.pcx] > PFM-FI - Portable floatmap [.pfm] > PGM-FI - Portable Greymap (ASCII) [.pgm] > PGMRAW-FI - Portable Greymap (RAW) [.pgm] > PICT-FI - Macintosh PICT [.pct, .pict, .pic] > PNG-FI - Portable Network Graphics [.png] > PPM-FI - Portable Pixelmap (ASCII) [.ppm] > PPMRAW-FI - Portable Pixelmap (RAW) [.ppm] > PSD-FI - Adobe Photoshop [.psd] > RAS-FI - Sun Raster Image [.ras] > RAW-FI - RAW camera image [.3fr, .arw, .bay, .bmq, .cap, .cine, .cr2, .crw, > .cs1, .dc2, .dcr, .drf, .dsc, .dng, .erf, .fff, .ia, .iiq, .k25, .kc2, .kdc, > .mdc, .mef, .mos, .mrw, .nef, .nrw, .orf, .pef, .ptx, .pxn, .qtk, .raf, .raw, > .rdc, .rw2, .rwl, .rwz, .sr2, .srf, .srw, .sti] > SGI-FI - SGI Image Format [.sgi, .rgb, .rgba, .bw] > TARGA-FI - Truevision Targa [.tga, .targa] > TIFF-FI - Tagged Image File Format [.tif, .tiff] > WBMP-FI - Wireless Bitmap [.wap, .wbmp, .wbm] > WEBP-FI - Google WebP image format [.webp] > XBM-FI - X11 Bitmap Format [.xbm] > XPM-FI - X11 Pixmap Format [.xpm] > ICO-FI - Windows icon [.ico] > GIF-FI - Static and animated gif (FreeImage) [.gif] > FFMPEG - Many video formats and cameras (via ffmpeg) [.mov, .avi, .mpg, > .mpeg, .mp4, .mkv, .wmv] > AVBIN - Many video formats (via AvBin, i.e. libav library) [.mov, .avi, .mp4, > .mpg, .mpeg, .mkv] > BSDF - Format based on the Binary Structured Data Format [.bsdf] > DICOM - Digital Imaging and Communications in Medicine [.dcm, .ct, .mri] > NPZ - Numpy's compressed array format [.npz] > SWF - Shockwave flash [.swf] > FEI - FEI-SEM TIFF format [.tif, .tiff] > FITS - Flexible Image Transport System (FITS) format [.fits, .fit, .fts] > ITK - Insight Segmentation and Registration Toolkit (ITK) format [.gipl, > .ipl, .mha, .mhd, .nhdr, .nii, .nrrd, .vtk, .bmp, .jpeg, .jpg, .png, .tiff, > .tif, .dicom, .gdcm] > GDAL - Geospatial Data Abstraction Library [.tiff, .tif, .img, .ecw, .jpg, > .jpeg] > LYTRO-LFR - Lytro Illum lfr image file [.lfr] > LYTRO-ILLUM-RAW - Lytro Illum raw image file [.raw] > LYTRO-LFP - Lytro F01 lfp image file [.lfp] > LYTRO-F01-RAW - Lytro F01 raw image file [.raw] > SPE - SPE file format [.spe] > DUMMY - An example format that does nothing. [.foobar, .nonexistentext] > PNG-PIL - Portable network graphics > > A PNG format based on Pillow. > > This format supports grayscale, RGB and RGBA images. > > Parameters for reading > ---------------------- > ignoregamma : bool > Avoid gamma correction. Default True. > pilmode : str > From the Pillow documentation: > > * 'L' (8-bit pixels, grayscale) > * 'P' (8-bit pixels, mapped to any other mode using a color palette) > * 'RGB' (3x8-bit pixels, true color) > * 'RGBA' (4x8-bit pixels, true color with transparency mask) > * 'CMYK' (4x8-bit pixels, color separation) > * 'YCbCr' (3x8-bit pixels, color video format) > * 'I' (32-bit signed integer pixels) > * 'F' (32-bit floating point pixels) > > PIL also provides limited support for a few special modes, including > 'LA' ('L' with alpha), 'RGBX' (true color with padding) and 'RGBa' > (true color with premultiplied alpha). > > When translating a color image to grayscale (mode 'L', 'I' or 'F'), > the library uses the ITU-R 601-2 luma transform:: > > L = R * 299/1000 + G * 587/1000 + B * 114/1000 > as_gray : bool > If True, the image is converted using mode 'F'. When `mode` is > not None and `as_gray` is True, the image is first converted > according to `mode`, and the result is then "flattened" using > mode 'F'. > > Parameters for saving > --------------------- > optimize : bool > If present and true, instructs the PNG writer to make the output file > as small as possible. This includes extra processing in order to find > optimal encoder settings. > transparency: > This option controls what color image to mark as transparent. > dpi: tuple of two scalars > The desired dpi in each direction. > pnginfo: PIL.PngImagePlugin.PngInfo > Object containing text tags. > compress_level: int > ZLIB compression level, a number between 0 and 9: 1 gives best speed, > 9 gives best compression, 0 gives no compression at all. Default is 9. > When ``optimize`` option is True ``compress_level`` has no effect > (it is set to 9 regardless of a value passed). > compression: int > Compatibility with the freeimage PNG format. If given, it overrides > compress_level. > icc_profile: > The ICC Profile to include in the saved file. > bits (experimental): int > This option controls how many bits to store. If omitted, > the PNG writer uses 8 bits (256 colors). > quantize: > Compatibility with the freeimage PNG format. If given, it overrides > bits. In this case, given as a number between 1-256. > dictionary (experimental): dict > Set the ZLIB encoder dictionary. > > ___________________________________ test_png > ___________________________________ > > def test_png(): > > for isfloat in (False, True): > for crop in (0, 1, 2): > for colors in (0, 1, 3, 4): > fname = fnamebase + "%i.%i.%i.png" % (isfloat, crop, > colors) > rim = get_ref_im(colors, crop, isfloat) > imageio.imsave(fname, rim) > im = imageio.imread(fname) > mul = 255 if isfloat else 1 > assert_close(rim * mul, im, 0.1) # lossless > > # Parameters > im = imageio.imread("imageio:chelsea.png", ignoregamma=True) > imageio.imsave(fnamebase + ".png", im, interlaced=True) > > # Parameter fail > raises(TypeError, imageio.imread, "imageio:chelsea.png", > notavalidk=True) > raises(TypeError, imageio.imsave, fnamebase + ".png", im, > notavalidk=True) > > # Compression > imageio.imsave(fnamebase + "1.png", im, compression=0) > imageio.imsave(fnamebase + "2.png", im, compression=9) > s1 = os.stat(fnamebase + "1.png").st_size > s2 = os.stat(fnamebase + "2.png").st_size > assert s2 < s1 > # Fail > raises(ValueError, imageio.imsave, fnamebase + ".png", im, > compression=12) > > # Quantize > imageio.imsave(fnamebase + "1.png", im, quantize=256) > imageio.imsave(fnamebase + "2.png", im, quantize=4) > > > im = imageio.imread(fnamebase + "2.png") # touch palette read code > > tests/test_pillow.py:132: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:221: in imread > reader = read(uri, format, "i", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillow.py:276: in _open > return PillowFormat.Reader._open(self, pilmode=pilmode, as_gray=as_gray) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.PngImagePlugin.PngImageFile image mode=P size=451x300 at > 0x7FE2E0E80610> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 12 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > ------------------------------ Captured log call > ------------------------------- > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > ______________________________ test_animated_gif > _______________________________ > > def test_animated_gif(): > > # Read newton's cradle > > ims = imageio.mimread("imageio:newtonscradle.gif") > > tests/test_pillow.py:253: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:295: in mimread > reader = read(uri, format, "I", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillowmulti.py:57: in _open > return PillowFormat.Reader._open(self) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.GifImagePlugin.GifImageFile image mode=P size=200x150 at > 0x7FE2E2C2FD30> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 384 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > =============================== warnings summary > =============================== > imageio/plugins/ffmpeg.py:1059 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build/imageio/plugins/ffmpeg.py:1059: > DeprecationWarning: invalid escape sequence \. > matches = re.findall(" ([0-9]+\.?[0-9]*) (tbr|fps)", line) > > .pybuild/cpython3_3.9_imageio/build/tests/test_bsdf.py: 12 warnings > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build/imageio/plugins/_bsdf.py:418: > DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead > logger.warn("BSDF warning: no extension found for %r" % ext_id) > > .pybuild/cpython3_3.9_imageio/build/tests/test_core.py: 4 warnings > .pybuild/cpython3_3.9_imageio/build/tests/test_dicom.py: 2 warnings > .pybuild/cpython3_3.9_imageio/build/tests/test_format.py: 4 warnings > .pybuild/cpython3_3.9_imageio/build/tests/test_grab.py: 2 warnings > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build/imageio/core/util.py:562: > DeprecationWarning: Deprecated since Python 3.4. Use > importlib.util.find_spec() instead. > return importlib.find_loader(module_name) is not None > > .pybuild/cpython3_3.9_imageio/build/tests/test_pillow.py::test_png > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build/imageio/plugins/pillow.py:317: > UserWarning: PIL PNG writer cannot produce interlaced images. > warn("PIL PNG writer cannot produce interlaced images.") > > -- Docs: https://docs.pytest.org/en/stable/warnings.html > =========================== short test summary info > ============================ > FAILED tests/test_core.py::test_functions - ValueError: cannot reshape array > ... > FAILED tests/test_pillow.py::test_png - ValueError: cannot reshape array of > s... > FAILED tests/test_pillow.py::test_animated_gif - ValueError: cannot reshape > a... > ====== 3 failed, 51 passed, 67 skipped, 3 xfailed, 26 warnings in 19.46s > ======= > E: pybuild pybuild:369: test: plugin distutils failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_imageio/build; python3.9 -m pytest > tests > I: pybuild base:239: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build; python3.10 -m pytest > tests > ============================= test session starts > ============================== > platform linux -- Python 3.10.4, pytest-6.2.5, py-1.10.0, pluggy-1.0.0 > rootdir: /<<PKGBUILDDIR>> > collected 124 items > > tests/test_avbin.py .sssss [ > 4%] > tests/test_bin.py xxx [ > 7%] > tests/test_bsdf.py s......s [ > 13%] > tests/test_core.py sss..........F. [ > 25%] > tests/test_dicom.py ..ssss [ > 30%] > tests/test_fei_tiff.py s [ > 31%] > tests/test_ffmpeg.py ..sssssss...ssss [ > 44%] > tests/test_ffmpeg_info.py ...s [ > 47%] > tests/test_fits.py ss [ > 49%] > tests/test_format.py ......... [ > 56%] > tests/test_freeimage.py sssssssssssssss [ > 68%] > tests/test_gdal.py s [ > 69%] > tests/test_grab.py .. [ > 70%] > tests/test_lytro.py ssssssss [ > 77%] > tests/test_meta.py .... [ > 80%] > tests/test_npz.py .. [ > 82%] > tests/test_pillow.py .Fs.s.Fsss. [ > 91%] > tests/test_simpleitk.py s [ > 91%] > tests/test_spe.py .s [ > 93%] > tests/test_swf.py ssssss [ > 98%] > tests/test_tifffile.py .s > [100%] > > =================================== FAILURES > =================================== > ________________________________ test_functions > ________________________________ > > def test_functions(): > """ Test the user-facing API functions """ > > # Test help(), it prints stuff, so we just check whether that goes ok > imageio.help() # should print overview > imageio.help("PNG") # should print about PNG > > fname1 = get_remote_file("images/chelsea.png", test_dir) > fname2 = fname1[:-3] + "jpg" > fname3 = fname1[:-3] + "notavalidext" > open(fname3, "wb") > > # Test read() > R1 = imageio.read(fname1) > R2 = imageio.read(fname1, "png") > assert R1.format is R2.format > # Fail > raises(ValueError, imageio.read, fname3) # existing but not readable > raises(FileNotFoundError, imageio.read, "notexisting.barf") > raises(IndexError, imageio.read, fname1, "notexistingformat") > > # Test save() > W1 = imageio.save(fname2) > W2 = imageio.save(fname2, "JPG") > W1.close() > W2.close() > assert W1.format is W2.format > # Fail > raises(FileNotFoundError, imageio.save, > "~/dirdoesnotexist/wtf.notexistingfile") > > # Test imread() > im1 = imageio.imread(fname1) > im2 = imageio.imread(fname1, "png") > assert im1.shape[2] == 3 > assert np.all(im1 == im2) > > # Test imsave() > if os.path.isfile(fname2): > os.remove(fname2) > assert not os.path.isfile(fname2) > imageio.imsave(fname2, im1[:, :, 0]) > imageio.imsave(fname2, im1) > assert os.path.isfile(fname2) > > # Test mimread() > fname3 = get_remote_file("images/newtonscradle.gif", test_dir) > > ims = imageio.mimread(fname3) > > tests/test_core.py:483: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:295: in mimread > reader = read(uri, format, "I", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillowmulti.py:57: in _open > return PillowFormat.Reader._open(self) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.GifImagePlugin.GifImageFile image mode=P size=200x150 at > 0x7FE9AC3D7C10> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 384 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > ----------------------------- Captured stdout call > ----------------------------- > TIFF - TIFF format [.tif, .tiff, .stk, .lsm] > BMP-PIL - Windows Bitmap [.bmp] > BUFR-PIL - BUFR [.bufr] > CUR-PIL - Windows Cursor [.cur] > DCX-PIL - Intel DCX [.dcx] > DDS-PIL - DirectDraw Surface [.dds] > DIB-PIL - Windows Bitmap [] > EPS-PIL - Encapsulated Postscript [.ps, .eps] > FITS-PIL - FITS [.fit, .fits] > FLI-PIL - Autodesk FLI/FLC Animation [.fli, .flc] > FPX-PIL - FlashPix [.fpx] > FTEX-PIL - Texture File Format (IW2:EOC) [.ftc, .ftu] > GBR-PIL - GIMP brush file [.gbr] > GIF-PIL - Static and animated gif (Pillow) [.gif] > GRIB-PIL - GRIB [.grib] > HDF5-PIL - HDF5 [.h5, .hdf] > ICNS-PIL - Mac OS icns resource [.icns] > ICO-PIL - Windows Icon [.ico] > IM-PIL - IFUNC Image Memory [.im] > IMT-PIL - IM Tools [] > IPTC-PIL - IPTC/NAA [.iim] > JPEG-PIL - JPEG (ISO 10918) [.jfif, .jpe, .jpg, .jpeg] > JPEG2000-PIL - JPEG 2000 (ISO 15444) [.jp2, .j2k, .jpc, .jpf, .jpx, .j2c] > MCIDAS-PIL - McIdas area file [] > MIC-PIL - Microsoft Image Composer [.mic] > MPO-PIL - MPO (CIPA DC-007) [.mpo] > MSP-PIL - Windows Paint [.msp] > PCD-PIL - Kodak PhotoCD [.pcd] > PCX-PIL - Paintbrush [.pcx] > PIXAR-PIL - PIXAR raster image [.pxr] > PNG-PIL - Portable network graphics [.png] > PPM-PIL - Pbmplus image [.pbm, .pgm, .ppm] > PSD-PIL - Adobe Photoshop [.psd] > SGI-PIL - SGI Image File Format [.bw, .rgb, .rgba, .sgi] > SPIDER-PIL - Spider 2D image [] > SUN-PIL - Sun Raster File [.ras] > TGA-PIL - Targa [.tga] > TIFF-PIL - TIFF format (Pillow) [.tif, .tiff] > WMF-PIL - Windows Metafile [.wmf, .emf] > XBM-PIL - X11 Bitmap [.xbm] > XPM-PIL - X11 Pixel Map [.xpm] > XVTHUMB-PIL - XV thumbnail image [] > SCREENGRAB - Grab screenshots (Windows and OS X only) [] > CLIPBOARDGRAB - Grab from clipboard (Windows only) [] > BMP-FI - Windows or OS/2 Bitmap [.bmp] > CUT-FI - Dr. Halo [.cut] > DDS-FI - DirectX Surface [.dds] > EXR-FI - ILM OpenEXR [.exr] > G3-FI - Raw fax format CCITT G.3 [.g3] > HDR-FI - High Dynamic Range Image [.hdr] > IFF-FI - IFF Interleaved Bitmap [.iff, .lbm] > J2K-FI - JPEG-2000 codestream [.j2k, .j2c] > JNG-FI - JPEG Network Graphics [.jng] > JP2-FI - JPEG-2000 File Format [.jp2] > JPEG-FI - JPEG - JFIF Compliant [.jpg, .jif, .jpeg, .jpe] > JPEG-XR-FI - JPEG XR image format [.jxr, .wdp, .hdp] > KOALA-FI - C64 Koala Graphics [.koa] > PBM-FI - Portable Bitmap (ASCII) [.pbm] > PBMRAW-FI - Portable Bitmap (RAW) [.pbm] > PCD-FI - Kodak PhotoCD [.pcd] > PCX-FI - Zsoft Paintbrush [.pcx] > PFM-FI - Portable floatmap [.pfm] > PGM-FI - Portable Greymap (ASCII) [.pgm] > PGMRAW-FI - Portable Greymap (RAW) [.pgm] > PICT-FI - Macintosh PICT [.pct, .pict, .pic] > PNG-FI - Portable Network Graphics [.png] > PPM-FI - Portable Pixelmap (ASCII) [.ppm] > PPMRAW-FI - Portable Pixelmap (RAW) [.ppm] > PSD-FI - Adobe Photoshop [.psd] > RAS-FI - Sun Raster Image [.ras] > RAW-FI - RAW camera image [.3fr, .arw, .bay, .bmq, .cap, .cine, .cr2, .crw, > .cs1, .dc2, .dcr, .drf, .dsc, .dng, .erf, .fff, .ia, .iiq, .k25, .kc2, .kdc, > .mdc, .mef, .mos, .mrw, .nef, .nrw, .orf, .pef, .ptx, .pxn, .qtk, .raf, .raw, > .rdc, .rw2, .rwl, .rwz, .sr2, .srf, .srw, .sti] > SGI-FI - SGI Image Format [.sgi, .rgb, .rgba, .bw] > TARGA-FI - Truevision Targa [.tga, .targa] > TIFF-FI - Tagged Image File Format [.tif, .tiff] > WBMP-FI - Wireless Bitmap [.wap, .wbmp, .wbm] > WEBP-FI - Google WebP image format [.webp] > XBM-FI - X11 Bitmap Format [.xbm] > XPM-FI - X11 Pixmap Format [.xpm] > ICO-FI - Windows icon [.ico] > GIF-FI - Static and animated gif (FreeImage) [.gif] > FFMPEG - Many video formats and cameras (via ffmpeg) [.mov, .avi, .mpg, > .mpeg, .mp4, .mkv, .wmv] > AVBIN - Many video formats (via AvBin, i.e. libav library) [.mov, .avi, .mp4, > .mpg, .mpeg, .mkv] > BSDF - Format based on the Binary Structured Data Format [.bsdf] > DICOM - Digital Imaging and Communications in Medicine [.dcm, .ct, .mri] > NPZ - Numpy's compressed array format [.npz] > SWF - Shockwave flash [.swf] > FEI - FEI-SEM TIFF format [.tif, .tiff] > FITS - Flexible Image Transport System (FITS) format [.fits, .fit, .fts] > ITK - Insight Segmentation and Registration Toolkit (ITK) format [.gipl, > .ipl, .mha, .mhd, .nhdr, .nii, .nrrd, .vtk, .bmp, .jpeg, .jpg, .png, .tiff, > .tif, .dicom, .gdcm] > GDAL - Geospatial Data Abstraction Library [.tiff, .tif, .img, .ecw, .jpg, > .jpeg] > LYTRO-LFR - Lytro Illum lfr image file [.lfr] > LYTRO-ILLUM-RAW - Lytro Illum raw image file [.raw] > LYTRO-LFP - Lytro F01 lfp image file [.lfp] > LYTRO-F01-RAW - Lytro F01 raw image file [.raw] > SPE - SPE file format [.spe] > DUMMY - An example format that does nothing. [.foobar, .nonexistentext] > PNG-PIL - Portable network graphics > > A PNG format based on Pillow. > > This format supports grayscale, RGB and RGBA images. > > Parameters for reading > ---------------------- > ignoregamma : bool > Avoid gamma correction. Default True. > pilmode : str > From the Pillow documentation: > > * 'L' (8-bit pixels, grayscale) > * 'P' (8-bit pixels, mapped to any other mode using a color palette) > * 'RGB' (3x8-bit pixels, true color) > * 'RGBA' (4x8-bit pixels, true color with transparency mask) > * 'CMYK' (4x8-bit pixels, color separation) > * 'YCbCr' (3x8-bit pixels, color video format) > * 'I' (32-bit signed integer pixels) > * 'F' (32-bit floating point pixels) > > PIL also provides limited support for a few special modes, including > 'LA' ('L' with alpha), 'RGBX' (true color with padding) and 'RGBa' > (true color with premultiplied alpha). > > When translating a color image to grayscale (mode 'L', 'I' or 'F'), > the library uses the ITU-R 601-2 luma transform:: > > L = R * 299/1000 + G * 587/1000 + B * 114/1000 > as_gray : bool > If True, the image is converted using mode 'F'. When `mode` is > not None and `as_gray` is True, the image is first converted > according to `mode`, and the result is then "flattened" using > mode 'F'. > > Parameters for saving > --------------------- > optimize : bool > If present and true, instructs the PNG writer to make the output file > as small as possible. This includes extra processing in order to find > optimal encoder settings. > transparency: > This option controls what color image to mark as transparent. > dpi: tuple of two scalars > The desired dpi in each direction. > pnginfo: PIL.PngImagePlugin.PngInfo > Object containing text tags. > compress_level: int > ZLIB compression level, a number between 0 and 9: 1 gives best speed, > 9 gives best compression, 0 gives no compression at all. Default is 9. > When ``optimize`` option is True ``compress_level`` has no effect > (it is set to 9 regardless of a value passed). > compression: int > Compatibility with the freeimage PNG format. If given, it overrides > compress_level. > icc_profile: > The ICC Profile to include in the saved file. > bits (experimental): int > This option controls how many bits to store. If omitted, > the PNG writer uses 8 bits (256 colors). > quantize: > Compatibility with the freeimage PNG format. If given, it overrides > bits. In this case, given as a number between 1-256. > dictionary (experimental): dict > Set the ZLIB encoder dictionary. > > ___________________________________ test_png > ___________________________________ > > def test_png(): > > for isfloat in (False, True): > for crop in (0, 1, 2): > for colors in (0, 1, 3, 4): > fname = fnamebase + "%i.%i.%i.png" % (isfloat, crop, > colors) > rim = get_ref_im(colors, crop, isfloat) > imageio.imsave(fname, rim) > im = imageio.imread(fname) > mul = 255 if isfloat else 1 > assert_close(rim * mul, im, 0.1) # lossless > > # Parameters > im = imageio.imread("imageio:chelsea.png", ignoregamma=True) > imageio.imsave(fnamebase + ".png", im, interlaced=True) > > # Parameter fail > raises(TypeError, imageio.imread, "imageio:chelsea.png", > notavalidk=True) > raises(TypeError, imageio.imsave, fnamebase + ".png", im, > notavalidk=True) > > # Compression > imageio.imsave(fnamebase + "1.png", im, compression=0) > imageio.imsave(fnamebase + "2.png", im, compression=9) > s1 = os.stat(fnamebase + "1.png").st_size > s2 = os.stat(fnamebase + "2.png").st_size > assert s2 < s1 > # Fail > raises(ValueError, imageio.imsave, fnamebase + ".png", im, > compression=12) > > # Quantize > imageio.imsave(fnamebase + "1.png", im, quantize=256) > imageio.imsave(fnamebase + "2.png", im, quantize=4) > > > im = imageio.imread(fnamebase + "2.png") # touch palette read code > > tests/test_pillow.py:132: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:221: in imread > reader = read(uri, format, "i", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillow.py:276: in _open > return PillowFormat.Reader._open(self, pilmode=pilmode, as_gray=as_gray) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.PngImagePlugin.PngImageFile image mode=P size=451x300 at > 0x7FE9AC454AF0> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 12 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > ------------------------------ Captured log call > ------------------------------- > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > WARNING root:util.py:61 Lossy conversion from float32 to uint8. Range [0, > 1]. Convert image to uint8 prior to saving to suppress this warning. > ______________________________ test_animated_gif > _______________________________ > > def test_animated_gif(): > > # Read newton's cradle > > ims = imageio.mimread("imageio:newtonscradle.gif") > > tests/test_pillow.py:253: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > imageio/core/functions.py:295: in mimread > reader = read(uri, format, "I", **kwargs) > imageio/core/functions.py:143: in get_reader > return format.get_reader(request) > imageio/core/format.py:174: in get_reader > return self.Reader(self, request) > imageio/core/format.py:224: in __init__ > self._open(**self.request.kwargs.copy()) > imageio/plugins/pillowmulti.py:57: in _open > return PillowFormat.Reader._open(self) > imageio/plugins/pillow.py:128: in _open > mode=pilmode, as_gray=as_gray, is_gray=_palette_is_grayscale(self._im) > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > pil_image = <PIL.GifImagePlugin.GifImageFile image mode=P size=200x150 at > 0x7FE9AC51C640> > > def _palette_is_grayscale(pil_image): > if pil_image.mode != "P": > return False > # get palette as an array with R, G, B columns > > palette = np.asarray(pil_image.getpalette()).reshape((256, 3)) > E ValueError: cannot reshape array of size 384 into shape (256,3) > > imageio/plugins/pillow.py:519: ValueError > =============================== warnings summary > =============================== > imageio/plugins/ffmpeg.py:1059 > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build/imageio/plugins/ffmpeg.py:1059: > DeprecationWarning: invalid escape sequence '\.' > matches = re.findall(" ([0-9]+\.?[0-9]*) (tbr|fps)", line) > > .pybuild/cpython3_3.10_imageio/build/tests/test_bsdf.py: 12 warnings > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build/imageio/plugins/_bsdf.py:418: > DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead > logger.warn("BSDF warning: no extension found for %r" % ext_id) > > .pybuild/cpython3_3.10_imageio/build/tests/test_core.py: 4 warnings > .pybuild/cpython3_3.10_imageio/build/tests/test_dicom.py: 2 warnings > .pybuild/cpython3_3.10_imageio/build/tests/test_format.py: 4 warnings > .pybuild/cpython3_3.10_imageio/build/tests/test_grab.py: 2 warnings > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build/imageio/core/util.py:562: > DeprecationWarning: Deprecated since Python 3.4 and slated for removal in > Python 3.12; use importlib.util.find_spec() instead > return importlib.find_loader(module_name) is not None > > .pybuild/cpython3_3.10_imageio/build/tests/test_ffmpeg.py::test_framecatcher > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build/imageio/plugins/ffmpeg.py:898: > DeprecationWarning: setDaemon() is deprecated, set the daemon attribute > instead > self.setDaemon(True) # do not let this thread hold up Python shutdown > > .pybuild/cpython3_3.10_imageio/build/tests/test_pillow.py::test_png > > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build/imageio/plugins/pillow.py:317: > UserWarning: PIL PNG writer cannot produce interlaced images. > warn("PIL PNG writer cannot produce interlaced images.") > > -- Docs: https://docs.pytest.org/en/stable/warnings.html > =========================== short test summary info > ============================ > FAILED tests/test_core.py::test_functions - ValueError: cannot reshape array > ... > FAILED tests/test_pillow.py::test_png - ValueError: cannot reshape array of > s... > FAILED tests/test_pillow.py::test_animated_gif - ValueError: cannot reshape > a... > ====== 3 failed, 51 passed, 67 skipped, 3 xfailed, 27 warnings in 19.56s > ======= > E: pybuild pybuild:369: test: plugin distutils failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_imageio/build; python3.10 -m pytest > tests > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.9 > 3.10" returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2022/04/12/python-imageio_2.4.1-4_unstable.log All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20220412;users=lu...@debian.org or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20220412&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! If you reassign this bug to another package, please marking it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.