Install & Compatibility
Where this runs
tested against v1.0.22 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.056s · 30.9MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 4.7s · import 0.052s · 31MB
29MB installed
● package 29MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
TimeoutSampler
✓ from timeout_sampler import TimeoutSampler
✗ from timeout_sampler import timeout_sampler
Class is CamelCase, not snake_case
TimeoutExpiredError
✓ from timeout_sampler import TimeoutExpiredError
✗ from timeout_sampler.exceptions import TimeoutExpiredError
Exception is exported from top-level package
Basic usage showing how to wait for a function to return a truthy value.
from timeout_sampler import TimeoutSampler
import time
def sample_func():
return None # simulate condition not ready
# Wait up to 5 seconds, check every 0.5 seconds
sampler = TimeoutSampler(
timeout=5,
sleep=0.5,
func=sample_func,
exceptions_dict={}
)
try:
for value in sampler:
if value:
print("Condition met")
break
except TimeoutExpiredError:
print("Timeout reached")
Errors
Common errors & fixes
AttributeError: module 'timeout_sampler' has no attribute 'TimeoutSampler'
Installed incorrect package 'timeout-sampler-python' or similar name. The correct package is 'timeout-sampler'.
fixpip uninstall timeout-sampler-python && pip install timeout-sampler
TypeError: __init__() missing 1 required positional argument: 'exceptions_dict'
The 'exceptions_dict' parameter is mandatory in constructor.
fixAdd exceptions_dict={} or a dict with exception->bool mapping. StopIteration
The iterator raises StopIteration if timeout expires before any truthy value is returned. Usually handled by catching TimeoutExpiredError.
fixWrap iteration in try/except TimeoutExpiredError.
Upgrade
Version history
1.0.22latest on PyPI · released Nov 18, 2025
Audit
Dependencies
No dependency data recorded yet.