Commit Graph

8304 Commits

Author SHA1 Message Date
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
Hugo
a656a0bd60
Merge pull request #3617 from wbadart/fix-test
test_is_path calls the correct function
2019-01-29 00:33:52 +02: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
071dc9409f
Merge pull request #3600 from hugovk/add-release-notes
Document removals
2019-01-28 11:59:41 +02:00
Hugo
3d309dccdc
Update CHANGES.rst 2019-01-27 20:32:59 +02:00
Hugo
e3101a44a6
Merge pull request #3614 from radarhere/version
Changed version to 6.0.0
2019-01-27 15:18:35 +02:00
Hugo
6aef6fc793
Merge pull request #3578 from jdufresne/tox-flake8
Add linting to the tox matrix
2019-01-27 14:11:32 +02:00
Hugo
dd9ae6cd45
Merge pull request #3613 from hugovk/fix-flake8
Fix Flake8
2019-01-27 14:10:32 +02:00
Andrew Murray
32c344b7ce Added note about ImageDraw operations that exceed image bounds [ci skip] 2019-01-27 22:10:54 +11:00
Hugo
a0b15e84d7 Fix Flake8 2019-01-27 11:38:33 +02:00
Hugo
84248dc642
Merge branch 'master' into tox-flake8 2019-01-27 10:53:30 +02:00
Andrew Murray
f149a416a0 Removed reference to 5.5.x [ci skip] 2019-01-27 15:00:35 +11:00
Andrew Murray
4ac6bbd073 Changed version to 6.0.0 2019-01-27 14:59:51 +11: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
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