{"categories":[{"label":"Distributed Computing","url":"https://skillfed.io/packages/category/system-distributed-computing"}],"enrichment":{"capability":"dvc-task queues and runs background jobs from Python applications using Celery, without requiring a separate messaging server or broker infrastructure.","skillfed_tags":["task-queue","celery-wrapper","background-jobs"],"use_cases":["Run background processes in a desktop application without setting up Redis, RabbitMQ, or other message brokers.","Monitor long-running external commands (shell scripts, data pipelines) with persistent state stored on the filesystem.","Queue and execute tasks in a standalone Python script that needs to spawn worker processes on demand.","Manage background jobs in a DVC workflow or similar data-processing pipeline without external infrastructure.","Build a simple task queue for Windows applications where traditional Celery brokers are difficult to deploy."],"what_it_does":"dvc-task is a Celery wrapper designed for standalone Python applications that need background job execution without deploying a separate message broker or results backend. It uses Kombu's filesystem transport to store tasks and results on disk, allowing you to queue and run background processes directly from Python code without infrastructure overhead.\n\nThe package provides three main components: a ProcessManager for running and monitoring external processes as Celery tasks with persistent state (PID files, JSON metadata, stdout/stderr capture), a TemporaryWorker that consumes queued tasks and exits when idle, and a preconfigured FSApp Celery application that handles filesystem-based message brokering. It is tested on Windows despite Celery's lack of official Windows support, making it suitable for desktop and embedded Python applications.","worth_installing":"Yes, if you need a lightweight task queue for a standalone or desktop Python application and want to avoid setting up a separate message broker. The active maintenance, low install friction, permissive license, and lack of known vulnerabilities make it a solid choice. Not suitable if you need high-volume task throughput or distributed multi-machine job orchestration; for those use cases, a traditional Celery setup with a dedicated broker is more appropriate."},"id":"dvc-task","links":{"html":"https://skillfed.io/packages/dvc-task","md":"https://skillfed.io/packages/dvc-task.md","pypi":"https://pypi.org/project/dvc-task/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2024-10-08","license_spdx":null,"license_treatment":"permissive","name":"dvc-task","python_support":"supports_current","summary":"Extensible task queue used in DVC."},"popularity":{"monthly_downloads":1897687,"position":3446,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.40.2"}
