{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/8"}],"enrichment":{"capability":"Provides async-aware memoization decorators for Python asyncio coroutines, extending cachetools with support for caching async function results using LRU, TTL, and other fixed-size cache strategies.","skillfed_tags":["asyncio","caching","memoization"],"use_cases":["Cache results from async HTTP requests (e.g., weather data, API responses) with TTL to avoid redundant network calls.","Deduplicate concurrent async function calls in parallel workloads where multiple tasks request the same expensive computation.","Implement LRU caching for async database queries or I/O operations to limit memory and improve response times.","Add memoization to async data-fetching functions in web frameworks or async services without rewriting cache logic.","Combine with cachetools' cache strategies to apply size limits and eviction policies to async coroutine results."],"what_it_does":"cachetools_async adds memoization decorators for asyncio coroutine functions, building on top of cachetools' cache implementations. It lets you decorate async functions with @cached to automatically store and reuse their results, using the same cache strategies (LRU, TTL, etc.) that cachetools provides for synchronous code. The cache itself is not asynchronous\u2014it's a regular mutable mapping\u2014but the decorator handles the async execution model correctly.\n\nA key behavior: if multiple concurrent calls arrive for the same cached key before the first one completes, they all wait for that single result rather than each triggering a separate computation. This deduplication happens transparently, making it useful for scenarios like parallel requests for the same resource.","worth_installing":"Yes. Low install friction, active maintenance, no known vulnerabilities, and MIT licensing make it a straightforward choice. Install it if you need memoization for asyncio functions and want to reuse cachetools' familiar cache strategies. The single cachetools dependency is lightweight and widely used."},"id":"cachetools-async","links":{"html":"https://skillfed.io/packages/cachetools-async","md":"https://skillfed.io/packages/cachetools-async.md","pypi":"https://pypi.org/project/cachetools-async/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-06-09","license_spdx":"MIT","license_treatment":"permissive","name":"cachetools-async","python_support":"supports_current","summary":"Provides decorators that are inspired by and work closely with cachetools' for caching asyncio functions and methods."},"popularity":{"monthly_downloads":512688,"position":6255,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.0.5"}
