cqlsh
is a Python-based command-line client for running CQL
commands on a cassandra
cluster.
Normally it's packaged as part of the full Apache Cassandra™ installation. This repo repackages it into a standalone Python package for lighter-weight installs.
Install and update using pip
:
$ pip install -U cqlsh
$ cqlsh --help
Documentation is available as part of the official Apache Cassandra™ documentation.
Because this is a repackaging of cqlsh
from the official Cassandra repo, only issues / PRs related to PyPI packaging should be opened against this repo. If you would like to contribute to cqlsh
itself, find out more information here.
Steps to sanity check that the packaging works as expected:
- Install
cqlsh
locally (probably in avirtualenv
):
$ pip install -e . # run from within the cqlsh directory
- Start a local copy of Cassandra:
$ docker pull cassandra
$ docker run -it --rm -p 9042:9042 cassandra
- Verify
cqlsh
successfully connects to the server:
$ cqlsh
Connected to Test Cluster at 127.0.0.1:9042
[cqlsh 6.1.0 | Cassandra 4.1.0 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh>
This PyPI package is maintained by Jeff Widman and Brad Schoening. Previous maintainers: Spiro and Andrew Mussey.
Unfortunately the Cassandra project does not always increment the cqlsh
version number, so for every
release we need to document not only the cqlsh
version but also the cassandra
version in which it
shipped.
This packages cqlsh
6.2.0
from Cassandra 5.0.0:
- Add HISTORY command for CQLSH (CASSANDRA-15046)
- Add CQLSH command SHOW REPLICAS (CASSANDRA-17577)
- Cassandra 5.0 has refactored all cqlsh logic to be in cqlshlib, with the new cqlshmain.py replacing behavior formerly in bin/cqlsh.py
- Replace 'wcwidth.py' with pypi module (CASSANDRA-17287)
This packages cqlsh
6.1.0
from Cassandra 4.1.4:
- CQLSH emits a warning when the server version doesn't match (CASSANDRA-18745)
- Fix CQLSH online help topic link (CASSANDRA-17534)
This packages cqlsh
6.1.0
from Cassandra 4.1.1:
- Now supports Python 3.11.
- Although this is pulled from a Cassandra
4.x
release, it is protocol compatible with Cassandra3.x
clusters, with the exception ofDESCRIBE
keywords which require a 4.x cluster.
This packages cqlsh
6.1.0
from Cassandra 4.1:
- Requires Python 3.6+.
- Although this is pulled from a Cassandra
4.x
release, it is protocol compatible with Cassandra3.x
clusters, with the exception ofDESCRIBE
keywords which require a 4.x cluster.
The actual source code is identical to the cqlsh
6.0.0
release, except it's now packaged as
a module. This allows it to be used as a library, not just an executable script. It also provides
better Windows support. Details in #7 by @bschoening.
Note: This release was yanked from PyPI because it broke Python 2 compatibility.
This packages cqlsh
6.0.0
from Cassandra 4.0:
- Requires Python 3.6+ or 2.7 (although support for Python 2 is deprecated).
- Although this is pulled from a Cassandra
4.x
release, it should generally work against Cassandra3.x
clusters without needing to set any flags.
This packages cqlsh
5.0.1
from Cassandra 4.0-beta4:
- Now supports Python 3.
- Although this is pulled from a Cassandra
4.x
release, it should generally work against Cassandra3.x
clusters without needing to set any flags.
This packages cqlsh
5.0.1
from Cassandra 3.11.10.
This packages cqlsh
5.0.1
from Cassandra 3.4.0.
This packages cqlsh
5.0.1
from Cassandra 2.2.0.
This packages cqlsh
4.1.1
from Cassandra 2.0.5.
This packages cqlsh
4.1.0
from Cassandra 2.0.3.
This packages cqlsh
4.0.1
from Cassandra 2.0.1.