--- id: futures version: "3.4.0" license: PSF license_treatment: permissive maintenance: abandoned --- # futures — Backport of the concurrent.futures package from Python 3 License: permissive · Maintenance: abandoned · Downloads: 3.1M/mo ## What it is and what it does This package brings Python 3's concurrent.futures module to Python 2.6 and 2.7, enabling developers to write concurrent code using thread and process pools. It is a pure backport of the standard library module, allowing Python 2 codebases to use the same executor API that Python 3 provides natively. The package is now abandoned and should only be installed for maintaining existing Python 2 codebases. The package explicitly warns against using ProcessPoolExecutor for mission-critical work due to unfixable problems. ThreadPoolExecutor is the safer choice if you must use this backport. Use it for: - Running background tasks concurrently in legacy Python 2 applications using ThreadPoolExecutor. - Parallelizing work across multiple threads in Python 2 codebases with ThreadPoolExecutor. - Conditional dependency in setup.py for packages that support both Python 2 and 3 using environment markers. - Maintaining existing Python 2 applications that already depend on concurrent.futures. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Backport of Python 3's concurrent.futures module to Python 2.6 and 2.7, providing thread and process pool executors for parallel task execution. No, unless you are actively maintaining a Python 2 codebase that requires concurrent.futures. The package is abandoned, and Python 3 includes concurrent.futures in its standard library. If you are on Python 3, do not install; if you must support Python 2, use ThreadPoolExecutor only and avoid ProcessPoolExecutor. ## Install pip install futures uv add futures poetry add futures ## Installing futures Before you install: Low install friction with no runtime dependencies. However, the package is abandoned as of 2022-10-31 with no active maintenance. Only install if you are actively maintaining legacy Python 2 code. License in practice: Licensed under the Python Software Foundation License (permissive), which allows use in proprietary and open-source projects with minimal restrictions. Quickstart: pip install futures from concurrent.futures import ThreadPoolExecutor with ThreadPoolExecutor(max_workers=4) as executor: future = executor.submit(some_function, arg) result = future.result() Requires Python >=2.6, <3. Will not install on Python 3. ProcessPoolExecutor has known unfixable problems on Python 2 and should not be used for mission-critical work. Verify before relying: - Whether the known ProcessPoolExecutor issues documented in Issue 29 affect your specific use case. - Current state of downstream packages that may depend on this backport. - Whether Python 2 end-of-life status impacts your deployment environment. ## Package facts - License: PSF (permissive) - Python support: capped_below_current - Install friction: low - Maintenance: abandoned - Downloads: 3.1M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags python 2 concurrent futures, thread pool executor python 2, process pool python 2, parallel execution python 2, background tasks python 2, concurrent programming python 2, python-2-legacy, concurrency [View on SkillFed](https://skillfed.io/packages/futures) · [View on PyPI](https://pypi.org/project/futures/)