Commit Graph

8236 Commits

Author SHA1 Message Date
Hugo
87139b24e4
Merge pull request #3598 from hugovk/rm-olefile-deprecation
Remove deprecated PIL.OleFileIO in favour of olefile Python package
2019-01-26 19:35:10 +02:00
Hugo
6d64b21bb8
Merge pull request #3596 from hugovk/rm-3.4
Drop support for EOL Python 3.4
2019-01-26 19:33:54 +02:00
cgohlke
86afcfd8f9
Fix possible integer overflow 2019-01-25 15:11:22 -08:00
Hugo
3aa77c9e76
Merge pull request #27 from radarhere/rm-3.4
Remove note about Python 3.0-3.4
2019-01-25 22:14:19 +02:00
Andrew Murray
258ec6d129 Changed subprocess stdin from devnull to None 2019-01-25 18:49:10 +11:00
Andrew Murray
7b6f34e7ac Remove note about Python 3.0-3.4 [ci skip] 2019-01-25 18:47:22 +11:00
Hugo
6eab984b0f Drop support for EOL Python 3.4 2019-01-24 23:41:28 +02:00
Hugo
d6055440d5 Drop support for EOL Python 3.4 2019-01-24 23:33:14 +02:00
Hugo
74ce856515
Merge pull request #3587 from radarhere/gs
Added Ghostscript to AppVeyor
2019-01-24 23:32:20 +02:00
Hugo
0c3e1fa77e
Merge pull request #3595 from radarhere/sphinx
Moved docs JS file into custom directory
2019-01-24 23:19:39 +02:00
Hugo
228c26389d
Merge pull request #3604 from radarhere/installation
Updated macOS tested Pillow versions
2019-01-24 23:18:08 +02:00
Hugo
beac7fe128
Update CHANGES.rst 2019-01-24 14:01:31 +02:00
Hugo
08f5c9e5fc
Merge pull request #3602 from radarhere/libwebp
Updated libwebp to 1.0.2
2019-01-24 13:22:26 +02:00
Andrew Murray
491fb5ab91 Updated libwebp to 1.0.2 2019-01-24 20:29:30 +11:00
Andrew Murray
0a454037af Updated macOS tested Pillow versions [ci skip] 2019-01-24 19:51:43 +11:00
Andrew Murray
5a276be889
Fix typo
Co-Authored-By: hugovk <hugovk@users.noreply.github.com>
2019-01-21 20:55:04 +02:00
Hugo
bb69e79dc9 Document removals 2019-01-20 22:07:22 +02:00
Hugo
b41ffe585b Remove deprecated ImageOps functions 2019-01-19 20:00:55 +02:00
Hugo
dbbe463326 Remove deprecated PIL.OleFileIO in favour of olefile Python package 2019-01-19 17:59:17 +02:00
Andrew Murray
1afcdb2c34 Fixed JS errors in local Sphinx build 2019-01-19 20:39:13 +11:00
Andrew Murray
be99470b29 Moved docs JS file into custom directory 2019-01-19 20:27:11 +11:00
Andrew Murray
75c7504d93 Added Ghostscript to AppVeyor 2019-01-17 11:15:42 +11:00
Andrew Murray
221c2cb7a7 Moved before_install before install 2019-01-16 07:11:27 +11:00
Andrew Murray
0481d0ac1e Seek to IFD offset 2019-01-16 06:55:37 +11:00
Hugo
8e4d547195
Merge pull request #3583 from radarhere/raise
Revert "Use bare 'raise' to re-raise exceptions"
2019-01-15 18:13:12 +02:00
Hugo
a478c213a7
Merge pull request #3585 from hugovk/fix-travis
Fix Travis CI: Only start Xvfb for Qt builds
2019-01-15 16:16:23 +02:00
Hugo
e3795cae89
Merge pull request #26 from radarhere/fix-travis
Start Xvfb for Trusty and use the service for Xenial
2019-01-15 14:01:09 +02:00
Andrew Murray
d7476e15db Start xvfb for Trusty and use the service for Xenial 2019-01-15 22:13:45 +11:00
Hugo
ea60256b3b Only start Xvfb for Qt builds 2019-01-15 11:37:17 +02: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
Andrew Murray
e4062fcced
Merge pull request #3582 from python-pillow/update-docs
Docs: Release history is visible at PyPI
2019-01-14 07:40:12 +11:00
Hugo
5e18bbdaef
Release history is visible at PyPI
Now available since the PyPI (aka Warehouse) redesign
2019-01-13 20:58:22 +02:00
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
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
e19d8dd84b Add linting to the tox matrix
Allows contributors to easily run the lint stage with a single command:
`tox -e lint`. This creates shorter round trips with CI in case of an
error.

Update the Travis configuration to use the new environment to run lint.
This allows using a single/common source of truth to reduce differences
between Travis and local testing.

The tox environment uses the skip_install feature as static analysis
doesn't requiring install the Pillow package itself to run. This feature
requires tox 1.9 (2015-02-24), so a minimum tox version was added to the
configuration.

https://tox.readthedocs.io/en/latest/config.html#conf-skip_install
2019-01-13 08:55:06 -08:00
Hugo
b62ff510aa
Merge pull request #3562 from hugovk/update-release-checklist
Update release checklist
2019-01-13 16:42:28 +02:00
Hugo
032efc2b23
Merge pull request #3573 from jdufresne/del
Python del is a statement not a function
2019-01-13 10:57:45 +02: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
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
Hugo
503138c857
Merge pull request #3559 from jdufresne/in-place-bool
Use bool type for ImageCms inPlace argument (instead of int)
2019-01-12 23:59:15 +02:00
Hugo
d442996fc3
Merge pull request #3560 from jdufresne/numpy
Install optional dependencies in tox environment
2019-01-12 23:50:38 +02:00
Hugo
5ab266e165
Merge pull request #3571 from jdufresne/setup-tkinter
Remove unused _tkinter var from setup.py
2019-01-12 23:49:25 +02:00
Jon Dufresne
eccef43837 Remove unused _tkinter var from setup.py
Unused since 659e294676.
2019-01-11 20:27:44 -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
45740b4a28 Install optional dependencies in tox environment
Improves test coverage by reducing skipped tests when testing through
tox.
2019-01-07 21:12:07 -08: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