[Image-SIG] Adding Python 3 support

Alex Clark aclark at aclark.net
Thu Oct 11 22:03:20 CEST 2012


On 2012-10-11 14:30:14 +0000, Mark Sienkiewicz said:

> On 10/10/12 23:12, Alex Clark wrote:
>> On 2012-10-11 02:57:07 +0000, Brian Crowell said:
>> 
>>> On Wed, Oct 10, 2012 at 8:07 PM, Alex Clark <aclark at aclark.net> wrote:
>>>> No. But maybe a single "Python 3 support" ticket in the relevant branch
>>>> (https://bitbucket.org/effbot/pil-2009-raclette). IIUC, PIL has some Python
>>>> support added. One possible scenario is that we take that code and release
>>>> it.
>>> 
>>> Do you consider Raclette your upstream? Also, I'm reading through the
>>> Python 3 patches on there.
>> 
>> Yes. IIUC that's where there the latest PIL work is/was taking place.
> 
> 
> The last commit I see there is 2011-06-28, which is quite some time 
> ago.  Have you confirmed with Fredrik Lundh that PIL is still under 
> active development?  Do you have an agreement with him about how Pillow 
> and PIL will interact?
> 
> I presume that Pillow is a fork because he is unable or unwilling to 
> apply the patches that you need and make a release.  There are various 
> good reasons that can happen, but for our purposes, it is only 
> important that it _has_ happened.
> 
> I expect a Python 3 port to be a big change.  The more changes you 
> make, the harder it will be to bring in patches from the old code base. 
>  I can see wanting to track the original PIL, but it is common for a 
> free software project eventually reach a state where the original 
> author is no longer able to continue developing it.
> 
> If that has happened to PIL, then we have some questions to consider:  
> Is it time for a new maintainer for PIL?  Is it time for Pillow and PIL 
> to go their separate ways?  Is it time to find a way to merge the two 
> projects?
> 
> I don't have any answers, but it seems to me that those are relevant questions.

Sure, and most if not all of these questions have been discussed on 
this list in the past (see: 
http://mail.python.org/pipermail/image-sig/). I'll give a brief recap:


- Re: PIL development. No idea what's going on. I assume it's dead or 
moving very slow. And yes, Pillow is a fork. Fredrik has commented on 
Pillow on this list, but I don't have the archive link handy. It was 
something to the effect "I'm glad someone is doing something besides 
complaining".


- Re: Changing away from PIL. Pillow is "the friendly PIL fork" so we 
will always try to do what is best for both projects (including 
tracking issues between projects, etc). But Pillow is first and 
foremost: practical. Adding Python 3 support is a practical matter 
whose time has come. If this change causes Pillow to drift further from 
PIL, then so be it. Pillow *is* PIL, so I don't think it matters that 
much. People will gravitate (as they have already) toward what works 
and what is well maintained. Should Pillow become PIL? No idea. 
Probably not yet, if ever. Maybe after Python 3 compat is added, but 
even then it's not going to be something I will push for or be too 
interested in (not to say I wouldn't consider it, if that should become 
necessary).



Alex





> 
> 
>> 
>>> 
>>> Essentially all I'm going to do is update the Python source to where
>>> it meets Py3 syntax and library requirements, get the extension
>>> modules to build under both Py2 and Py3, then futz with the bytes/str
>>> division using the three existing ports as a guide. After that, all we 
>>> should need is solid testing.
>>>> Lundh seemed to expect to be able to
>>>> support much older versions of Python, which really wouldn't have
>>>> worked when he hit the Python source. I'm going to go with a cleaner
>>>> approach.
>>> 
>> 
>> 
>> 
>> +1. This would be the time for others to weigh in I guess. Is this what 
>> folks generally want to see from PIL/Pillow wrt to Python 3 support?
> 
> 
> +1.  I have no reason to expect we will get Python 3 support any other 
> way.  I mentioned before that I am not concerned with compatibility 
> with very old Python versions (I already have PIL for those systems), 
> so a simple and clean port looks like the way to go.
> 
> Mark S.
> 
> 
> _______________________________________________
> Image-SIG maillist  -  Image-SIG at python.org
> http://mail.python.org/mailman/listinfo/image-sig


-- 
Alex Clark · https://www.gittip.com/aclark4life/




More information about the Image-SIG mailing list