Use case
Ensure client-python remains compatible with Python 3.14.
The current annotation handling relies on __annotations__, which no longer behaves as expected for this use case in Python 3.14.
Current workaround
The issue was identified while upgrading collectors from Python 3.13 to Python 3.14.
The current implementation works with Python 3.13 but fails with Python 3.14 due to changes in annotation handling.
Collectors using Python 3.14 can encounter an AttributeError when pyoaev attempts to access __annotations__ while creating managers.

Proposed solution
Update the annotation discovery mechanism to use typing.get_type_hints() instead of directly accessing __annotations__.
This provides a Python-version-compatible way of retrieving the class annotations used to discover and initialize managers.
Additional information
If the feature request is approved, would you be willing to submit a PR?
Yes / No (help can be provided if you need assistance submitting a PR)
Use case
Ensure client-python remains compatible with Python 3.14.
The current annotation handling relies on
__annotations__, which no longer behaves as expected for this use case inPython 3.14.Current workaround
The issue was identified while upgrading collectors from Python 3.13 to Python 3.14.
The current implementation works with Python 3.13 but fails with Python 3.14 due to changes in annotation handling.
Collectors using

Python 3.14can encounter anAttributeErrorwhen pyoaev attempts to access__annotations__while creating managers.Proposed solution
Update the annotation discovery mechanism to use
typing.get_type_hints()instead of directly accessing__annotations__.This provides a Python-version-compatible way of retrieving the class annotations used to discover and initialize managers.
Additional information
If the feature request is approved, would you be willing to submit a PR?
Yes / No (help can be provided if you need assistance submitting a PR)