Skip to content

Add @typing.override annotations to catalog and FileIO implementations#3360

Merged
Fokko merged 1 commit into
apache:mainfrom
vishnuprakaz:feature/add-typing-override
May 15, 2026
Merged

Add @typing.override annotations to catalog and FileIO implementations#3360
Fokko merged 1 commit into
apache:mainfrom
vishnuprakaz:feature/add-typing-override

Conversation

@vishnuprakaz
Copy link
Copy Markdown
Contributor

Adds @override from typing_extensions to all concrete implementations of Catalog, MetastoreCatalog, FileIO, InputFile, and OutputFile so overridden base-class methods are explicit and can be verified by static type checkers.

Uses from typing_extensions import override (same pattern already used for Self in typedef.py) instead of from typing import override which requires Python 3.12+ and would break the supported 3.10/3.11 versions.

Closes #1310

Rationale for this change

@typing.override (PEP 698) makes it explicit which methods intentionally override a parent class method, helping static type checkers catch mistakes early. The previous attempt (#1312) and the currently open PR (#3359) both use from typing import override which only exists in Python 3.12+. This PR uses typing_extensions to support all versions from 3.10+.

Are these changes tested?

No new tests are needed — @override is a static analysis marker with zero runtime effect. make lint and make test (3625 passed) both pass cleanly.

Are there any user-facing changes?

No.

@vishnuprakaz vishnuprakaz force-pushed the feature/add-typing-override branch from 57a6ff6 to 5ccad43 Compare May 14, 2026 17:54
Copy link
Copy Markdown
Contributor

@rambleraptor rambleraptor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like a great dev UX change. Thanks for doing this!

Copy link
Copy Markdown
Contributor

@Fokko Fokko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great @vishnuprakaz thanks for adding this 👍

@Fokko Fokko merged commit 0bdff48 into apache:main May 15, 2026
16 checks passed
@vishnuprakaz
Copy link
Copy Markdown
Contributor Author

Thanks @Fokko and @rambleraptor for the review and merge! Looking forward to contributing more to the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add @typing.override to functions

3 participants