Metadata-Version: 2.4
Name: superset-engine-d1
Version: 0.1.1
Summary: Deprecated. Superset engine spec for Cloudflare D1. Superset 6.1.0 and newer ship their own
License-Expression: Apache-2.0
License-File: LICENSE
Author: Chad Rossouw
Author-email: chadrossouw7247@gmail.com
Requires-Python: >=3.11,<3.12
Classifier: Development Status :: 7 - Inactive
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Database
Requires-Dist: apache-superset (>=3.0)
Requires-Dist: marshmallow (==3.26.1)
Requires-Dist: sqlalchemy-d1 (>=0.1.0)
Project-URL: Repository, https://github.com/sqlalchemy-cf-d1/superset-engine-d1
Description-Content-Type: text/markdown

<div align="center">

# superset-engine-d1

A Superset **EngineSpec** for **Cloudflare D1**, written for Superset versions that had no D1 engine spec of their own.

[![PyPI](https://img.shields.io/pypi/v/superset-engine-d1)](https://pypi.org/project/superset-engine-d1/) [![License](https://img.shields.io/badge/license-Apache%202.0-blue)](https://github.com/sqlalchemy-cf-d1/superset-engine-d1/blob/main/LICENSE) [![Superset docs](https://img.shields.io/badge/Superset%20docs-Cloudflare%20D1-20A7C9)](https://superset.apache.org/user-docs/databases/supported/cloudflare-d1/)

[PyPI](https://pypi.org/project/superset-engine-d1/) · [Superset D1 docs](https://superset.apache.org/user-docs/databases/supported/cloudflare-d1/) · [sqlalchemy-d1](https://github.com/sqlalchemy-cf-d1/sqlalchemy-d1) · [Legacy setup guide](https://github.com/sqlalchemy-cf-d1/.github/blob/main/SETUP.md)

</div>

<br>

> **This package is deprecated.** Since version **6.1.0**, **Apache Superset** ships its own **Cloudflare D1** engine spec at [superset/db_engine_specs/d1.py](https://github.com/apache/superset/blob/master/superset/db_engine_specs/d1.py). Install [sqlalchemy-d1](https://pypi.org/project/sqlalchemy-d1/) instead. The final release is **0.1.1**, with the same code as 0.1.0. There will be no further changes.

## What to use instead

Superset 6.1.0 and newer only need the SQLAlchemy dialect, `sqlalchemy-d1`. Pick the version that matches the SQLAlchemy version of your Superset:

| Your Superset uses | Install |
|--------------------|---------|
| **SQLAlchemy 2.0** | `pip install "sqlalchemy-d1>=0.2.0"` |
| **SQLAlchemy 1.4** (Superset 6.1.0, for example) | `pip install "sqlalchemy-d1==0.1.0"` |

The connection string does not change:

```
d1://<CF_ACCOUNT_ID>:<CF_API_TOKEN>@<D1_DB_ID>
```

The [sqlalchemy-d1 README](https://github.com/sqlalchemy-cf-d1/sqlalchemy-d1#readme) explains the change.

## Superset 6.1.0 or newer: uninstall it

Superset loads its built-in engine specs first and uses the first one that matches `d1://`. The built-in spec always wins, so this package is **never used** there.

```bash
pip uninstall superset-engine-d1
```

This also frees your environment from the exact `marshmallow` version this package pins.

## Existing installs

* Versions **0.1.0** and **0.1.1** stay on PyPI. They have the same code.
* Superset **6.0.0 and older** have no built-in D1 engine spec. This package is the only one there, so keep it, together with `sqlalchemy-d1` 0.1.0 and `dbapi-d1` 0.1.0.
* All engine spec work now happens in Superset itself.

## License

This package is licensed under the **Apache License 2.0**. See [LICENSE](https://github.com/sqlalchemy-cf-d1/superset-engine-d1/blob/main/LICENSE).

