def get_fields(cls) -> dict[str, TypeAnnotation]:
        """
        Recent python versions removed inheritance for __annotations__
        so we have to implement it explicitly
        """
        if not hasattr(cls, "__annotations"):
            annotations = {}
            for base_cls in cls.__bases__:
                annotations.update(get_type_hints(base_cls))
            annotations.update(
                get_type_hints(cls, globalns=TypeAnnotation.get_type_hint_globals())
            )

            cls.__annotations = {
                key: TypeAnnotation.parse(type_)
                for key, type_ in annotations.items()
                if not key.startswith("_")
            }
        return cls.__annotations

        Recent python versions removed inheritance for __annotations__
        so we have to implement it explicitly
        
poethepoet/options/__init__.py