Skip to content

Replace lru_cache usage with cache #35

Open
@gselzer

Description

@gselzer

functools.lru_cache provides a nice way of caching function returns, and is super useful for things like jimport. As @ctrueden noted, however:

I think @cache is the nicest. It just implies (rightly so) that function results are cached and returned again the second time. Whereas lru_cache(maxsize=None) is an oxymoron to me: if there is no size limit, it's not "LRU" anymore.

This is a good point. Unfortunately, functools.cache is a feature introduced in Python 3.9, while scyjava requires >=3.6 and tests 3.8

Once we move on from these Python versions, we should probably reevaulate the usage of lru_cache on jimport.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions