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

2020-04-07 Thread Eduard Tudenhoefner
Hi all,

I took a look at CASSANDRA-15659
 / CASSANDRA-15573
 and addressed both.

For 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 
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.mikloso...@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=DwIBaQ=adz96Xi0w1RHqtPMowiL2g=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls=uaomCLkBsDorb3EHBGVtW5FlB6lJCKGYPfA7b0Tep1s=
>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CASSANDRA-2D15660=DwIBaQ=adz96Xi0w1RHqtPMowiL2g=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls=XsWkaLxudaHLlha1D9k-BjXseLmwU7FsC2cXQ0L0OHc=
>
> Cheers
>
> On Tue, 24 Mar 2020 at 19:45, Jon Haddad  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.mikloso...@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=DwIBaQ=adz96Xi0w1RHqtPMowiL2g=Mvswwxt6BEQ7eAT5OkvJjbzf_MmqFVTWWvPSfg8SU4k=8G4dKwG6Dcb0xNDtgLJSiM8eBZ3NvZEacaowcwlR0ls=85RWaTe_R3oB7dEEBu2rBFFE_rA3zKoHiNptrJRAtoE=
> > > (2)
> > >
> 

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

2020-03-24 Thread Stefan Miklosovic
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://issues.apache.org/jira/browse/CASSANDRA-15659
https://issues.apache.org/jira/browse/CASSANDRA-15660

Cheers

On Tue, 24 Mar 2020 at 19:45, Jon Haddad  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.mikloso...@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://github.com/apache/cassandra/commit/bf9a1d487b9ba469e8d740cf7d1cd419535a7e79
> > (2)
> > https://github.com/apache/cassandra/blob/bf9a1d487b9ba469e8d740cf7d1cd419535a7e79/bin/cqlsh#L57-L65
> > (3) https://distrowatch.com/table.php?distribution=debian
> > (4) https://packages.debian.org/stable/python/
> >
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > For additional commands, e-mail: dev-h...@cassandra.apache.org
> >
> >

-
To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
For additional commands, e-mail: dev-h...@cassandra.apache.org



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

2020-03-24 Thread Jon Haddad
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.mikloso...@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://github.com/apache/cassandra/commit/bf9a1d487b9ba469e8d740cf7d1cd419535a7e79
> (2)
> https://github.com/apache/cassandra/blob/bf9a1d487b9ba469e8d740cf7d1cd419535a7e79/bin/cqlsh#L57-L65
> (3) https://distrowatch.com/table.php?distribution=debian
> (4) https://packages.debian.org/stable/python/
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: dev-h...@cassandra.apache.org
>
>