triad>=1.0.4
adagio>=0.2.6
packaging

[:python_version < "3.15"]
pandas

[:python_version >= "3.15"]
pandas>=3

[all]
fugue-sql-antlr>=0.2.4
sqlglot<28
jinja2
dask[dataframe,distributed]>=2025.12.0
dask-sql
notebook
jupyterlab
ipython>=7.10.0
duckdb>=0.5.0
pyarrow>=6.0.1
pandas>=2.0.2
ibis-framework[duckdb]
polars

[all:python_version < "3.12"]
pyspark>=3.5

[all:python_version < "3.14"]
ray[data]>=2.30.0

[all:python_version >= "3.12"]
pyspark>=4.0

[cpp_sql_parser]
fugue-sql-antlr[cpp]>=0.2.4

[dask]
dask[dataframe,distributed]>=2025.12.0
pyarrow>=7.0.0
pandas>=2.0.2

[duckdb]
fugue-sql-antlr>=0.2.4
sqlglot<28
jinja2
duckdb>=0.5.0
numpy

[ibis]
fugue-sql-antlr>=0.2.4
sqlglot<28
jinja2
ibis-framework

[notebook]
notebook
jupyterlab
ipython>=7.10.0

[polars]
polars

[ray]
duckdb>=0.5.0
pyarrow>=7.0.0
pandas

[ray:python_version < "3.14"]
ray[data]>=2.30.0

[spark]
zstandard>=0.25.0

[spark:python_version < "3.12"]
pyspark>=3.5

[spark:python_version >= "3.12"]
pyspark>=4.0

[sql]
duckdb>=0.5.0
fugue-sql-antlr>=0.2.4
sqlglot<28
jinja2
