feat: add ability to clear/cap cache size #31
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fixes #30
@aditya306b, let me know if this would work for you
New caching functionalities:
clear_api_cachefunction to clear all cached responses to the Iconify API from the current session insrc/pyconify/api.py.set_api_cache_maxsizefunction to set thelru_cachemax size for all API calls and clear the cache insrc/pyconify/api.py.Updates to existing cache mechanisms:
collections,collection,svg_path, andcssfunctions to usefunctools.lru_cachewith a default max size of 128 insrc/pyconify/api.py. [1] [2] [3] [4]Tests:
test_clear_api_cacheto verify the functionality of the new cache-related functions intests/test_pyconify.py.Imports and type annotations:
Any,Protocol, andcastimports to support the new cache functionalities insrc/pyconify/api.py. [1] [2]Module exports:
__init__.pyto export the newclear_api_cacheandset_api_cache_maxsizefunctions. [1] [2] [3]