Metadata-Version: 2.1
Name: py-dagger-contrib
Version: 0.3.0
Summary: Extensions for the Dagger library (py-dagger in PyPI).
Home-page: https://github.com/larribas/dagger-contrib
License: Apache-2.0
Keywords: dagger,py-dagger,data-engineering,data-pipelines,data-science
Author: larribas
Author-email: lorenzo.s.arribas@gmail.com
Requires-Python: >=3.8,<3.11
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Build Tools
Provides-Extra: all
Provides-Extra: dask
Provides-Extra: pandas
Provides-Extra: yaml
Requires-Dist: PyYAML (>=5.4,<6.0); extra == "yaml" or extra == "all"
Requires-Dist: dask[dataframe] (>=2021.9,<2022.0); extra == "dask" or extra == "all"
Requires-Dist: pandas (>=1.3,<2.0); extra == "pandas" or extra == "dask" or extra == "all"
Requires-Dist: py-dagger (>=0.4,<0.5)
Project-URL: Repository, https://github.com/larribas/dagger-contrib
Description-Content-Type: text/markdown

# Dagger Contrib

This repository contains extensions and experiments using the [`py-dagger` library](https://github.com/larribas/dagger)


![Python Versions Supported](https://img.shields.io/badge/python-3.8+-blue.svg)
[![Latest PyPI version](https://badge.fury.io/py/py-dagger-contrib.svg)](https://badge.fury.io/py/py-dagger-contrib)
[![Test Coverage (Codecov)](https://codecov.io/gh/larribas/dagger-contrib/branch/main/graph/badge.svg?token=fKU68xYUm8)](https://codecov.io/gh/larribas/dagger-contrib)
![Continuous Integration](https://github.com/larribas/dagger-contrib/actions/workflows/continuous-integration.yaml/badge.svg)


---

## Extensions

- `dagger_contrib.serializer`
    * `AsYAML` - Serializes primitive data types using [YAML](https://yaml.org/spec/).
    * `path` - Serializes local files or directories given their path name.
        - `AsTar` - As tarfiles with optional compression.
    * `pandas.dataframe` - Serializes [Pandas DataFrames](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html).
        - `AsCSV` - As CSV files.
        - `AsParquet` - As Parquet files.
    * `dask.dataframe` - Serializes [Dask DataFrames](https://docs.dask.org/en/latest/dataframe.html).
        - `AsCSV` - As a directory containing multiple partitioned CSV files.
        - `AsParquet` - As a directory containing multiple partitioned Parquet files.


## Installation

_Dagger Contrib_ is published to the Python Package Index (PyPI) under the name `py-dagger-contrib`. To install it, you can simply run:

```
pip install py-dagger-contrib
```

### Extras

Many of the packages require extra dependencies. You can install those on your own, or via

```
pip install py-dagger-contrib[pandas]
```

Where `pandas` could also be `dask`, `yaml` or `all`.

