Commit Graph

1909 Commits

Author SHA1 Message Date
Andrew Murray
803cdf068f Removed unnecessary parameter 2017-06-03 13:56:23 +10:00
Hugo
ffcd945ae7 Test MRL save/load roundtrip 2017-05-30 18:02:20 +03:00
hugovk
4c86ef0b52 More morph tests 2017-05-30 18:02:20 +03:00
hugovk
04f28b691e Test negate and fix a TypeError: list indices must be integers, not str 2017-05-30 18:02:20 +03:00
hugovk
761081b1e3 Test mirroring 2017-05-30 18:02:20 +03:00
Andrew Murray
2a5447691a Replaced deprecated assert_ 2017-05-30 19:55:35 +10:00
Andrew Murray
4b1784c9ad Changed file opening to use with 2017-05-30 19:54:40 +10:00
Alexander
ad883961ac fix hamming filter 2017-05-29 14:29:12 +03:00
Jon Dufresne
d244fbb299 Remove unnecessary calls to dict.keys()
iter(dict) is equivalent to iter(dict.keys()), so simply act on the dict
instead of adding the extra call.

Inspired by Lennart Regebro's PyCon 2017 presentation "Prehistoric
Patterns in Python". Available at:

https://www.youtube.com/watch?v=V5-JH23Vk0I
2017-05-28 09:55:38 -07:00
hugovk
9626e49c0b Test a McIDAS area file 2017-05-28 16:11:16 +03:00
hugovk
c70eb8a128 flake8 2017-05-27 23:55:14 +03:00
hugovk
e4d6223c94 Remove deprecated code due for removal in Pillow 4.2 (per PR #2010) 2017-05-27 23:20:03 +03:00
hugovk
e002207c5b Remove function deprecated and warning since 3.0 (1 Oct 2015) 2017-05-27 21:55:42 +03:00
hugovk
d85dffd150 Remove functions deprecated and warning since 2.0 (15 Mar 2013) and raising exceptions since 3.0 (1 Oct 2015) 2017-05-27 21:52:43 +03:00
Hugo
08c72a1720 flake8 2017-05-16 10:33:38 +03:00
hugovk
206e316c0e Test limits of arc/ellipse's start and end 2017-05-15 22:58:51 +03:00
hugovk
f1631e0d05 Test drawing a rectangle bigger than the image 2017-05-15 21:44:28 +03:00
hugovk
5871b7a5ba Test drawing a wide "line" from one point to another just draws a single point 2017-05-15 21:32:54 +03:00
Hugo
ae9181f0a4 Test polygons in RGB and L modes 2017-05-15 18:24:12 +03:00
Hugo
e77c3b3eb2 Test ellipse in RGB and L modes 2017-05-15 18:23:00 +03:00
Hugo
de1f156fcd Add test file 2017-05-15 18:13:36 +03:00
Hugo
d4a350cd79 Test chord in RGB and L modes 2017-05-15 18:04:33 +03:00
Hugo
3db1944762 Test drawing polygons with sloped and flat lines 2017-05-15 17:09:29 +03:00
Joshua Blum
a6874f01ac Add test 2017-05-13 12:07:16 -04:00
wiredfool
f6f30b1c13 Merge pull request #2521 from adw1n/master
Fix for issue #2514 - error handling mistake in _webp.c
2017-05-13 14:24:51 +01:00
Hugo
2e492f8314 Merge pull request #2295 from radarhere/executable
Set executable flag on scripts with shebang line
2017-05-13 13:20:44 +03:00
Andrew Murray
80806d349f Added append_images to PDF saving 2017-05-13 14:26:52 +10:00
adw1n
6ce11c9e8c Added tests that call _webp.WebPEncode and _webp.WebPDecode with invalid number of arguments. 2017-05-12 17:11:58 +02:00
Andrew Murray
37b293f593 Flake8 fixes 2017-04-20 21:14:23 +10:00
Hugo
a4bfe1a1d5 Test file with DPI in EXIF but not metadata, and XResolution is an int rather than tuple 2017-04-11 13:53:01 +03:00
Hugo
b2933dc1c4 Image from Simon Conseil with permission: https://github.com/python-pillow/Pillow/issues/2481#issuecomment-293215833 2017-04-11 13:45:48 +03:00
wiredfool
9207d71f30 Merge pull request #2475 from wiredfool/pr_2032
Added non-exclusive fd for test for #2330
2017-04-04 09:14:19 +01:00
wiredfool
f95c158933 added non-exclusive fd for test 2017-04-04 00:27:20 -07:00
wiredfool
0834e9491e Merge pull request #2330 from wiredfool/pr_2032
Close files after loading when possible.
2017-04-03 23:32:06 +01:00
wiredfool
bfa80cd3b3 Merge pull request #2296 from wiredfool/issue_2268
Fix Access to be reloadable -- Issue #2268
2017-04-03 23:30:25 +01:00
Hugo
53df62647a DPI is a tuple (#2472)
* DPI is a tuple

* Some EXIF only contains an X resolution for DPI

* Refactor

* Test with no DPI in EXIF

* Handle EXIF with no DPI

* Created with: exiftool "-*resolution*"= photoshop-200dpi.jpg

* Test when not in EXIF, DPI==72,72

* Use X resolution for Y, default to 72,72 dpi

* Created with: exiftool -exif:ResolutionUnit=cm photoshop-200dpi.jpg

* Test for EXIF with dpcm instead of dpi

* Convert dpcm to dpi, and default to inches if unit unknown
2017-04-03 23:28:33 +01:00
wiredfool
fe0a33173b Give up on appveyor for now, disable test 2017-04-03 11:47:20 -07:00
wiredfool
1c7e8a18d5 fix for appveyor environment? 2017-04-03 11:23:21 -07:00
wiredfool
06b61f4e5b close the mmap when closing the image #2194 2017-04-03 08:06:59 -07:00
wiredfool
db338ca19a open file check for windows, on jpeg where we don't mmap the file 2017-04-03 08:06:59 -07:00
wiredfool
86c1704646 add _close_exclusive_fp_after_load flag 2017-04-03 08:06:58 -07:00
Andrew Murray
8cd70e74cc Set executable flag on scripts with shebang line 2017-03-31 19:43:19 +11:00
Eric Soroos
6c1f923368 fixed test on python27 OMM 2017-03-22 21:20:37 +00:00
wiredfool
878881b1b9 Fix Access to be reloaded if the python interpreter is restarted when embedded. Fixes #2268. 2017-03-22 21:20:37 +00:00
wiredfool
900c5e5bf2 added unix test for fd leak 2017-03-14 23:17:22 +00:00
wiredfool
e4e0e0d2bf Adjusted test to match expected behavior 2017-03-14 23:17:22 +00:00
Marcus Brinkmann
e8122600f6 Test for: Close file handle in TiffImagePlugin when image is closed. 2017-03-14 23:17:22 +00:00
Marcus Brinkmann
5bdf1e4998 Test for libtiff, n_frames and seek. 2017-03-14 23:17:22 +00:00
Hugo
92acfca46f Test getting DPI from EXIF 2017-03-14 11:26:11 +02:00
Hugo
b7d14b04b6 Test MicImagePlugin for correctness 2017-03-13 08:18:13 +02:00
Hugo
92c32ccf37 Created in Microsoft Image Composer 1.5 from hopper.png 2017-03-13 07:58:47 +02:00
Hugo
1242b77872 Fix typos 2017-03-13 07:58:24 +02:00
wiredfool
c9f54c98a5 Merge pull request #1938 from wiredfool/python-decoder
Pure Python Decoders - fix for MSP decoding
2017-03-12 17:20:19 +00:00
wiredfool
184d4f8dc0 Test encode registry 2017-03-11 21:27:07 +00:00
wiredfool
d718d351b1 Testing empty extents 2017-03-11 16:43:44 +00:00
wiredfool
382833061e Trigger set_as_raw error 2017-03-11 16:30:28 +00:00
wiredfool
d70de6eb2d UnitTest PyDecoder 2017-03-11 15:35:03 +00:00
wiredfool
38f43c1e5f review lint 2017-03-11 13:50:19 +00:00
wiredfool
7fe29ec1c3 Added more additional files 2017-03-11 13:50:19 +00:00
Hugo
069ad8cbb0 Assert some pixel values 2017-03-11 13:50:19 +00:00
Hugo
8840f2b0fb Remove redundant assert and message 2017-03-11 13:50:19 +00:00
hugovk
38c6771be0 Load MSP files to test MSP decoder 2017-03-11 13:50:19 +00:00
hugovk
98b19a9f68 Test Windows v2 MSP files 2017-03-11 13:50:19 +00:00
hugovk
e44773c76c Test with bad checksum 2017-03-11 13:50:19 +00:00
hugovk
cac235bbd6 Created by forcing Pillow to save with checksum=0 2017-03-11 13:50:19 +00:00
wiredfool
f72ceda7c6 version 1 pickle for x-verson compatibility 2017-03-08 01:35:15 -08:00
wiredfool
4483dfbcb9 py3, pep8 2017-03-08 01:35:15 -08:00
wiredfool
1428e4140a Test for identical handling of getheader/getdata 2017-03-08 01:35:15 -08:00
wiredfool
51b46e00c2 Refactor out passed in palette handling, add ImagePalette as an option, document palette format 2017-03-08 01:35:15 -08:00
wiredfool
6559674032 Test passing in an I mode image 2017-03-08 01:35:15 -08:00
wiredfool
b7689627e8 Add tests for passing in a separate palette while saving a gif 2017-03-08 01:35:15 -08:00
Andrew Murray
9a36a51916 Test from #2375, 0ebb4cd1c0 2017-03-08 01:35:15 -08:00
Andrew Murray
af57ff8d45 Simplified code 2017-03-08 19:41:18 +11:00
Andrew Murray
bc8cd5fabf Added test 2017-03-08 19:41:18 +11:00
wiredfool
c0ca5c184d Merge pull request #2443 from hugovk/test-containerio
Test ContainerIO for correctness
2017-03-06 18:54:38 +00:00
wiredfool
9f88a55fa3 Merge pull request #2442 from hugovk/test-xvthumb
Test XVThumbImagePlugin for correctness
2017-03-06 18:53:58 +00:00
wiredfool
1a8f88986d Merge pull request #2441 from hugovk/test-bufrstub
Test BufrStubImagePlugin for correctness
2017-03-06 18:53:13 +00:00
Hugo
3e6d867ae8 Compare to a Hopper image with a similar XV palette 2017-03-06 17:33:47 +02:00
hugovk
d69e252eb8 Remove unnecessary lambda 2017-03-05 09:14:44 +02:00
hugovk
83252ca4b1 Test ContainerIO for correctness 2017-03-05 00:46:30 +02:00
hugovk
a03a6e2049 Test unexpected EOF 2017-03-04 23:33:43 +02:00
hugovk
dc3233d52c Created by editing hopper.p7 in a text editor 2017-03-04 23:31:49 +02:00
hugovk
052905bf5c Remove unnecessary lambda 2017-03-04 23:19:41 +02:00
hugovk
c79204bf08 Test XVThumbImagePlugin for correctness 2017-03-04 19:54:06 +02:00
hugovk
7371e813f6 pngtopam hopper.png | pamtoxvmini > hopper.p7 2017-03-04 19:52:49 +02:00
hugovk
35e6cb1d09 Test BufrStubImagePlugin for correctness 2017-03-04 16:35:54 +02:00
hugovk
f09427c8bd From http://www.ftp.ncep.noaa.gov/data/nccf/com/gfs/prod/gfs.2017030406/ 2017-03-04 16:25:28 +02:00
hugovk
5d2e4f48dd Reorder tests to match others 2017-03-04 16:10:52 +02:00
hugovk
0abfa08ff7 Test GribStubImagePlugin for correctness 2017-03-04 13:07:48 +02:00
hugovk
adda419ad6 From http://www.globalmarinenet.com/free-grib-file-downloads/ 2017-03-04 13:04:50 +02:00
wiredfool
5071ea2a0e Merge pull request #2425 from radarhere/tests
Added tests
2017-03-03 15:44:33 +00:00
Andrew Murray
798fde57ca Removed unused imports 2017-03-03 21:38:19 +11:00
Andrew Murray
0b93853fd8 Removed duplicate imports 2017-03-03 21:38:19 +11:00
Andrew Murray
24eb48e9e0 Removed unnecessary lambdas 2017-03-03 21:38:19 +11:00
Andrew Murray
4a6e8d7e92 Removed unnecessary pass 2017-03-03 21:38:19 +11:00
Andrew Murray
18fea70b51 Removed unused variable 2017-03-03 21:38:19 +11:00
Andrew Murray
1fcdf6a2db Removed duplicate test 2017-03-03 21:38:19 +11:00
Andrew Murray
257bc8bd4f Added tests 2017-03-03 19:45:55 +11:00
wiredfool
2fb9c1a337 Merge pull request #2431 from hugovk/test-hdf5stub
Test Hdf5StubImagePlugin for correctness
2017-03-01 09:15:53 +00:00
hugovk
0489e38a0e Test Hdf5StubImagePlugin for correctness 2017-02-28 22:23:05 +02:00
hugovk
48f6be40cc Created via http://stackoverflow.com/a/29736206/724176 2017-02-28 22:21:47 +02:00
hugovk
a7a3bcda84 Test FitsStubImagePlugin for correctness 2017-02-28 21:44:26 +02:00
hugovk
76cde2fafb convert hopper.png hopper.fits 2017-02-28 21:40:58 +02:00
Hugo
49815f8d4a Test pixar for similarity 2017-02-28 08:27:53 +02:00
Hugo
c9e139e260 Image created with Photoshop 2017-02-28 08:22:03 +02:00
Hugo
df2a031941 Test PSD with and without ICC profile 2017-02-27 17:21:27 +02:00
Hugo
1a607bfd56 Resave hopper.psd with ICC profile, using Photoshop 2017-02-27 16:45:31 +02:00
Hugo
921a25d144 Test PSD seek 2017-02-27 16:20:18 +02:00
Hugo
5c3b10ee87 Test PSD for similarity 2017-02-27 16:20:18 +02:00
Hugo
cb34b686a5 Merge pull request #1822 from radarhere/unused
Remove unused imports
2017-02-26 10:05:19 +02:00
hugovk
c4b686f82d flake8 2017-02-23 02:41:28 -08:00
hugovk
e6864d16a8 Remove unrunnable code 2017-02-23 02:41:21 -08:00
wiredfool
64cd722038 Arch qpixmap is fixed on on the docker side with the environment variable QT_QPA_PLATFORM=offscreen 2017-02-22 08:10:08 -08:00
wiredfool
0ee223aa7a Merge pull request #1390 from radarhere/deprecated_27
Removed use of spaces in TIFF kwargs, deprecated in 2.7
2017-02-22 10:13:45 +00:00
wiredfool
a4ef743b0f Merge pull request #2220 from jdufresne/image-draw-dep
Remove long deprecated ImageDraw methods
2017-02-22 10:12:05 +00:00
wiredfool
8421a076ac Merge pull request #2253 from jdufresne/devnull
Send unwanted subprocess output to /dev/null
2017-02-22 10:10:03 +00:00
hugovk
310105625c Failing test case for #2259 2017-02-22 08:16:17 +02:00
wiredfool
c05ac25d6a Merge pull request #2381 from hugovk/convert-matrix
Test matrix convert
2017-02-20 22:37:25 +00:00
wiredfool
5969a7445b Merge pull request #2394 from wiredfool/travis-docker
Additional docker builds, Arch and Debian Stretch, fix for QT tests.
2017-02-20 21:59:20 +00:00
wiredfool
d707cb3692 Tight similarity tests for XYZ conversion 2017-02-20 13:41:28 -08:00
Eric Soroos
89443ae950 B/W images don't save properly in QT4 either 2017-02-20 12:28:13 -08:00
Eric Soroos
1b94ff81fe Skip failing QPixmap/QT5 tests on Arch 2017-02-20 08:51:17 -08:00
Eric Soroos
9b82bdbb10 fix ToQimage tests for QT5 2017-02-20 08:51:17 -08:00
ces42
8fb44a2bee More explicit error message when saving to a file with invalid extension (#2399)
* more explicit error message when saving to a file with invalid extension + test
2017-02-17 13:39:16 +00:00
wiredfool
b5f6732501 Merge pull request #2397 from radarhere/psdraw
Added anchor to readthedocs URL
2017-02-17 13:37:33 +00:00
Leonid Bloch
28b818974e Allow to save tiff stacks from separate images
This is a quick solution that will allow to save tiff stacks from
separate images, e.g. from Numpy arrays.
Previously, tiff stacks could be saved only from multiframe images.
This behavior is similar to what is possible now with GIFs.

Note however, that for correct results, all the appended images should
have the same encoder{info,config} properties.

Example:

import numpy as np
from PIL import Image
a = np.ones((100,100,100), dtype=np.uint8)
imlist = []
for m in a:
    imlist.append(Image.fromarray(m))

imlist[0].save("test.tif", compression="tiff_deflate", save_all=True,
               append_images=imlist[1:])

(Should result in a 100-frame, 100x100 tiff stack.)

Signed-off-by: Leonid Bloch <leonid.bloch@esrf.fr>
2017-02-17 00:57:00 +02:00
Hugo
53e5702557 Update http to https 2017-02-14 11:27:02 +02:00
Andrew Murray
63d0a5a326 Added anchor to readthedocs URL 2017-02-11 12:47:10 +11:00
wiredfool
3ea2599984 Merge pull request #2355 from gunjambi/imagecms-preserve-aux-channels
Imagecms preserve aux channels
2017-02-07 19:38:05 +00:00
wiredfool
9c4eafc188 Merge pull request #2382 from hugovk/test-effects
Test linear and radial gradient effects
2017-02-06 21:58:41 +00:00
hugovk
d7fe8d1eb7 Linear and radial gradient: only need one target image 2017-02-06 22:03:17 +02:00
wiredfool
cdaa448782 Merge pull request #2389 from hugovk/outline
Test ImageDraw.Outline and and ImageDraw.Shape
2017-02-06 16:57:18 +00:00
wiredfool
b93025fa5b Merge pull request #2380 from evalapply/master
BUG fix: '' in image mode no longer causes a crash
2017-01-31 19:03:29 +00:00
hugovk
96dfd722c3 Test ImageDraw.Outline curve 2017-01-31 08:22:33 +02:00
hugovk
008431fe0e Test ImageDraw.Outline curve 2017-01-30 21:50:48 +02:00
Hugo
04e3f585b0 Test no change with identity matrix 2017-01-30 14:28:00 +02:00
Hugo
7fba16b074 Test for similarity 2017-01-30 14:27:29 +02:00
hugovk
07af06bf8c Expose and test radial_gradient 2017-01-29 18:44:24 +02:00
hugovk
3ead178d18 flake8 2017-01-29 18:38:06 +02:00
hugovk
47b1c66961 Expose and test linear_gradient 2017-01-29 18:17:31 +02:00
hugovk
fdf0737fcd Test matrix convert for ValueError: image has wrong mode 2017-01-29 15:55:17 +02:00
hugovk
90dac5f4dc Refactor and test matrix convert with RGB and L modes 2017-01-29 14:24:49 +02:00
hugovk
cea36587ab Test matrix convert 2017-01-29 14:03:38 +02:00
Lukasz Kozuchowski
3e317f3ca0 Empty image mode test 2017-01-29 07:50:28 +01:00
Jarkko Pöyry
fa56b3d255 Add tests for CMS transform auxiliary channel preservation. See bug #1662. 2017-01-28 22:04:49 +02:00
Andrew Murray
e67ee44ea8 Added test for missing method data in Image transform 2017-01-28 14:21:41 +11:00
Andrew Murray
cd114cef3f Added test for Image fromstring NotImplementedError 2017-01-28 14:16:39 +11:00
Andrew Murray
2039d43d85 Added test for unknown filter in Image resize 2017-01-28 14:09:28 +11:00
Andrew Murray
01cb6590a4 Added test for point operation on F mode image 2017-01-28 14:02:22 +11:00
Andrew Murray
e8495e5917 Added test for abbreviated Image paste mask syntax 2017-01-28 13:50:44 +11:00
Andrew Murray
581fef2ebd Added test for Image offset NotImplementedError 2017-01-28 13:06:28 +11:00
Jon Dufresne
cecdb2af61 Send unwanted subprocess output to /dev/null
Avoids unnecessary creation of temporary files as well as unnecessarily
storing process output in memory. The temporary files would sometimes
remain and not be cleaned up.
2017-01-26 17:31:29 -08:00
wiredfool
2df28a6601 Merge pull request #2347 from radarhere/icc_profile
Moved iCCP chunk before PLTE chunk when saving as PNG
2017-01-26 14:26:25 +00:00
wiredfool
a62f2c5b44 Merge pull request #2365 from SemanticsOS/lambdafu/dpiresolution
Default to inch-interpretation for missing ResolutionUnit in TiffImagePlugin
2017-01-26 14:22:32 +00:00
wiredfool
2d06d8550f Merge pull request #2359 from wiredfool/issue_1902
Fix for issue ImageTk Integer Overflow error
2017-01-26 14:12:32 +00:00
Eric Soroos
e66271d464 added tests for functionality in ImageTk 2017-01-26 05:31:45 -08:00
Andrew Murray
f0480de118 Restricted PNG encoderinfo chunks to valid values when saving 2017-01-21 16:57:03 +11:00
Andrew Murray
ded14572a1 Added more tests for PNG chunk ordering 2017-01-21 14:47:59 +11:00
Andrew Murray
361f579579 Moved iCCP chunk before PLTE chunk when saving as PNG 2017-01-21 13:32:22 +11:00
Eric Soroos
94cc72a2ba disable tests broken on old system versions of numpy/scipy 2017-01-20 11:35:49 -08:00
Hugo
bceee54895 Prevent nose -v printing docstrings (#2369) 2017-01-20 19:10:02 +00:00
Marcus Brinkmann
8a9bd2cdcd Default to inch-interpretation for missing ResolutionUnit in TiffImagePlugin. 2017-01-19 17:24:28 +01:00
Andrew Murray
b82151f281 Removed unused division import 2017-01-18 20:06:47 +11:00
Andrew Murray
c168f01111 Removed imports used only by comments 2017-01-18 20:06:47 +11:00
Andrew Murray
97a2d42dac Removed unused print_function imports 2017-01-18 20:06:21 +11:00
wiredfool
c1b510c72c Merge pull request #2307 from radarhere/contextmanagers
Added context managers
2017-01-17 13:20:41 +00:00
Andrew Murray
89742225bf Fixed test coverage 2017-01-07 13:20:16 +11:00
Andrew Murray
2a93cdb698 Simplified assertEqual checks to assertTrue 2017-01-07 11:35:09 +11:00
Luis G
dad5971561 Add unit tests
Add unit tests for registered_extensions
2017-01-07 11:32:16 +11:00
Andrew Murray
c5265e2100 Added test for crop operation with no argument 2017-01-03 13:30:09 +11:00
wiredfool
45138fec9b Added output checked tests for rotate with center and translate 2017-01-01 11:09:06 +00:00
wiredfool
7228de1491 test image 2016-12-31 19:31:02 +00:00
wiredfool
5fda1a803a Added resample target test 2016-12-31 19:30:26 +00:00
wiredfool
cc1ba56c28 Refactor tests 2016-12-31 19:12:39 +00:00
Marcus Brinkmann
90077b3975 Add center and translate option to Image.rotate. 2016-12-31 19:01:09 +00:00
wiredfool
5269828d3a Test: Relax WMF test condition, fixes #2323 2016-12-31 17:38:35 +00:00
wiredfool
c7df6287fa Merge pull request #2262 from wiredfool/zero_size
Allow 0 size images, Fixes #2259
2016-12-31 16:35:14 +00:00
wiredfool
20abc9cdfe Fix size check on expan for image_rotate 2016-12-31 13:31:51 +00:00
wiredfool
7d59183c1d Zero image size test 2016-12-31 13:19:29 +00:00
wiredfool
0a922b962f tests for basic operations on 0x0 images 2016-12-31 13:19:29 +00:00
wiredfool
69bea50810 Allow 0 size images, Fixes #2259 2016-12-31 13:19:29 +00:00
wiredfool
3d185ee857 added tests for sgi writing 2016-12-31 12:29:10 +00:00
wiredfool
95888466c8 Added correctness tests for opening SGI images 2016-12-30 22:20:46 +00:00
Andrew Murray
a06dd59df7 Added context managers 2016-12-28 09:54:10 +11:00
wiredfool
944a470a79 Merge pull request #2312 from wiredfool/pr_2298
List of individual frame durations for saving animated gifs. #2298
2016-12-27 12:00:40 +00:00
wiredfool
f36a04570f Merge pull request #2313 from wiredfool/pr_2196
Unified different GIF optimize conditions #2196, Test for #2196
2016-12-27 11:53:50 +00:00
wiredfool
915270ef6f test for issue #2195 2016-12-27 03:33:20 -08:00
wiredfool
e530f2a228 Added tuple option for durations 2016-12-27 03:04:37 -08:00
wiredfool
87092ad4f8 can pass list of integer to set different duration for each frame when saving GIF 2016-12-27 02:44:05 -08:00
Alessio Sergi
7e8a6c61f8 Use pathlib2 for Path objects on Python < 3.4
The pathlib backport module is no longer maintained. The development
has moved to the pathlib2 module instead.

Quoting from the pathlib's README:
"Attention: this backport module isn't maintained anymore. If you want
to report issues or contribute patches, please consider the pathlib2
project instead."

Other projects have already switched to pathlib2, most notably IPython
and its dependencies.
2016-12-17 18:50:50 +01:00
wiredfool
80b78be21a Merge pull request #2199 from jdufresne/dep-olefile
Remove vendored version of olefile Python package in favor of upstream
2016-12-13 20:12:29 +00:00
wiredfool
55f7a736a4 Merge pull request #2234 from radarhere/print
Updated comments to use print as a function
2016-12-13 20:00:25 +00:00
wiredfool
9f711ea59a Merge pull request #2286 from hugovk/change-freetype2.7-epsilon
Increase epsilon for FreeType 2.7
2016-12-13 19:54:00 +00:00
wiredfool
86ff654487 Merge pull request #2279 from uploadcare/fast-assert_image_similar
Fast assert_image_similar
2016-12-13 19:52:50 +00:00
hugovk
acf68c835c Increase epsilon for FreeType 2.7 2016-12-12 15:16:43 +02:00
Andrew Murray
41e492b026 Removed use of spaces in TIFF kwargs, deprecated in 2.7 2016-12-09 20:44:42 +11:00
Hugo
e83479edf0 Merge pull request #2263 from wiredfool/tiff_bytesio
Fix for writing Tiff to BytesIO using libtiff
2016-12-09 11:04:41 +02:00
Alexander
9ee1f58215 fix I;16 mode 2016-12-07 05:16:10 +03:00
Alexander
ba92896a53 remove old version 2016-12-07 04:39:36 +03:00
Alexander
52c8e2050e replace test "1"-mode image 2016-12-07 03:09:13 +03:00
Alexander
8967a20ad7 test new assert_image_similar implementation 2016-12-07 03:07:20 +03:00
wiredfool
aa247dbb60 Moving tests requiring libtiff to test_file_libtiff 2016-12-05 08:25:10 -08:00
Hugo
837d583b15 Merge pull request #2275 from wiredfool/issue_2272
Update Maxblock heuristic (fixes #2272)
2016-12-04 21:38:22 +02:00
Hugo
03b9d718fc Merge pull request #2274 from wiredfool/issue_2258
Fix for 2 bit palette corruption #2258
2016-12-04 12:27:40 +02:00
wiredfool
d983aead74 Py3 bytes 2016-12-03 14:49:44 +00:00
wiredfool
7e2bd28a7c Fix for issue 2272, CMYK images miss the heuristic for the maxblock buffer scaling 2016-12-03 14:45:45 +00:00
wiredfool
4b57345683 Refactor random image 2016-12-03 14:45:05 +00:00
wiredfool
88c43b61b7 Fix for #2258, 2 bit palette images corrupted 2016-12-03 14:08:59 +00:00
wiredfool
86606022c5 Merge pull request #2193 from SemanticsOS/lambdafu/libtiff-icc
Update info.icc_profile when using libtiff reader.
2016-12-03 13:44:26 +00:00
wiredfool
8a68bd6daa Merge pull request #2270 from ChristopherHogan/test_ifd_rational_save
Test: Fix bug in test_ifd_rational_save
2016-12-03 13:38:02 +00:00
homm
77210e410d test for common modes and filters
pass box for RGBA → RGBa conversion
2016-12-02 16:33:48 +03:00
homm
cf25722a73 improve error message 2016-12-02 15:42:33 +03:00
homm
295382aadc vertical and horizontal pass with boxes 2016-12-02 15:40:32 +03:00
homm
1477fbc07a update tests, add comments 2016-12-02 02:59:40 +03:00
Chris Hogan
711e95e361 Fix bug in test_idf_rational_save
A boolean wrapped in parentheses is still a boolean, not a tuple.
The comma makes this an actual tuple so it can be iterated on in
the for loop.
2016-12-01 11:10:03 -06:00
homm
6def4bfc73 roi → box 2016-11-30 20:01:28 +03:00
hugovk
ed4c0a58e8 Test case for #2266 2016-11-30 16:36:04 +02:00
hugovk
4061c3836c Created with IrfanView 2016-11-30 14:38:04 +02:00
hugovk
4d6c2d5601 Test saving 256x256 icons 2016-11-30 14:37:50 +02:00
wiredfool
e0b957240b Merge pull request #2087 from cskau/patch-1
Fixes TIFFImagePlugin ICC color profile saving.
2016-11-29 19:33:52 +00:00
glexey
0116c9240e EMF: support negative bounding box coordinates (#2249)
* EMF: support negative bounding box coordinates

Similar to placeable WMF, bounding box coordinates
should be interpreted as signed integer, otherwise
opening EMF file with negative (x0,y0) fails.

* Basic load tests for WMF and EMF formats

* WMF/WMF tests: just test open(), not load()

Not sure why load() fails on Debian build. Well, at least we can test
open().

* WMF/EMF: Unpack signed integers using unpack()

* WMF/EMF: Compare to reference PNG rendering

* EMF/WMF comparison: use assert_image_similar()

* Use similarity epsilon 0.5 for WMF, as vector rendering looks different across Windows platforms

* Trigger rebuild
2016-11-27 16:03:51 +00:00
Andrew Murray
67be3a9eda Added future print_function imports 2016-11-26 11:05:56 +11:00
Andrew Murray
4ed31e8ef7 Updated comments to use print as a function 2016-11-26 11:02:44 +11:00
homm
44e443fa75 fix int boundaries 2016-11-26 01:38:55 +03:00
homm
ef787bc3f5 use ROI in precompute_coeffs 2016-11-24 06:11:36 +03:00
homm
a1fedc0f8a expose roi to precompute_coeffs (still noop) 2016-11-24 06:05:20 +03:00
homm
338610b112 nearest and copy ROI 2016-11-24 05:12:41 +03:00
homm
f828416752 add roi argument to Image.resize() method
constraints check
2016-11-24 04:40:54 +03:00
homm
bcb6d606a2 fix typo! 2016-11-24 04:07:06 +03:00
homm
d4784bffb2 return copy of the image if size matches 2016-11-24 03:30:36 +03:00
homm
9947794ccd fix spelling error 2016-11-24 03:09:34 +03:00
wiredfool
ce3432f5f4 Test for issue #2206 2016-11-23 06:24:40 -08:00
Hugo
6fa7f3fc67 Merge pull request #2241 from wiredfool/sunrle
SunImagePlugin fixes
2016-11-23 16:10:17 +02:00
wiredfool
212508b3f2 Review comments 2016-11-23 05:33:02 -08:00
Jon Dufresne
52b1f46b12 Deprecate vendored version of olefile Python package in favor of upstream
Pillow now requires the olefile Python package through setup.py.

This removes Pillow's maintenance of this library by instead relying on
and reusing the upstream version. No longer need to regularly update the
vendored package and docs. olefile bug fixes and features can go
directly upstream.

During travis tests, now installs Pillow package before tests; this will
also install all dependencies (currently, only olefile).
2016-11-22 18:17:31 -08:00
wiredfool
620d082457 Merge pull request #2240 from uploadcare/draft-min-scale
Use minimal scale for jpeg drafts
2016-11-22 15:22:59 +00:00
wiredfool
82caa13a02 Additional test images for sun raster files 2016-11-22 07:19:58 -08:00
Jon Dufresne
dbe9f85c7d Drop support for Python 2.6
* Drop unittest2 requirement
* Use set literals
* Use dict/set comprehension
* Use str.format() automatic numbering
2016-11-22 04:23:55 -08:00
wiredfool
87b8d2894a Merge pull request #2227 from radarhere/fpname
Fixed bug in saving to fp-objects in Python >= 3.4
2016-11-22 12:03:25 +00:00
homm
55fca4857c protect .draft() from second call 2016-11-22 04:28:04 +03:00
homm
8f6b7b258b use minimal scale for jpeg downscaling 2016-11-22 04:00:49 +03:00
wiredfool
318ff7d332 fixed support for hopper.ras, and other RGB sun raster files 2016-11-19 19:43:43 -08:00
wiredfool
e43c91cf1c Working 1 bit sun_rle raster file 2016-11-19 19:16:46 -08:00
Andrew Murray
38fd77ca7d Fixed bug in saving to fp-objects in Python >= 3.4 2016-11-15 20:13:25 +11:00
Jon Dufresne
ffa5bc2726 Use generator expressions instead of list comprehension
Avoids unnecessary temporary lists in memory.
2016-11-14 18:11:15 -08:00
Andrew Murray
b6a4d9bc94 Added test 2016-11-15 06:38:54 +11:00
wiredfool
8c36cd09f7 Merge pull request #2221 from jmerdich/master
Add support for another type of BMP bitfield
2016-11-14 16:13:10 +00:00
Jake Merdich
991df9b87a Update test image for xbgr bmp files 2016-11-14 10:26:57 -05:00
Jake Merdich
e63b97ea42 Add testing for bmp 'questionable' files 2016-11-14 10:10:56 -05:00
Andrew Murray
3dcef86fe5 Added missing top-level test code 2016-11-14 21:12:25 +11:00
Jon Dufresne
a5d6519d74 Remove long deprecated ImageDraw methods
Deprecated in 89ccf66ff7 since Sep 29,
2015, version 3.0.0.
2016-11-13 10:08:47 -08:00
wiredfool
9ee19f2aa9 Merge pull request #2182 from wiredfool/pyside_segfault
Fix for ImageQt Segfault
2016-11-11 17:00:27 +00:00
Jon Dufresne
f041188050 Replace try/except/fail pattern with TestCase.assertRaises()
Replace pattern with the builtin support for asserting exceptions.
2016-11-06 13:43:09 -08:00
Clement Skau
caf53b05ec Fixes TIFFImagePlugin ICC color profile saving.
In the TIFF code saving icc_profile is conditional on tag_v2 being set which doesn't make sense to me. I believe this is merely an indentation typo.

I've been trying to save TIFFs with im.info['icc_profile'] set and compression=raw, but unfortunately this results in TIFFs without ICC color profiles.
With the attached patch TIFFs with said conditions will be saved with the profile set in im.info['icc_profile'].

Note: There are a number of different conditions that need to be met for code to succeed in saving with the profile since it branches between using libtiff and ImageFile._save(..), and the libtiff code does not currently save the ICC color profile.
For instance setting compression=tiff_lzw will result in using libtiff and no profile will be saved.
2016-11-05 15:01:39 +09:00
Marcus Brinkmann
66de02685f Update info.icc_profile when using libtiff reader. 2016-11-04 16:37:49 +01:00
Hugo
48b72eac34 Merge pull request #2184 from jdufresne/isinstance
Replace type() equality checks with isinstance
2016-11-01 19:07:06 +02:00
Jon Dufresne
a33939f5c3 Remove unused, open files at top level of tests.
The data read from the file was unused. The files remained opened and
were never explicitly closed.

Fixes some instances of warnings during tests:

"ResourceWarning: unclosed file ..."
2016-11-01 06:34:17 -07:00
Jon Dufresne
e44bb42ae9 Replace type() equality checks with isinstance 2016-10-31 06:41:43 -07:00
wiredfool
8582144e0e Fix for issue #1370, Segfault using QImages due to not retaining the data 2016-10-27 14:11:06 -07:00
Jon Dufresne
7992d2a65a Fix BytesWarning discovered while running tests
Discovered using the command:

python -b -m nose -vx Tests/test_*.py
2016-10-22 12:35:44 -07:00
Alexander Karpinsky
5a359fbf28 Fix coefficients calculation (#2162)
Fix coefficients calculation

* test for regression

* detailed comments what is going on
prevent setting the `k[-1]` item

* more readable
2016-10-17 01:31:45 -07:00
homm
923f0bb9b3 improve test 2016-10-04 03:11:53 +03:00
homm
c5e111e6b8 allow lists as arguments for Image.new 2016-10-04 03:06:35 +03:00
wiredfool
22ff3f4358 Vulnerable map function is not called on windows 2016-10-03 07:42:48 -07:00
wiredfool
aa8cfce94c IOError is also a valid error here 2016-10-03 07:33:29 -07:00
wiredfool
b3ad80a2bd Image.core.open_ppm has been removed. Test the Storage.c fix with an alternate method. Assert that the ordinary opener rejects the negative size in the PPM file 2016-10-03 07:27:02 -07:00
wiredfool
445451c0b9 Added common check for size tuple errors 2016-10-03 07:27:02 -07:00
wiredfool
c50ebe6459 Map.c overflow fixes 2016-10-03 07:27:02 -07:00
wiredfool
5d8a0be45a Memory error in Storage.c when accepting negative image size arguments 2016-10-03 07:27:02 -07:00
wiredfool
d9fc1848a2 Merge pull request #2140 from SemanticsOS/lambdafu/tiff-multipage
Add TIFF save_all writer.
2016-10-03 06:31:39 -07:00
wiredfool
2db3f00e92 Merge pull request #2141 from wiredfool/tiff_fd
Move libtiff fd duplication to _load_libtiff
2016-10-03 06:03:50 -07:00
wiredfool
f8e6953e6e Merge pull request #2133 from wiredfool/gif-optimize-perf
Speed up GIF save optimization step
2016-10-03 06:03:12 -07:00
wiredfool
9440764863 Merge pull request #2131 from wiredfool/imagecms-segfault
Fix for ImageCms Segfault
2016-10-03 06:02:39 -07:00
wiredfool
ab29e2fa24 Merge pull request #2138 from wiredfool/issue_1077
Make Image.crop an immediate operation, not lazy.
2016-10-03 06:01:34 -07:00
Andrew Murray
4c28926da3 Fixed typos 2016-10-02 21:31:53 +11:00
wiredfool
b81da5a322 Tests for issue #1651 2016-09-29 22:29:19 +01:00
Eric Soroos
95b50bf611 Make Image.crop an immediate operation, not lazy. Fixes #1077 2016-09-29 13:28:24 -07:00
wiredfool
4a90e8f75b Merge pull request #2024 from uploadcare/fix-empty-exif-tags
Skip empty values in ImageFileDirectory
2016-09-29 08:24:44 -07:00
wiredfool
0902120f09 Merge pull request #2139 from SemanticsOS/lambdafu/multipage-tiff-palette
Force reloading palette when using mmap in ImageFile.
2016-09-29 08:20:25 -07:00
Marcus Brinkmann
92c7337df0 Add TIFF save_all writer. 2016-09-29 17:05:33 +02:00
Marcus Brinkmann
c74e45e87c Force reloading palette when using mmap in ImageFile. 2016-09-29 14:54:25 +02:00
Tim Graham
0c66b80a95 Fix "invalid escape sequence" warning in Python 3.6
http://bugs.python.org/issue27364
2016-09-27 19:26:57 -04:00
wiredfool
bc66e2b34a py3 fix 2016-09-26 15:15:43 -07:00
wiredfool
1d068b6e0a Check type of items passed into to ImageCms.ImageCmsProfile, fixes #2037 2016-09-26 14:56:00 -07:00
wiredfool
a51d3bcdba Speed up Gif save optimization step: don't do it as often and do it in C. Fixes #2093 2016-09-26 14:51:28 -07:00
Andrew Murray
d3d29ab2e3 Use truth value when checking for optimize option on save 2016-09-25 21:20:54 +10:00
wiredfool
21d1fd6be0 Merge pull request #2125 from radarhere/macos
Renamed references to OS X to macOS
2016-09-25 09:31:01 +01:00
Andrew Murray
b58f76dc4f Renamed references to OS X to macOS 2016-09-23 21:12:03 +10:00
Andrew Murray
de6158f5f1 Read value when checking for JPEG progressive key 2016-09-23 20:32:21 +10:00
Andrew Murray
051a410859 Convert DPI to ints when saving as JPEG 2016-09-22 19:41:32 +10:00
wiredfool
25797b2baa Merge pull request #2103 from radarhere/append_images
Added append_images parameter to GIF saving
2016-09-22 10:21:31 +01:00
wiredfool
69ee1e35b8 Merge pull request #2015 from uploadcare/paste-speedup
Speedup paste with masks up to 80%
2016-09-22 10:10:56 +01:00
wiredfool
9c4c16df75 Merge pull request #2068 from Mischanix/dxtc
Move DDS decoders to C, add DXT3, BC7 Decoders
2016-09-22 10:04:23 +01:00
wiredfool
8ed63793bf Merge pull request #2111 from anntzer/save-tiff-resolution-when-originally-missing-entry
Fix saving originally missing TIFF tags.
2016-09-22 09:20:56 +01:00
homm
f07c42f719 added more case insensitivity tests 2016-09-19 12:12:16 +03:00
Antony Lee
7e9c944caf Fix saving originally missing TIFF tags.
Don't incorrectly set the tag type to None if it was originally missing.
2016-09-19 00:31:17 -07:00
homm
cdd0624945 improve tests 2016-09-19 03:12:53 +03:00
homm
7faf18ccde better paste tests 2016-09-19 03:12:20 +03:00
homm
c90eecd8f3 paste test for different mask formats 2016-09-19 03:12:20 +03:00
homm
9453129a57 simpler colormap lookup 2016-09-17 12:38:45 +03:00
homm
859a75ba07 complete getrgb tests 2016-09-17 12:22:27 +03:00
Andrew Murray
b346ed36f1 Added append_images parameter to GIF saving 2016-09-11 12:04:01 +10:00
Andrew Murray
572a3d970c Removed whitespace from blank lines 2016-09-03 12:23:42 +10:00
Andrew Murray
72d5218080 Flake8 fixes 2016-09-03 12:17:22 +10:00
Andrew Murray
5c59603fcf Fixed typos 2016-08-31 20:12:07 +10:00
Hugo
ad9fddbcbc Remove duplicate import 2016-08-29 12:57:12 +03:00
Robert Nix
2be760ca79 Add support for BC7 to DdsImagePlugin 2016-08-26 02:26:03 -05:00
Robert Nix
b46804ea27 Add support for DXT3 to DdsImagePlugin 2016-08-25 20:12:44 -05:00
Robert Nix
18a91cebcf Move DDS decoders to C
- Fixed inaccurate BC1/BC3 texture decoding
2016-08-25 19:27:48 -05:00
Eric Soroos
5b0a1a1c0d Moved tiff save / load of uint16 to test_file_tiff.
Saving a numpy generated image as a tiff will save in native endian, and comparing it to a
little endian tiff will fail on bigendian machines.
2016-08-25 12:49:40 -07:00
wiredfool
39227ff33c Merge pull request #2091 from wiredfool/pr_2008
Resampling lookups, trailing empty coefficients, precision
2016-08-25 12:58:36 +01:00
wiredfool
35068e35d1 Merge pull request #2057 from arjennienhuis/RGBa
Add (un)packing between RGBA and BGRa
2016-08-25 12:31:23 +01:00
wiredfool
0444b4935b Merge pull request #2061 from wiredfool/j2k-access
Added return for J2k (and fpx) Load to return a pixel access object
2016-08-25 12:26:18 +01:00
homm
5c0eb2c365 normalize coefficients in normalize_coeffs_8bpc
increase precision of negative filter lobes. Add test
2016-08-25 04:11:02 -07:00
wiredfool
b77adf4692 Merge pull request #2090 from wiredfool/pr_2083
Skip failing numpy tests on Pypy <= 5.3.1
2016-08-25 11:57:57 +01:00
wiredfool
21209769bd More specific test 2016-08-25 03:55:50 -07:00
wiredfool
e980ca7896 Merge pull request #2010 from uploadcare/jpeg-raise-on-alpha
Show warning when trying to save RGBA image as JPEG
2016-08-25 11:41:49 +01:00
wiredfool
5d2667efda Merge pull request #2022 from uploadcare/rotation-pixel-center
Respect pixel centers during transform
2016-08-25 11:40:09 +01:00
wiredfool
30abb42c27 More specific version of pr #2083 2016-08-25 03:22:20 -07:00
Matthew Brett
824a0c232c BF: fix conversion of bit images to numpy arrays
Numpy cannot form arrays from bits.  To convert bit images to numpy,
convert bits to bytes.

From suggestion by Alexander Karpinsky, with thanks.

Fixes gh-350.
2016-08-17 18:47:14 -07:00
Arjen Nienhuis
67eb7a3dc2 Ignore PyPy numpy errors 2016-08-17 23:25:52 +02:00
Andrew Murray
61972f03ec Fixed typos [ci skip] 2016-08-13 12:32:13 +10:00
homm
193c756139 return implicit RGBA to JPEG save, raise warning 2016-08-09 03:11:35 +03:00
wiredfool
cf27e03dcd Added return for J2k (and fpx) Load to return a pixel access object 2016-08-08 07:36:34 -07:00
Arjen Nienhuis
28ede3a327 Merged BGRa test into Tests/test_lib_pack.py 2016-08-08 00:07:08 +02:00
Arjen Nienhuis
916ea94052 Add packing from RGBA to BGRa 2016-08-07 15:34:45 +02:00
homm
1b54e01736 Revert "temporary disable PCX P mode test due to errors in codec"
This reverts commit afff487084.
2016-08-07 13:48:01 +03:00
homm
993e49c0be Merge branch 'master' into rotation-pixel-center 2016-08-07 13:47:16 +03:00
Arjen Nienhuis
2ecbcce415 add unpacking from BRGa 2016-08-07 13:32:19 +03:00
wiredfool
ffa18c8efd Merge pull request #2011 from vlmath/master
Add ImageOps.scale to expand or contract a PIL image by a factor
2016-08-06 22:19:50 +01:00
wiredfool
879f864cd1 Merge pull request #2050 from hugovk/flake8
flake8 tests
2016-08-06 22:13:41 +01:00
wiredfool
0a8385f5e0 Merge pull request #2041 from uploadcare/pcx-encoding
PCX encoding fixes
2016-08-06 22:09:22 +01:00
Alexander Karpinsky
bc2c933552 Merge pull request #2052 from uploadcare/rotate-loading
Fix image loading when rotating by 0 deg
2016-08-05 19:35:06 +03:00
homm
3185262e31 fix image loading when rotating by 0 deg 2016-08-05 19:20:02 +03:00
hugovk
2c4a1209f4 flake8 2016-08-04 09:40:12 +03:00
homm
467f6cfcbb rename test 2016-07-29 12:47:36 +03:00
homm
978c37d699 add tests for different PCX encoding cases 2016-07-28 05:29:24 +03:00
homm
7a4847f457 all literals are bytes 2016-07-12 22:54:15 +03:00
homm
107307dfc9 do not use as_dict anywhere in tests except tests for as_dict warnings 2016-07-12 21:34:15 +03:00
homm
c2b4ff5fa4 skip empty values in ImageFileDirectory 2016-07-12 18:09:02 +03:00
homm
afff487084 temporary disable PCX P mode test due to errors in codec 2016-07-11 05:25:47 +03:00
homm
2221a6467c fix test which relied on old bugs 2016-07-11 01:47:25 +03:00
homm
5b8c8aa389 improve resize test 2016-07-11 00:47:58 +03:00
homm
1321713688 repeat all affine tests with PERSPECTIVE 2016-07-11 00:26:12 +03:00
homm
ad3f7238d2 add translate tests 2016-07-10 21:48:19 +03:00
homm
ac747d2290 resize transform tests 2016-07-10 16:09:33 +03:00
homm
2522101ed7 tests for 90 degree transformation 2016-07-10 15:23:01 +03:00
homm
1ba4e9e5ba remove end of file banner from all files 2016-07-10 14:11:28 +03:00
Marco De Donno
f19c52b5d5 Code style update 2016-07-06 10:21:00 +02:00
Marco De Donno
7d8fea012b Code style update 2016-07-06 01:32:16 +02:00