[Mailman-Developers] Why is postorius using python2?
f at florianfuchs.com
f at florianfuchs.com
Tue Aug 4 23:01:52 CEST 2015
Am 2015-08-04 20:55, schrieb Barry Warsaw:
> Others have provided good answers, but I'll add one comment about what
> I
> consider to be policy regarding Python version support. Feedback
> welcome of
> course!
>
> On Aug 03, 2015, at 02:34 PM, Simon Hanna wrote:
>
>> I was astonished to find out that postorius still uses python2
>> although
>> mailman made the switch to python3.
>
> The Core can be Python 3-only because the official way to script it is
> through
> the REST API, which of course is not only Python-version independent,
> but
> actually only depends on you being able to speak HTTP+JSON. Of course
> mailman.client is the official Python binding to the REST API and that
> should
> remain bilingual (Python 2 & 3 compatible) for some time.
>
> Note that this did break HyperKitty at the time because it was
> importing from
> the 'mailman' package. That's of course since been fixed.
>
> I think both HyperKitty and Postorius should officially support Python
> 3, but
> remain Python 2 compatible. The reason for this is that they're both
> Django
> applications, so if they have to co-habitate with other Python 2-only
> Django
> apps, they'll need to also run in Python 2. They should be Python 3
> compatible, because, well, Python 3 is much awesomer!
We don't have any direct Python2-only dependencies in Postorius any more
since we made the switch from django-social-auth to
python-social-auth/django-browserid in April. I'm pretty sure the same
is true for HyperKitty (Aurélien...?). So I guess there's no reason why
we shouldn't start supporting Python 3 as well.
So the question would be: Go bilingual or py3 only? Bilingual was what
we had agreed on before, for the reasons Barry stated above. But mabye
this argument becomes less valid as time passes and Python 3 adoption is
on the rise. Plus: If someone would want to integrate a py3-only
Postorius/HK into an existing site *and* this site is not py3
compatible, it would still be possible to run both on the same server,
using another VirtualHost/subdomain or similar.
I'm thinking aloud here, not *necessarily* advocating to only support
Python 3 soon. But I wonder if there are really that many people who
would be negatively affected by it. And, as stated above, for those who
are, there's always a way around it. Mabye it's worth giving it another
thought.
OTOH, supporting both py2+3 is probably not that much more work. But it
doesn't make our code much nicer and is not exactly a strong satement in
favor of Python 3 adoption.
Cheers,
Florian
More information about the Mailman-Developers
mailing list