Skip to content

Missing links for a union with an unevaluated type alias #481

Open
@nineteendo

Description

@nineteendo
Contributor

It's not a big deal, but I would like the links to the type definitions to be present on all pages: https://jsonyx.readthedocs.io/en/latest/api/jsonyx.apply_patch.html

# conf.py
autodoc_type_aliases = {"_Operation": "_Operation"}
_Operation = dict[str, Any]

def apply_patch(
    obj: Any,
    patch: _Operation | list[_Operation],
    *,
    allow: Container[str] = NOTHING,
    use_decimal: bool = False,
) -> Any:
    ...
Screenshot 2024-09-11 at 20 23 12

Activity

nineteendo

nineteendo commented on Mar 30, 2025

@nineteendo
ContributorAuthor

typing.get_type_hints() raises this error:

TypeError("unsupported operand type(s) for |: 'TypeAliasForwardRef' and 'types.GenericAlias'")

This seems to fix the issue:

-localns = TypeAliasNamespace(app.config["autodoc_type_aliases"])
+localns = {key: ForwardRef(value) for key, value in app.config["autodoc_type_aliases"].items()}
added a commit that references this issue on Apr 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @gaborbernat@nineteendo

        Issue actions

          Missing links for a union with an unevaluated type alias · Issue #481 · tox-dev/sphinx-autodoc-typehints