Jon Dufresne
c41ec5b115
Fix 'BytesWarning: Comparison between bytes and string' in PdfDict
...
When bytes warnings are enabled with the '-b' argument, the PdfDict
class would emit a warning.
https://docs.python.org/3/using/cmdline.html#miscellaneous-options
> -b
>
> Issue a warning when comparing bytes or bytearray with str or bytes
> with int.
Object attributes are always type str, so can safely encode them without
a type check. Observe:
$ python3
>>> o = object()
>>> setattr(o, b'foo', b'bar')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: attribute name must be string, not 'bytes'
2019-01-13 09:38:13 -08:00
Jon Dufresne
51e95f6252
Catch BaseException for resource cleanup handlers
...
In the event of a SystemExit or KeyboardInterrupt, file resources should
still be cleaned up before re-raising the exception.
https://docs.python.org/3/library/exceptions.html#exception-hierarchy
2019-01-12 18:32:14 -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
a00fc33c04
Replace .seek() magic numbers with io.SEEK_* constants
...
A bit more readable.
https://docs.python.org/3/library/io.html#io.IOBase.seek
2019-01-12 18:22:07 -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
Jon Dufresne
0ae7b3374e
Use bool type for ImageCms inPlace argument (instead of int)
...
The argument is used as a bool and the docs describe it as a bool, so
use an actual bool.
2019-01-07 20:22:52 -08:00
Andrew Murray
4e0a73b4fa
Allow for unknown PNG chunks after image data
2019-01-08 07:21:25 +11:00
cgohlke
c0f4382af2
Add TIFF compression codecs: LZMA, Zstd, WebP
2019-01-06 19:49:00 -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
0f09274690
Remove more unused hashtable functions
2019-01-05 22:26:35 +02:00
Andrew Murray
4c0e32ccf2
Improved get_format_mimetype logic
2019-01-06 07:00:00 +11:00
Hugo
f0778ba594
Remove unused hashtable destroy functions
2019-01-05 21:07:11 +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
Andrew Murray
f8df6d1687
Fixed pickling of iTXt class with protocol > 1
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
Hugo
e32e3fdbeb
5.5.0.dev0 version bump
2019-01-01 20:26:53 +02:00
Hugo
0be809ddb3
5.4.0 version bump
2019-01-01 12:31:45 +02:00
Hugo
398d2f0c15
Merge pull request #3522 from radarhere/imagechops
...
Improved ImageChops documentation
2019-01-01 12:21:28 +02:00
Hugo
6b5aa006b2
Merge pull request #3519 from radarhere/putpixel
...
Allow RGB and RGBA values for P image putpixel
2019-01-01 11:46:30 +02:00
Andrew Murray
ff61119f9f
Changed docstring to be consistent
2019-01-01 20:44:04 +11:00
Hugo
2de101e02c
Apply suggestions from code review
...
Changed docstrings to be consistent
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2019-01-01 20:42:23 +11:00
Andrew Murray
aa8f30eae8
Several methods require at least one mode 1 image
2019-01-01 14:14:22 +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
bc3925ead5
Fixed writing to temporary file
2018-12-31 08:27:07 +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
952de2ec4c
Use constants for tag types
2018-12-29 16:14:29 +11:00
Andrew Murray
5edeca28b6
Corrected docstring
2018-12-28 07:14:44 +11:00
Andrew Murray
21268c87b3
Merge branch 'master' into patch-2
2018-12-27 17:39:40 +11:00
Andrew Murray
acc2c150f6
Added APNG mime type
2018-12-27 11:19:40 +11:00
Andrew Murray
09e94e40a1
Handle APNG chunks
2018-12-27 10:53:16 +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
14b1321c42
Merge pull request #3503 from Glandos/patch-2
...
Don't try to hash value if enum is empty
2018-12-26 13:32:18 +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
55e5b7de6c
Merge pull request #3393 from frenzymadness/CWE_fixes_master
...
Fixes for issues reported by static code analysis
2018-12-26 13:02:19 +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
Glandos
0b8b3e679a
Add code comment
2018-12-22 15:29:31 +01:00
Glandos
e37b3fb7d3
don't try to hash value if enum is empty
...
Very few tags have an enum, and for those who don't, computing the hash value can be very expensive, e.g. instances of `fractions.Fraction` as mentioned in [the source](https://github.com/python/cpython/blob/master/Lib/fractions.py#L543 ).
2018-12-20 16:07:03 +01:00
Hugo
69837baba2
Merge pull request #3490 from radarhere/open_files
...
Updated open files documentation
2018-12-13 21:14:22 +02: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
Andrew Murray
233915bf9d
Updated strings
2018-12-13 19:19:45 +11:00
Andrew Murray
49b23157c4
Include header
2018-12-13 19:18:17 +11:00
Hugo
0635e38514
Updated list syntax
...
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2018-12-13 00:28:26 +11:00
Andrew Murray
7172a44caa
Added libjpegturbo to check_feature
2018-12-12 21:25:05 +11:00
Andrew Murray
91f727051b
Updated open files documentation
2018-12-11 14:39:10 +11: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
Andrew Murray
ad26f53bf6
Updated comments
2018-12-05 18:19:00 +11: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
c75910dbc3
noqa some Py2/3 compat lines and others
2018-12-04 23:25:27 +02:00
Hugo
f3c1f08f5b
noqa the few remaining long and hard-to-split lines
2018-12-04 23:25:27 +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
84df069169
Use im.info background when saving
2018-11-20 18:50:00 +11:00
Andrew Murray
47775f3d50
Resolve __fp when closing and deleting
2018-11-17 21:56:06 +11:00
Andrew Murray
61397de88b
Check quality_layers type
2018-11-16 23:31:42 +11:00
Andrew Murray
b637b5f7a2
Close exclusive fp before discarding
2018-11-13 22:13:55 +11:00
Andrew Murray
fea3dafd05
Supply filename through stdin instead of inline in Mac and Unix ImageShow viewers
2018-11-12 19:33:57 +11:00
Andrew Murray
a0be7b09cc
Added UnixViewer get_command
2018-11-12 19:33:57 +11:00
Andrew Murray
d8e66c1882
Moved variable declaration and execution
2018-11-12 06:14:04 +11:00
Hugo
8d6347ab72
Changed array size to be arbitrary
...
Co-Authored-By: radarhere <radarhere@gmail.com>
2018-11-12 06:14:04 +11:00
Hugo
207ed04d87
Removed hardcoded array size
...
Co-Authored-By: radarhere <radarhere@gmail.com>
2018-11-12 06:14:04 +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
Hugo
ceebfc6fe8
flake8: E501 line too long
2018-11-11 19:01:11 +02:00
Hugo
7d625940ae
flake8: E131 continuation line unaligned for hanging 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
a3079eab9e
flake8: E127 continuation line over-indented for visual indent
2018-11-11 19:01:10 +02:00
Hugo
0b7910c7cd
flake8: E402 module level import not at top of file
2018-11-11 19:01:10 +02:00
Hugo
91da8ff31d
flake8: F401 imported but unused
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
Andrew Murray
e3220c0f4d
Changed capitalisation
2018-11-11 16:00:48 +11:00
Hugo
5288cf63c9
Changed capitalisation
...
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2018-11-11 16:00:40 +11:00
Andrew Murray
52c175d1bc
Added context manager, __del__ and close methods
2018-11-11 16:00:17 +11:00
Andrew Murray
747eccbfc2
Close exclusive fp on open exception
2018-11-09 11:35:08 +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
Andrew Murray
929f7397db
Line too long
2018-10-21 18:26:08 +11:00
Andrew Murray
ac20a02b7a
Do not use bare 'except'
2018-10-21 18:11:39 +11:00
Andrew Murray
f2d4d19cc4
Undefined name
2018-10-21 18:00:52 +11:00
Andrew Murray
ede35510c1
Continuation line over-indented for visual indent
2018-10-21 17:59:59 +11:00
Andrew Murray
d265757651
Continuation line unaligned for hanging indent
2018-10-21 17:59:51 +11:00
Andrew Murray
77f807cf73
Continuation line under-indented for visual indent
2018-10-21 17:59:27 +11:00
Andrew Murray
6099ddeef9
Expected 1 blank line before a nested definition
2018-10-21 17:59:18 +11:00
Konstantin Kopachev
28cdb993b9
Convert tabs into spaces [ci skip]
2018-10-19 11:43:22 -07:00
Andrew Murray
e84a78d828
Only close existing fp if fp is exclusive
2018-10-19 20:12:08 +11:00
Konstantin Kopachev
2bf3ceee85
Only ask for YCbCr->RGB libtiff conversion for jpeg-compressed tiffs
...
JPEG-related tiff pseudo-tags are registered only when tiff image has jpeg compression. Trying to set TIFFTAG_JPEGCOLORMODE on non jpeg-compressed file prints error "Unknown pseudo-tag 65538".
2018-10-18 21:27:51 -07:00
Alexander Karpinsky
2222a581ab
Merge pull request #3409 from uploadcare/resize-from-box-in-fit
...
Optimise ImageOps.fit by combining resize and crop
2018-10-18 11:55:06 +03:00
Alexander Karpinsky
b8e7f646f3
Merge pull request #3415 from python-pillow/fix-webp-loading-from-blob
...
Quick fix: revert #3341 due to regression
2018-10-18 11:38:29 +03:00
Alexander
6cabcadae4
add release notes
2018-10-18 10:58:20 +03:00
Alexander
f8d4aa5882
Quick fix: revert #3341 due to regression
2018-10-18 10:19:11 +03:00
Alexander
73eec9000d
Optimise ImageOps.fit by combining resize in crop
2018-10-17 01:57:55 +03:00
Nazime
86324a842d
Add setting negative pixels and unittest
2018-10-15 12:51:24 +02:00
Nazime
468c405a47
Image pixels negative index
2018-10-14 16:12:58 +02:00
Andrew Murray
7edca01921
Minor documentation improvement [ci skip]
2018-10-11 19:36:50 +11:00
Erich Seifert
9807f1ad56
Fixed documentation on bilevel conversion
...
The cutoff when converting an image to bilevel (mode "1") is 128. This should resolve issue #3394 .
2018-10-05 01:11:24 +02:00
Lumir Balhar
78bf8ea041
Fix potential leaked storage issues (CWE-772)
2018-10-02 14:06:21 +02:00
Lumir Balhar
2e288e74ab
Fix potential un-terminated buffer problem (CWE-120)
2018-10-02 14:06:08 +02:00
Andrew Murray
a7eb2ea9cc
Change tuple background to global color table index when saving
2018-10-02 20:52:07 +10:00
Andrew Murray
3437d5fcb4
5.4.0.dev0 version bump
2018-10-01 18:39:58 +10:00
Andrew Murray
0ac14725ef
5.3.0 version bump
2018-10-01 15:48:10 +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
2c11974b86
Fixed typo
2018-09-30 21:09:42 +10:00
Hugo
a0fda60662
Use snake_case
2018-09-30 15:34:33 +10: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
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
98caf40507
Merge pull request #3378 from hugovk/windows-gs-popup
...
Hide the Ghostscript progress dialog popup on Windows
2018-09-29 23:09:16 +03:00
Hugo
799133b3a4
Merge pull request #3388 from hugovk/andreas-schwab/master
...
Avoid undefined behaviour due to division by zero
2018-09-29 22:49:44 +03: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
9a0b960762
Re-use count variable
2018-09-29 19:23:49 +03:00
Andreas Schwab
8b34eb644f
Avoid undefined behaviour due to division by zero
2018-09-29 19:23:49 +03:00
Hugo
e2deb07608
Merge pull request #3274 from radarhere/pdf
...
Improve PDF document info
2018-09-29 17:43:05 +03:00
Hugo
0c71792818
Merge pull request #3251 from radarhere/conversion
...
Fixed implicit conversion warnings
2018-09-29 17:38:11 +03:00
Hugo
e380481662
Merge pull request #3386 from radarhere/convert
...
Improved convert documentation
2018-09-29 16:48:08 +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
d6d61b35dc
Only draw pieslice's inner lines once
2018-09-29 21:45:37 +10:00
Andrew Murray
29bc4b2df4
Improved convert documentation [ci skip]
2018-09-29 20:14:56 +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
9b0d4baa8c
Continuation line under-indented for visual indent
2018-09-27 20:31:01 +10:00
Konstantin Kopachev
69f315a585
PR feedback: simplified key construct for fillorder=2; indentation fixes
2018-09-26 09:44:45 -07: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
9e54c14dfa
Merge pull request #2214 from jdufresne/eps-text-wrapper
...
Use TextIOWrapper.detach() instead of NoCloseStream
2018-09-26 15:34:24 +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
ae415907cb
flake8 and tidy up
2018-09-26 14:38:44 +03:00
Hugo
f13c150f00
Hide the Ghostscript progress dialog on Windows
2018-09-26 14:38:33 +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