Skip to content

Commit 864dee3

Browse files
stubs: [BeautifulSoup] fix incomplete type specs for formatter (#11885)
1 parent 38569b6 commit 864dee3

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

stubs/beautifulsoup4/bs4/element.pyi

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from _typeshed import Incomplete, ReadableBuffer
22
from collections.abc import Callable, Iterable, Iterator
33
from re import Pattern
4-
from typing import Any, TypeVar, overload
4+
from typing import Any, Literal, TypeVar, overload
55
from typing_extensions import Self, TypeAlias
66

77
from . import BeautifulSoup
@@ -295,25 +295,33 @@ class Tag(PageElement):
295295
self,
296296
encoding: str = "utf-8",
297297
indent_level: int | None = None,
298-
formatter: str | Formatter = "minimal",
298+
formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal",
299299
errors: str = "xmlcharrefreplace",
300300
) -> bytes: ...
301301
def decode(
302302
self,
303303
indent_level: int | None = None,
304304
eventual_encoding: str = "utf-8",
305-
formatter: str | Formatter = "minimal",
305+
formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal",
306306
iterator: Iterator[PageElement] | None = None,
307307
) -> str: ...
308308
@overload
309-
def prettify(self, encoding: str, formatter: str | Formatter = "minimal") -> bytes: ...
309+
def prettify(self, encoding: str, formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal") -> bytes: ...
310310
@overload
311-
def prettify(self, encoding: None = None, formatter: str | Formatter = "minimal") -> str: ...
311+
def prettify(
312+
self, encoding: None = None, formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal"
313+
) -> str: ...
312314
def decode_contents(
313-
self, indent_level: int | None = None, eventual_encoding: str = "utf-8", formatter: str | Formatter = "minimal"
315+
self,
316+
indent_level: int | None = None,
317+
eventual_encoding: str = "utf-8",
318+
formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal",
314319
) -> str: ...
315320
def encode_contents(
316-
self, indent_level: int | None = None, encoding: str = "utf-8", formatter: str | Formatter = "minimal"
321+
self,
322+
indent_level: int | None = None,
323+
encoding: str = "utf-8",
324+
formatter: Literal["html", "html5", "minimal"] | Formatter | None = "minimal",
317325
) -> bytes: ...
318326
def renderContents(self, encoding: str = "utf-8", prettyPrint: bool = False, indentLevel: int = 0) -> bytes: ...
319327
def find(

0 commit comments

Comments
 (0)