{"categories":[{"label":"Application Frameworks","url":"https://skillfed.io/packages/category/software-development-libraries-application-frameworks/2"}],"enrichment":{"capability":"Provides event-driven communication and task management for Python threads and asyncio, with decorators for signal handling and call batching.","skillfed_tags":["event-driven","threading","abandoned"],"use_cases":["Coordinate work across multiple threads using named events instead of manual queue management.","Run a long-running function in a background thread and listen for progress events it emits.","Batch rapid repeated calls (e.g., file saves) into fewer actual executions using the collect_consecutive_calls_async decorator.","Gracefully handle OS signals (SIGTERM, SIGINT) in a threaded application using the catch_signal decorator.","Stream events from a task as a Python generator, pausing the consumer until the producer emits the next event."],"what_it_does":"zthreading wraps Python's threading and asyncio primitives to provide an event-driven interface for inter-thread communication and task scheduling. It centers on an EventHandler class that lets you register listeners for named events and emit them from any thread, plus a Task class that runs functions in separate threads or async loops and also acts as an EventHandler. The package includes decorators for common patterns: running a function as a background task, batching rapid consecutive calls, and catching OS signals.\n\nThe library is designed for scenarios where you want event-based coordination between threads without manually managing locks or queues. However, it has been abandoned since mid-2022 with no commits or releases since then, so it carries the risk of incompatibility with newer Python versions and asyncio changes.","worth_installing":"No. The package is abandoned (last commit 2022-06-21) with no maintenance signal. While it has low install friction and no known vulnerabilities, the lack of updates means it will likely break or behave unexpectedly on modern Python versions. For new projects, use standard library threading and asyncio primitives directly, or choose an actively maintained event library."},"id":"zthreading","links":{"html":"https://skillfed.io/packages/zthreading","md":"https://skillfed.io/packages/zthreading.md","pypi":"https://pypi.org/project/zthreading/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2022-06-13","license_spdx":null,"license_treatment":"unclear","name":"zthreading","python_support":"supports_current","summary":"A collection of wrapper classes for event broadcast and task management for python (Python Threads or Asyncio)."},"popularity":{"monthly_downloads":695294,"position":5309,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.1.19"}
