Skip to content

Add overloads for cache_factory decorated functions to create more friendly tooltips for factory functions #4

@JerilynFranz

Description

@JerilynFranz

This is a documentation enhancement. By adding overloads modeled on the code here to the factory definitions,
the issue of the cache_factory decorators producing less-than-helpful function signatures in IDE tooltips is addressed (at the expense of the addition of some boilerplate code).

@overload
def session_factory() -> Session:
    """Return a default Session instance for testing purposes.

    The Session is initialized with default attributes.

    Args:
        cache_id (CacheId, default=CACHE_DEFAULT):
            An optional identifier to distinguish different cached instances.
            If None, caching is disabled for this call.
    """


@overload
def session_factory(*, cache_id: CacheId = CACHE_DEFAULT) -> Session:
    """Return a default Session instance for testing purposes.

    The Session is initialized with default attributes.

    Args:
        cache_id (CacheId, default=CACHE_DEFAULT):
            An optional identifier to distinguish different cached instances.
            If None, caching is disabled for this call.
    """

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationenhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions