Metadata-Version: 2.4
Name: weaverbird
Version: 0.55.1
Summary: A visual data pipeline builder with various backends
Author-email: Toucan Toco <dev@toucantoco.com>
License-Expression: BSD-3-Clause
Keywords: builder,data,dataviz,mongodb,pandas,pipeline,query,sql
Requires-Python: <3.14,>=3.11
Description-Content-Type: text/markdown
Requires-Dist: pydantic<3.0.0,>=2.4.2
Requires-Dist: python-dateutil<3.0.0,>=2.8.2
Provides-Extra: pandas
Requires-Dist: numpy<2.0.0,>=1.2.5; python_version < "3.12" and extra == "pandas"
Requires-Dist: numpy<3,>=2; python_version >= "3.12" and extra == "pandas"
Requires-Dist: pandas<2.0.0,>=1.2.5; python_version < "3.12" and extra == "pandas"
Requires-Dist: pandas<3,>=2; python_version >= "3.12" and extra == "pandas"
Requires-Dist: geopandas<2; extra == "pandas"
Provides-Extra: playground
Requires-Dist: quart<0.21,>=0.17; extra == "playground"
Requires-Dist: Quart-CORS<0.9,>=0.5; extra == "playground"
Requires-Dist: hypercorn<0.18,>=0.13; extra == "playground"
Requires-Dist: pymongo>=4.2.0; extra == "playground"
Requires-Dist: psycopg<4.0.0,>=3.0.15; extra == "playground"
Requires-Dist: toucan-connectors[Redshift,awsathena,google_big_query,mongo,mysql,snowflake]<8.1.0,>=8.0.2; extra == "playground"
Provides-Extra: pypika
Requires-Dist: pypika>=0.48.9; extra == "pypika"
Provides-Extra: all
Requires-Dist: pandas<2.0.0,>=1.2.5; python_version < "3.12" and extra == "all"
Requires-Dist: pandas<3,>=2; python_version >= "3.12" and extra == "all"
Requires-Dist: geopandas<2; extra == "all"
Requires-Dist: pypika>=0.48.9; extra == "all"

# weaverbird python package

See [docs about purpose and usage](../docs/_docs/tech/python-package.md).

## Development

We use [uv](https://docs.astral.sh/uv/) for managing dependencies.

Main commands are available through `make`:

    make install # Install dependencies & set up pre-commit

    make format # Fix formatting issues using black and ruff
    make lint # Execute various checks

    make build # Build the project prior to publication
    make upload # Publish on pypi

    make test # Execute the test suite and produce reports
    /!\ To run Snowflake's e2e tests, the password needs to be exported to env variables
    as such: export SNOWFLAKE_PASSWORD='XXXXXXXXXXX'. This password is available in lastpass (user: toucan_test)

### Playground server

See `playground.py`. It provides a very simple server to test the module.
