[ 
https://issues.apache.org/jira/browse/CASSANDRA-18654?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeff Widman updated CASSANDRA-18654:
------------------------------------
    Description: 
Myself and [~bschoeni] currently maintain https://github.com/jeffwidman/cqlsh 
which  repackages the CQLSH from Cassandra it into a standalone Python package 
that is published to https://pypi.org/project/cqlsh/ for lighter-weight 
installs.

Given that our project is simply a build/packaging project, we wanted start a 
conversation about upstreaming this into core Cassandra.

We don't have any differences from the CQLSH source that's in cassandra, 
instead we point all contributors to contribute back to the Cassandra project. 
In fact we've made multiple contributions back to `cqlsh` ourselves and have 
drastically cleaned up the code: 
https://github.com/search?q=repo%3Aapache%2Fcassandra%20is%3Apr%20author%3Ajeffwidman%20author%3Abschoening&type=pullrequests

Our goal: 
When a Cassandra release happens, the build/release process automatically 
publishes cqlsh to https://pypi.org/project/cqlsh/

Benefits:
- more efficient because we no longer have to manually copy/paste cqlsh source 
around, it'd be automatically done by CI.
- easier for folks to test python packaging because they could use this 
pipeline to build the core source locally into a python package.
- reduced bus factor because the PyPI namespace would be under the ownership of 
core Cassandra rather than just Jeff/Brad.

We realize the Cassandra team isn't python/PyPI experts, so we'd be more than 
happy to help wire this up and maintain it.

I also realize that Cassandra has no interest in maintaining lots of build 
targets... but given that cqlsh is written in Python and PyPI is the cannonical 
place to publish python packages, this seems like a natural fit for core 
cassandra rather than a standalone project.

Our one hesitation around this discussion is that we're a little concerned that 
we might lose the nimbleness we've currently got from having a separate 
project. Ie, if something is screwed up on PyPI / the build process, we can 
quickly get it fixed and get a new release out so that users aren't blocked. 
Would it be possible as part of this process to continue that myself/Brad had 
commit rights to the build process for PyPI? To be clear, we aren't asking for 
commit rights to the Java code or anything outside of Python, we just want to 
be sure that if we go to the trouble of working with you to upstream this that 
there's a commitment from Cassandra to keeping this build working, or to 
letting us be able to fix the build. Otherwise there's no point in upstreaming 
it only for it to go unmaintained and us look on helplessly from the sidelines. 
We're very flexible here on the solution.

Thoughts?

  was:
Myself and [~bschoeni] currently maintain https://github.com/jeffwidman/cqlsh 
which  repackages the CQLSH from Cassandra it into a standalone Python package 
that is published to https://pypi.org/project/cqlsh/ for lighter-weight 
installs.

Given that our project is simply a build/packaging project, we wanted start a 
conversation about upstreaming this into core Cassandra.

We don't have any differences from the CQLSH source that's in cassandra, 
instead we point all contributors to contribute back to the Cassandra project. 
In fact we've made multiple contributions back to `cqlsh` ourselves and have 
drastically cleaned up the code: 
https://github.com/search?q=repo%3Aapache%2Fcassandra%20is%3Apr%20author%3Ajeffwidman%20author%3Abschoening&type=pullrequests

Our goal: 
When a Cassandra release happens, the build/release process automatically 
publishes cqlsh to https://pypi.org/project/cqlsh/

We realize the Cassandra team isn't python/PyPI experts, so we'd be more than 
happy to help wire this up and maintain it.

I also realize that Cassandra has no interest in maintaining lots of build 
targets... but given that cqlsh is written in Python and PyPI is the cannonical 
place to publish python packages, this seems like a natural fit for core 
cassandra rather than a standalone project.

Our one hesitation around this discussion is that we're a little concerned that 
we might lose the nimbleness we've currently got from having a separate 
project. Ie, if something is screwed up on PyPI / the build process, we can 
quickly get it fixed and get a new release out so that users aren't blocked. 
Would it be possible as part of this process to continue that myself/Brad had 
commit rights to the build process for PyPI? To be clear, we aren't asking for 
commit rights to the Java code or anything outside of Python, we just want to 
be sure that if we go to the trouble of working with you to upstream this that 
there's a commitment from Cassandra to keeping this build working, or to 
letting us be able to fix the build. Otherwise there's no point in upstreaming 
it only for it to go unmaintained and us look on helplessly from the sidelines. 
We're very flexible here on the solution.

Thoughts?


> Make publishing to https://pypi.org/project/cqlsh/ part of Cassandra core
> -------------------------------------------------------------------------
>
>                 Key: CASSANDRA-18654
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18654
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Jeff Widman
>            Priority: Normal
>
> Myself and [~bschoeni] currently maintain https://github.com/jeffwidman/cqlsh 
> which  repackages the CQLSH from Cassandra it into a standalone Python 
> package that is published to https://pypi.org/project/cqlsh/ for 
> lighter-weight installs.
> Given that our project is simply a build/packaging project, we wanted start a 
> conversation about upstreaming this into core Cassandra.
> We don't have any differences from the CQLSH source that's in cassandra, 
> instead we point all contributors to contribute back to the Cassandra 
> project. In fact we've made multiple contributions back to `cqlsh` ourselves 
> and have drastically cleaned up the code: 
> https://github.com/search?q=repo%3Aapache%2Fcassandra%20is%3Apr%20author%3Ajeffwidman%20author%3Abschoening&type=pullrequests
> Our goal: 
> When a Cassandra release happens, the build/release process automatically 
> publishes cqlsh to https://pypi.org/project/cqlsh/
> Benefits:
> - more efficient because we no longer have to manually copy/paste cqlsh 
> source around, it'd be automatically done by CI.
> - easier for folks to test python packaging because they could use this 
> pipeline to build the core source locally into a python package.
> - reduced bus factor because the PyPI namespace would be under the ownership 
> of core Cassandra rather than just Jeff/Brad.
> We realize the Cassandra team isn't python/PyPI experts, so we'd be more than 
> happy to help wire this up and maintain it.
> I also realize that Cassandra has no interest in maintaining lots of build 
> targets... but given that cqlsh is written in Python and PyPI is the 
> cannonical place to publish python packages, this seems like a natural fit 
> for core cassandra rather than a standalone project.
> Our one hesitation around this discussion is that we're a little concerned 
> that we might lose the nimbleness we've currently got from having a separate 
> project. Ie, if something is screwed up on PyPI / the build process, we can 
> quickly get it fixed and get a new release out so that users aren't blocked. 
> Would it be possible as part of this process to continue that myself/Brad had 
> commit rights to the build process for PyPI? To be clear, we aren't asking 
> for commit rights to the Java code or anything outside of Python, we just 
> want to be sure that if we go to the trouble of working with you to upstream 
> this that there's a commitment from Cassandra to keeping this build working, 
> or to letting us be able to fix the build. Otherwise there's no point in 
> upstreaming it only for it to go unmaintained and us look on helplessly from 
> the sidelines. We're very flexible here on the solution.
> Thoughts?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to