Skip to main content

Pipeline library with API integration for task orchestration and execution tracking

Project description

🚀 WPipe v1.6.1

El motor de orquestación de pipelines más rápido, resiliente y puro para Python.

WPipe es una librería industrial diseñada para automatizar flujos de trabajo complejos, garantizando que tus datos viajen seguros, tus procesos sean ultra-rápidos y tus fallos sean fáciles de diagnosticar.

PyPI version Documentation Status License: MIT


💎 ¿Por qué WPipe?

Diferénciate de los scripts lineales. WPipe te ofrece superpoderes:

  • Modo Relámpago: Optimización extrema de SQLite (WAL Mode) y monitorización de hardware sin bloqueos. ¡Velocidad de ráfaga real!
  • 🧵 Paralelismo Nativo: Ejecuta tareas en Hilos o Procesos con un solo comando. Bypass del GIL para tareas pesadas de CPU.
  • 🛡️ Checkpoints Inteligentes: Define hitos basados en expresiones lógicas. Si el sistema cae, WPipe reanuda exactamente donde se quedó.
  • 🔍 Captura de Errores Forense: Olvídate de los errores genéricos. Recibe notificaciones detalladas con el archivo y la línea exacta del fallo.
  • 🧬 Contratos de Datos (TypeValidator): Valida tu "Bodega" de datos automáticamente con esquemas estrictos pero extensibles.
  • 🔄 Paridad Síncrona/Asíncrona: Elige entre Pipeline o PipelineAsync con el 100% de las mismas funcionalidades.

🛠️ Instalación Instantánea

pip install wpipe

🚀 Ejemplo de Poder: El Viaje Resiliente

from wpipe import Pipeline, For, Condition, Parallel, step, PipelineContext

# 1. Definimos el contrato de nuestra Bodega
class MiContexto(PipelineContext):
    motor: str
    temperatura: float

# 2. Creamos estados inteligentes
@step(name="Verificar", retry_count=3)
def verificar_motor(ctx: MiContexto):
    return {"temperatura": 85.5}

# 3. Orquestación de Alto Nivel
viaje = Pipeline(pipeline_name="Viaje_LTS", verbose=True)

# Añadimos hitos inteligentes
viaje.add_checkpoint("arranque", expression="temperatura > 0")

viaje.set_steps([
    verificar_motor,
    Parallel(
        steps=[revisar_luces, hechar_gasolina],
        max_workers=2
    ),
    For(iterations=10, steps=[conducir_paso])
])

results = viaje.run({"motor": "V8"})

📊 Observabilidad y Análisis

WPipe no solo ejecuta, entiende tu proceso.

  • AnalysisManager: Obtén estadísticas de éxito, tiempos medios y detecta cuellos de botella automáticamente.
  • ResourceMonitor: Controla el pico de RAM y el consumo de CPU de cada ejecución.
  • PipelineExporter: Exporta tus reportes de ejecución a JSON o CSV listos para auditoría.

🌐 Dashboard Web

Visualiza tus pipelines en tiempo real con el dashboard integrado:

from wpipe import start_dashboard

start_dashboard(db_path="mi_tracking.db", port=8000)

🛡️ Soporte y Calidad

  • LTS Policy: WPipe v1.6+ cuenta con soporte a largo plazo.
  • 95% Test Coverage: Probado rigurosamente en entornos síncronos y asíncronos.
  • Arquitectura Pura: Unificación total bajo wsqlite, eliminando SQL crudo del núcleo.

Diseñado con ❤️ por William Rodriguez (wisrovi) para ingenieros que no aceptan menos que la perfección.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wpipe-1.6.1.tar.gz (136.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wpipe-1.6.1-py3-none-any.whl (106.3 kB view details)

Uploaded Python 3

File details

Details for the file wpipe-1.6.1.tar.gz.

File metadata

  • Download URL: wpipe-1.6.1.tar.gz
  • Upload date:
  • Size: 136.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for wpipe-1.6.1.tar.gz
Algorithm Hash digest
SHA256 7fd4656ef8f351a439b9480e74d421ec1a4ff46f5c34bfb1295439d4ef695c32
MD5 51861a747a475c0d04b6781b7557becf
BLAKE2b-256 abeea0861d78506bbeed700b6d4af147d6f1dba8c1e67e71b9ba1383aff8ac9e

See more details on using hashes here.

File details

Details for the file wpipe-1.6.1-py3-none-any.whl.

File metadata

  • Download URL: wpipe-1.6.1-py3-none-any.whl
  • Upload date:
  • Size: 106.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for wpipe-1.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f742039eebc9d006f1b95951bccbbfe22d4c88b18f29ead5be90f9fda9c1bb62
MD5 98b8674211b92e1fbc9c581faca6562c
BLAKE2b-256 3a265cf011bf555b835ca4871d63946f07d4fbf461b446270fdefc043288e4fb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page