Metadata-Version: 2.1
Name: cratedb-toolkit
Version: 0.0.23
Summary: CrateDB Toolkit
Author-email: Niklas Schmidtmer <niklas@crate.io>, Marija Selakovic <marija@crate.io>, Andreas Motl <andreas.motl@crate.io>
License: AGPL 3, EUPL 1.2
Project-URL: Changelog, https://github.com/crate/cratedb-toolkit/blob/main/CHANGES.md
Project-URL: Documentation, https://cratedb-toolkit.readthedocs.io/
Project-URL: Homepage, https://cratedb-toolkit.readthedocs.io/
Project-URL: Issues, https://github.com/crate/cratedb-toolkit/issues
Project-URL: Repository, https://github.com/crate/cratedb-toolkit
Keywords: cratedb,data-processing,data-retention,toolkit
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Customer Service
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Manufacturing
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: System Administrators
Classifier: Intended Audience :: Telecommunications Industry
Classifier: License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Adaptive Technologies
Classifier: Topic :: Communications
Classifier: Topic :: Database
Classifier: Topic :: Documentation
Classifier: Topic :: Education
Classifier: Topic :: Internet
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Office/Business
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Embedded Systems
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Object Brokering
Classifier: Topic :: Software Development :: Pre-processors
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Software Development :: Version Control
Classifier: Topic :: System :: Archiving
Classifier: Topic :: System :: Benchmark
Classifier: Topic :: System :: Clustering
Classifier: Topic :: System :: Distributed Computing
Classifier: Topic :: System :: Hardware
Classifier: Topic :: System :: Logging
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: System :: Networking
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Text Processing
Classifier: Topic :: Utilities
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: attrs <25
Requires-Dist: boltons <25
Requires-Dist: cattrs <25
Requires-Dist: click <9
Requires-Dist: click-aliases <2,>=1.0.4
Requires-Dist: colorama <1
Requires-Dist: colorlog
Requires-Dist: crash
Requires-Dist: cratedb-sqlparse ==0.0.6
Requires-Dist: polars <1.7
Requires-Dist: pympler <1.2
Requires-Dist: python-dateutil <3
Requires-Dist: python-dotenv <2
Requires-Dist: python-slugify <9
Requires-Dist: pyyaml <7
Requires-Dist: sqlalchemy-cratedb <1,>=0.37
Requires-Dist: sqlparse <0.6
Requires-Dist: tqdm <5
Requires-Dist: vasuki ==0.7.0
Requires-Dist: verlib2 ==0.2
Requires-Dist: yarl <1.12
Requires-Dist: importlib-metadata ; python_version < "3.8"
Requires-Dist: importlib-resources ; python_version < "3.9"
Requires-Dist: typing-extensions <5 ; python_version <= "3.7"
Provides-Extra: all
Requires-Dist: cratedb-toolkit[full,influxdb,mongodb] ; extra == 'all'
Provides-Extra: cfr
Requires-Dist: pandas <2.2 ; extra == 'cfr'
Requires-Dist: pyarrow <17.1 ; extra == 'cfr'
Provides-Extra: cloud
Requires-Dist: croud ==1.12.0 ; extra == 'cloud'
Provides-Extra: datasets
Requires-Dist: datasets <4 ; extra == 'datasets'
Requires-Dist: kaggle <1.7 ; extra == 'datasets'
Provides-Extra: develop
Requires-Dist: black[jupyter] <25 ; extra == 'develop'
Requires-Dist: mypy <1.12 ; extra == 'develop'
Requires-Dist: poethepoet <0.29 ; extra == 'develop'
Requires-Dist: pyproject-fmt <2.3 ; extra == 'develop'
Requires-Dist: ruff <0.7 ; extra == 'develop'
Requires-Dist: validate-pyproject <0.20 ; extra == 'develop'
Provides-Extra: docs
Requires-Dist: furo ; extra == 'docs'
Requires-Dist: myst-parser[linkify] <5,>=0.18 ; extra == 'docs'
Requires-Dist: sphinx-autobuild ==2021.3.14 ; extra == 'docs'
Requires-Dist: sphinx-copybutton ; extra == 'docs'
Requires-Dist: sphinx-design-elements <1 ; extra == 'docs'
Requires-Dist: sphinxcontrib-mermaid <1 ; extra == 'docs'
Requires-Dist: sphinxext-opengraph <1 ; extra == 'docs'
Provides-Extra: dynamodb
Requires-Dist: boto3 ; extra == 'dynamodb'
Requires-Dist: commons-codec >=0.0.14 ; extra == 'dynamodb'
Provides-Extra: full
Requires-Dist: cratedb-toolkit[cfr,cloud,datasets,io,service] ; extra == 'full'
Provides-Extra: influxdb
Requires-Dist: cratedb-toolkit[io] ; extra == 'influxdb'
Requires-Dist: influxio <1,>=0.4 ; extra == 'influxdb'
Provides-Extra: io
Requires-Dist: cr8 ; extra == 'io'
Requires-Dist: dask[dataframe] >=2020 ; extra == 'io'
Requires-Dist: pandas <3,>=1 ; extra == 'io'
Requires-Dist: sqlalchemy >=2 ; extra == 'io'
Provides-Extra: kinesis
Requires-Dist: aiobotocore <2.16 ; extra == 'kinesis'
Requires-Dist: async-kinesis <1.2 ; extra == 'kinesis'
Requires-Dist: commons-codec >=0.0.14 ; extra == 'kinesis'
Requires-Dist: lorrystream[carabas] >=0.0.6 ; extra == 'kinesis'
Provides-Extra: mongodb
Requires-Dist: commons-codec[mongodb,zyp] >=0.0.15 ; extra == 'mongodb'
Requires-Dist: cratedb-toolkit[io] ; extra == 'mongodb'
Requires-Dist: orjson <4,>=3.3.1 ; extra == 'mongodb'
Requires-Dist: pymongo <5,>=3.10.1 ; extra == 'mongodb'
Requires-Dist: python-bsonjs <0.5 ; extra == 'mongodb'
Requires-Dist: rich <14,>=3.3.2 ; extra == 'mongodb'
Requires-Dist: undatum <1.1 ; extra == 'mongodb'
Provides-Extra: pymongo
Requires-Dist: jessiql ==1.0.0rc1 ; extra == 'pymongo'
Requires-Dist: pandas ==2.1.* ; extra == 'pymongo'
Requires-Dist: pymongo ==4.8.* ; extra == 'pymongo'
Requires-Dist: sqlalchemy <2 ; extra == 'pymongo'
Provides-Extra: release
Requires-Dist: build <2 ; extra == 'release'
Requires-Dist: twine <6 ; extra == 'release'
Provides-Extra: release-cfr
Requires-Dist: poethepoet <0.29 ; extra == 'release-cfr'
Requires-Dist: pyinstaller <7 ; extra == 'release-cfr'
Provides-Extra: service
Requires-Dist: fastapi <0.115 ; extra == 'service'
Requires-Dist: uvicorn <0.31 ; extra == 'service'
Provides-Extra: test
Requires-Dist: cratedb-toolkit[testing] ; extra == 'test'
Requires-Dist: httpx <0.28 ; extra == 'test'
Requires-Dist: pueblo[dataframe] ; extra == 'test'
Requires-Dist: pytest <9 ; extra == 'test'
Requires-Dist: pytest-cov <6 ; extra == 'test'
Requires-Dist: pytest-mock <4 ; extra == 'test'
Requires-Dist: responses <0.26 ; extra == 'test'
Requires-Dist: testcontainers-azurite ==0.0.1rc1 ; extra == 'test'
Requires-Dist: testcontainers-localstack ==0.0.1rc1 ; extra == 'test'
Requires-Dist: testcontainers-minio ==0.0.1rc1 ; extra == 'test'
Provides-Extra: test-mongodb
Requires-Dist: cratedb-toolkit[test] ; extra == 'test-mongodb'
Requires-Dist: testcontainers-mongodb ==0.0.1rc1 ; extra == 'test-mongodb'
Provides-Extra: testing
Requires-Dist: testcontainers <5 ; extra == 'testing'

