Metadata-Version: 2.1
Name: cubed
Version: 0.14.1
Summary: Bounded-memory serverless distributed N-dimensional array processing
Author-email: Tom White <tom.e.white@gmail.com>
License: Apache License 2.0
Project-URL: homepage, https://github.com/cubed-dev/cubed
Project-URL: documentation, https://tomwhite.github.io/cubed
Project-URL: repository, https://github.com/cubed-dev/cubed
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiostream
Requires-Dist: array-api-compat
Requires-Dist: cloudpickle
Requires-Dist: donfig
Requires-Dist: fsspec
Requires-Dist: mypy_extensions
Requires-Dist: networkx<2.8.3
Requires-Dist: numpy>=1.22
Requires-Dist: tenacity
Requires-Dist: toolz
Requires-Dist: zarr
Provides-Extra: diagnostics
Requires-Dist: tqdm; extra == "diagnostics"
Requires-Dist: graphviz; extra == "diagnostics"
Requires-Dist: jinja2; extra == "diagnostics"
Requires-Dist: pydot; extra == "diagnostics"
Requires-Dist: pandas; extra == "diagnostics"
Requires-Dist: matplotlib; extra == "diagnostics"
Requires-Dist: rich; extra == "diagnostics"
Requires-Dist: seaborn; extra == "diagnostics"
Provides-Extra: beam
Requires-Dist: apache-beam; extra == "beam"
Requires-Dist: gcsfs; extra == "beam"
Provides-Extra: dask
Requires-Dist: dask; extra == "dask"
Provides-Extra: dask-distributed
Requires-Dist: distributed; extra == "dask-distributed"
Provides-Extra: lithops
Requires-Dist: lithops[aws]>=2.7.0; extra == "lithops"
Provides-Extra: modal
Requires-Dist: cubed[diagnostics]; extra == "modal"
Requires-Dist: modal-client; extra == "modal"
Requires-Dist: s3fs; extra == "modal"
Provides-Extra: modal-gcp
Requires-Dist: cubed[diagnostics]; extra == "modal-gcp"
Requires-Dist: modal-client; extra == "modal-gcp"
Requires-Dist: gcsfs; extra == "modal-gcp"
Provides-Extra: coiled
Requires-Dist: cubed[diagnostics]; extra == "coiled"
Requires-Dist: coiled; extra == "coiled"
Requires-Dist: dask[complete]; extra == "coiled"
Requires-Dist: s3fs; extra == "coiled"
Provides-Extra: test
Requires-Dist: apache-beam; extra == "test"
Requires-Dist: cubed[diagnostics,lithops]; extra == "test"
Requires-Dist: dill; extra == "test"
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Requires-Dist: pytest-mock; extra == "test"
Provides-Extra: test-dask
Requires-Dist: cubed[dask,diagnostics]; extra == "test-dask"
Requires-Dist: dill; extra == "test-dask"
Requires-Dist: pytest; extra == "test-dask"
Requires-Dist: pytest-cov; extra == "test-dask"
Requires-Dist: pytest-mock; extra == "test-dask"
Provides-Extra: test-dask-distributed
Requires-Dist: cubed[dask-distributed,diagnostics]; extra == "test-dask-distributed"
Requires-Dist: dill; extra == "test-dask-distributed"
Requires-Dist: pytest; extra == "test-dask-distributed"
Requires-Dist: pytest-cov; extra == "test-dask-distributed"
Requires-Dist: pytest-mock; extra == "test-dask-distributed"
Provides-Extra: test-modal
Requires-Dist: cubed[modal]; extra == "test-modal"
Requires-Dist: dill; extra == "test-modal"
Requires-Dist: pytest; extra == "test-modal"
Requires-Dist: pytest-cov; extra == "test-modal"
Requires-Dist: pytest-mock; extra == "test-modal"

# Cubed

**_Note: this is a proof-of-concept, and many things are incomplete or don't work._**

## Bounded-memory serverless distributed N-dimensional array processing

Cubed is a distributed N-dimensional array library implemented in Python using bounded-memory serverless processing and Zarr for storage.

- Implements the [Python Array API standard](https://data-apis.org/array-api/latest/) (see [coverage status](./api_status.md))
- Guaranteed maximum memory usage for standard array functions
- Follows [Dask Array](https://docs.dask.org/en/stable/array.html)'s chunked array API (`map_blocks`, `rechunk`, `apply_gufunc`, etc)
- [Zarr](https://zarr.readthedocs.io/en/stable/) for persistent and intermediate storage
- Multiple serverless runtimes: Python (in-process), [Lithops](https://lithops-cloud.github.io/), [Modal](https://modal.com/), [Apache Beam](https://beam.apache.org/)
- Integration with [Xarray](https://xarray.dev/) via [cubed-xarray](https://github.com/xarray-contrib/cubed-xarray)

[Documentation](https://tomwhite.github.io/cubed)
