8000 Add type hints by radarhere · Pull Request #8362 · python-pillow/Pillow · GitHub
[go: up one dir, main page]

Skip to content

Add type hints #8362

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 48 commits into
base: main
Choose a base branch
from
Open

Conversation

radarhere
Copy link
Member
@radarhere radarhere commented Sep 9, 2024

Resolves #8029

In order to add type hints to the following Image methods

def __enter__(self):
def _close_fp(self):
def __exit__(self, *args):

I've made a few changes.

Image now has

def __enter__(self) -> Image:
def __exit__(self, *args: object) -> None:

I added an __enter__() and __exit__() to ImageFile, so that with Image.open(...): will type hint an ImageFile instance. I also moved _close_fp() to ImageFile, as it is only used when exiting an ImageFile instance.

def __enter__(self) -> ImageFile:
def _close_fp(self) -> None:
def __exit__(self, *args: object) -> None:

I also moved get_child_images() from Image to ImageFile. It requires the use of self.fp, so this made sense to me, but feel to tell me it should stay in Image.

Believe it or not, all the other changes in this PR flowed out from there.