{"categories":[{"label":"Libraries","url":"https://skillfed.io/packages/category/software-development-libraries/2"}],"enrichment":{"capability":"ExpiringDict is an ordered dictionary that automatically removes values after a specified time interval, with a fixed capacity limit, designed for caching purposes.","skillfed_tags":["caching","ttl","in-memory"],"use_cases":["Caching API responses or database query results with automatic expiration after a set time.","Rate-limiting or throttling by tracking request counts that decay over time.","Session storage in web applications where sessions expire after inactivity.","Temporary storage of computed results that should be refreshed periodically.","Deduplication of recent events or messages with automatic cleanup."],"what_it_does":"ExpiringDict is a Python caching library that wraps a dictionary with automatic value expiration and capacity limits. It stores key-value pairs that are removed either when their time-to-live (max_age_seconds) expires or when the dictionary reaches its maximum size (max_len), at which point the oldest entries are deleted. Expiration is checked on any access to the dictionary, and the object is locked during cleanup to prevent concurrent modification issues.\n\nThe package is useful for scenarios where you need a simple, in-memory cache with automatic cleanup. It supports initialization from regular dicts or other ExpiringDict instances, and can be pickled. Note that iteration over the dictionary and the keys() method do not trigger expiration of stale values\u2014only direct access does.","worth_installing":"Yes, if you need a simple, lightweight in-memory cache with automatic expiration and can tolerate the abandoned status. The library is stable and has no known vulnerabilities, but you should not expect bug fixes or new features. Consider alternatives if you need active maintenance, thread-safety guarantees beyond basic locking, or support for newer Python versions."},"id":"expiringdict","links":{"html":"https://skillfed.io/packages/expiringdict","md":"https://skillfed.io/packages/expiringdict.md","pypi":"https://pypi.org/project/expiringdict/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2022-06-21","license_spdx":null,"license_treatment":"permissive","name":"expiringdict","python_support":"unspecified","summary":"Dictionary with auto-expiring values for caching purposes"},"popularity":{"monthly_downloads":10875172,"position":1429,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"1.2.2"}
