[
https://issues.apache.org/jira/browse/CASSANDRA-17832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17634522#comment-17634522
]
Stefan Miklosovic commented on CASSANDRA-17832:
-----------------------------------------------
I think we need this for Redhat-based distros
[https://github.com/instaclustr/cassandra/commit/ec6fb6cc807a12593f666f860dbb3cf52fcb75ac]
Basically, we need to turn off that shebang macro because even with python3, it
will still expand it to /usr/libexec/platform-python and that binary is not
present in CentOS at all (stuff I am trying that on). A lot of people online
complain / ask about the presence of platform-python and there is not such
thing.
I built (noboolean) RPM on CentOS 7, run the thing and it just builds /
installs that RPM fine and cqlsh.py does not have it expanded (it stays
#!/usr/bin/env python3)
CI with that change in running here :
https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch/2077/
> Change bin/cqlsh.py shebang to use PATH with env prefix
> -------------------------------------------------------
>
> Key: CASSANDRA-17832
> URL: https://issues.apache.org/jira/browse/CASSANDRA-17832
> Project: Cassandra
> Issue Type: Improvement
> Components: CQL/Interpreter
> Reporter: Brad Schoening
> Assignee: Brad Schoening
> Priority: Low
> Fix For: 4.x
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> For cqlsh.py this:
> #!/usr/bin/env python
> is preferable to the current hard coded /usr/bin/python3 which doesn't take
> into account the python interpreter preferences in the users PATH.
> '{{{}env{}}}' is a system binary in {{/usr/bin}} that searches {{$PATH}} for
> strings containing the provided argument and returns the first instance it
> finds. In the above syntax, {{env}} will search for the first instance of
> {{python}} in {{$PATH}} and return it.
> This is aligned with the recommendations in
> [https://peps.python.org/pep-0394/]
> For example, on a MacOS:
>
> {code:java}
> % /usr/bin/python3 --version
> Python 3.8.9. (xcode python version)
> % /usr/bin/env python --version
> Python 3.10.6. (brew python version)
> % python --version
> Python 3.10.6. (default)
> {code}
> Thus, /usr/bin/python3 doesn't run the expected default python version
> Even the official Python tutorial uses the /usr/bin/env form of shebang:
> [https://docs.python.org/3/tutorial/interpreter.html]
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]