From f5fdc6386669a5732e0ed511dca8d8753f46054a Mon Sep 17 00:00:00 2001 From: Sebastian Rittau Date: Mon, 17 Mar 2025 23:38:15 +0100 Subject: [PATCH 1/2] [WebOb] Add cgi_FieldStorage.make_file on Python 3.13+ --- stubs/WebOb/webob/compat.pyi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/stubs/WebOb/webob/compat.pyi b/stubs/WebOb/webob/compat.pyi index 887dbe069b92..d4835fa81494 100644 --- a/stubs/WebOb/webob/compat.pyi +++ b/stubs/WebOb/webob/compat.pyi @@ -1,6 +1,7 @@ import sys from html import escape as escape from queue import Empty as Empty, Queue as Queue +from tempfile import TemporaryFile from typing import IO if sys.version_info >= (3, 13): @@ -8,6 +9,7 @@ if sys.version_info >= (3, 13): class cgi_FieldStorage: filename: str file: IO[bytes] + def make_file(self) -> TemporaryFile: ... def parse_header(line: str) -> tuple[str, dict[str, str]]: ... From d503601f629c7e05b96487d3d6e81a9e58db90e1 Mon Sep 17 00:00:00 2001 From: Sebastian Rittau Date: Mon, 17 Mar 2025 23:46:18 +0100 Subject: [PATCH 2/2] Fix return type --- stubs/WebOb/webob/compat.pyi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stubs/WebOb/webob/compat.pyi b/stubs/WebOb/webob/compat.pyi index d4835fa81494..66e384c55329 100644 --- a/stubs/WebOb/webob/compat.pyi +++ b/stubs/WebOb/webob/compat.pyi @@ -1,7 +1,7 @@ import sys from html import escape as escape +from io import FileIO, TextIOWrapper from queue import Empty as Empty, Queue as Queue -from tempfile import TemporaryFile from typing import IO if sys.version_info >= (3, 13): @@ -9,7 +9,7 @@ if sys.version_info >= (3, 13): class cgi_FieldStorage: filename: str file: IO[bytes] - def make_file(self) -> TemporaryFile: ... + def make_file(self) -> TextIOWrapper | FileIO: ... def parse_header(line: str) -> tuple[str, dict[str, str]]: ...