Metadata-Version: 2.4
Name: flytekit
Version: 1.16.4
Summary: Flyte SDK for Python
Author-email: Flyte Contributors <admin@flyte.org>
License: Apache-2.0
Project-URL: Homepage, https://github.com/flyteorg/flytekit
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: <3.13,>=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: adlfs>=2023.3.0
Requires-Dist: click>=6.6
Requires-Dist: cloudpickle>=2.0.0
Requires-Dist: croniter>=0.3.20
Requires-Dist: dataclasses-json<0.5.12,>=0.5.2
Requires-Dist: diskcache>=5.2.1
Requires-Dist: docker>=4.0.0
Requires-Dist: docstring-parser>=0.9.0
Requires-Dist: flyteidl<2.0.0a0,>=1.15.4b0
Requires-Dist: fsspec>=2023.3.0
Requires-Dist: gcsfs!=2024.2.0,!=2025.5.0,!=2025.5.0post1,>=2023.3.0
Requires-Dist: googleapis-common-protos>=1.57
Requires-Dist: grpcio
Requires-Dist: grpcio-status
Requires-Dist: importlib-metadata
Requires-Dist: joblib
Requires-Dist: jsonlines
Requires-Dist: jsonpickle
Requires-Dist: keyring>=18.0.1
Requires-Dist: markdown-it-py
Requires-Dist: marshmallow-enum
Requires-Dist: marshmallow-jsonschema>=0.12.0
Requires-Dist: mashumaro>=3.15
Requires-Dist: msgpack>=1.1.0
Requires-Dist: protobuf!=4.25.0
Requires-Dist: pygments
Requires-Dist: python-json-logger>=2.0.0
Requires-Dist: pytimeparse>=1.1.8
Requires-Dist: pyyaml!=5.4.0,!=5.4.1,!=6.0.0
Requires-Dist: requests>=2.18.4
Requires-Dist: rich
Requires-Dist: rich_click
Requires-Dist: s3fs!=2024.3.1,>=2023.3.0
Requires-Dist: statsd>=3.0.0
Requires-Dist: typing_extensions
Requires-Dist: urllib3>=1.22
Provides-Extra: agent
Requires-Dist: grpcio-health-checking<=1.68.0; extra == "agent"
Requires-Dist: httpx; extra == "agent"
Requires-Dist: prometheus-client; extra == "agent"
Provides-Extra: connector
Requires-Dist: grpcio-health-checking<=1.68.0; extra == "connector"
Requires-Dist: httpx; extra == "connector"
Requires-Dist: prometheus-client; extra == "connector"
Dynamic: license-file

<p align="center">
    <img src="https://raw.githubusercontent.com/flyteorg/static-resources/main/common/flyte_circle_gradient_1_4x4.png" alt="Flyte Logo" width="100">
</p>
<h1 align="center">
    Flytekit Python
</h1>
<p align="center">
    Flytekit Python is the Python SDK built on top of Flyte
</p>
<h3 align="center">
    <a href="plugins/README.md">Plugins</a>
    <span> · </span>
    <a href="https://docs.flyte.org/en/latest/api/flytekit/contributing.html">Contribution Guide</a>
</h3>

[![PyPI version fury.io](https://badge.fury.io/py/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI download day](https://img.shields.io/pypi/dd/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI download month](https://img.shields.io/pypi/dm/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI total download](https://static.pepy.tech/badge/flytekit)](https://static.pepy.tech/badge/flytekit)
[![PyPI format](https://img.shields.io/pypi/format/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI implementation](https://img.shields.io/pypi/implementation/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![Codecov](https://img.shields.io/codecov/c/github/flyteorg/flytekit?style=plastic)](https://app.codecov.io/gh/flyteorg/flytekit)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![Docs](https://readthedocs.org/projects/flytekit/badge/?version=latest&style=plastic)](https://flytekit.rtfd.io)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Slack](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://slack.flyte.org)

Flytekit Python is the Python Library for easily authoring, testing, deploying, and interacting with Flyte tasks, workflows, and launch plans.

If you haven't explored Flyte yet, please refer to:
 - [Flyte homepage](https://flyte.org)
 - [Flyte core repository](https://github.com/flyteorg/flyte)

## 🚀 Quick Start

Flytekit is the core extensible library to author Flyte workflows and tasks and interact with Flyte backend services.

### Installation

```bash
pip install flytekit
```

### A Simple Example

```python
from flytekit import task, workflow

@task(cache=True, cache_version="1", retries=3)
def sum(x: int, y: int) -> int:
    return x + y

@task(cache=True, cache_version="1", retries=3)
def square(z: int) -> int:
    return z*z

@workflow
def my_workflow(x: int, y: int) -> int:
    return sum(x=square(z=x), y=square(z=y))
```

## 📦 Resources
- [Learn Flytekit by example](https://docs.flyte.org/en/latest/user_guide/quickstart_guide.html)
- [Flytekit API documentation](https://docs.flyte.org/en/latest/api/flytekit/docs_index.html)


## 📖 How to Contribute to Flytekit
You can find the detailed contribution guide [here](https://docs.flyte.org/en/latest/api/flytekit/contributing.html). Plugins' contribution guide is included as well.

## Code Structure
Please see the [contributor's guide](https://docs.flyte.org/en/latest/api/flytekit/contributing.html) for a quick summary of how this code is structured.

## 🐞 File an Issue
Refer to the [issues](https://github.com/flyteorg/flyte/issues) section in the contribution guide if you'd like to file an issue.

## 🔌 Flytekit Plugins
Refer to [plugins/README.md](plugins/README.md) for a list of available plugins.
There may be plugins outside of this list, but the core maintainers maintain this list.
