<commit_before>[tool.poetry]
name = "ibis-framework"
version = "2.1.1"
packages = [{ include = "ibis" }]
homepage = "https://ibis-project.org"
repository = "https://github.com/ibis-project/ibis"
documentation = "https://ibis-project.org"
description = "Productivity-centric Python Big Data Framework"
authors = ["<NAME>"]
maintainers = ["Ibis Contributors"]
license = "Apache-2.0"
readme = "README.md"
classifiers = [
  "Development Status :: 5 - Production/Stable",
  "Operating System :: OS Independent",
  "Intended Audience :: Science/Research",
  "Programming Language :: Python",
  "Programming Language :: Python :: 3",
  "Topic :: Scientific/Engineering",
]

[tool.poetry.dependencies]
python = ">=3.8,<3.11"
atpublic = ">=2.3,<3"
cached_property = ">=1,<2"
importlib-metadata = { version = ">=4,<5", python = "<3.10" }
multipledispatch = ">=0.6,<0.7"
numpy = ">=1,<2"
pandas = ">=1.2.5,<2"
parsy = ">=1.3.0,<2"
pydantic = ">=1.9.0,<2"
regex = ">=2021.7.6"
toolz = ">=0.11,<0.12"
clickhouse-driver = { version = ">=0.1,<0.3", optional = true }
dask = { version = ">=2021.10.0", optional = true, extras = [
  "array",
  "dataframe"
] }
datafusion = { version = ">=0.4,<0.5", optional = true }
fsspec = { version = ">=2022.1.0", optional = true }
GeoAlchemy2 = { version = ">=0.6.3,<0.11", optional = true }
geopandas = { version = ">=0.6,<0.11", optional = true }
graphviz = { version = ">=0.16,<0.20", optional = true }
impyla = { version = ">=0.17,<0.19", optional = true, extras = ["kerberos"] }
psycopg2 = { version = ">=2.8.4,<3", optional = true }
pyarrow = { version = ">=1,<8", optional = true }
pymysql = { version = ">=1,<2", optional = true }
pyspark = { version = ">=3,<4", optional = true }
requests = { version = ">=2,<3", optional = true }
Shapely = { version = ">=1.6,<1.8.1", optional = true }
sqlalchemy = { version = ">=1.3,<1.5", optional = true }

[tool.poetry.dev-dependencies]
black = ">=22.1.0,<23"
click = ">=8.0.1,<9"
commitizen = ">=2.20.3,<3"
flake8 = ">=4.0.0,<5"
ipykernel = ">=6,<7"
ipython = ">=7.27.0,<9"
isort = ">=5.9.3,<6"
mkdocs = ">=1.2.3,<2"
mkdocs-exclude = ">=1.0.2,<2"
mkdocs-jupyter = ">=0.20.0,<1"
mkdocs-literate-nav = ">=0.4.1,<1"
mkdocs-macros-plugin = ">=0.6.3,<1"
mkdocs-material = ">=8.2.1,<9"
mkdocstrings = ">=0.17.0,<0.18.0"
mypy = ">=0.931,<1"
pyarrow = ">=1,<8"
pydocstyle = ">=6.1.1,<7"
pymdown-extensions = ">=9.1,<10"
pytest = ">=7.0.0,<8"
pytest-benchmark = ">=3.4.1,<4"
pytest-cov = ">=3.0.0,<4"
pytest-mock = ">=3.6.1,<4"
pytest-randomly = ">=3.10.1,<4"
pytest-xdist = ">=2.3.0,<3"
pytkdocs = { version = ">=0.15.0,<0.17.0", extras = ["numpy-style"] }
pyupgrade = ">=2.26.0,<3"
requests = ">=2,<3"
setuptools = ">=57,<61"
sqlalchemy = ">=1.3,<1.5"
types-requests = ">=2.27.8,<3"

[tool.poetry.extras]
all = [
  "clickhouse-driver",
  "dask",
  "datafusion",
  "fsspec",
  "GeoAlchemy2",
  "geopandas",
  "graphviz",
  "impyla",
  "psycopg2",
  "pyarrow",
  "pymysql",
  "pyspark",
  "requests",
  "Shapely",
  "sqlalchemy",
]
clickhouse = ["clickhouse-driver"]
dask = ["dask", "pyarrow"]
datafusion = ["datafusion"]
geospatial = ["GeoAlchemy2", "geopandas", "Shapely"]
impala = ["fsspec", "impyla", "requests"]
mysql = ["sqlalchemy", "pymysql"]
pandas = []
postgres = ["psycopg2", "sqlalchemy"]
pyspark = ["pyarrow", "pyspark"]
sqlite = ["sqlalchemy"]
visualization = ["graphviz"]

[tool.poetry.plugins."ibis.backends"]
clickhouse = "ibis.backends.clickhouse"
dask = "ibis.backends.dask"
datafusion = "ibis.backends.datafusion"
impala = "ibis.backends.impala"
mysql = "ibis.backends.mysql"
pandas = "ibis.backends.pandas"
postgres = "ibis.backends.postgres"
pyspark = "ibis.backends.pyspark"
spark = "ibis.backends.pyspark"
sqlite = "ibis.backends.sqlite"

