Andrew Murray
6ad98ba3c0
Do not ignore viewer if order is zero when registering
2020-06-18 21:40:38 +10:00
Stanislau Tsitsianok
27109c9011
Merge remote-tracking branch 'upstream/master' into ellipse
2020-06-16 20:20:44 +03:00
Hugo
e2e8db4fe8
Fix isort
2020-06-15 11:30:08 +01:00
nulano
dc41a4ec21
use skip_unless_feature in more tests
2020-06-14 20:21:30 +02:00
nulano
fc92f56382
replace skip_known_bad_test with xfail
2020-06-14 20:21:26 +02:00
nulano
12cd02bd2d
use xfail for failing tests
2020-06-14 19:38:21 +02:00
Andrew Murray
7d1f5ba91b
Removed test skips for MinGW
2020-06-14 23:08:21 +10:00
Andrew Murray
05932c4cbc
Updated harfbuzz to 2.6.7
2020-06-14 22:23:19 +10:00
Hugo van Kemenade
3bbcd7b3de
Merge pull request #4642 from nulano/gha-msys
2020-06-13 13:26:00 +03:00
Andrew Murray
2d284aea12
Allow writing of UNDEFINED tags
2020-06-10 16:09:22 +10:00
Andrew Murray
859b27572b
Removed forcing of BYTE to ASCII
2020-06-10 16:09:22 +10:00
Andrew Murray
7ecb5aaf7e
BYTE tags of variable length are only single strings
2020-06-10 16:09:22 +10:00
Hugo van Kemenade
794e9f0f0e
Merge pull request #4637 from radarhere/v2
...
Use ImageFileDirectory_v2 in Image.Exif
2020-06-10 06:55:15 +03:00
Andrew Murray
ebd6901c95
Merge pull request #4673 from hugovk/yesqa
...
Remove redundant noqa
2020-06-08 21:02:15 +10:00
Hugo van Kemenade
b6d6f77262
Merge pull request #4675 from radarhere/polygon
...
Fixed drawing a 1px high polygon
2020-06-08 08:57:02 +03:00
Andrew Murray
0cc2e696cb
Corrected reading EXIF metadata without prefix
2020-06-07 20:01:04 +10:00
Andrew Murray
eeb9e719e3
Fixed drawing a 1px high polygon
2020-06-07 12:07:13 +10:00
Hugo
c8e3757e72
Run yesqa to remove redundant noqa
2020-06-06 14:54:58 +03:00
Andrew Murray
ec9015bea4
Renamed variable
...
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-06-06 19:42:24 +10:00
Andrew Murray
e228cfcec7
Lint fixes
2020-06-06 12:08:37 +10:00
Hugo van Kemenade
52c66bbcfb
Merge pull request #4580 from radarhere/curve
...
Fixed drawing a jointed line with a sequence of numeric values
2020-06-04 12:03:25 +03:00
Andrew Murray
a5ef2b4499
Parametrized test
2020-06-04 07:56:14 +10:00
Hugo van Kemenade
4363507d16
Merge pull request #4608 from radarhere/numpy
2020-06-03 18:43:47 +03:00
Andrew Murray
ccac9e1a3a
Changed to ImageFileDirectory_v2
2020-06-03 22:11:51 +10:00
nulano
2dd9324df2
add mono color text test
2020-06-01 22:18:38 +02:00
Hugo van Kemenade
02d55b79c1
Merge pull request #4560 from radarhere/xmp
2020-06-01 10:49:00 +03:00
Andrew Murray
696aa7972d
Parametrized test
2020-05-26 07:15:20 +10:00
nulano
d54fee9863
move import
2020-05-25 22:21:51 +02:00
nulano
66954ad176
deprecate Image.show(command="...")
2020-05-25 18:57:02 +02:00
nulano
21325b8ce3
Merge remote-tracking branch 'upstream/master' into gha-msys
...
# Conflicts:
# .appveyor.yml
# .github/workflows/test-windows.yml
2020-05-25 17:37:26 +02:00
Hugo van Kemenade
f4fb9c5403
Merge pull request #4625 from radarhere/thumbnail
2020-05-25 17:08:25 +03:00
nulano
9640b48040
Merge branch 'master' of github.com:python-pillow/Pillow into winbuild-rewrite
...
# Conflicts:
# .github/workflows/test-windows.yml
# winbuild/config.py
# winbuild/build_prepare.py
2020-05-25 14:32:21 +02:00
Andrew Murray
660894cd36
Write JFIF header when saving JPEG
2020-05-24 23:58:30 +10:00
nulano
d2f90d6cac
fix freetype and raqm on MSYS
2020-05-23 23:16:06 +02:00
Andrew Murray
ac11fa7d1a
Merge pull request #4620 from ElinksFr/fix-gbr-image-loading
...
Fix repeatedly loading .gbr
2020-05-17 11:34:58 +10:00
Andrew Murray
45c4ba7a5f
Simplified test case
2020-05-17 11:04:02 +10:00
Andrew Murray
df886ed386
Merge pull request #4290 from bluepython508/fix_djpeg_load_test
...
Fixes djpeg load test
2020-05-16 19:53:18 +10:00
Andrew Murray
aa1761bc9f
Replace tiff_jpeg with jpeg compression when saving
2020-05-15 22:37:13 +10:00
Andrew Murray
b3604167ad
Change STRIPBYTECOUNTS to LONG if necessary when saving
2020-05-15 20:47:57 +10:00
Andrew Murray
b8ec793898
Fixed ZeroDivisionError in thumbnail
2020-05-15 18:29:52 +10:00
Hugo
837bc0ad9c
Fix broken string
2020-05-13 10:21:10 +03:00
Simon Andrieux
15ae39674e
fix reading from empty buffer when loading .gbr
2020-05-11 17:38:42 +02:00
nulano
1656edaf41
fix docs compliance for CF_HDROP
2020-05-09 10:44:19 +02:00
nulano
5728662c7f
add support for CF_DIBV5, CF_HDROP, and 'PNG' in ImageGrab.grabclipboard() on win32
2020-05-09 09:40:58 +02:00
Stanislau Tsitsianok
305b61ed1c
Added test with various ellipse sizes
2020-05-08 23:54:17 +03:00
Alexander
f15e4a8e06
truncate icclist instead of changing to None
2020-05-08 19:48:20 +03:00
Andrew Murray
59957fb8d8
Added support for 1-D NumPy arrays
2020-05-04 20:07:23 +10:00
Andrew Murray
c04013fa74
Merge branch 'master' into winbuild-rewrite
2020-05-02 00:20:14 +10:00
Rodrigo Benenson
83125b5ae4
Checks over exif instead of reloeaded_exif
...
test_imagefile.py checks exif instead of reloaded_exif; making the tests pass when they should not.
2020-04-28 18:58:26 +02:00
Andrew Murray
727868d5d7
Increased epsilon to pass on Windows
2020-04-26 08:03:16 +10:00
Andrew Murray
f5e9252b12
Fixed drawing a jointed line with a sequence of numeric values
2020-04-24 18:48:10 +10:00
Andrew Murray
a0641b87c2
Assert that warning is raised
2020-04-20 19:27:09 +10:00
ziplantil
39f4738775
lint
2020-04-19 16:54:53 +03:00
ziplantil
52b9b4310c
add test for ico append_images
2020-04-19 16:45:12 +03:00
Hugo
270bc4fc60
Don't show own deprecation warning in test logs
2020-04-19 13:59:40 +03:00
Andrew Murray
e10cab42f1
Consider transparency when drawing text on an RGBA image
2020-04-19 20:56:17 +10:00
Hugo van Kemenade
ddebe27eed
Merge pull request #4565 from radarhere/tiff_pickle
...
Fixed bug when unpickling TIFF images
2020-04-17 19:03:02 +03:00
Andrew Murray
9956a6c777
Fixed bug when unpickling TIFF images
2020-04-17 22:13:14 +10:00
Andrew Murray
76d96b6383
Removed default arguments from helper functions
2020-04-17 21:57:11 +10:00
Hugo van Kemenade
529e113505
Merge pull request #4561 from hugovk/fix-webp-pickle
...
Fix pickling WebP
2020-04-17 14:48:50 +03:00
Andrew Murray
e52b8cefe1
Skip test if webp is not available
2020-04-17 20:08:10 +10:00
Hugo
94751da23e
Initialise __physical_frame = 0 and add pickle roundtrip tell test
2020-04-17 11:21:57 +03:00
Hugo
654229d1b9
GitHub Actions now sets CI=true
2020-04-16 20:42:29 +03:00
Hugo
913e79f010
Test the modes
2020-04-16 15:52:10 +03:00
Andrew Murray
f21816918e
Allow ImageMagick zTXt chunks to be extracted after copy()
2020-04-16 21:14:19 +10:00
Andrew Murray
1e63f772f8
Parse orientation from XMP tags
2020-04-16 21:05:34 +10:00
Hugo
5529aba441
Skip webp test when webp not available
2020-04-16 12:56:12 +03:00
Hugo
cdf3c98103
Add failing test for pickling webp
2020-04-16 11:45:12 +03:00
Hugo
d62b9098dd
Refactor other tests into test_pickle_image
2020-04-16 11:44:28 +03:00
Hugo
53a85f2a69
Refactor test_pickle_image to use pytest.mark.parametrize
2020-04-16 11:31:28 +03:00
nulano
9aa42c3fd6
fix AppVeyor
2020-04-12 11:55:31 +10:00
nulano
c6a1c551d9
cleanup build configuration
2020-04-12 11:55:01 +10:00
nulano
15ce881a2b
fix appveyor
2020-04-12 11:53:45 +10:00
Andrew Murray
f17f1bc607
Added method argument to single frame WebP saving
2020-04-11 20:43:49 +10:00
Andrew Murray
7bb51a4aca
Raise DeprecationWarning on raise_ioerror
2020-04-10 12:57:29 +03:00
Hugo
dda6145fce
Since Python 3.3 IOError and WindowsError have been merged into OSError
2020-04-10 12:57:29 +03:00
Andrew Murray
5923f95f31
Adjusted symmetry test
2020-04-10 12:15:01 +10:00
Stanislau Tsitsianok
a491ed6889
fixed failing tests
2020-04-06 22:01:42 +10:00
Andrew Murray
f7144c1216
Added reading and writing of private PNG chunks
2020-04-06 21:57:45 +10:00
Andrew Murray
7475c06b1c
Assert that seeking too far raises an EOFError
2020-04-05 15:29:13 +10:00
Andrew Murray
5ef382f612
Test all operating systems
2020-04-04 15:02:15 +11:00
Andrew Murray
6574552821
Removed redundant arguments
2020-04-02 19:17:54 +11:00
Hugo
2e9030ddca
Initialise __frame = 0 in open, and test tell
2020-04-02 08:49:26 +03:00
Hugo
1c2b2b085a
Add test case
2020-04-01 22:32:14 +03:00
Hugo van Kemenade
46f4a349b8
Merge pull request #4507 from hugovk/fix_tiff
...
Fix 2 buffer overflows in TIFF decoding
2020-04-01 12:51:04 +03:00
Hugo van Kemenade
ff60894d69
Merge pull request #4505 from hugovk/jpeg2k_overflow
...
Fix bounds overflow in JPEG 2000 decoding
2020-04-01 12:27:27 +03:00
Hugo van Kemenade
2ef59fdbae
Merge pull request #4504 from hugovk/sgi_fixes
...
Fix buffer overflow in SGI-RLE decoding
2020-04-01 12:27:14 +03:00
Hugo van Kemenade
0da1eca7cf
Merge pull request #4503 from hugovk/fix_fli_6.2.x
...
Fix multiple OOB reads in FLI decoding
2020-04-01 12:27:04 +03:00
Hugo
2092801e71
Format with Black
2020-04-01 11:02:50 +03:00
Eric Soroos
6e7c0ced68
Tests for tiff crashes
2020-04-01 11:02:40 +03:00
Hugo
ada137eba5
Fix Flake8
2020-04-01 10:52:21 +03:00
Eric Soroos
124f4bb591
Tests for PCX OOB Access
2020-04-01 10:50:48 +03:00
Hugo
6e86d235c8
Format with Black
2020-04-01 10:34:19 +03:00
Eric Soroos
30443d39bd
Tests for jp2 overflow
2020-04-01 10:33:46 +03:00
Hugo
44096adf59
Convert from unittest to pytest
2020-04-01 10:19:15 +03:00
Hugo
78478dfcfb
Black and isort
2020-04-01 10:13:12 +03:00
Eric Soroos
dd341f12d6
Tests for SGI Overruns
2020-04-01 10:12:21 +03:00
Hugo
11ef7ca53a
Format with Black
2020-04-01 09:54:26 +03:00
Eric Soroos
00c6dd72d9
Tests for additional hits
2020-04-01 09:53:18 +03:00
Eric Soroos
19ff42bd68
tests for Fli OOB reads
2020-04-01 09:53:04 +03:00
Hugo van Kemenade
f27873a888
Merge pull request #4243 from pmrowla/apng
...
Add APNG support
2020-04-01 00:23:57 +03:00
Hugo van Kemenade
b5cf165f9e
Merge pull request #4260 from nulano/imagegrab_xcb
...
ImageGrab.grab() for Linux with XCB
2020-03-31 23:03:21 +03:00
Hugo van Kemenade
16e1d6a048
Merge pull request #4494 from hugovk/re-add-PILLOW_VERSION
...
Re-add deprecated PILLOW_VERSION to give projects more time to upgrade
2020-03-31 22:58:23 +03:00
Hugo van Kemenade
92c9961cea
Convert from unittest to pytest
2020-03-31 22:43:31 +03:00
Hugo van Kemenade
761edafed8
Merge branch 'master' into re-add-PILLOW_VERSION
2020-03-31 12:07:14 +03:00
Marcin Jaworski
37ee51de88
Update test_font_pcf_charsets to adhere to test architecture changes
2020-03-31 10:56:43 +02:00
Marcin Jaworski
85f62c424d
Fix tests for charset aware PcfFontFile
2020-03-31 10:20:43 +02:00
Marcin Jaworski
422efd68c3
Add tests for charset aware PcfFontFile
2020-03-31 10:20:43 +02:00
Hugo van Kemenade
c6115c1ceb
Merge pull request #4230 from dwastberg/new_chops
...
Added three new channel operations
2020-03-31 10:24:44 +03:00
Andrew Murray
750bbc7256
Parametrized test
2020-03-31 17:41:52 +11:00
Andrew Murray
7597a9fbfd
Raise warning for more operations
2020-03-31 17:41:47 +11:00
Andrew Murray
027d180eda
Raise a DeprecationWarning when comparing PILLOW_VERSION
2020-03-30 21:53:02 +11:00
Andrew Murray
5a511c6a8b
Merge pull request #4474 from radarhere/reduce2
...
Prevent masking Image reduce method in Jpeg2K
2020-03-30 07:29:21 +11:00
Andrew Murray
d00b929651
Updated test
2020-03-29 16:29:34 +11:00
Andrew Murray
ff6ca4159a
Prevent masking Image reduce method
2020-03-29 16:27:29 +11:00
Andrew Murray
30a2d694cf
Converted unittest mock to pytest monkeypatch
2020-03-29 10:43:44 +11:00
Andrew Murray
cbf0bf1010
Fixed restoring original state
2020-03-28 12:51:33 +11:00
Andrew Murray
b602f365ae
Removed PillowTestCase helper class
2020-03-28 12:51:28 +11:00
Andrew Murray
a8637449b9
Converted common Qt test classes
2020-03-28 12:21:00 +11:00
Andrew Murray
748739c992
Converted addCleanup
2020-03-28 12:20:56 +11:00
Andrew Murray
dcf57f1457
unittest is no longer used in every test [ci skip]
2020-03-27 18:36:36 +11:00
Hugo van Kemenade
3970db0535
Merge pull request #4471 from radarhere/exif_imagemagick
...
Added reading of earlier ImageMagick PNG EXIF data
2020-03-26 13:42:58 +02:00
Andrew Murray
d4b627b664
Parametrized test
2020-03-26 21:21:40 +11:00
Hugo van Kemenade
332e3923cb
Merge pull request #4457 from radarhere/endian
...
Fixed endian handling for I;16 getextrema
2020-03-25 23:32:37 +02:00
Andrew Murray
d7c34511ba
Updated tests
2020-03-24 19:53:03 +11:00
Andrew Murray
228613017b
Added test if XCB is not present
2020-03-24 19:51:13 +11:00
Andrew Murray
2543719e12
Updated error catching
2020-03-24 19:49:05 +11:00
nulano
0bcc7be89b
xcb screengrab docs and fixes
2020-03-24 19:46:40 +11:00
nulano
f9c74825a6
xcb screengrab fixes
2020-03-24 19:40:54 +11:00
Andrew Murray
7ff2db143d
Removed use of PillowTestCase
2020-03-23 07:05:51 +11:00
Andrew Murray
7859f81828
Use pytest to skip tests
2020-03-23 07:05:40 +11:00
Andrew Murray
ca5a81ef27
Added reading of earlier ImageMagick EXIF data
2020-03-14 00:04:58 +11:00
Andrew Murray
9f61be4c72
Merge branch 'master' into apng
2020-03-09 23:29:40 +11:00
Andrew Murray
dc0d1c9bee
Invoke pip using python3 [ci skip]
2020-03-09 22:43:35 +11:00
Andrew Murray
e41cfade29
Add JPEG comment to info dictionary
2020-03-07 06:57:29 +11:00
Hugo van Kemenade
3f9b615349
Merge pull request #4404 from orlnub123/bugfix/thumbnail
...
Fix size calculation of Image.thumbnail()
2020-03-06 00:33:03 +02:00
Hugo van Kemenade
da4667cc9e
Merge pull request #4401 from radarhere/freetype
...
Fixed stroke on FreeType < 2.9
2020-03-06 00:21:17 +02:00
Hugo van Kemenade
3b30b88c7f
Merge pull request #4454 from radarhere/bbox
...
If present, only use alpha channel for bounding box
2020-03-05 12:38:52 +02:00
Andrew Murray
686d85be08
Merge pull request #4462 from hugovk/to-pytest
...
Convert to use pytest
2020-03-05 19:39:13 +11:00
Hugo van Kemenade
94d0c7c9ff
Merge pull request #45 from radarhere/to-pytest
...
Converted setup and teardown methods
2020-03-04 13:42:49 +02:00
Hugo
fbd4ca1ba0
Fix roundtrip
2020-03-04 13:21:23 +02:00
Andrew Murray
76734573f0
Converted setup and teardown methods
2020-03-04 21:31:50 +11:00
Hugo van Kemenade
974233be45
Merge pull request #4438 from jdufresne/warning
...
Warn on typos passed to features.check()
2020-03-02 21:26:17 +02:00
Hugo
2cc6a9a974
Convert to use pytest
2020-03-02 16:31:08 +02:00
Hugo van Kemenade
54b4b98455
Merge pull request #4448 from radarhere/pytest
...
Converted to pytest
2020-03-02 12:23:28 +02:00
Hugo van Kemenade
64a9e0c660
Merge branch 'master' into apng
2020-02-29 17:40:17 +02:00
Andrew Murray
42a0653097
Fixed endian handling for I;16 getextrema
2020-02-29 20:29:28 +11:00
Andrew Murray
b934b50867
If an alpha channel is present, only use that to get bounding box
2020-02-28 22:33:02 +11:00
Andrew Murray
1c1ad65a96
Merge pull request #4424 from hugovk/fix-im-long-name
...
Fix saving IM images in dir with long path
2020-02-27 20:27:44 +11:00
Andrew Murray
9ba25f8135
Trim end of name, keeping ext
2020-02-26 20:15:23 +11:00
Hugo van Kemenade
3c995fd173
Merge pull request #4440 from radarhere/jpeg_quality
...
Allow saving of zero quality JPEG images
2020-02-25 12:02:53 +02:00
Andrew Murray
09b9198176
Converted to pytest
2020-02-25 20:57:27 +11:00
Andrew Murray
17c10b0ca0
Fixed stroke on FreeType < 2.9
2020-02-24 22:49:33 +11:00
Hugo van Kemenade
12f66f44f4
Fix regression
...
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-02-23 10:31:54 +02:00
Andrew Murray
41a29339ff
Lint fixes
2020-02-23 15:14:42 +11:00
Peter Rowlands
9b72f0513c
Adjust is_animated behavior
...
- Make is_animated APNG behavior consistent with other Pillow formats
- is_animated will be true when n_frames is greater than 1 (for APNG
this depends on animation frame count + presence or absence of a
default image)
2020-02-23 15:14:06 +11:00
Peter Rowlands
d05b73cd08
Use context manager for APNG tests
2020-02-23 15:14:06 +11:00
Peter Rowlands
0f84fa7707
Move apng tests into test_file_apng.py
2020-02-23 15:14:06 +11:00
Peter Rowlands
00fcc53a1d
Fix lint errors
2020-02-23 15:14:06 +11:00
Peter Rowlands
66c84f258b
Add test for saving split fdat chunks
2020-02-23 15:14:06 +11:00
Peter Rowlands
7c0df1034f
Add APNG test cases
...
Includes tests for reading and writing APNG files.
The tests for reading files are based on the APNG browser compatibility
tests from https://philip.html5.org/tests/apng/tests.html
(which is linked in the Tests section of https://wiki.mozilla.org/APNG_Specification )
2020-02-23 15:14:06 +11:00
Hugo
44e661f25a
Convert to use pytest
2020-02-22 23:03:01 +02:00
Hugo
699a9dadf1
Convert asserts
2020-02-22 18:07:04 +02:00
Andrew Murray
8482919a37
Converted most assert statements to pytest
2020-02-23 00:06:21 +11:00
orlnub123
8f21d0ddf0
Improve rounding
2020-02-21 23:38:38 +00:00
Andrew Murray
a8c0794107
Allow saving of zero quality JPEG images
2020-02-21 22:05:44 +11:00
Hugo van Kemenade
f43efb0aec
_webp not needed in this file
...
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-02-20 12:24:46 +02:00
Hugo
2d5e479bcc
Merge remote-tracking branch 'upstream/master' into pytest.importorskip
2020-02-19 19:26:52 +02:00
Andrew Murray
c516134890
Rearranged code for Windows
2020-02-19 20:56:23 +11:00
Andrew Murray
c6749183f8
Updated tests
2020-02-19 19:52:07 +11:00
Dag Wästberg
2e02500fa6
change function names to snake_case
2020-02-19 19:38:53 +11:00
Dag Wästberg
23c9da5264
add Overlay chop
2020-02-19 19:34:13 +11:00
Dag Wästberg
705140cc2c
add hardlight and softlight chops
2020-02-19 19:30:59 +11:00
Dag Wästberg
13c1b7070d
add Overlay chop
2020-02-19 19:24:36 +11:00
Dag Wästberg
5e5dfbad81
add hardlight and softlight chops
2020-02-19 19:23:09 +11:00
Jon Dufresne
c057ad1535
Warn on typos passed to features.check()
...
If the feature isn't one of the recognized types, a UserWarning is
emitted.
2020-02-18 19:48:48 -08:00
Jon Dufresne
4f185329f4
Streamline test skipping based on supported features
...
This adds a new test decorator: skip_unless_feature(). The argument is
the same as passed to features.check(). If the feature is not supported,
the test will be skipped.
This removes several kinds of boilerplate copied and pasted around tests
so test feature checking is handled and displayed more consistently.
Refs #4193
2020-02-18 13:07:01 -08:00
Jon Dufresne
f72e64b90b
Remove unnecessary setup_module() from test_file_tar.py
...
The test_sanity() already checks the decorder exists and the other tests
can run without zlib/jpeg installed.
2020-02-18 13:02:30 -08:00
Jon Dufresne
967f46d1d8
Remove unnecessary skip test logic
...
The gif_encoder and gif_decoder are always compiled and included in
src/_imaging.c.
2020-02-18 13:02:30 -08:00
Hugo van Kemenade
2d4b4576aa
Merge pull request #4428 from jdufresne/use-mock
...
Replace SimplePatcher with builtin unittest.mock module
2020-02-18 16:08:28 +02:00
Hugo
d289a5b072
Convert to use pytest
2020-02-18 15:50:34 +02:00
Hugo
17c67a2cfb
Use pytest.importorskip to skip on a missing import dependency
2020-02-18 14:30:56 +02:00
Hugo van Kemenade
8ec548d163
Merge pull request #4431 from jdufresne/top
...
Move safe imports to the top of test files
2020-02-17 22:34:57 +02:00
Hugo van Kemenade
9f2d478f03
Merge pull request #4429 from jdufresne/cpickle
...
Remove testing of Python-2-only cPickle module
2020-02-17 21:48:43 +02:00
Jon Dufresne
98a2081a78
Move safe imports to the top of test files
...
These modules are safe to import and this better follows PEP 8.
From https://www.python.org/dev/peps/pep-0008/#imports
> Imports are always put at the top of the file, just after any module
> comments and docstrings, and before module globals and constants.
2020-02-17 10:49:27 -08:00
Jon Dufresne
9e856b8a72
Remove testing of Python-2-only cPickle module
...
In Python 3, cPickle and pickle have been merged to a single module.
From https://docs.python.org/3/whatsnew/3.0.html#library-changes
> A common pattern in Python 2.x is to have one version of a module
> implemented in pure Python, with an optional accelerated version
> implemented as a C extension; for example, pickle and cPickle. This
> places the burden of importing the accelerated version and falling
> back on the pure Python version on each user of these modules. In
> Python 3.0, the accelerated versions are considered implementation
> details of the pure Python versions. Users should always import the
> standard version, which attempts to import the accelerated version and
> falls back to the pure Python version. The pickle / cPickle pair
> received this treatment.
Can now move the 'import pickle' to the top of the test file.
2020-02-17 10:27:36 -08:00
Jon Dufresne
1a3ebafdd2
Replace SimplePatcher with builtin unittest.mock module
...
The class more or less duplicates the features of the mock module. Can
avoid the duplication by using the stdlib.
2020-02-17 10:06:19 -08:00
Jon Dufresne
6121daa72d
Remove redundant str() call
...
The %s placeholder already coerces arguments to a string.
2020-02-17 09:18:49 -08:00
Hugo
946a038b13
Replace unittest with pytest
2020-02-17 10:42:33 +02:00
Hugo
eb2d6560a4
Replace unittest with pytest
2020-02-17 00:55:52 +02:00
orlnub123
64c08f4dba
Fix test
2020-02-16 21:26:40 +11:00
orlnub123
6d3c7d6941
Add test against upscaling
2020-02-16 21:26:17 +11:00
orlnub123
e9ef1d236d
Fix size calculation of Image.thumbnail()
2020-02-16 21:25:51 +11:00
Andrew Murray
8e81e0dd0e
Restored test
2020-02-16 13:44:34 +11:00
Hugo
9087599e60
Merge remote-tracking branch 'upstream/master' into pytest
2020-02-15 16:56:21 +02:00
Hugo van Kemenade
852d9156bc
Remove commas
...
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-02-15 16:21:37 +02:00
Hugo van Kemenade
0e993c4740
Merge pull request #4334 from radarhere/outline_width
...
Allow explicit zero width to hide outline
2020-02-15 14:30:12 +02:00
Andrew Murray
f958e2f8ed
Return strings or bytes from ContainerIO according to the file object mode
2020-02-15 22:13:10 +11:00
Jon Dufresne
e817ed0d3e
Correct str/bytes mixup in ContainerIO
...
Image data is expected to be read in bytes mode, not text mode so
ContainerIO should return bytes in all methods. The passed in file
handler is expected to be opened in bytes mode (as TarIO already does).
2020-02-15 22:13:10 +11:00
Andrew Murray
919abe2555
Updated test
2020-02-15 21:17:26 +11:00
Hugo van Kemenade
c57e4b3a85
Merge pull request #4333 from radarhere/polygon
...
Only draw each polygon pixel once
2020-02-15 11:57:14 +02:00
ben
a4721d374f
Fixes djpeg load test
...
* Test fails with `libjpeg-turbo` and `libjpeg-progs` on Ubuntu 16.04
* Epsilon reported is 4.18...
2020-02-15 13:59:53 +11:00
Jon Dufresne
e544fd5fb7
Simplify command discovery with stdlib shutil.which()
...
Use the builtin shutil.which() instead of reimplementing.
For the single use that used the output of the command, use
subprocess.run().
2020-02-14 14:55:46 -08:00
Hugo
affade7595
Replace unittest with pytest
2020-02-13 12:15:05 +02:00
Hugo van Kemenade
098406c304
Merge pull request #4390 from jdufresne/resource-warning
...
Fix ResourceWarning emitted during tests
2020-02-12 17:10:51 +02:00
Hugo
38bf862185
Replace PillowTestCase.assert_warning with pytest.warns
2020-02-03 11:11:32 +02:00
Hugo
a4bf9fa036
Convert most PillowTestCase methods to pytest
2020-02-02 12:26:01 +02:00
Hugo van Kemenade
f6e067b3b4
Merge pull request #4391 from radarhere/pytest
...
Convert various tests to pytest style
2020-01-28 18:22:11 +02:00
Andrew Murray
eeb2588fe2
Corrected skip condition
...
Co-Authored-By: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-01-28 19:59:41 +11:00
Alexander Karpinsky
5965437402
Merge pull request #4370 from uploadcare/jpeg-multiple-app13
...
Handle multiple and malformed JPEG APP13 markers
2020-01-27 15:46:36 +03:00
Andrew Murray
7fd9663198
Convert various tests to pytest style
2020-01-27 22:46:52 +11:00
Jon Dufresne
2b84221edf
Fix ResourceWarning emitted during tests
...
Appeared in the form:
ResourceWarning: unclosed file <_io.BufferedReader name='Tests/images/invalid-exif-without-x-resolution.jpg'>
Enable all warnings to always display during tests to help catch these
warnings earlier.
2020-01-26 16:00:46 -08:00
Hugo van Kemenade
22a6738a81
Merge pull request #4369 from jdufresne/pytest
...
Convert some tests to pytest style
2020-01-26 20:18:37 +02:00
Jon Dufresne
63729766c4
Remove unnecessary coerce to float
...
In Python 3, the division operator is floating point division. No longer
need to coerce integers to floating point numbers before division.
2020-01-26 06:33:18 -08:00
Alexander
73171f5046
add test image
2020-01-20 17:25:40 +03:00
Jon Dufresne
2c50723f14
Convert some tests to pytest style
...
To better follow conventional pytest style, this removes the outer
wrapper class in favor of a function for some tests. These tests were
picked as they are relatively simple and presented no barriers to a
quick port. The assert* methods are replaced with assert statements.
When necessary, a fixture is used to create a temporary directory.
This commit does not convert the entire test suite to this style as some
test classes use methods or other advanced features that are difficult
to automatically convert. The goal is to address these issues in
followup commits.
Refs #4193
2020-01-18 12:12:10 -08:00
Andrew Murray
760bc7dd38
Test seek errors
2020-01-14 21:38:17 +11:00
Andrew Murray
f3f9190de7
Roundtrip test hotspot
2020-01-14 21:38:17 +11:00
Andrew Murray
dbd3c7c9b9
Test saving with incorrect mode
2020-01-14 21:38:17 +11:00
Andrew Murray
9bed79e426
Test grab bbox
2020-01-14 21:38:17 +11:00
Andrew Murray
5439091355
Simplified code
2020-01-14 20:20:30 +11:00
Andrew Murray
a5f036abf4
Moved messages into assert method calls
2020-01-14 20:20:19 +11:00
Andrew Murray
d324560891
Removed print
2020-01-14 19:44:10 +11:00
Andrew Murray
a4f06b93f9
Removed unused function
2020-01-14 19:40:21 +11:00
Hugo
5e9336af4c
Use sys.byteorder == "big"
2020-01-08 15:43:28 +02:00
Hugo
f96763826c
Test on new Travis CPUs https://blog.travis-ci.com/2019-11-12-multi-cpu-architecture-ibm-power-ibm-z
2020-01-08 15:43:27 +02:00
Andrew Murray
56f30ef792
Allow explicit zero width to hide outline
2020-01-08 21:55:15 +11:00
Andrew Murray
8e8f63d4a5
Only draw each polygon pixel once
2020-01-05 17:43:51 +11:00
Andrew Murray
b9c68540dc
Overflow checks for realloc for tiff decoding
2020-01-02 15:24:46 +11:00
Andrew Murray
be44f0d992
Catch SGI buffer overruns
2020-01-02 15:24:36 +11:00
Andrew Murray
8f0c8f7311
Catch PCX P mode buffer overrun
2020-01-02 15:24:16 +11:00
Andrew Murray
c40bc25847
Catch FLI buffer overrun
2020-01-02 15:23:36 +11:00
Andrew Murray
138bd714f5
Raise an error for an invalid number of bands in FPX image
2020-01-02 15:20:24 +11:00
Andrew Murray
4203845a24
Merge pull request #4320 from uploadcare/rgb2l-rounding-error
...
Fix rounding error on RGB to L conversion
2020-01-01 20:09:34 +11:00
Andrew Murray
e8bb2dd93e
Allow string comment when saving GIF
2020-01-01 13:29:39 +11:00
nulano
6bf7f6045d
fix deprecation warnings in test_file_wmf
2020-01-01 01:55:06 +01:00
Andrew Murray
8924054dd9
Changed _limit_signed_rational
2019-12-31 19:12:33 +11:00
Andrew Murray
69fc041399
Test out of bounds signed rational
2019-12-31 19:11:03 +11:00
Alexander
fa1deca144
Fix wrong tests
2019-12-31 04:12:50 +03:00
Andrew Murray
74d53bcd15
Lint fixes
2019-12-31 11:58:39 +11:00
Andrew Murray
6d3fb7b083
Merge branch 'master' into exif-writing-fixes
2019-12-31 11:38:33 +11:00
Andrew Murray
f72e866b5e
Merge pull request #4305 from radarhere/remove_distutils
...
Replaced distutils with C version check
2019-12-31 11:33:39 +11:00
Andrew Murray
f77c409742
Renamed variable
2019-12-31 09:04:25 +11:00
Alexander
c74c20eb9f
Merge branch 'master' into reduce-in-resize
...
# Conflicts:
# docs/releasenotes/7.0.0.rst
2019-12-30 03:24:38 +03:00
Andrew Murray
2a0653ee81
Merge pull request #4311 from radarhere/wmf
...
Allow loading of WMF images at a given DPI
2019-12-30 10:24:44 +11:00
nulano
cc5c0d2c04
don't skip test fixed in pypy 7.3.0
2019-12-29 22:52:50 +01:00
Andrew Murray
61d0784933
Allow loading of WMF images at a given DPI
2019-12-28 11:25:39 +11:00
Andrew Murray
34d04d3e82
Replaced distutils with C version check
2019-12-28 09:57:49 +11:00
Alexander
222c2f6978
Merge branch 'master' into reduce-in-resize
2019-12-27 15:13:19 +03:00
Alexander Karpinsky
5f69035865
Merge pull request #4251 from uploadcare/reduce
...
Reduce operation
2019-12-27 15:11:47 +03:00
Alexander
fc0248869c
wording
2019-12-27 14:27:37 +03:00
Hugo
86be41a167
Concatenate string literals on same line
2019-12-26 17:08:36 +02:00
Andrew Murray
fedb0407b4
Raise ValueError for io.StringIO in Image.open
2019-12-26 18:53:06 +11:00
Alexander
d719aafecb
Merge branch 'reduce' into reduce-in-resize
...
# Conflicts:
# docs/releasenotes/7.0.0.rst
2019-12-25 15:45:17 +03:00
Alexander
dda5558129
Merge branch 'master' into reduce
2019-12-25 15:42:47 +03:00
Alexander Karpinsky
b5d06baa5f
Merge pull request #4231 from uploadcare/box-in-thumbnail
...
Fix thumbnail geometry when DCT scaling is used
2019-12-25 15:41:40 +03:00
Andrew Murray
ee30fe1b39
Merge pull request #4147 from beipang2/issue_4146
...
Use default DPI when exif provides invalid x_resolution
2019-12-25 20:26:27 +11:00
Andrew Murray
666b726626
Simplified conditions
2019-12-25 15:32:38 +11:00
Andrew Murray
9a72ad4fa9
Removed condition already present from inheritance
2019-12-25 15:32:26 +11:00
Andrew Murray
c35fb6fb67
Merge branch 'master' into box-in-thumbnail
2019-12-24 18:18:34 +11:00
Andrew Murray
4580b156b7
Raise an error if BMP file size is too large when saving
2019-12-21 08:37:40 +11:00
Alexander
fc28182040
fix formatting
2019-12-20 20:42:00 +03:00
Alexander
8181aed77f
Merge branch 'reduce' into reduce-in-resize
...
# Conflicts:
# docs/releasenotes/7.0.0.rst
# src/PIL/Image.py
2019-12-20 20:27:11 +03:00
Alexander
d41f2713b6
Merge branch 'master' into reduce
2019-12-20 20:22:36 +03:00
Alexander
a9d7a2be77
TestReducingGapResize
2019-12-20 20:20:28 +03:00
Alexander
b48996c213
rename max_reduce to reducing_gap
2019-12-20 14:59:18 +03:00
Alexander
b112e55070
Merge branch 'master' into box-in-thumbnail
...
# Conflicts:
# docs/releasenotes/7.0.0.rst
2019-12-19 16:36:37 +03:00
Alexander Karpinsky
6d75a673b6
Merge pull request #4255 from uploadcare/default-resample-filter
...
Change default resize resampling filter from NEAREST to BICUBIC
2019-12-19 16:33:34 +03:00
Alexander Karpinsky
c82d2629d7
Merge pull request #4278 from uploadcare/fox-filter-black-lines
...
Define box filter equal 1.0 on (-0.5, 0.5] range instead of [-0.5, 0.5)
2019-12-19 03:26:17 +03:00
Alexander
5b53b0489b
Define box filter equal 1.0 on (-0.5, 0.5] range instead of [-0.5, 0.5)
2019-12-19 03:01:02 +03:00
Alexander
4da9858709
change default resampling filter for ImageOps.pad(), ImageOps.scale() and ImageOps.fit()
2019-12-17 18:15:02 +03:00
Alexander
fa9e85cd1f
max_reduce arguments in resize and thumbnail
2019-12-17 03:01:51 +03:00
Alexander
2db5406626
Merge branch 'box-in-thumbnail' into reduce-in-resize-2
2019-12-17 02:27:44 +03:00
Alexander
ea9c6e9fe1
Merge branch 'master' into reduce
2019-12-17 02:26:05 +03:00
Alexander
b35cbef234
modify the test image
2019-12-17 02:25:40 +03:00
Alexander
a027897f74
Merge branch 'master' into box-in-thumbnail
...
# Conflicts:
# Tests/test_image_thumbnail.py
2019-12-17 00:42:29 +03:00
Andrew Murray
c7bef264bc
Allow thumbnail to accept non-integer size arguments
2019-12-17 06:05:36 +11:00
Alexander
791d1a2846
Better thumbnail aspect ratio preservation
2019-12-07 20:07:27 +03:00
Alexander
ac92836e81
Change default resize resampling filter
2019-12-07 18:08:19 +03:00
Alexander
5283538fe4
unused import
2019-12-05 22:20:01 +03:00
Alexander
e54b9b3720
turn on ImagingReduce5x5 special case
2019-12-05 22:13:25 +03:00
Alexander
b655e81d39
not square test image
2019-12-05 14:30:17 +03:00
Alexander
5283141417
Merge branch 'master' into reduce
2019-12-05 14:23:28 +03:00
Alexander
5838d77c0e
args test
2019-12-05 03:24:38 +03:00
Alexander
778b5f9fed
add box parameter
2019-12-04 23:13:20 +03:00
Alexander
cc30b1e55a
Add La mode packing and unpacking
2019-12-04 22:58:09 +03:00
Alexander
a4a6a9e83a
Add La mode packing and unpacking
2019-12-04 22:47:15 +03:00
Andrew Murray
4551d3aeb3
Merge pull request #4173 from hugovk/cover-tests
...
Include tests in coverage reports
2019-12-03 06:41:54 +11:00
Hugo
ebed90c228
Remove redundant files
2019-12-02 15:26:51 +02:00
Alexander
d92c58fa7f
I mode support
2019-12-01 22:52:43 +03:00
Alexander
a576b14056
F mode support
2019-12-01 22:28:16 +03:00
Alexander Karpinsky
d970a39840
Special cases:
...
ImagingReduce1x2, ImagingReduce1x3, ImagingReduce2x1, ImagingReduce3x1
2019-12-01 21:41:15 +03:00
Alexander
1d1f3be27a
unsupported modes
2019-12-01 20:34:05 +03:00
Alexander
008c1c88e2
L mode support
2019-12-01 20:33:48 +03:00
Alexander
a241f1ed8e
complete tests for supported modes
2019-12-01 19:13:34 +03:00
Andrew Murray
2d7cfc4bbc
Merge pull request #4239 from radarhere/photoshop
...
Handle broken Photoshop data
2019-12-01 07:33:26 +11:00
Andrew Murray
08cad40002
Merge pull request #4181 from pwohlhart/patch-1
...
Better error messaging in PIL.Image.fromarray
2019-11-30 21:12:05 +11:00
Hugo van Kemenade
a776255a90
Merge pull request #4240 from radarhere/mpo
...
Raise a specific exception if no data is found for an MPO frame
2019-11-30 11:25:46 +02:00
Andrew Murray
47b2ae9a63
Raise a specific exception if no data is found for an MPO frame
2019-11-30 11:05:36 +11:00
Andrew Murray
e51be50549
Handle broken Photoshop data
2019-11-30 10:08:32 +11:00
Alexander
8b6ad4a471
tests for supported modes
2019-11-26 03:39:57 +03:00
Andrew Murray
c0048ad7de
Use context managers
2019-11-26 07:03:23 +11:00
Alexander
c23f29481c
try to deal with different libjpeg version
2019-11-24 15:34:12 +03:00
Alexander
e234445682
linter fixes
2019-11-24 15:32:45 +03:00
Hugo van Kemenade
37be3b0dda
Merge pull request #4145 from nulano/ucs4-pypy
...
Fix Unicode support for PyPy
2019-11-24 13:51:27 +02:00
Alexander
fd21de7dc4
Merge branch 'refs/heads/master' into box-in-thumbnail
...
# Conflicts:
# Tests/test_image_thumbnail.py
2019-11-24 05:27:13 +03:00
Alexander
375556ffb5
use a box from draft in thumbnail
2019-11-24 05:24:00 +03:00
Alexander
4126f6cdf7
return chosen image mode and the box of the image
2019-11-24 04:55:49 +03:00
Jon Dufresne
33dabf986f
Import unittest from stdlib rather than helper.py
...
The unittest in helper.py has not offered an interesting abstraction
since dbe9f85c7d
so import from the more
typical stdlib location.
2019-11-20 18:42:52 -08:00
nulano
837d8ae984
fix support for extended unicode characters in PyPy
2019-11-20 17:02:44 +00:00
Hugo
106fc4085f
Remove redundant files
2019-11-20 17:28:37 +02:00
Hugo
a1c6b5edf7
Cover tests https://nedbatchelder.com/blog/201908/dont_omit_tests_from_coverage.html
2019-11-20 17:28:12 +02:00
Hugo van Kemenade
a949d7882e
Merge branch 'master' into rm-2.7
2019-11-20 10:26:55 +02:00
Andrew Murray
40f891dfd7
Added UnidentifiedImageError
2019-11-19 21:20:02 +11:00
Hugo
e5486b40f8
Merge remote-tracking branch 'upstream/master' into rm-2.7
2019-11-18 13:56:42 +02:00
nulano
197fb91574
upload image errors to GitHub Actions
2019-11-17 21:49:58 +11:00
Hugo
12a725988e
Merge remote-tracking branch 'upstream/master' into rm-2.7
2019-11-16 17:10:10 +02:00
Hugo van Kemenade
b64d96d414
Merge pull request #4116 from radarhere/memory
...
Fixed freeing unallocated pointer when resizing with height too large
2019-11-13 20:29:09 +02:00
Hugo van Kemenade
54e57768ab
Merge pull request #4128 from radarhere/info
...
Copy info in Image.transform
2019-11-13 20:27:51 +02:00
Hugo van Kemenade
ce18064b20
Merge pull request #4171 from radarhere/gamma
...
Corrected DdsImagePlugin setting info gamma
2019-11-13 20:26:03 +02:00
Andrew Murray
d79f2bb7dc
Corrected context manager test
2019-11-06 20:12:19 +11:00
Hugo van Kemenade
3663af1967
Merge pull request #4189 from cgohlke/patch-1
...
Report details about Pillow when running tests
2019-11-05 13:01:02 +02:00
Hugo van Kemenade
5006401d0b
Merge branch 'master' into rm-2.7
2019-11-03 22:48:26 +02:00
Christoph Gohlke
5d10f8dff2
Use features.pilinfo to report details about Pillow
2019-11-02 15:12:52 -07:00
Hugo van Kemenade
6060ed3d14
Merge pull request #4091 from nulano/libimagequant-features
...
Add libimagequant to features.py
2019-11-02 21:31:09 +02:00
Andrew Murray
b1ee44a74b
Ignore UserWarnings
2019-11-02 18:10:55 +11:00
Christoph Gohlke
579b6cac60
Report details about Pillow when running tests
2019-11-01 23:06:51 -07:00
Hugo
b4f93cf140
Upgrade Python syntax with pyupgrade --py3-plus
2019-11-01 13:54:19 +02:00
Hugo
cc63f66575
Merge remote-tracking branch 'upstream/master' into rm-2.7
2019-11-01 13:22:56 +02:00
Hugo van Kemenade
2cf510e596
Improve handling of file resources ( #3577 )
...
Improve handling of file resources
2019-11-01 12:07:53 +02:00
Andrew Murray
b65fcb280a
Copy info in transform
2019-10-30 22:14:01 +11:00
Andrew Murray
d716278d20
Corrected DdsImagePlugin setting info gamma
2019-10-30 22:13:06 +11:00
Andrew Murray
511aed922a
Fixed freeing unallocated pointer when resizing with height too large
2019-10-30 22:09:28 +11:00
Andrew Murray
9b20276c45
Allow for arr KeyError
2019-10-30 07:23:08 +11:00
Bei Pang
f53b86b673
Removed TypeError exception check in JpegImagePlugin; Updated comments in test
2019-10-28 09:48:37 -07:00
Bei Pang
bcc766e02d
Use default DPI when exif provides invalid x_resolution
2019-10-27 07:50:30 +11:00
Hugo van Kemenade
40133cfc74
Merge branch 'master' into rm-2.7
2019-10-26 09:07:44 +03:00
Jon Dufresne
cae17eb927
Use more Pythonic super() instead of referencing parent class
...
https://rhettinger.wordpress.com/2011/05/26/super-considered-super/
2019-10-22 06:54:58 -07:00
Hugo van Kemenade
1a9be9ccbd
Simpilify PillowTestCase.delete_tempfile for pytest ( #4139 )
...
Simpilify PillowTestCase.delete_tempfile for pytest
2019-10-22 14:14:20 +03:00
Hugo van Kemenade
28ff798889
Merge branch 'master' into rm-2.7
2019-10-15 12:11:43 +03:00
Jon Dufresne
9981568982
Simpilify PillowTestCase.delete_tempfile for pytest
...
As the test suite always runs with pytest now, self.currentResult is
always None. Using this, can remove unused code.
2019-10-12 11:13:14 -07:00
Jon Dufresne
4cd4adddc3
Improve handling of file resources
...
Follow Python's file object semantics. User code is responsible for
closing resources (usually through a context manager) in a deterministic
way.
To achieve this, remove __del__ functions. These functions used to
closed open file handlers in an attempt to silence Python
ResourceWarnings. However, using __del__ has the following drawbacks:
- __del__ isn't called until the object's reference count reaches 0.
Therefore, resource handlers remain open or in use longer than
necessary.
- The __del__ method isn't guaranteed to execute on system exit. See the
Python documentation:
https://docs.python.org/3/reference/datamodel.html#object.__del__
> It is not guaranteed that __del__() methods are called for objects
> that still exist when the interpreter exits.
- Exceptions that occur inside __del__ are ignored instead of raised.
This has the potential of hiding bugs. This is also in the Python
documentation:
> Warning: Due to the precarious circumstances under which __del__()
> methods are invoked, exceptions that occur during their execution
> are ignored, and a warning is printed to sys.stderr instead.
Instead, always close resource handlers when they are no longer in use.
This will close the file handler at a specified point in the user's code
and not wait until the interpreter chooses to. It is always guaranteed
to run. And, if an exception occurs while closing the file handler, the
bug will not be ignored.
Now, when code receives a ResourceWarning, it will highlight an area
that is mishandling resources. It should not simply be silenced, but
fixed by closing resources with a context manager.
All warnings that were emitted during tests have been cleaned up. To
enable warnings, I passed the `-Wa` CLI option to Python. This exposed
some mishandling of resources in ImageFile.__init__() and
SpiderImagePlugin.loadImageSeries(), they too were fixed.
2019-10-12 08:27:17 -07:00
Jon Dufresne
0affbacd5e
Remove unused arguments from PillowTestCase.skipKnwonBadTest()
2019-10-12 08:17:20 -07:00
nulano
accbe58b5e
add Python version to selftest, rename brief parameter
2019-10-12 15:40:12 +01:00
Andrew Murray
4140cd807b
Merge branch 'master' into rm-2.7
2019-10-12 18:03:58 +11:00
Hugo
3e24c5fea4
Replace isStringType(t) with isinstance(t, str)
...
Co-Authored-By: Jon Dufresne <jon.dufresne@gmail.com>
2019-10-08 17:26:52 +03:00
Hugo
3a34081db5
Simplify temporary directory cleanup
...
Co-Authored-By: Jon Dufresne <jon.dufresne@gmail.com>
2019-10-08 17:25:55 +03:00
Hugo
84e53e3757
Simplify using subprocess.DEVNULL
...
Co-Authored-By: Jon Dufresne <jon.dufresne@gmail.com>
2019-10-08 17:25:42 +03:00
nulano
a0a5601689
Merge branch 'master' into gha-win
2019-10-08 12:56:43 +01:00
Andrew Murray
6cd99fc3cf
Merge branch 'master' into rm-2.7
2019-10-08 18:57:27 +11:00
Jon Dufresne
64032061c0
Move several imports to the top-level of the file
...
This better follows PEP 8 style guide:
https://www.python.org/dev/peps/pep-0008/#imports
> Imports are always put at the top of the file, just after any module
> comments and docstrings, and before module globals and constants.
This also avoids duplicate import code within the same file.
2019-10-07 06:28:36 -07:00
Hugo
4382413bb4
Remove redundant bytearray
2019-10-07 16:23:43 +03:00
Hugo
865b17d5cf
Remove Python 2-compatibility code
2019-10-07 16:23:22 +03:00
Hugo
74d2767c57
Remove duplicate line
2019-10-07 14:30:59 +03:00
Hugo
538d9e2e5d
Upgrade Python syntax with pyupgrade --py3-plus
2019-10-07 14:30:59 +03:00
Hugo
af770a6c55
Drop support for EOL Python 2.7
2019-10-07 14:30:59 +03:00
Jon Dufresne
922f55c265
Use bytes literals instead of bytes(str)
...
Bytes literals are available on all supported Python versions. Rather
than convert strings literals to bytes at runtime, simply use a bytes
literal.
2019-10-06 19:26:55 -07:00
Andrew Murray
e8cf9a6bc1
Merge pull request #4108 from hugovk/rm-deprecated-qt
...
Drop support for EOL PyQt4 and PySide
2019-10-07 12:35:56 +11:00
Jon Dufresne
c50a309a10
Remove duplicate cleanup in test_decompression_bomb.py
...
The same cleanup is done in the teardDown() method. There is no need to
do it a 2nd time.
2019-10-06 10:24:48 -07:00
Andrew Murray
732eb7223f
Merge branch 'master' into rm-deprecated-qt
2019-10-06 13:35:38 +11:00
Andrew Murray
d6ae0a99a7
Removed deprecated setting of TIFF image sizes
2019-10-03 22:12:28 +10:00
Andrew Murray
e487ed7fef
Removed deprecation test
2019-10-02 22:01:31 +10:00
Hugo
f0a87e25a4
Drop support for EOL PyQt4 and PySide
2019-09-30 17:58:31 +03:00
Andrew Murray
cc16025e23
Merge pull request #4104 from radarhere/overrun
...
Catch buffer overruns
2019-09-30 23:33:28 +10:00
Andrew Murray
fb8470187a
Merge pull request #4034 from cgohlke/patch-1
...
Initialize rows_per_strip when RowsPerStrip tag is missing
2019-09-30 22:32:34 +10:00
Andrew Murray
b9693a51c9
Merge pull request #4103 from radarhere/dimension
...
Raise error if TIFF dimension is a string
2019-09-30 21:26:53 +10:00
Andrew Murray
f228d0ccbf
Merge pull request #4102 from radarhere/decompression
...
Added decompression bomb checks
2019-09-30 20:31:05 +10:00
Andrew Murray
9a977b975c
Raise error if dimension is a string
2019-09-30 18:48:10 +10:00
Andrew Murray
ab52630d06
Catch buffer overruns
2019-09-30 18:45:43 +10:00
Andrew Murray
eed2bfc5b4
Added decompression bomb checks
2019-09-30 18:45:13 +10:00
Andrew Murray
87c43b66a5
Corrected negative seeks
2019-09-30 18:31:18 +10:00
Andrew Murray
4de10089f0
Moved libtiff test into libtiff test file
2019-09-29 21:06:11 +10:00
Hugo van Kemenade
d3ae7a1c46
Merge pull request #4088 from radarhere/fit
...
Do not calculate the crop width in Image.fit if it is already known
2019-09-29 12:57:29 +03:00
Andrew Murray
1809f46e0b
Do not calculate the crop width if it is already known
2019-09-29 14:26:32 +10:00
nulano
17d9938ece
spider labrec ceil
2019-09-27 22:10:49 +02:00
Hugo van Kemenade
310d2c9005
Add option to capture all monitors on Windows ( #3950 )
...
Add option to capture all monitors on Windows
2019-09-27 08:47:55 +03:00
nulano
cf1f8b0498
Tests.helper cleanup
2019-09-25 11:58:02 +02:00
nulano
113a72633a
test-windows.yml clean names
2019-09-25 11:28:52 +02:00
nulano
4d35cb9d0a
test-windows.yml pypy3, use actions/setup-python
2019-09-25 09:17:38 +02:00
Andrew Murray
7d502dd410
Cleanup by resetting locale
2019-09-23 20:26:34 +10:00
Andrew Murray
508a2b48f0
Test show method on CIs
2019-09-21 22:28:05 +10:00
Hugo van Kemenade
f5aed1a254
Merge branch 'master' into patch-1
2019-09-20 22:59:29 +03:00
Hugo van Kemenade
736b8436e7
Use TIFF orientation ( #4063 )
...
Use TIFF orientation
2019-09-20 22:57:58 +03:00
Hugo van Kemenade
8e3c4e3658
Merge pull request #3965 from radarhere/truncated
...
Raise the same error if a truncated image is loaded a second time
2019-09-20 22:53:52 +03:00
nulano
6a2d8f8da0
rename parameter, add note to docs
2019-09-20 17:35:08 +02:00
Andrew Murray
19ab3c36e6
Added test
2019-09-18 22:07:17 +10:00
Andrew Murray
1b70a4c6b5
Use TIFF orientation
2019-09-13 22:36:26 +10:00
Andrew Murray
b913fa6a53
Increased tolerance for stroke test comparison
2019-09-11 19:57:45 +10:00
Hugo van Kemenade
e5f6b86413
Merge pull request #4031 from radarhere/exif
...
Lazily use ImageFileDirectory_v1 values from Exif
2019-09-09 20:16:24 +03:00
Andrew Murray
5a668779e9
Added tests
2019-09-08 21:27:55 +10:00
Andrew Murray
14859ce506
Merge pull request #4004 from radarhere/hsv
...
Improved HSV conversion
2019-09-07 00:50:34 +10:00
Andrew Murray
da39d40342
Merge pull request #3978 from radarhere/stroke
...
Added text stroking
2019-09-06 19:14:49 +10:00
Hugo van Kemenade
cb1ebc024b
Merge pull request #4017 from radarhere/floodfill
...
Do not allow floodfill to extend into negative coordinates
2019-09-05 23:00:33 +03:00
Hugo van Kemenade
bd2d7cb247
Merge pull request #4014 from radarhere/arc
...
Fixed arc drawing bug for a non-whole number of degrees
2019-09-05 22:52:05 +03:00
Hugo van Kemenade
572a93c86f
Corrected tag counts ( #4033 )
...
Corrected tag counts
2019-09-05 22:41:16 +03:00
Hugo van Kemenade
3f9d00e4c2
Merge pull request #3967 from radarhere/error
...
Return after error
2019-09-04 16:07:22 +03:00
Konstantin Kopachev
06e34db10b
Merge remote-tracking branch 'upstream/master' into exif-writing-fixes
...
# Conflicts:
# Tests/test_file_tiff_metadata.py
2019-08-29 09:20:09 -07:00
Andrew Murray
ddcfd259cf
Corrected short and long range checks
2019-08-29 19:36:46 +10:00
Andrew Murray
35a7d11f43
Fixed typo [ci skip]
2019-08-29 19:02:19 +10:00
Andrew Murray
24d29bd11d
Merge pull request #4003 from djy0/master
...
Fix bug when merging identical images to GIF with a list of durations
2019-08-25 12:52:41 +10:00
Andrew Murray
2dbfabe6d5
Simplifications
2019-08-24 08:10:45 +10:00
Andrew Murray
d96f657328
Merge pull request #3998 from chadawagner/master
...
Fix bug in TIFF loading of BufferedReader
2019-08-23 06:25:30 +10:00
chadawagner
34330a7aa0
Update Tests/test_file_libtiff.py
...
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2019-08-19 09:46:07 -07:00
Andrew Murray
f08a0966a0
Corrected tag counts
2019-08-19 21:12:16 +10:00
Andrew Murray
5b120164b5
Corrected underline [ci skip]
2019-08-17 20:32:24 +10:00
nulano
fa6b80fddf
add option to capture all monitors on Windows
2019-08-15 20:03:33 +10:00
Konstantin Kopachev
1b626f4d22
Fix RATIONAL and SRATIONAL boundaries when writing IFDs
2019-08-12 19:43:35 +10:00
chadawagner
457a97dde8
added test for reading TIFF from non-disk file obj
2019-08-12 18:56:34 +10:00
djy0
0872cb4377
fix comment
2019-08-12 18:54:29 +10:00
djy0
63c15dc3ba
format
2019-08-12 18:54:29 +10:00
djy0
3c971bec41
format
2019-08-12 18:54:29 +10:00
djy0
8696f06fbe
Update test_file_gif.py
2019-08-12 18:54:29 +10:00
Andrew Murray
23872c0645
Do not allow floodfill to extend into negative coordinates
2019-08-12 06:51:16 +10:00
Andrew Murray
8fff9a2444
Fixed arc drawing bug for a non-whole number of degrees
2019-08-12 06:50:58 +10:00
Andrew Murray
27d6fc7bc5
Improved HSV conversion
2019-08-12 06:50:18 +10:00
Andrew Murray
f93a5d0972
Added text stroking
2019-07-29 06:40:03 +10:00
Andrew Murray
66ad3cb461
Changed overflow check to use PY_SSIZE_T_MAX
2019-07-17 07:07:26 +10:00
Hugo van Kemenade
1ab5670eb1
Introduce isort to automate import ordering and formatting ( #3954 )
...
Introduce isort to automate import ordering and formatting
2019-07-16 23:02:31 +03:00
Andrew Murray
2995fb67c1
Return after error
2019-07-13 13:50:13 +10:00
Andrew Murray
023dcf27c2
Raise the same error if a truncated image is loaded a second time
2019-07-13 08:37:17 +10:00
Jon Dufresne
d50445ff30
Introduce isort to automate import ordering and formatting
...
Similar to the recent adoption of Black. isort is a Python utility to
sort imports alphabetically and automatically separate into sections. By
using isort, contributors can quickly and automatically conform to the
projects style without thinking. Just let the tool do it.
Uses the configuration recommended by the Black to avoid conflicts of
style.
Rewrite TestImageQt.test_deprecated to no rely on import order.
2019-07-06 16:11:35 -07:00
nulano
0b0dc1112e
Merge branch 'master' into revert-3931-update-freetype-epsilon
...
# Conflicts:
# Tests/test_imagefont.py
2019-07-02 22:49:45 +02:00
nulano
d7c69ea2b4
skip test_unicode_extended on Python 2.x
2019-07-02 11:14:09 +02:00
nulano
22ce5cc0c7
Revert "Update epsilon for FreeType 2.10 with eg. Unicode width 16"
2019-07-02 11:08:48 +02:00
nulano
14ddfd30b2
fix lint
2019-07-02 09:31:05 +02:00
nulano
86d4c53d79
revert #3780 for PyPy as it hasn't been updated
2019-07-02 08:52:15 +02:00
Hugo
46535df8f3
Update epsilon for FreeType 2.10 with eg. Unicode width 16
2019-07-01 16:32:22 +03:00
Oliver Tonnhofer
edeb8d69af
Merge branch 'master' into tiff-jpeg-quality
2019-07-01 11:00:06 +02:00
Oliver Tonnhofer
2af4026201
Improve encoding of TIFF tags ( #3861 )
...
* Improve encoding of TIFF tags
- Pass tagtype from v2 directory to libtiff encoder, instead of
autodetecting type.
- Use explicit types. E.g. uint32_t for TIFF_LONG to fix issues on
platforms with 64bit longs.
- Add support for multiple values (arrays). Requires type in v2
directory and values must be passed as a tuple.
- Add support for signed types (e.g. TIFFTypes.TIFF_SIGNED_SHORT).
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2019-06-30 21:48:19 +03:00
Hugo
8d4bb339a6
Merge pull request #3780 from nulano/update_py_unicode
...
Update Py_UNICODE to Py_UCS4
2019-06-30 13:21:46 +03:00
Hugo
12695b8ca3
Merge pull request #3899 from radarhere/pixelsize
...
Consider I;16 pixel size when drawing
2019-06-30 13:18:46 +03:00
Hugo
f5a89a0e9a
Use unittest asserts for consistency
2019-06-30 11:13:02 +03:00
Andrew Murray
c994b783ec
Merge branch 'master' into tiff-jpeg-quality
2019-06-30 14:03:09 +10:00
Andrew Murray
42588a6493
Skip test if libtiff is not installed
2019-06-30 13:26:58 +10:00
Andrew Murray
cc0d70145b
Lint fixes
2019-06-30 13:26:58 +10:00
Christoph Gohlke
4a69223db9
Add test for sampleformat corruption
2019-06-30 13:26:58 +10:00
Andrew Murray
9074eda608
Merge pull request #3778 from radarhere/all_frames
...
Added ImageSequence all_frames
2019-06-30 07:55:34 +10:00
Andrew Murray
90d3d37164
Do not presume that the background color index is 0
2019-06-29 23:06:45 +10:00
Andrew Murray
97c15a245c
Corrected color table size calculation
2019-06-29 23:02:26 +10:00
Andrew Murray
c3e982e0c6
Merge branch 'master' into master
2019-06-29 22:59:17 +10:00
Hugo
0e7358a046
Updated TIFF tile descriptors to match current decoding functio… ( #3795 )
...
Updated TIFF tile descriptors to match current decoding functionality
2019-06-29 10:27:00 +03:00
Hugo
08c47925d0
Added an image.entropy()
method ( #3608 )
...
Added an `image.entropy()` method
2019-06-29 10:12:34 +03:00
Hugo
372c7c352a
Merge pull request #3703 from jkrshnmenon/master
...
Add an upper limit for blocks_max in _set_blocks_max
2019-06-27 23:03:25 +03:00
Hugo
b584635a8c
Merge pull request #3912 from radarhere/non_font_bytes
...
Fixed crash when loading non-font bytes
2019-06-27 22:40:29 +03:00
Andrew Murray
8b447c4840
Lint fixes
2019-06-26 19:16:36 +10:00
Alexander Böhn
7b815a5f1d
Added an image.entropy()
method
...
This calculates the entropy for the image, based on the histogram.
Because this uses image histogram data directly, the existing C
function underpinning the `image.histogram()` method was abstracted
into a static function to parse extrema tuple arguments, and a new
C function was added to calculate image entropy, making use of the
new static extrema function.
The extrema-parsing function was written by @homm, based on the
macro abstraction I wrote, during the discussion of my first
entropy-method pull request: https://git.io/fhodS
The new `image.entropy()` method is based on `image.histogram()`,
and will accept the same arguments to calculate the histogram data
it will use to assess the entropy of the image.
The algorithm and methodology is based on existing Python code:
* https://git.io/fhmIU
... A test case in the `Tests/` directory, and doctest lines in
`selftest.py`, have both been added and checked.
Changes proposed in this pull request:
* Added “math.h” include to _imaging.c
* The addition of an `image.entropy()` method to the `Image`
Python class,
* The abstraction of the extrema-parsing logic of of the C
function `_histogram` into a static function, and
* The use of that static function in both the `_histogram` and
`_entropy` C functions.
* Minor documentation addenda in the docstrings for both the
`image.entropy()` and `image.histogram()` methods were also
added.
* Removed outdated boilerplate from testing code
* Removed unused “unittest” import
2019-06-26 19:15:47 +10:00
Andrew Murray
f22198e3bc
Lint fixes
2019-06-26 19:09:02 +10:00
Andrew Murray
d591cf8d3f
Error is not raised on 64-bit systems
2019-06-26 19:08:07 +10:00
Jayakrishna Menon
590b5b7f9e
test case for set_blocks_max
2019-06-26 19:08:07 +10:00
Jayakrishna Menon
2acc098cab
adding testcase for overflow
2019-06-26 19:08:07 +10:00
Jayakrishna Menon
494fb25bdb
adding testcase for overflow
2019-06-26 19:08:07 +10:00
Oliver Tonnhofer
2b7d8be536
tiff: add support for JPEG quality
...
Uses JPEGQUALITY pseudo-tag from libtiff.
Also changes the way tags are passed to PyImaging_LibTiffEncoderNew from
dict to list to ensure that COMPRESSION tag is added before JPEGQUALITY.
This is required as the COMPRESSION tag registers the JPEGQUALITY
pseudo-tag.
2019-06-26 06:33:54 +10:00
Oliver Tonnhofer
61add9d6b0
Improve encoding of TIFF tags
...
- Pass tagtype from v2 directory to libtiff encoder, instead of
autodetecting type.
- Use explicit types. E.g. uint32_t for TIFF_LONG to fix issues on
platforms with 64bit longs.
- Add support for multiple values (arrays). Requires type in v2
directory and values must be passed as a tuple.
- Add support for signed types (e.g. TIFFTypes.TIFF_SIGNED_SHORT).
2019-06-26 06:33:19 +10:00
Andrew Murray
25cf1010eb
Lint fixes
2019-06-25 22:20:57 +10:00
nulano
983371d4d8
fix centos, amazon
2019-06-25 22:16:00 +10:00
nulano
be192d8f69
fix lint
2019-06-25 22:16:00 +10:00
nulano
5f65f10191
add test for #3777
2019-06-25 22:16:00 +10:00
Andrew Murray
d00e18b017
Updated test result
2019-06-23 14:01:51 +10:00
David Nisson
ddb61cfbd2
updated tests to match new tile descriptors
2019-06-23 13:59:20 +10:00
Andrew Murray
9c37933bb9
Added CMYK;16B and CMYK;16N unpackers
2019-06-23 11:56:17 +10:00
Andrew Murray
7bb16de81c
Fixed crash when loading non-font bytes
2019-06-23 11:53:01 +10:00
Andrew Murray
db4916849e
Added ImageSequence all_frames
2019-06-23 07:34:39 +10:00
Andrew Murray
e0cbfb2708
Consider I;16 pixel size when drawing
2019-06-23 07:33:55 +10:00
Andrew Murray
68fac40147
Fixed black formatting
2019-06-22 14:47:56 +10:00
Hugo
f5cd8b4b0d
Merge pull request #3909 from hugovk/run-black
...
Format code with Black
2019-06-22 06:46:15 +03:00
Andrew Murray
ea0f1c6b06
Do not presume that the last glyph has the max x value
2019-06-19 22:32:01 +10:00
Andrew Murray
fb38296230
Change direction of y offset in calculating size
2019-06-19 22:30:50 +10:00
Hugo
be1b551bfc
Add __main__.py to output basic format and support information ( #3870 )
...
Add __main__.py to output basic format and support information
2019-06-19 14:42:34 +03:00
Andrew Murray
da16b7ec45
Added variation font support
2019-06-19 20:27:49 +10:00
Hugo
488a0170a3
Format with Black
2019-06-19 09:30:10 +03:00
Hugo
1b99362f3d
Merge remote-tracking branch 'upstream/master' into run-black
2019-06-19 09:29:28 +03:00
Hugo
f338eae128
Merge pull request #3869 from radarhere/imageshow
...
Do not down-convert if image is LA when showing with PNG format
2019-06-19 09:26:15 +03:00
Hugo
a9c05c7aa0
Merge pull request #3759 from radarhere/psd_frames
...
Improve handling of PSD frames
2019-06-19 09:15:13 +03:00
Hugo
ac6185ca15
Merge pull request #3897 from radarhere/load
...
Improved ICO and ICNS loading
2019-06-19 09:09:34 +03:00
Hugo
b2714854a3
Merge pull request #3856 from radarhere/ttb
...
Corrected ttb text positioning
2019-06-19 09:01:51 +03:00
Hugo
5631718a8d
Format with Black
2019-06-13 18:54:46 +03:00
Hugo
77f946d8bc
Format with Black
2019-06-13 18:54:24 +03:00
Hugo
f87821e010
Format with Black
2019-06-13 18:54:11 +03:00
Hugo
d08475442b
Format with Black
2019-06-13 18:53:42 +03:00
Andrew Murray
b262378632
Added mode descriptors for all I;16 modes
2019-06-12 20:33:00 +10:00
Andrew Murray
e8af68bae2
Increased test coverage
2019-06-12 20:30:43 +10:00
Andrew Murray
e1e35cc819
Close internal fp when closing and deleting
2019-06-12 20:12:03 +10:00
Andrew Murray
ea02e28adb
Use _min_frame in ImageSequence.Iterator
2019-06-12 20:11:51 +10:00
Andrew Murray
72d5ee3bfa
Do not close exclusive fp after loading
2019-06-12 20:10:28 +10:00
Andrew Murray
f7d7a80b5b
Allow ICNS to change size as ICO does
2019-06-12 02:19:58 +10:00
Andrew Murray
02a2e93703
Do not load ICO if already loaded
2019-06-12 02:18:54 +10:00
Andrew Murray
231fe4d62a
Revert "Merge pull request #3838 from radarhere/i_conversion"
...
This reverts commit 41f3e7c8bd
, reversing
changes made to 2f84482871
.
2019-06-11 19:28:31 +10:00
Andrew Murray
54c83f61bd
Check for raqm version function
2019-06-07 05:51:40 +10:00
Andrew Murray
1c1447f563
Corrected ttb text positioning
2019-06-07 05:51:40 +10:00
Andrew Murray
77630f000c
Updated resampling filter error messages
2019-06-06 21:36:38 +10:00
Hugo
169961649d
Merge pull request #3848 from radarhere/pa
...
Improved palette handling for LA and PA modes
2019-06-05 22:32:44 +03:00
Hugo
41f3e7c8bd
Merge pull request #3838 from radarhere/i_conversion
...
Improved I mode conversion
2019-06-05 22:23:35 +03:00
Andrew Murray
e011fb155f
Fixed typo
2019-06-05 19:32:50 +10:00
Hugo
23d4e6f4c4
Tighten fixed pyroma test
2019-06-02 22:36:05 +03:00
Jon Dufresne
1008644dd6
Add __main__.py to output basic format and support information
...
To help debug and show supported formats, users can run:
$ python -m PIL
to get basic format and support information about the installed version
of Pillow.
The new feature works as follows:
$ python -m PIL
--------------------------------------------------------------------
Pillow 6.1.0.dev0
--------------------------------------------------------------------
Python modules loaded from .../Pillow/src/PIL
Binary modules loaded from .../Pillow/src/PIL
--------------------------------------------------------------------
Python 3.7.3 (default, May 11 2019, 00:38:04)
[GCC 9.1.1 20190503 (Red Hat 9.1.1-1)]
--------------------------------------------------------------------
--- PIL CORE support ok
--- TKINTER support ok
--- FREETYPE2 support ok
--- LITTLECMS2 support ok
--- WEBP support ok
--- WEBP Transparency support ok
--- WEBPMUX support ok
--- WEBP Animation support ok
--- JPEG support ok
--- OPENJPEG (JPEG2000) support ok
--- ZLIB (PNG/ZIP) support ok
--- LIBTIFF support ok
--- RAQM (Bidirectional Text) support ok
--------------------------------------------------------------------
BLP
Extensions: .blp
Features: open
--------------------------------------------------------------------
BMP image/bmp
Extensions: .bmp
Features: open, save
--------------------------------------------------------------------
BUFR
Extensions: .bufr
Features: open, save
--------------------------------------------------------------------
…
2019-05-27 18:44:04 -07:00
Hugo
feb413e0f3
Merge pull request #3836 from radarhere/ico_size
...
Handle unexpected ICO image sizes
2019-05-12 19:53:48 +03:00
Andrew Murray
d830cca5ca
Handle unexpected ICO image sizes
2019-05-12 20:44:29 +10:00
Andrew Murray
e131fa22e2
Fixed reading and saving for TIFF and IM in PA mode
2019-05-11 14:43:48 +10:00
Andrew Murray
e9c0cf61f3
Fixed palette for LA and PA mode when pickling
2019-05-11 14:43:00 +10:00
Konstantin Kopachev
5e5ff10f09
Fix bits value for RGB;16N unpackers
2019-05-10 08:07:01 +10:00
Andrew Murray
2787b9b991
Added tests
2019-05-08 21:59:16 +10:00
Andrew Murray
ddc83fd8a7
Updated ImageMath tests for scaled I mode conversion
2019-05-08 21:58:50 +10:00
Andrew Murray
8a035b8c5d
Improved I mode conversion
2019-05-08 21:58:33 +10:00
Hugo
45df9ad882
Merge pull request #3807 from radarhere/code
...
Simplified code
2019-05-04 18:57:40 +03:00
Hugo
fdcacb6978
Merge pull request #3817 from radarhere/cmyk_16l
...
Added reading of CMYK;16L TIFF images
2019-05-04 18:53:13 +03:00
Hugo
d45a13d9cb
Merge pull request #3827 from radarhere/pdf
...
Fixed dimensions of 1-bit PDFs
2019-05-04 18:52:16 +03:00
Hugo
9a25b3c797
Merge pull request #3825 from radarhere/path
...
Fixed opening mmap image through Path on Windows
2019-05-04 18:51:23 +03:00
Hugo
c3ed8cc67e
Fixed ImageDraw arc gaps ( #3824 )
...
Fixed ImageDraw arc gaps
2019-05-04 18:50:07 +03:00
Hugo
5090bba463
Merge pull request #3822 from radarhere/tile
...
Expand GIF to include frames with extents outside the image size
2019-05-04 18:46:49 +03:00
Hugo
3e4b1a91ad
Merge pull request #3814 from radarhere/getimage
...
Fixed ImageTk getimage
2019-05-04 18:39:29 +03:00
Hugo
ab9a25d623
Merge pull request #3791 from radarhere/int
...
Fixed bug in decoding large images
2019-05-04 16:15:32 +03:00
Hugo
0ccd887431
Merge pull request #3771 from radarhere/app13
...
Fixed reading APP13 marker without Photoshop data
2019-05-04 16:10:02 +03:00
Andrew Murray
124c1f6bce
Added tests
2019-05-04 23:05:41 +10:00
Andrew Murray
683768095b
Removed duplicate code
2019-05-04 23:05:07 +10:00
Hugo
82d9ea5eac
Merge pull request #3808 from radarhere/imagegrab
...
Added option to include layered windows in ImageGrab.grab on Windows
2019-05-04 16:00:43 +03:00
Hugo
9077a80e3e
Merge pull request #3787 from radarhere/raqm
...
Fixed raqm layout bug
2019-05-04 15:57:13 +03:00
Hugo
e20228a60a
Merge pull request #3785 from radarhere/unicode_path
...
Fixed loading font with non-Unicode path on Windows
2019-05-04 15:55:50 +03:00
Andrew Murray
ae1f7c4f50
Fixed dimensions of 1-bit PDFs
2019-05-04 16:27:34 +10:00
Andrew Murray
691df96734
Fixed opening mmap image through Path on Windows
2019-05-04 15:00:49 +10:00
Andrew Murray
21c7fd251c
Fixed arc gaps
2019-05-03 23:37:37 +10:00
Andrew Murray
27134340f5
Expand GIF to include frames with extents outside the image size
2019-05-02 19:46:17 +10:00
Andrew Murray
ca0d28eae5
Added reading of CMYK;16L TIFF images
2019-05-01 00:42:30 +10:00
Andrew Murray
d9a3878937
Fixed ImageTk getimage
2019-04-29 23:43:13 +10:00
Andrew Murray
70038bd71e
Added option to include layered windows in ImageGrab.grab on Windows
2019-04-26 20:09:46 +10:00
Andrew Murray
ca1cf59251
Changed decode buffer size to Py_ssize_t
2019-04-15 17:33:28 +10:00
Andrew Murray
73cb0ce15f
Fixed numpy bool bug
2019-04-13 00:25:59 +10:00
Andrew Murray
b742d1511e
Fixed raqm layout bug
2019-04-11 15:36:33 +10:00
Andrew Murray
4e6aa7d6d3
Fixed loading font with non-Unicode path on Windows
2019-04-10 07:04:59 +10:00
Riley Lahd
5fb36d2de4
Merge branch 'master' of https://github.com/python-pillow/Pillow
2019-04-09 08:24:52 -06:00
Hugo
b636dde501
Merge pull request #3765 from hugovk/rm-eol-trusty
...
Drop support for EOL Ubuntu 14.04 (Trusty Tahr)
2019-04-06 13:19:21 +03:00
Andrew Murray
2274c2afc7
Fixed reading APP13 marker without Photoshop data
2019-04-05 20:02:45 +11:00
Andrew Murray
4f3b44960f
Resolved segfaults
2019-04-02 09:25:27 +11:00
Hugo
1c3da86ae7
Remove workaround for EOL Trusty/Precise
2019-04-01 17:45:32 +03:00
Andrew Murray
40bc46ff49
Moved ImageFile.Exif to Image.Exif
2019-04-01 20:03:02 +11:00
Andrew Murray
8f0db65cd7
Allow exif_transpose to work on Image instances as well as ImageFile
2019-04-01 19:37:25 +11:00
Andrew Murray
38fb9b1030
Delete EXIF orientation tag after transposing
2019-04-01 18:49:09 +11:00
Hugo
c8257b30dd
Merge pull request #3687 from radarhere/exif_transpose
...
Add ImageOps exif_transpose method
2019-04-01 10:23:33 +03:00
Hugo
7d378a8e4c
Merge pull request #3625 from radarhere/exif
...
Add EXIF class
2019-04-01 10:20:05 +03:00
Andrew Murray
f707affbde
Merge pull request #3615 from hugovk/imagecms-deprecations
...
Add warnings to deprecated CMS profile attributes
2019-04-01 17:35:32 +11:00
Hugo
4f8cfd536b
Merge pull request #3721 from radarhere/quantize
...
Update palette in quantize
2019-03-30 12:07:38 +02:00
Hugo
05849ca794
Merge pull request #3714 from radarhere/tiff_frames
...
Improvements to TIFF is_animated and n_frames
2019-03-30 12:04:16 +02:00
Hugo
69ed0aa5b5
Merge pull request #3728 from radarhere/pa_mode
...
Improvements to PA and LA conversion and palette operations
2019-03-30 12:00:06 +02:00
Andrew Murray
c96cdb5e77
Consistent DPI rounding
2019-03-30 15:03:57 +11:00
Andrew Murray
dba38912fb
Allow putpalette for LA and PA
2019-03-29 23:13:50 +11:00
Andrew Murray
819b8acd26
Improved PA conversion
2019-03-29 23:13:07 +11:00
Alex Clark
c8ee701013
Merge pull request #3752 from hugovk/update-classifiers
...
Update Trove licence classifiers
2019-03-28 14:18:58 -04:00
Andrew Murray
64910d1921
Parse Nintendo and Fujifilm MakerNote tags
2019-03-28 21:13:12 +11:00
Andrew Murray
3caec4344e
Added get_ifd method to access embedded IFDs
2019-03-28 21:13:12 +11:00
Andrew Murray
d5db62be7b
Added EXIF class
2019-03-28 21:13:12 +11:00
Hugo
3b92de5ddc
Merge pull request #3588 from radarhere/mpo_frame_size
...
Change size of MPO image to match frame
2019-03-28 12:01:33 +02:00
Hugo
ace5ba4418
Merge pull request #3701 from radarhere/photoshop
...
Read Photoshop resolution data
2019-03-28 11:55:13 +02:00
Hugo
a93bcdfe0c
Merge pull request #3724 from radarhere/readonly_save
...
Ensure image is mutable before saving
2019-03-28 11:53:33 +02:00
Hugo
0572983104
Merge pull request #3726 from radarhere/pa
...
Promote P images to PA in putalpha
2019-03-28 11:44:52 +02:00
Andrew Murray
a5b62857b0
Change size of MPO image to match frame
2019-03-28 08:33:17 +11:00
Andrew Murray
d84fd20f0c
Simplified is_animated
2019-03-28 08:13:47 +11:00
Hugo
adbe97594e
Merge pull request #3719 from radarhere/p_rgb_rgba
...
Allow RGB and RGBA values for new P images
2019-03-27 18:03:23 +02:00
Hugo
82848905e6
Merge pull request #3713 from radarhere/tiff_seek
...
Fixed TIFF bug when seeking backwards and then forwards
2019-03-27 17:58:34 +02:00
Hugo
90886b1888
Merge branch 'master' into imagecms-deprecations
2019-03-27 12:03:54 +02:00
hugovk
b21ea99fd9
Relax incorrect pyroma test
2019-03-26 22:59:59 +02:00
Andrew Murray
4a5666f1f4
Added transparency for all PNG greyscale modes
2019-03-27 07:41:33 +11:00
Andrew Murray
8ba76f9a10
Added support for I;16 modes for remaining transpose operations
2019-03-23 14:13:39 +11:00
Andrew Murray
31ac5a96d1
Merge pull request #3716 from radarhere/gif_rewind
...
Fixed GIF bug when rewinding to a non-zero frame
2019-03-23 10:46:41 +11:00
Riley Lahd
ad70fc73cb
Linting changes
2019-03-22 08:26:16 -06:00
Riley Lahd
4b2746fc39
Remove disposal 2 duplicate frame exemption and add true delta test
2019-03-22 08:19:01 -06:00
Andrew Murray
15f8ef02c9
Updated freetype to 2.10.0
2019-03-22 21:14:39 +11:00
Andrew Murray
f61828acdc
Promote P images to PA in putalpha
2019-03-19 11:13:58 +11:00
Hugo
b8ea8814f0
Merge pull request #3683 from radarhere/exclusive
...
Only close original fp in __del__ and __exit__ if original fp is exclusive
2019-03-18 20:37:21 +02:00
Jon Dufresne
6d46ae2e8f
Fix BytesWarning in Tests/test_numpy.py
...
When running Python with the `-b` command line argument, fixes warnings:
Tests/test_numpy.py::TestNumpy::test_1bit
Pillow/Tests/test_numpy.py:118: BytesWarning: Comparison between bytes and string
arr_bool = numpy.array([[1, 0, 0, 1, 0], [0, 1, 0, 0, 0]], 'bool')
Tests/test_numpy.py::TestNumpy::test_point_lut
Pillow/Tests/test_numpy.py:170: BytesWarning: Comparison between bytes and string
lut = numpy.array(data, dtype='uint8')
Tests/test_numpy.py::TestNumpy::test_to_array
Pillow/Tests/test_numpy.py:146: BytesWarning: Comparison between bytes and string
self.assertEqual(np_img.dtype, numpy.dtype(dtype))
2019-03-17 10:08:33 -07:00
Andrew Murray
0b62337b6f
Ensure image is mutable before saving
2019-03-17 23:37:40 +11:00
Andrew Murray
7dfbdc01f4
Fixed bug when rewinding to a non-zero frame
2019-03-16 20:02:24 +11:00
Andrew Murray
5b9c11b426
Update palette in quantize
2019-03-16 13:36:58 +11:00
Andrew Murray
6790c2e375
Allow RGB and RGBA values for new P images
2019-03-15 17:35:05 +11:00
Andrew Murray
0b630e06dc
Test that background colours read are equal to saved colours
2019-03-15 10:29:33 +11:00
Riley Lahd
85a07bb385
Linting changes
2019-03-14 14:51:13 -06:00
Riley Lahd
96c5a4c543
Add test for disposal mode 2 gifs
2019-03-14 14:40:31 -06:00
Andrew Murray
0ad09f7386
Merge branch 'master' into mime-types
2019-03-15 07:06:59 +11:00
Andrew Murray
ab85290911
Fixed bug when seeking backwards and then forwards
2019-03-13 18:54:09 +11:00
Hugo
e3eac00b1f
Merge pull request #3566 from radarhere/i16
...
Added I;16 PNG save
2019-03-12 12:25:53 +02:00
Hugo
b3587f0fb7
Merge pull request #3705 from radarhere/bmp
...
Add support for BMP RGBA bitfield compression
2019-03-12 11:36:04 +02:00
Andrew Murray
ce9dd67540
Added I;16 PNG save
2019-03-12 17:28:42 +11:00
Ben Yang
9f390a5192
uncommented test
2019-03-11 18:56:22 -07:00
Ben Yang
5cdbec0cfe
added test for attempting to apply complex settings to fonts when using basic layout engine
2019-03-11 18:56:22 -07:00
Ben Yang
386492ff54
wrong test_language.png committed, whoops! fixed
2019-03-11 18:56:22 -07:00
Ben Yang
7324a32443
fixed some whitespace to pass linting
2019-03-11 18:56:22 -07:00
Ben Yang
8624efd283
added ability to set language for text rendering
2019-03-11 18:55:46 -07:00
Andrew Murray
22b0110f89
Only close original fp in __del__ and __exit__ if original fp is exclusive
2019-03-12 08:54:43 +11:00
Hugo
125a001b66
Merge pull request #3698 from radarhere/context
...
Only close exclusive fp on Image __exit__
2019-03-11 21:41:44 +02:00
Konstantin Kopachev
28c6f555a2
Merge remote-tracking branch 'remotes/upstream/master' into tiff-old-jpeg
2019-03-11 10:38:02 -07:00
Andrew Murray
8ddcc1de52
Load EXIF from PNG where eXIf chunk is after first IDAT chunk
2019-03-11 21:20:18 +11:00
Andrew Murray
365d5e541a
Added EXIF support
2019-03-11 21:19:36 +11:00
Hugo
63f31ee380
Merge pull request #3699 from glasnt/topic/quantize-dither
...
Add option to set dither param on quantize
2019-03-11 12:18:32 +02:00
Hugo
5da0d5beee
Merge pull request #3673 from radarhere/dds
...
Add reading of DDS uncompressed RGB data
2019-03-11 12:04:47 +02:00
Hugo
c88ada1dcd
Merge pull request #3672 from radarhere/tiff_tag_type
...
Corrected length of Tiff BYTE tags
2019-03-11 11:59:29 +02:00
Andrew Murray
5277eec027
Added support for RGBA bitfield compression
2019-03-09 11:11:32 +11:00
Katie McLaughlin
0b63579f39
Add option to set dither param on quantize
...
Default the option to `1`, as per original setting
2019-03-09 10:36:13 +11:00
Andrew Murray
b1cc7df7ba
Only close exclusive fp on Image __exit__
2019-03-06 21:55:32 +11:00
Andrew Murray
1bdb5dc917
Added DIB saving and loading through Image open
2019-03-06 13:59:07 +11:00
Andrew Murray
636ad68f5e
Read Photoshop resolution data
2019-03-06 10:28:45 +11:00
Andrew Murray
7d3b8e8cea
Merge branch 'master' into mime-types
2019-03-06 07:08:00 +11:00
Andrew Murray
4be51c46eb
Added mime types
2019-03-04 18:17:12 +11:00
Andrew Murray
873603701f
Added .pnm test
2019-03-04 15:51:07 +11:00
Andrew Murray
8f34621c14
Added mime type tests
2019-03-04 15:51:07 +11:00
Andrew Murray
1ba774ae7f
Added ImageOps exif_transpose method
2019-03-04 11:49:39 +11:00
Andrew Murray
525eaf7389
Renamed file variable
2019-03-03 13:02:00 +11:00
Andrew Murray
57807e9ce2
Merge pull request #3624 from hugovk/rm-VERSION
...
Remove deprecated VERSION
2019-03-02 11:47:59 +11:00
Hugo
d9f5f44799
Merge pull request #3632 from radarhere/thumbnail
...
Do not resize in Image.thumbnail if already the destination size
2019-02-27 23:37:20 +02:00
Hugo
2e374cf1ad
Merge pull request #3568 from jdufresne/isatty-bool
...
Make ContainerIO.isatty() return a bool, not int
2019-02-27 23:28:51 +02:00
Hugo
2f5f80f47e
Merge pull request #3563 from radarhere/transpose
...
Added support for I;16 modes for more transpose operations
2019-02-27 23:22:52 +02:00
Andrew Murray
bbfbda3d4f
Added tests for unimplemented formats
2019-02-23 08:53:45 +11:00
Andrew Murray
148d320b40
Added reading of uncompressed RGB data
2019-02-23 06:44:06 +11:00
Andrew Murray
dd0e4ac0a1
Corrected length of Tiff BYTE tags
2019-02-22 23:17:26 +11:00
Andrew Murray
7477036230
Merge branch 'master' into imagecms-deprecations
2019-02-21 20:00:27 +11:00
Andrew Murray
5d9898b686
Merge pull request #3655 from hugovk/deprecate-eol-qt
...
Deprecate support for PyQt4 and PySide
2019-02-21 19:22:34 +11:00
Andrew Murray
d07d3d6972
Restored required import
2019-02-20 20:57:52 +11:00
Hugo
65c55402b9
Merge pull request #3537 from radarhere/pickle
...
Fixed pickling of iTXt class with protocol > 1
2019-02-20 11:50:30 +02:00
Hugo
8cd0432e65
Merge pull request #3616 from wbadart/master
...
_util.isPath returns True for pathlib.Path objects
2019-02-20 11:48:12 +02:00
Andrew Murray
38b5255f58
Catch DeprecationWarning from initial import
2019-02-16 12:36:10 +11:00
Andrew Murray
b0f429adca
Line too long
2019-02-15 22:12:40 +11:00
Andrew Murray
6fc7460f9e
Restored newline at end of file
2019-02-15 20:47:00 +11:00
Andrew Murray
1a7a1123e6
Merge branch 'master' into tiff-old-jpeg
2019-02-15 19:56:17 +11:00
Hugo
3c088db7ba
Depreate support for EOL PyQt4 and PySide
2019-02-14 22:59:14 +02:00
Hugo
3ff70c2afc
Merge branch 'master' into imagecms-deprecations
2019-02-13 15:45:28 +02:00
Andrew Murray
1162b4cf83
Do not resize if already the destination size
2019-02-13 19:26:37 +11:00
Hugo
dc3c64a0e3
Merge pull request #3631 from jdufresne/test-main
...
Remove unnecessary unittest.main() boilerplate from test files
2019-02-12 18:12:29 +02:00
Hugo
4ccdbf25cf
Merge pull request #3584 from radarhere/ifd_offset
...
Seek to IFD offset
2019-02-12 18:10:25 +02:00
Hugo
aed56efa50
Apply suggestions from code review
...
Rename `fp` to `test_path` in the new `test_is_path` test.
^ Wow, what a sentence...
Co-Authored-By: wbadart <wbadart@live.com>
2019-02-04 10:36:34 -05:00
Jon Dufresne
4de5477b61
Remove unnecessary unittest.main() boilerplate from test files
...
With the introduction and use of pytest, it is simple and easy to
execute specific tests in isolation through documented command line
arguments. Either by specifying the module path or through the `-k
EXPRESSION` argument. There is no longer any need to provide the
boilerplate:
if __name__ == '__main__':
unittest.main()
To every test file. It is simply noise.
The pattern remains in test files that aren't named with `test_*` as
those files are not discovered and executed by pytest by default.
2019-02-03 10:10:16 -08:00
Hugo
d02e2b5392
Merge pull request #3558 from radarhere/png
...
Allow for unknown PNG chunks after image data
2019-02-03 11:57:21 +02:00
Hugo
1885a2cef5
Merge pull request #3579 from jdufresne/run-one-test
...
Improve pytest configuration to allow specific tests as CLI args
2019-02-03 11:30:57 +02:00
Andrew Murray
a33e71a9df
Changed string to comment
2019-02-03 15:59:24 +11:00
Hugo
158d99b8b0
Remove deprecated VERSION
2019-01-30 15:46:14 +02:00
Hugo
187ba3f6e8
Flake8: Fix F723 syntax error in type comment 'dummy value'; it's just a comment, not a Mypy type
2019-01-30 11:53:26 +02:00
Will Badart
c328ecace3
Fix lint error
...
Removed missing import in test_util.py. Stopped needing it after I
started reusing the py36 test from the _util module.
2019-01-28 20:08:25 -05:00
Will Badart
07bff3e9b8
Implement @hugovk's comments
...
The `py36` flag now uses a tuple comparison to correctly handle future
major version. The unit test file also now uses `py36` as exported by
the _util module, rather than re-testing `sys.version_info`.
2019-01-28 19:45:53 -05:00
Will Badart
37b182793e
test_is_path calls the correct function
...
Before, the test called the isStringType utility, which has its own,
separate test.
2019-01-28 12:23:19 -05:00
Will Badart
adae7ecc6a
_util.isPath returns True for pathlib.Path objects
...
Now, for functions which accept either a path or file object, the
predicate will pass on Paths and not attempt to call .read on them
before opening.
The pathlib module was added in 3.4 but os.path functions did not start
accepting path-like objects until 3.6, so that is the version after
which this implementation is defined.
Added a unit test to make sure isPath accepts Path objects. The unit
test is skipped if python version is not 3.6 or later.
2019-01-28 12:19:21 -05:00
Hugo
a2a5ebfeb4
Refactor
2019-01-28 15:40:19 +02:00
Hugo
a9070f3ca2
Group deprecation tests
2019-01-28 15:40:19 +02:00
Hugo
3476474359
Add warnings to deprecated CMS profile attributes
2019-01-28 15:40:19 +02:00
Hugo
e1381d2102
Add warnings to deprecated CMS profile attributes
2019-01-28 15:40:19 +02:00
Hugo
a149c13d2e
Add warnings to deprecated CMS profile attributes
2019-01-28 15:40:19 +02:00
Hugo
7d157bd825
Add warnings to deprecated CMS profile attributes
2019-01-28 15:40:19 +02:00
Hugo
e7eac4f80b
Add warnings to deprecated CMS profile attributes
2019-01-28 15:40:19 +02:00
Hugo
1b91ae361d
Merge pull request #3599 from hugovk/rm-deprecated-imageops
...
Remove deprecated ImageOps functions
2019-01-26 19:48:17 +02:00
Hugo
d6055440d5
Drop support for EOL Python 3.4
2019-01-24 23:33:14 +02:00
Hugo
b41ffe585b
Remove deprecated ImageOps functions
2019-01-19 20:00:55 +02:00
Andrew Murray
0481d0ac1e
Seek to IFD offset
2019-01-16 06:55:37 +11:00
Andrew Murray
06f47ea546
Revert "Use bare 'raise' to re-raise exceptions"
...
This reverts commit 80e96b2c7b
.
2019-01-14 21:55:47 +11:00
Andrew Murray
811a6ae9f2
Merge pull request #3575 from jdufresne/bare-raise
...
Use bare 'raise' to re-raise exceptions
2019-01-14 15:39:20 +11:00
Jon Dufresne
7da17ad41e
Improve pytest configuration to allow specific tests as CLI args
...
The previous test configuration made it difficult to run a single test
with the pytest CLI. There were two major issues:
- The Tests directory was not a package. It now includes a __init__.py
file and imports from other tests modules are done with relative
imports.
- setup.cfg always specified the Tests directory. So even if a specific
test were specified as a CLI arg, this configuration would also always
include all tests. This configuration has been removed to allow
specifying a single test on the command line.
Contributors can now run specific tests with a single command such as:
$ tox -e py37 -- Tests/test_file_pdf.py::TestFilePdf.test_rgb
This makes it easy and faster to iterate on a single test failure and is
very familiar to those that have previously used tox and pytest.
When running tox or pytest with no arguments, they still discover and
runs all tests in the Tests directory.
2019-01-13 09:00:12 -08:00
Jon Dufresne
80e96b2c7b
Use bare 'raise' to re-raise exceptions
...
Slightly more concise and nicer syntax
2019-01-12 18:45:37 -08:00
Jon Dufresne
3e28ba3b7d
Python del is a statement not a function
...
https://docs.python.org/3/reference/simple_stmts.html#the-del-statement
2019-01-12 18:28:35 -08:00
Jon Dufresne
a08bfa6e9f
Make ContainerIO.isatty() return a bool, not int
...
Better follows the interface of IOBase.isatty:
https://docs.python.org/3/library/io.html#io.IOBase.isatty
2019-01-12 16:48:05 -08:00
Andrew Murray
7acaf3d6a6
Added support for I;16 modes for more transpose operations
2019-01-10 07:26:52 +11:00
Andrew Murray
4e0a73b4fa
Allow for unknown PNG chunks after image data
2019-01-08 07:21:25 +11:00
Jon Dufresne
8a05aae988
Remove unused PillowTestCase.__str__
...
With the move to pytest, the class's string method is unused. pytest has
its own test progress outputter.
2019-01-06 15:18:18 -08:00
Hugo van Kemenade
4d1be57256
Merge pull request #3540 from radarhere/fp
...
Only close __fp if not fp
2019-01-06 12:53:04 +02:00
Hugo van Kemenade
22b0f53eb9
Merge pull request #3532 from radarhere/png_load_end_idat
...
PNG: Handle IDAT chunks after image end
2019-01-05 12:08:58 +02:00
Andrew Murray
71b64dcf73
Only close __fp if not fp
2019-01-04 12:29:23 +11:00
Andrew Murray
ea2a0e4654
Handle IDAT chunks after image end
2019-01-03 19:13:19 +11:00
hugovk
9dbaf92f3e
itxt_chunks.png fails with protocol v2
2019-01-03 09:31:55 +11:00
hugovk
1b338998dc
Test a png file with iTXt chunks
2019-01-03 09:31:55 +11:00
Andrew Murray
bd7422f934
Detect whether mimetype is image/jp2 or image/jpx
2019-01-02 15:39:39 +11:00
Andrew Murray
42e2bed4a6
If SGI image is RGB mode, then apply image/rgb mimetype
2019-01-02 14:13:37 +11:00
Andrew Murray
97ae0c42b1
Detect whether mimetype is image/png or image/apng
2019-01-02 14:13:10 +11:00
Andrew Murray
671f7a392d
Allow RGBA value for P image putpixel
2018-12-31 13:37:04 +11:00
Andrew Murray
3f6282e259
Allow RGB value for P image putpixel
2018-12-31 11:35:15 +11:00
Andrew Murray
0c0f769351
Allow EPS tests that do not require Ghostscript
2018-12-30 20:50:09 +11:00
Hugo
454fdd7800
Merge pull request #3501 from pirate486743186/patch-2
...
Add APNG extension to PNG plugin
2018-12-29 16:55:07 +02:00
Andrew Murray
6ead422e91
Added custom string TIFF tags
2018-12-29 16:14:52 +11:00
Andrew Murray
21268c87b3
Merge branch 'master' into patch-2
2018-12-27 17:39:40 +11:00
Andrew Murray
f9ce201cf0
Test APNG image for similarity
2018-12-27 12:19:44 +11:00
pirate486743186
8d0b7e6b57
adding apng extension for png
2018-12-26 21:14:27 +01:00
Hugo
a43b8bac1e
Merge pull request #3506 from radarhere/png
...
Read textual chunks located after IDAT chunks for PNG
2018-12-26 13:34:50 +02:00
Hugo
78bc4da131
Merge pull request #3350 from radarhere/custom_tags
...
Added custom int and float TIFF tags
2018-12-26 13:07:46 +02:00
Hugo
bbb3be9a9d
Merge pull request #3187 from radarhere/encoderinfo
...
Wait until mode is normalized to copy im.info into encoderinfo
2018-12-26 12:56:50 +02:00
Andrew Murray
22837c37e2
Read textual chunks located after IDAT chunks
2018-12-24 23:58:19 +11:00
Hugo
3ed5dcc928
Merge pull request #3467 from hugovk/lint-can-fail
...
CI: Allow lint job to fail
2018-12-13 21:09:58 +02:00
Hugo
961fecb35c
Merge pull request #3261 from radarhere/fp
...
Resolve __fp when closing and deleting
2018-12-13 21:09:23 +02:00
Hugo
857b077f5c
Merge pull request #3461 from radarhere/exclusive_fp
...
Close exclusive fp before discarding
2018-12-13 21:07:32 +02:00
Konstantin Kopachev
e91b851fdc
Add reading old-JPEG compressed TIFFs
...
Old-style JPEG compression in TIFFs are able to be read using Strip/Tile APIs. Although, it should be possible to read them using Scanline API, it does not work for some reason. Anyway, reading subsampled YCbCr formats through Strip/Tile/Scanline libtiff API does not de-subsample the data, so caller should unpack data to whatever format is appropriate. New-style JPEG compressed images were already read through libtiff as RGB images (https://github.com/python-pillow/Pillow/pull/3227 ). Unfortunately, there is no flag to ask libtiff to de-subsample old jpeg, but it provides a way to read any image as 32bit RGBA. This commit adds ability to read old-style JPEG TIFFs through reading *all* YCbCr images as RGBX using Tile and Strip reading API. This supersedes previous work (PR #3227 ) to read new-style JPEG-TIFFs.
2018-12-10 10:07:41 -08:00
Hugo
ffa4932ed0
noqa a pair of ambiguous variable names
2018-12-04 23:25:28 +02:00
Hugo
c353225851
Prefer 'except Exception:' to bare 'except:'
2018-12-04 23:25:28 +02:00
Hugo
e10b22aca2
Remove unused 'sys' import
2018-12-04 23:25:28 +02:00
Hugo
231604e921
Merge pull request #3471 from radarhere/background
...
Change color table index background to tuple when saving as WebP
2018-12-04 23:22:53 +02:00
Hugo
a4fccd3dde
Merge pull request #3479 from radarhere/gif_extension
...
Allow arbitrary number of comment extension subblocks
2018-12-04 23:09:59 +02:00
Hugo
0c2e4840f2
Merge pull request #3478 from radarhere/fli
...
Ensure previous FLI frame is loaded before seeking to the next
2018-12-04 22:51:54 +02:00
Hugo
5c16528fdf
Merge pull request #3450 from radarhere/imageshow
...
ImageShow improvements
2018-12-04 22:47:28 +02:00
Andrew Murray
b2b737b68b
Allow arbitrary number of comment extension subblocks
2018-11-27 21:11:22 +11:00
Andrew Murray
f1b2802eb1
Resolved error for comment extension with zero subblocks
2018-11-27 21:09:28 +11:00
Andrew Murray
2f7f945c84
Ensure previous FLI frame is loaded before seeking to the next
2018-11-26 18:52:51 +11:00
Andrew Murray
6c126ca282
Change color table index background to tuple when saving
2018-11-20 19:50:14 +11:00
Andrew Murray
47775f3d50
Resolve __fp when closing and deleting
2018-11-17 21:56:06 +11:00
Hugo
9eb36da0b8
Merge pull request #3460 from radarhere/check_png_dos
...
Corrected TypeError in Python 3
2018-11-16 23:26:49 +02:00
Hugo
6a63693d23
Merge pull request #3459 from radarhere/core_resources
...
Added __main__ code to test_core_resources
2018-11-16 17:55:46 +02:00
Andrew Murray
61397de88b
Check quality_layers type
2018-11-16 23:31:42 +11:00
Andrew Murray
c0ee319af1
Close fp before replacing
2018-11-13 22:24:59 +11:00
Andrew Murray
b637b5f7a2
Close exclusive fp before discarding
2018-11-13 22:13:55 +11:00
Andrew Murray
9a1c3915ae
Corrected TypeError in Python 3
2018-11-13 21:45:52 +11:00
Andrew Murray
3ff4b54050
Added __main__ code
2018-11-12 19:54:26 +11:00
Andrew Murray
a0be7b09cc
Added UnixViewer get_command
2018-11-12 19:33:57 +11:00
Andrew Murray
ddf8593e7b
Do not write custom tags with libtiff < 4
2018-11-12 06:14:04 +11:00
Andrew Murray
a3d45e9cef
Added custom int and float TIFF tags
2018-11-12 06:14:04 +11:00
Andrew Murray
990fb03218
Changed if to elif
2018-11-12 06:14:04 +11:00
Hugo
a568a8730e
flake8: E302 expected 2 blank lines, found 1
2018-11-11 19:01:11 +02:00
Hugo
ceebfc6fe8
flake8: E501 line too long
2018-11-11 19:01:11 +02:00
Hugo
254f959c3a
flake8: E127 continuation line over-indented for visual indent
2018-11-11 19:01:11 +02:00
Hugo
94c94eb1f7
flake8: E128 continuation line under-indented for visual indent
2018-11-11 19:01:11 +02:00
Hugo
717add44b0
flake8: E201 whitespace after '('
2018-11-11 19:01:11 +02:00
Hugo
8a6f2b9de8
flake8: E711 comparison to None should be 'if cond is None:'
2018-11-11 19:01:10 +02:00
Hugo
eb9aee7048
flake8: F841 local variable is assigned to but never used
2018-11-11 19:01:10 +02:00
Hugo
302f86292c
Merge pull request #3392 from hugovk/update-tests
...
Update tests
2018-11-11 18:52:11 +02:00
Andrew Murray
52c175d1bc
Added context manager, __del__ and close methods
2018-11-11 16:00:17 +11:00
Hugo
8feed91ec1
Merge pull request #3454 from radarhere/imagegrab
...
Do not play sound when running screencapture command
2018-11-10 12:48:01 +00:00
Andrew Murray
747eccbfc2
Close exclusive fp on open exception
2018-11-09 11:35:08 +11:00
Andrew Murray
40c6e4f136
Do not play sound when running screencapture command
2018-11-08 06:05:45 +11:00
Hugo
ed10276a6b
Merge pull request #3418 from radarhere/webp_fp
...
Only close existing fp in WebP if fp is exclusive
2018-10-31 09:16:53 +02:00
Hugo
e12aa375ec
Merge pull request #3406 from Nazime/negativeindex
...
Add negative index to PixelAccess
2018-10-27 23:27:15 +03:00
Hugo
4530f55c61
Merge pull request #3385 from radarhere/gif_background
...
Change tuple background to global color table index when saving as GIF
2018-10-24 22:34:40 +03:00
Hugo
5df41b4399
Unnecessary generator - rewrite as a list comprehension
2018-10-24 22:29:56 +03:00
Hugo
088d04470e
Unnecessary list comprehension - 'tuple' can take a generator
2018-10-24 22:29:56 +03:00
Hugo
d69ef6a529
Remove redundant parentheses
2018-10-24 22:29:56 +03:00
Hugo
619e5fde8d
Remove unused local variables
2018-10-24 22:29:01 +03:00
Hugo
bac99bd5ae
Add assert for previously unused 'lut' variable
2018-10-24 22:29:01 +03:00
Hugo
4352edb1ec
Assert all images in loop
2018-10-24 22:29:01 +03:00
Hugo
fc3a159c87
More specific exception clause
2018-10-24 22:29:01 +03:00
Hugo
cb8a4bac21
Use set literal
2018-10-24 22:29:01 +03:00
Hugo
bab194b6f5
Fix DeprecationWarning: invalid escape sequence
2018-10-24 22:29:01 +03:00
Hugo
a3b0659790
flake8
2018-10-24 22:29:01 +03:00
Hugo
d1ca4916e0
Use more specific assertions
2018-10-24 22:29:01 +03:00
Hugo
901c1e2aea
Simplify test skipping
2018-10-24 22:29:01 +03:00
Andrew Murray
bd9cfb124b
Added ImageGrab.grabclipboard test
2018-10-22 18:55:16 +11:00
Andrew Murray
467d2089be
Enabled ImageGrab.grab test on AppVeyor
2018-10-22 18:39:07 +11:00
Andrew Murray
94925c5057
Merge pull request #3423 from hugovk/fix-feature-tests
...
Fix some tests
2018-10-22 08:53:26 +11:00
Hugo
06ad343d35
Simplify skipping
2018-10-21 17:47:35 +03:00
Hugo
e33812c56c
Remove redundant parentheses
2018-10-21 17:05:40 +03:00
Hugo
cbba2c24bf
Remove unused helper method
2018-10-21 17:05:14 +03:00
Hugo
cfc4c3e101
Switch check_ to test_ to enable them
2018-10-21 16:44:12 +03:00
Hugo
a1b9f94d60
skipUnless takes a condition and _reason_
2018-10-21 16:42:41 +03:00
Andrew Murray
929f7397db
Line too long
2018-10-21 18:26:08 +11:00
Andrew Murray
c7d924fd85
Too many blank lines
2018-10-21 18:11:50 +11:00
Andrew Murray
e84a78d828
Only close existing fp if fp is exclusive
2018-10-19 20:12:08 +11:00
Alexander
e26696cb8a
skip old test
2018-10-18 10:33:52 +03:00
Alexander
e7aa44f58c
add test for regression
2018-10-18 10:32:17 +03:00
Nazime
63a0b801b4
misspelled variable name
2018-10-15 13:06:08 +02:00
Nazime
86324a842d
Add setting negative pixels and unittest
2018-10-15 12:51:24 +02:00
Andrew Murray
a7eb2ea9cc
Change tuple background to global color table index when saving
2018-10-02 20:52:07 +10:00
Hugo
2fa54408d4
Merge pull request #3203 from radarhere/size
...
Changed Image size property to be read-only by default
2018-09-30 14:35:35 +03:00
Andrew Murray
82d942c3d8
Added warnings if image file identification fails due to lack of support
2018-09-30 15:34:27 +10:00
Andrew Murray
e3675f95fb
Added tests
2018-09-30 15:08:44 +10:00
Andrew Murray
6f44ae1d27
Only deprecate setting of TIFF image sizes
2018-09-30 15:08:35 +10:00
Andrew Murray
0adeb82e98
Changed Image size property to be read-only by default
2018-09-30 13:45:18 +10:00
Hugo
d36365f4fb
Merge pull request #3227 from kkopachev/master
...
Adding support to reading tiled and YcbCr jpeg tiffs through libtiff
2018-09-29 19:45:29 +03:00
Hugo
84b4905a94
Merge pull request #3310 from radarhere/compression
...
Fixed None as TIFF compression argument
2018-09-29 19:44:43 +03:00
Hugo
8458641bb8
Merge pull request #3324 from radarhere/info
...
Changed GIF seek to remove previous info items
2018-09-29 19:41:03 +03:00
Hugo
e2deb07608
Merge pull request #3274 from radarhere/pdf
...
Improve PDF document info
2018-09-29 17:43:05 +03:00
Andrew Murray
1e305380ae
Merge pull request #3094 from hugovk/add-width-to-shapes
...
Add line width parameter to rectangle and ellipse-based shapes
2018-09-29 23:21:03 +10:00
Andrew Murray
a8261a2e89
Line too long
2018-09-27 20:35:00 +10:00
Andrew Murray
f8fbac68de
Removed unused imports
2018-09-27 20:31:01 +10:00
Andrew Murray
90a9e85db3
Local variable is assigned to but never used
2018-09-27 20:31:01 +10:00
Andrew Murray
9b0d4baa8c
Continuation line under-indented for visual indent
2018-09-27 20:31:01 +10:00
Andrew Murray
6dd0e48d9a
Missing whitespace
2018-09-27 19:43:39 +10:00
Andrew Murray
9ee467d843
Too many blank lines
2018-09-27 19:42:23 +10:00
Andrew Murray
e5491f8162
Expected 2 blank lines
2018-09-27 19:42:16 +10:00
Hugo
a3f7ce5b73
Merge pull request #3313 from dinkolubina/fix-img-crop
...
Fix _crop and tests
2018-09-26 16:50:54 +03:00
Hugo
f29881fd60
Merge pull request #3377 from radarhere/color_diff
...
Added support to floodfill for non-RGB colors
2018-09-26 16:24:59 +03:00
Hugo
b9b4c03957
Merge pull request #2203 from jdufresne/test-exceptions
...
Avoid catching unexpected exceptions in tests
2018-09-26 15:43:41 +03:00
Hugo
5a8c48c4f3
Merge pull request #3205 from radarhere/transparency
...
Added transparency to matrix conversion
2018-09-26 15:29:21 +03:00
Andrew Murray
b5af283732
Added support to floodfill for non-RGB colors
2018-09-26 22:22:17 +10:00
Hugo
2389492f96
flake8
2018-09-26 14:09:31 +03:00
Hugo
36baea18ee
flake8
2018-09-26 13:58:15 +03:00
Hugo
78203606b7
Merge pull request #3364 from radarhere/contain
...
Added ImageOps pad method
2018-09-26 13:54:26 +03:00
Hugo
83d40f52b3
Merge pull request #3359 from bz2/i16_getextrema
...
Give correct extrema for I;16 format images
2018-09-26 13:17:31 +03:00
Hugo
1b9a1c7ed7
Merge pull request #3279 from radarhere/pyside2
...
Added PySide2
2018-09-26 13:16:31 +03:00
Andrew Murray
b09b43d8b2
Added ImageOps pad method
2018-09-26 20:07:46 +10:00
Konstantin Kopachev
300bdaad9e
Bring back YCbCrX in pack and unpack
2018-09-25 11:46:32 -07:00
Konstantin Kopachev
187782470b
Drop YCbCrX(XX) modes, as TIFF does not have to support that
2018-09-18 12:06:27 -07:00
Konstantin Kopachev
b0e5e5fb11
Update test files to be closer match of originals
2018-09-18 12:05:51 -07:00
Konstantin Kopachev
98d88fd1c6
Add tests for uncompressed tiff with interleaved bands
2018-09-18 12:05:50 -07:00
Konstantin Kopachev
52637a4268
move libtiff-related tests into libtiff test file
2018-09-18 12:05:50 -07:00
Konstantin Kopachev
1f63abdba8
Fix tiled raw tiff read and add tests
2018-09-18 12:05:49 -07:00
Martin Packman
0b3036454c
Give correct extrema for I;16 format images
...
Currently gives None for a 16 bit greyscale image rather than the
true min and max values in the 0-65536 range. The internal
ImagingGetProjection function already supports I;16 but the
_getextrema needs to know to unpack the result.
2018-09-18 13:48:12 +01:00
Hugo
521ae77bb9
Merge pull request #3298 from kkopachev/webp-rgb
...
Read/save RGB webp as RGB (instead of RGBX)
2018-09-17 12:05:07 +03:00
Hugo
73c305d4d5
Merge pull request #3333 from jdufresne/debug-print
...
Clean up commented out debug print statements
2018-09-17 11:56:19 +03:00
Andrew Murray
f3842460ba
Added line joints
2018-09-16 21:29:09 +10:00
Jon Dufresne
4503735df7
Remove additional references to nose tests
2018-09-15 12:29:11 -07:00
Andrew Murray
dd2698f00e
Merge pull request #3335 from uploadcare/more-tiff-modes
...
Add more raw Tiff modes (RGBaX, RGBaXX, RGBAX, RGBAXX)
2018-09-10 19:42:09 +10:00
Andrew Murray
9d9da79caa
Close existing fp before setting new fp
2018-09-08 23:08:17 +10:00
Hugo
79552080ab
Merge pull request #3327 from radarhere/tga
...
Added orientation, compression and id_section as TGA save keyword arguments
2018-09-08 13:13:13 +03:00
Andrew Murray
325ca3cede
Trim id_section if it is greater than 255 characters
2018-09-08 08:26:32 +10:00
Andrew Murray
9e4c54e10f
Added orientation, compression and id_section as keyword arguments
2018-09-08 08:12:26 +10:00
wiredfool
4cfcc3b010
Tests for issue #1765
2018-09-07 20:32:54 +10:00
dinko
66207b47bc
fix _crop and tests
2018-09-05 21:00:35 +02:00
Hugo
fa14698e66
Merge pull request #3233 from hugovk/PYTHONOPTIMIZE
...
Fix code for PYTHONOPTIMIZE
2018-09-05 19:57:10 +03:00
Alexander Karpinsky
f7eb11cc3d
Merge branch 'master' into more-tiff-modes
2018-09-05 17:58:31 +03:00
Alexander
5b24987fc3
update code style in tests
2018-09-05 17:57:25 +03:00
Alexander
accc66fb5e
add support for RGBaXX and RGBaX raw tiff modes
2018-09-05 17:45:03 +03:00
Alexander
ad5cf0a0e2
Add RGBAX and RGBAXX tiff modes
2018-09-05 17:36:27 +03:00
Jon Dufresne
37f10651bd
Clean up commented out debug print statements
2018-09-04 20:02:42 -07:00
Jon Dufresne
875e8c4bda
Avoid catching unexpected exceptions in tests
...
Instead, allow exceptions to bubble up to the unittest exception
handler.
Prevents replacing the exception trace with a less informative
message. As the exceptions are always unexpected, should not need to
catch them explicitly in tests.
2018-09-04 19:43:20 -07:00