You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cassandra.apache.org by Eduard Tudenhoefner <ed...@datastax.com> on 2020/04/07 12:41:37 UTC

Re: Questions and problems about the state of Python 3 support on 4.0

Hi all,

I took a look at CASSANDRA-15659
<https://issues.apache.org/jira/browse/CASSANDRA-15659> / CASSANDRA-15573
<https://issues.apache.org/jira/browse/CASSANDRA-15573> and addressed both.

For CASSANDRA-15659 <https://issues.apache.org/jira/browse/CASSANDRA-15659>
the requirement of *cqlsh* only working with Python 2.7 & 3.6 was relaxed
by allowing Python 3.6+.
Python 3.8 testing was added to the CircleCI config so that we can actually
see what else breaks with newer Python versions.

A new Docker images with Ubuntu 19.10 was required for testing (
https://github.com/apache/cassandra-builds/pull/17). This docker image sets
up Python 2.7/3.6/3.7/3.8 with their respective virtual environments, which
are then being used by the CircleCI yaml.

The image *spod/cassandra-testing-ubuntu1810-java11-w-dependencies:20190306*
couldn't be updated unfortunately because it can't be built anymore, due to
Ubuntu 18.10 being EOL.

For CASSANDRA-15573 <https://issues.apache.org/jira/browse/CASSANDRA-15573>
a Python 3.8 compatible SaferScanner implementation was introduced.

Both tickets are ready to be reviewed, and I would appreciate any feedback.

– Eduard

On Tue, Mar 24, 2020 at 8:16 PM Stefan Miklosovic <
stefan.miklosovic@instaclustr.com> wrote:

> Ok, I created two JIRAs. The first one is targeting 3.6/3.7 issue, the
> second one is about the bug I hit. I made two issues so they can be
> worked on separately.
>
>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CASSANDRA-2D15659&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=uaomCLkBsDorb3EHBGVtW5FlB6lJCKGYPfA7b0Tep1s&e=
>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CASSANDRA-2D15660&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=XsWkaLxudaHLlha1D9k-BjXseLmwU7FsC2cXQ0L0OHc&e=
>
> Cheers
>
> On Tue, 24 Mar 2020 at 19:45, Jon Haddad <jo...@jonhaddad.com> wrote:
> >
> > I don't think supporting only 3.6 not 3.7 was a deliberate move, it's
> > likely just an oversight.  Yes, we should address that.  Mind filing a
> > JIRA?
> >
> > On Tue, Mar 24, 2020 at 11:33 AM Stefan Miklosovic <
> > stefan.miklosovic@instaclustr.com> wrote:
> >
> > > Hi,
> > >
> > > I built deb package for Debian from current trunk as of today and I
> > > wanted to test cqlsh and I got this error:
> > >
> > > me@machine:/$ python --version
> > > Python 2.7.16
> > > me@machine:/$ cqlsh -u cassandra -p cassandra --execute="select * from
> > > system_auth.roles" machine
> > > Usage: cqlsh.py [options] [host [port]]
> > >
> > > cqlsh.py: error: 'boot' is not a valid port number.
> > >
> > > This is Debian Buster.
> > >
> > > Please keep in mind that _without_ "--execute" / "-e", it just
> > > connects fine. So I think this is a bug. I am pretty sure this was
> > > working before.
> > >
> > > I wanted to try this against Python 3 and as I was digging deeper I
> > > saw that there was this set of changes merged recently (1) with this
> > > function specifically (2) Hence, I can see that there is support for
> > > Python 3.6 and 2.7.
> > >
> > > My question is why are we so strict when it comes to the version of
> Python
> > > 3?
> > >
> > > Secondly, if this project is building debs for Debian (I suppose so),
> > > what version of Debian it is actually built for then as there is not
> > > 3.6 version of Python out of the box for any release.
> > >
> > > For example, quickly looking here (3), there is Python 3.7 for Buster
> > > and 2.7 for Stretch, Jessie and even Wheezy. But no 3.6! You can check
> > > official Python version here (4)
> > >
> > > If I understand this correctly, this means that if one installs a deb
> > > and he wants to run it with Python 3.6 (the only Python version this
> > > cqlsh supports), he can not install it from repositories but he has to
> > > chase that Python version himself and build it from source and so on
> > > and so on ...
> > >
> > > Could we either make this compatible with 3.7 and switch to that
> > > version or delete so specific requirement (3.6) from the code? I
> > > humbly think that if we distribute debs we should also say what
> > > release we are targetting and it should be possible to install it all
> > > by standard means from the repos.
> > >
> > > Regards
> > >
> > > (1)
> > >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_cassandra_commit_bf9a1d487b9ba469e8d740cf7d1cd419535a7e79&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=85RWaTe_R3oB7dEEBu2rBFFE_rA3zKoHiNptrJRAtoE&e=
> > > (2)
> > >
> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_apache_cassandra_blob_bf9a1d487b9ba469e8d740cf7d1cd419535a7e79_bin_cqlsh-23L57-2DL65&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=r3WyGMlfQz95SUG8rcXTYXOZuZvbAY1Bt9oTfZxBxjI&e=
> > > (3)
> https://urldefense.proofpoint.com/v2/url?u=https-3A__distrowatch.com_table.php-3Fdistribution-3Ddebian&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=5K7u_LaSo-J3uV5pGrIRvGmPVay9LHcA4yPHrcg4vTA&e=
> > > (4)
> https://urldefense.proofpoint.com/v2/url?u=https-3A__packages.debian.org_stable_python_&d=DwIBaQ&c=adz96Xi0w1RHqtPMowiL2g&r=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k&m=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls&s=Q6h-8UN5OX7hSIYs0xvNOI7m5nbVxJEFDeNTvNM_PTc&e=
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscribe@cassandra.apache.org
> > > For additional commands, e-mail: dev-help@cassandra.apache.org
> > >
> > >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@cassandra.apache.org
> For additional commands, e-mail: dev-help@cassandra.apache.org
>
>

-- 
Eduard Tudenhoefner
e. eduard.tudenhoefner@datastax.com
w. www.datastax.com