{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/7"}],"enrichment":{"capability":"Pebble provides decorators and pool abstractions to run functions in separate threads or processes, with timeout and error handling support.","skillfed_tags":["concurrency","multiprocessing","decorator-based"],"use_cases":["Offload blocking I/O operations (file reads, network calls) to threads while keeping the main thread responsive.","Run CPU-bound computations in separate processes to avoid Python's GIL and parallelize work.","Enforce time limits on long-running tasks and handle timeouts gracefully without killing the process.","Build worker pools for batch processing with automatic task distribution and error collection.","Integrate concurrent execution into asyncio applications using the @asynchronous decorators."],"what_it_does":"Pebble is a decorator-based library that simplifies running functions concurrently in threads or separate processes. It wraps Python's threading and multiprocessing modules with a cleaner API, allowing you to mark functions with @concurrent.thread or @concurrent.process and get back futures that you can poll or await. The library handles timeouts, error propagation (including remote tracebacks from worker processes), and provides pool abstractions for managing multiple workers with configurable restart and task limits.\n\nThe package is useful when you need to offload blocking I/O or CPU-bound work without writing boilerplate around futures and exception handling. It supports both synchronous and asyncio-based code paths, so you can use the same decorated functions in traditional or async contexts. With no external dependencies and support for current Python versions, it's straightforward to add to existing projects.","worth_installing":"Yes. Pebble is actively maintained, has no external dependencies, carries a copyleft license suitable for open-source work, and provides genuine convenience for concurrent programming. Install it if you need decorator-based thread or process management with timeout support; skip it if you need only basic threading or if your project cannot accept LGPL licensing."},"id":"pebble","links":{"html":"https://skillfed.io/packages/pebble","md":"https://skillfed.io/packages/pebble.md","pypi":"https://pypi.org/project/pebble/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-19","license_spdx":null,"license_treatment":"copyleft","name":"Pebble","python_support":"supports_current","summary":"Threading and multiprocessing eye-candy."},"popularity":{"monthly_downloads":1546487,"position":3778,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"5.2.1"}
