Metadata-Version: 2.4
Name: chiltepin
Version: 0.1.6
Summary: Federated NWP Workflow Tools
Author-email: Christopher Harrop <Christopher.W.Harrop@noaa.gov>
Maintainer-email: Christopher Harrop <Christopher.W.Harrop@noaa.gov>
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/NOAA-GSL/chiltepin
Project-URL: Documentation, https://chiltepin.readthedocs.io
Project-URL: Repository, https://github.com/NOAA-GSL/chiltepin
Project-URL: Source Code, https://github.com/NOAA-GSL/chiltepin
Project-URL: Issues, https://github.com/NOAA-GSL/chiltepin/issues
Project-URL: Bug Tracker, https://github.com/NOAA-GSL/chiltepin/issues
Project-URL: Changelog, https://github.com/NOAA-GSL/chiltepin/releases
Keywords: federated,workflow,parsl,globus-compute,hpc,scientific-computing,agentic,agents
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: System :: Distributed Computing
Requires-Python: >=3.10.0
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: academy-py<1.0.0,>=0.3.1
Requires-Dist: globus-compute-sdk<4.7.0,>=4.3.0
Requires-Dist: globus-compute-endpoint<4.7.0,>=4.3.0; platform_system == "Linux"
Requires-Dist: globus-sdk>=3.65.0
Requires-Dist: parsl>=2025.12.1
Requires-Dist: psutil<6.0
Requires-Dist: pyyaml>=6.0
Provides-Extra: test
Requires-Dist: pytest>=9.0.0; extra == "test"
Requires-Dist: pytest-asyncio>=1.0.0; extra == "test"
Requires-Dist: pytest-cov>=7.0.0; extra == "test"
Requires-Dist: ruff==0.15.4; extra == "test"
Provides-Extra: docs
Requires-Dist: sphinx==7.1.2; extra == "docs"
Requires-Dist: sphinx-rtd-theme==1.3.0rc1; extra == "docs"
Provides-Extra: release
Requires-Dist: build~=1.4.0; extra == "release"
Requires-Dist: twine~=6.2.0; extra == "release"
Requires-Dist: toml; python_version < "3.11" and extra == "release"
Dynamic: license-file

[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![PyPI - Version](https://img.shields.io/pypi/v/chiltepin)](https://pypi.org/project/chiltepin/)
[![TestSuite](https://github.com/NOAA-GSL/chiltepin/actions/workflows/test-suite.yaml/badge.svg)](https://github.com/NOAA-GSL/chiltepin/actions/workflows/test-suite.yaml)
[![Documentation](https://github.com/NOAA-GSL/chiltepin/actions/workflows/docs.yaml/badge.svg)](https://github.com/NOAA-GSL/chiltepin/actions/workflows/docs.yaml)
[![DOI](https://zenodo.org/badge/712000160.svg)](https://doi.org/10.5281/zenodo.19195670)

# Chiltepin

## Overview

This repository is a collection of tools and demonstrations used to explore
and test various technologies for implementing exascale scientific workflows.
This collection of resources is not intended for production use, and is for
research purposes only.

Chiltepin provides Python decorators and utilities for building scientific workflows
that can execute on distributed computing resources using [Parsl](https://parsl-project.org/),
[Globus](https://www.globus.org/) services, and [Academy Agents](https://docs.academy-agents.org/).
It supports both traditional task-based workflows and stateful agent-based workflows for
long-running, autonomous computations.

### Platform Support

Chiltepin is **developed and tested on Linux**:
- ✅ **Linux**: Full support for all features
- 🍎 **macOS**: Supported for task submission and data transfer (endpoint management not available)
- ❌ **Windows**: Native execution not supported; Chiltepin's use of Parsl relies on fork-based
  multiprocessing
- 🐳 **Docker**: Full Linux-based test suite and feature support available via container on all platforms

## Documentation

**📚 Full documentation is available at [Read the Docs](https://chiltepin.readthedocs.io/)**

Key documentation sections:
- [Installation Guide](https://chiltepin.readthedocs.io/en/latest/installation.html) - Installing Chiltepin
- [Quick Start](https://chiltepin.readthedocs.io/en/latest/quickstart.html) - Your first Chiltepin workflow
- [Tasks](https://chiltepin.readthedocs.io/en/latest/tasks.html) - Python, Bash, and Join task decorators
- [Agents](https://chiltepin.readthedocs.io/en/latest/agents.html) - Building stateful agent-based workflows
- [Configuration](https://chiltepin.readthedocs.io/en/latest/configuration.html) - Configuring compute resources
- [Endpoints](https://chiltepin.readthedocs.io/en/latest/endpoints.html) - Managing Globus Compute endpoints
- [Data Transfer](https://chiltepin.readthedocs.io/en/latest/data.html) - Using Globus for data movement
- [Testing Guide](https://chiltepin.readthedocs.io/en/latest/testing.html) - Running the test suite

## Quick Start

Install Chiltepin using pip:

```bash
pip install chiltepin
```

For detailed installation instructions including conda, Docker, and platform-specific guidance,
see the [Installation Guide](https://chiltepin.readthedocs.io/en/latest/installation.html).

## Contributing

Contributions are welcome! For development installation and running tests, clone the repository
and install in editable mode:

```bash
git clone https://github.com/NOAA-GSL/chiltepin.git
cd chiltepin
python -m venv .chiltepin
source .chiltepin/bin/activate
pip install -e ".[test]"
```

See the [Testing Guide](https://chiltepin.readthedocs.io/en/latest/testing.html) for more information.

## License

See [LICENSE](LICENSE) for details.

## NOAA Disclaimer
This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project code is provided on an ‘as is’ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.
