# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-cachetools VERSION= 6.2.3 KEYWORDS= python VARIANTS= v13 v14 SDESC[v13]= Extensible memoizing collections (3.13) SDESC[v14]= Extensible memoizing collections (3.14) HOMEPAGE= https://github.com/tkem/cachetools/ CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/ab/de/aa4cfc69feb5b3d604310214369979bb222ed0df0e2575a1b6e7af1a5579 DISTFILE[1]= cachetools-6.2.3-py3-none-any.whl:main DIST_SUBDIR= python-src DF_INDEX= 1 SPKGS[v13]= single SPKGS[v14]= single OPTIONS_AVAILABLE= PY313 PY314 OPTIONS_STANDARD= none VOPTS[v13]= PY313=ON PY314=OFF VOPTS[v14]= PY313=OFF PY314=ON DISTNAME= cachetools-6.2.3.dist-info GENERATED= yes [PY313].USES_ON= python:v13,wheel [PY314].USES_ON= python:v14,wheel [FILE:3194:descriptions/desc.single] cachetools ======================================================================== :alt: Latest PyPI version :alt: CI build status :alt: Documentation build status :alt: Test coverage :alt: Libraries.io SourceRank :alt: License :alt: Code style: black This module provides various memoizing collections and decorators, including variants of the Python Standard Library's `@lru_cache`_ function decorator. .. code-block:: python from cachetools import cached, LRUCache, TTLCache # speed up calculating Fibonacci numbers with dynamic programming @cached(cache={}) def fib(n): return n if n < 2 else fib(n - 1) + fib(n - 2) # cache least recently used Python Enhancement Proposals @cached(cache=LRUCache(maxsize=32)) def get_pep(num): url = 'http://www.python.org/dev/peps/pep-%04d/' % num with urllib.request.urlopen(url) as s: return s.read() # cache weather data for no longer than ten minutes @cached(cache=TTLCache(maxsize=1024, ttl=600)) def get_weather(place): return owm.weather_at_place(place).get_weather() For the purpose of this module, a *cache* is a mutable_ mapping_ of a fixed maximum size. When the cache is full, i.e. by adding another item the cache would exceed its maximum size, the cache must choose which item(s) to discard based on a suitable `cache algorithm`_. This module provides multiple cache classes based on different cache algorithms, as well as decorators for easily memoizing function and method calls. Installation ------------------------------------------------------------------------ cachetools is available from PyPI_ and can be installed by running:: pip install cachetools Typing stubs for this package are provided by typeshed_ and can be installed by running:: pip install types-cachetools Project Resources ------------------------------------------------------------------------ - `Documentation`_ - `Issue tracker`_ - `Source code`_ - `Change log`_ Related Projects ------------------------------------------------------------------------ - asyncache_: Helpers to use cachetools_ with asyncio. - cachetools-async_: Helpers to use cachetools_ with asyncio. - cacheing_: Pure Python Cacheing Library. - CacheToolsUtils_: Stackable cache classes for sharing, encryption, statistics *and more* on top of cachetools_, redis_ and memcached_. - shelved-cache_: Persistent cache implementation for Python cachetools_. License ------------------------------------------------------------------------ Copyright (c) 2014-2025 Thomas Kemmer. Licensed under the `MIT License`_. .. _@lru_cache: https://docs.python.org/3/library/functools.html#functools.lru_cache .. _mutable: https://docs.python.org/dev/glossary.html#term-mutable .. _mapping: https://docs.python.org/dev/glossary.html#term-mapping .. _cache algorithm: https://en.wikipedia.org/wiki/Cache_algorithms .. _PyPI: https://pypi.org/project/cachetools/ .. _typeshed: https://github.com/python/typeshed/ .. _Documentation: https://cachetools.readthedocs.io/ .. _Issue tracker: https://github.com/tkem/cachetools/issues/ .. _Source code: https://github.com/tkem/cachetools/ [FILE:123:distinfo] 3fde34f7033979efb1e79b07ae529c2c40808bdd23b0b731405a48439254fba5 11554 python-src/cachetools-6.2.3-py3-none-any.whl