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&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  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&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=8G4dKwG6Dcb0xNDtg

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
>
>


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

2020-03-24 Thread Stefan Miklosovic
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