Metadata-Version: 2.1
Name: weaverbird
Version: 0.29.1
Summary: A visual data pipeline builder with various backends
License: BSD-3-Clause
Keywords: mongodb,pandas,sql,data,dataviz,pipeline,query,builder
Author: Toucan Toco
Author-email: dev@toucantoco.com
Requires-Python: >=3.10,<3.12
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Provides-Extra: all
Provides-Extra: pandas
Provides-Extra: playground
Provides-Extra: pypika
Requires-Dist: PyPika (>=0.48.9,<0.49.0) ; extra == "pypika" or extra == "all"
Requires-Dist: Quart-CORS (>=0.5,<0.7) ; extra == "playground"
Requires-Dist: awswrangler (>=2.20.0,<3.0.0) ; (python_version < "3.11") and (extra == "playground")
Requires-Dist: geopandas (>=0.12.2,<0.13.0) ; extra == "pandas" or extra == "all"
Requires-Dist: hypercorn (>=0.13,<0.15) ; extra == "playground"
Requires-Dist: pandas (>=1.2.5,<2.0.0) ; extra == "pandas" or extra == "all" or extra == "playground"
Requires-Dist: psycopg (>=3.0.15,<4.0.0) ; extra == "playground"
Requires-Dist: pydantic (>=1.9.1,<2.0.0)
Requires-Dist: pymongo[srv,tls] (>=4.2.0) ; extra == "playground"
Requires-Dist: pytest-xdist (>=2.5,<4.0)
Requires-Dist: quart (>=0.17,<0.19) ; extra == "playground"
Requires-Dist: toucan-connectors[google-big-query,mongo,redshift,snowflake] (>=4.4.0,<5.0.0) ; extra == "playground"
Description-Content-Type: text/markdown

# weaverbird python package

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

## Development

We use [poetry](https://python-poetry.org/) for managing dependencies.

Main commands are available through `make`:

    make install # Install dependecies

    make format # Fix formatting issues using black and isort
    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.

