Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,39 @@ jobs:
- name: Run ty on all stubs
run: python tests/ty_test.py --platform=${{ matrix.platform }} --python-version=${{ matrix.python-version }} --python=.venv

pyrefly:
name: "pyrefly: Check stubs"
runs-on: ubuntu-latest
strategy:
matrix:
platform: ["linux", "win32", "darwin"]
# TODO: Add 3.15 once third-party runtime dependencies provide compatible wheels.
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
fail-fast: false
steps:
- uses: actions/checkout@v7
- uses: actions/setup-python@v6
with:
python-version: "3.14"
- uses: astral-sh/setup-uv@v8.2.0
with:
version-file: "requirements-tests.txt"
- name: Install typeshed test-suite requirements
run: uv pip install -r requirements-tests.txt --system
- name: Create an isolated venv for testing
run: uv venv .venv
- name: Install third-party stub dependencies
run: |
PACKAGES=$(python tests/get_external_stub_requirements.py)
if [ -n "$PACKAGES" ]; then
uv pip install --python-version ${{ matrix.python-version }} $PACKAGES
fi
# Published stub packages can shadow the checked-in stubs when pyrefly
# resolves their relative imports.
uv pip uninstall types-PyYAML types-pytz
- name: Run pyrefly on all stubs
run: python tests/pyrefly_test.py --platform=${{ matrix.platform }} --python-version=${{ matrix.python-version }} --python=.venv/bin/python

pyright:
name: "pyright: Run test cases"
runs-on: ubuntu-latest
Expand Down
21 changes: 21 additions & 0 deletions pyrefly.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# typeshed uses `# type: ignore` comments to silence mypy and pyright; pyrefly
# should not treat them as suppressing its own errors. Keep in sync with the
# `respect-type-ignore-comments` setting in ty.toml.
enabled-ignores = ["pyrefly"]

# These imports are intentionally optional and are also ignored by mypy and pyright.
ignore-missing-imports = [
"branca",
"folium",
"pydot",
"pygraphviz.*",
"scipy.*",
"twisted.*",
"xyzservices",
]

[errors]
# Incompatible overrides and deprecations are inherited from the implementation
# and are not actionable in typeshed. Keep in sync with pyrightconfig.json.
deprecated = false
bad-override = false
1 change: 1 addition & 0 deletions requirements-tests.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Type checkers that we test our stubs against. These should always
# be pinned to a specific version to make failure reproducible.
mypy==2.3.0
pyrefly==1.3.0.dev1
pyright==1.1.411
ty==0.0.59

Expand Down
2 changes: 1 addition & 1 deletion stdlib/_asyncio.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ else:
# since the only reason why `asyncio.Future` is invariant is the `set_result()` method,
# and `asyncio.Task.set_result()` always raises.
@disjoint_base
class Task(Future[_T_co]): # type: ignore[type-var] # pyright: ignore[reportInvalidTypeArguments] # ty:ignore[invalid-generic-class]
class Task(Future[_T_co]): # type: ignore[type-var] # pyright: ignore[reportInvalidTypeArguments] # ty:ignore[invalid-generic-class] # pyrefly: ignore [invalid-variance]
if sys.version_info >= (3, 12):
def __init__(
self,
Expand Down
4 changes: 2 additions & 2 deletions stdlib/argparse.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -322,8 +322,8 @@ class HelpFormatter:
_current_indent: int
_level: int
_action_max_length: int
_root_section: _Section
_current_section: _Section
_root_section: _Section # pyrefly: ignore [unknown-name]
Comment thread
JelleZijlstra marked this conversation as resolved.
_current_section: _Section # pyrefly: ignore [unknown-name]
_whitespace_matcher: Pattern[str]
_long_break_matcher: Pattern[str]

Expand Down
6 changes: 3 additions & 3 deletions stdlib/collections/__init__.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -365,17 +365,17 @@ class _OrderedDictValuesView(ValuesView[_VT_co]):
# pyright doesn't have a specific error code for subclassing error!
@final
@type_check_only
class _odict_keys(dict_keys[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class]
class _odict_keys(dict_keys[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class] # pyrefly: ignore [invalid-inheritance]
def __reversed__(self) -> Iterator[_KT_co]: ...

@final
@type_check_only
class _odict_items(dict_items[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class]
class _odict_items(dict_items[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class] # pyrefly: ignore [invalid-inheritance]
def __reversed__(self) -> Iterator[tuple[_KT_co, _VT_co]]: ...

@final
@type_check_only
class _odict_values(dict_values[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class]
class _odict_values(dict_values[_KT_co, _VT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[subclass-of-final-class] # pyrefly: ignore [invalid-inheritance]
def __reversed__(self) -> Iterator[_VT_co]: ...

@disjoint_base
Expand Down
4 changes: 2 additions & 2 deletions stdlib/contextlib.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ _CM_EF = TypeVar("_CM_EF", bound=AbstractContextManager[Any, Any] | _ExitFunc)
# At runtime it inherits from ABC and is not a Protocol, but it is on the
# allowlist for use as a Protocol.
@runtime_checkable
class AbstractContextManager(ABC, Protocol[_T_co, _ExitT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-protocol]
class AbstractContextManager(ABC, Protocol[_T_co, _ExitT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-protocol] # pyrefly: ignore [invalid-inheritance]
__slots__ = ()
def __enter__(self) -> _T_co: ...
@abstractmethod
Expand All @@ -55,7 +55,7 @@ class AbstractContextManager(ABC, Protocol[_T_co, _ExitT_co]): # type: ignore[m
# At runtime it inherits from ABC and is not a Protocol, but it is on the
# allowlist for use as a Protocol.
@runtime_checkable
class AbstractAsyncContextManager(ABC, Protocol[_T_co, _ExitT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-protocol]
class AbstractAsyncContextManager(ABC, Protocol[_T_co, _ExitT_co]): # type: ignore[misc] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-protocol] # pyrefly: ignore [invalid-inheritance]
__slots__ = ()
async def __aenter__(self) -> _T_co: ...
@abstractmethod
Expand Down
2 changes: 1 addition & 1 deletion stdlib/dataclasses.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -298,7 +298,7 @@ def fields(class_or_instance: DataclassInstance | type[DataclassInstance]) -> tu

# HACK: `obj: Never` typing matches if object argument is using `Any` type.
@overload
def is_dataclass(obj: Never) -> TypeIs[DataclassInstance | type[DataclassInstance]]: ... # type: ignore[narrowed-type-not-subtype] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-type-guard-definition]
def is_dataclass(obj: Never) -> TypeIs[DataclassInstance | type[DataclassInstance]]: ... # type: ignore[narrowed-type-not-subtype] # pyright: ignore[reportGeneralTypeIssues] # ty:ignore[invalid-type-guard-definition] # pyrefly: ignore [bad-function-definition]
@overload
def is_dataclass(obj: type) -> TypeIs[type[DataclassInstance]]: ...
@overload
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/big5.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/big5hkscs.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/cp932.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/cp949.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/cp950.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/euc_jis_2004.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/euc_jisx0213.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/euc_jp.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/euc_kr.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/gb18030.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/gb2312.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/gbk.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/hz.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp_1.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp_2.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp_2004.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp_3.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_jp_ext.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/iso2022_kr.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/johab.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
2 changes: 1 addition & 1 deletion stdlib/encodings/shift_jis.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, codecs.IncrementalEnco
class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, codecs.IncrementalDecoder):
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc]
class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): # type: ignore[misc] # pyrefly: ignore [inconsistent-inheritance]
codec: ClassVar[mbc._MultibyteCodec] = ...

class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):
Expand Down
Loading
Loading