# CrateDB Toolkit

[![Tests](https://github.com/crate/cratedb-toolkit/actions/workflows/main.yml/badge.svg)](https://github.com/crate/cratedb-toolkit/actions/workflows/main.yml)
[![Test coverage](https://img.shields.io/codecov/c/gh/crate/cratedb-toolkit.svg)](https://codecov.io/gh/crate/cratedb-toolkit/)
[![Python versions](https://img.shields.io/pypi/pyversions/cratedb-toolkit.svg)](https://pypi.org/project/cratedb-toolkit/)

[![License](https://img.shields.io/github/license/crate/cratedb-toolkit.svg)](https://github.com/crate/cratedb-toolkit/blob/main/LICENSE)
[![Status](https://img.shields.io/pypi/status/cratedb-toolkit.svg)](https://pypi.org/project/cratedb-toolkit/)
[![PyPI](https://img.shields.io/pypi/v/cratedb-toolkit.svg)](https://pypi.org/project/cratedb-toolkit/)
[![Downloads](https://pepy.tech/badge/cratedb-toolkit/month)](https://pepy.tech/project/cratedb-toolkit/)


» [Documentation]
| [Changelog]
| [Community Forum]
| [PyPI]
| [Issues]
| [Source code]
| [License]
| [CrateDB]


## About

This software package includes a range of modules and subsystems to work
with CrateDB and CrateDB Cloud efficiently.

You can use CrateDB Toolkit to run data I/O procedures and automation tasks
of different kinds around CrateDB and CrateDB Cloud. It can be used both as
a standalone program, and as a library.

It aims for [DWIM]-like usefulness and [UX], and provides CLI and HTTP
interfaces, and others.


## Status

Please note that the `cratedb-toolkit` package contains alpha-, beta- and
incubation-quality code, and as such, is considered to be a work in progress.
Contributions of all kinds are much welcome, in order to make it more solid,
and to add features.

Breaking changes should be expected until a 1.0 release, so version pinning is
strongly recommended, especially when using it as a library.


## Install

Install package.
```shell
pip install --upgrade cratedb-toolkit
```

Verify installation.
```shell
ctk --version
```

Run with Docker.
```shell
alias ctk="docker run --rm ghcr.io/crate/cratedb-toolkit ctk"
ctk --version
```


## Development

Contributions are very much welcome. Please visit the [](#sandbox)
documentation to learn about how to spin up a sandbox environment on your
workstation, or create a [ticket][Issues] to report a bug or share an idea
about a possible feature.



[Changelog]: https://github.com/crate/cratedb-toolkit/blob/main/CHANGES.md
[Community Forum]: https://community.crate.io/
[CrateDB]: https://crate.io/products/cratedb
[CrateDB Cloud]: https://console.cratedb.cloud/
[Documentation]: https://cratedb-toolkit.readthedocs.io/
[DWIM]: https://en.wikipedia.org/wiki/DWIM
[Issues]: https://github.com/crate/cratedb-toolkit/issues
[License]: https://github.com/crate/cratedb-toolkit/blob/main/LICENSE
[PyPI]: https://pypi.org/project/cratedb-toolkit/
[Source code]: https://github.com/crate/cratedb-toolkit
[UX]: https://en.wikipedia.org/wiki/User_experience
