Pillow/docs/porting.rst
nulano 2761a02d13 fix module references
(cherry picked from commit b077850baa)
2020-06-27 15:33:55 +02:00

35 lines
1.1 KiB
ReStructuredText

Porting
=======
**Porting existing PIL-based code to Pillow**
Pillow is a functional drop-in replacement for the Python Imaging Library.
PIL is Python 2 only. Pillow dropped support for Python 2 in Pillow
7.0. So if you would like to run the latest version of Pillow, you will first
and foremost need to port your code from Python 2 to 3.
To run your existing PIL-compatible code with Pillow, it needs to be modified
to import the ``Image`` module from the ``PIL`` namespace *instead* of the
global namespace. Change this::
import Image
to this::
from PIL import Image
The :py:mod:`~PIL._imaging` module has been moved. You can now import it like this::
from PIL.Image import core as _imaging
The image plugin loading mechanism has changed. Pillow no longer
automatically imports any file in the Python path with a name ending
in :file:`ImagePlugin.py`. You will need to import your image plugin
manually.
Pillow will raise an exception if the core extension can't be loaded
for any reason, including a version mismatch between the Python and
extension code. Previously PIL allowed Python only code to run if the
core extension was not available.