[tool.pytest.ini_options]
xfail_strict = true
addopts = [
  "--ignore=site-packages",
  "--ignore=dist-packages",
  "--strict-markers",
  "--benchmark-skip",
]
empty_parameter_set_mark = "fail_at_collect"
norecursedirs = ["site-packages", "dist-packages"]
markers = [
  "backend: tests specific to a backend",
  "core: tests that do not required a backend",
  "geospatial: tests for geospatial functionality",
  "hdfs: Hadoop file system tests",
  "min_spark_version: backends tests that require a specific version of pyspark to pass",
  "only_on_backends: run tests only on the provided backends",
  "skip_backends: skip tests on the provided backends",
  "skip_missing_feature: skip tests with a known missing feature",
  "xfail_backends: xfail tests on the provided backends",
  "notimpl: functionality that isn't implemented in ibis",
  "notyet: for functionality that isn't implemented in a backend",
  "never: tests for functionality that a backend is likely to never implement",
  "ddl_only: tests for ddl-implementing backends",
  "sqlalchemy_only: tests for SQLAlchemy based backends",
  "clickhouse: ClickHouse tests",
  "dask: Dask tests",
  "datafusion: Apache Datafusion tests",
  "impala: Apache Impala tests",
  "mysql: MySQL tests",
  "pandas: Pandas tests",
  "postgres: PostgreSQL tests",
  "pyspark: PySpark tests",
  "sqlite: SQLite tests",
]

[tool.black]
line_length = 79
skip_string_normalization = true
exclude = ".+\\.ipynb|\\.direnv|result(-\\d+)?"

[tool.isort]
ensure_newline_before_comments = true
line_length = 79
multi_line_output = 3
include_trailing_comma = true
profile = "black"
skip_glob = ["result*", ".direnv/*"]

[tool.pydocstyle]
inherit = false
convention = "numpy"
match_dir = "ibis"
add_ignore = ["D100", "D101", "D102", "D103", "D104", "D105"]

[tool.conda-lock]
channels = ["conda-forge"]

[build-system]
requires = ["poetry-core>=1", "setuptools"]
build-backend = "poetry.core.masonry.api"
<commit_msg>build: include the full dask package in conda-lock files<commit_after>[tool.poetry]
name = "ibis-framework"
version = "2.1.1"
packages = [{ include = "ibis" }]
homepage = "https://ibis-project.org"
repository = "https://github.com/ibis-project/ibis"
documentation = "https://ibis-project.org"
description = "Productivity-centric Python Big Data Framework"
authors = ["<NAME>"]
maintainers = ["Ibis Contributors"]
license = "Apache-2.0"
readme = "README.md"
classifiers = [
  "Development Status :: 5 - Production/Stable",
  "Operating System :: OS Independent",
  "Intended Audience :: Science/Research",
  "Programming Language :: Python",
  "Programming Language :: Python :: 3",
  "Topic :: Scientific/Engineering",
]

[tool.poetry.dependencies]
python = ">=3.8,<3.11"
atpublic = ">=2.3,<3"
cached_property = ">=1,<2"
importlib-metadata = { version = ">=4,<5", python = "<3.10" }
multipledispatch = ">=0.6,<0.7"
numpy = ">=1,<2"
pandas = ">=1.2.5,<2"
parsy = ">=1.3.0,<2"
pydantic = ">=1.9.0,<2"
regex = ">=2021.7.6"
toolz = ">=0.11,<0.12"
clickhouse-driver = { version = ">=0.1,<0.3", optional = true }
dask = { version = ">=2021.10.0", optional = true, extras = [
  "array",
  "dataframe"
] }
datafusion = { version = ">=0.4,<0.5", optional = true }
fsspec = { version = ">=2022.1.0", optional = true }
GeoAlchemy2 = { version = ">=0.6.3,<0.11", optional = true }
geopandas = { version = ">=0.6,<0.11", optional = true }
graphviz = { version = ">=0.16,<0.20", optional = true }
impyla = { version = ">=0.17,<0.19", optional = true, extras = ["kerberos"] }
psycopg2 = { version = ">=2.8.4,<3", optional = true }
pyarrow = { version = ">=1,<8", optional = true }
pymysql = { version = ">=1,<2", optional = true }
pyspark = { version = ">=3,<4", optional = true }
requests = { version = ">=2,<3", optional = true }
Shapely = { version = ">=1.6,<1.8.1", optional = true }
sqlalchemy = { version = ">=1.3,<1.5", optional = true }

[tool.poetry.dev-dependencies]
black = ">=22.1.0,<23"
click = ">=8.0.1,<9"
commitizen = ">=2.20.3,<3"
flake8 = ">=4.0.0,<5"
ipykernel = ">=6,<7"
ipython = ">=7.27.0,<9"
isort = ">=5.9.3,<6"
mkdocs = ">=1.2.3,<2"
mkdocs-exclude = ">=1.0.2,<2"
mkdocs-jupyter = ">=0.20.0,<1"
mkdocs-literate-nav = ">=0.4.1,<1"
mkdocs-macros-plugin = ">=0.6.3,<1"
mkdocs-material = ">=8.2.1,<9"
mkdocstrings = ">=0.17.0,<0.18.0"
mypy = ">=0.931,<1"
pyarrow = ">=1,<8"
pydocstyle = ">=6.1.1,<7"
pymdown-extensions = ">=9.1,<10"
pytest = ">=7.0.0,<8"
pytest-benchmark = ">=3.4.1,<4"
pytest-cov = ">=3.0.0,<4"
pytest-mock = ">=3.6.1,<4"
pytest-randomly = ">=3.10.1,<4"
pytest-xdist = ">=2.3.0,<3"
pytkdocs = { version = ">=0.15.0,<0.17.0", extras = ["numpy-style"] }
pyupgrade = ">=2.26.0,<3"
requests = ">=2,<3"
setuptools = ">=57,<61"
sqlalchemy = ">=1.3,<1.5"
types-requests = ">=2.27.8,<3"

[tool.poetry.extras]
all = [
  "clickhouse-driver",
  "dask",
  "datafusion",
  "fsspec",
  "GeoAlchemy2",
  "geopandas",
  "graphviz",
  "impyla",
  "psycopg2",
  "pyarrow",
  "pymysql",
  "pyspark",
  "requests",
  "Shapely",
  "sqlalchemy",
]
clickhouse = ["clickhouse-driver"]
dask = ["dask", "pyarrow"]
datafusion = ["datafusion"]
geospatial = ["GeoAlchemy2", "geopandas", "Shapely"]
impala = ["fsspec", "impyla", "requests"]
mysql = ["sqlalchemy", "pymysql"]
pandas = []
postgres = ["psycopg2", "sqlalchemy"]
pyspark = ["pyarrow", "pyspark"]
sqlite = ["sqlalchemy"]
visualization = ["graphviz"]

[tool.poetry.plugins."ibis.backends"]
clickhouse = "ibis.backends.clickhouse"
dask = "ibis.backends.dask"
datafusion = "ibis.backends.datafusion"
impala = "ibis.backends.impala"
mysql = "ibis.backends.mysql"
pandas = "ibis.backends.pandas"
postgres = "ibis.backends.postgres"
pyspark = "ibis.backends.pyspark"
spark = "ibis.backends.pyspark"
sqlite = "ibis.backends.sqlite"

[tool.pytest.ini_options]
xfail_strict = true
addopts = [
  "--ignore=site-packages",
  "--ignore=dist-packages",
  "--strict-markers",
  "--benchmark-skip",
]
empty_parameter_set_mark = "fail_at_collect"
norecursedirs = ["site-packages", "dist-packages"]
markers = [
  "backend: tests specific to a backend",
  "core: tests that do not required a backend",
  "geospatial: tests for geospatial functionality",
  "hdfs: Hadoop file system tests",
  "min_spark_version: backends tests that require a specific version of pyspark to pass",
  "only_on_backends: run tests only on the provided backends",
  "skip_backends: skip tests on the provided backends",
  "skip_missing_feature: skip tests with a known missing feature",
  "xfail_backends: xfail tests on the provided backends",
  "notimpl: functionality that isn't implemented in ibis",
  "notyet: for functionality that isn't implemented in a backend",
  "never: tests for functionality that a backend is likely to never implement",
  "ddl_only: tests for ddl-implementing backends",
  "sqlalchemy_only: tests for SQLAlchemy based backends",
  "clickhouse: ClickHouse tests",
  "dask: Dask tests",
  "datafusion: Apache Datafusion tests",
  "impala: Apache Impala tests",
  "mysql: MySQL tests",
  "pandas: Pandas tests",
  "postgres: PostgreSQL tests",
  "pyspark: PySpark tests",
  "sqlite: SQLite tests",
]

[tool.black]
line_length = 79
skip_string_normalization = true
exclude = ".+\\.ipynb|\\.direnv|result(-\\d+)?"

[tool.isort]
ensure_newline_before_comments = true
line_length = 79
multi_line_output = 3
include_trailing_comma = true
profile = "black"
skip_glob = ["result*", ".direnv/*"]

[tool.pydocstyle]
inherit = false
convention = "numpy"
match_dir = "ibis"
add_ignore = ["D100", "D101", "D102", "D103", "D104", "D105"]

[tool.conda-lock]
channels = ["conda-forge"]
# we need this because conda-lock doesn't map dependencies' extras to
# conda-forge packages and we use the array and dataframe extras from dask
dependencies = { dask = "*" }

[build-system]
requires = ["poetry-core>=1", "setuptools"]
build-backend = "poetry.core.masonry.api"

{'fraction_non_alphanumeric': 0.20330335524040125, 'fraction_numerical': 0.048253199584918714, 'mean_word_length': 4.644216691068814, 'pattern_counts': {'":': 0, '<': 113, '<?xml version=': 0, '>': 119, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6149793', 'n_tokens_mistral': 4903, 'n_tokens_neox': 4697, 'n_words': 990}