Pylint under 3.6 does not believe that Collection is subscriptable at
runtime. It is, making this a Pylint
bug. https://github.com/PyCQA/pylint/issues/2377
They closed it as fixed, but that doesn't seem to be true as of Pylint
2.13.9, the latest version you can install under Python 3.6. 2.13.9 was
released 2022-05-13, about seven months after the bug was closed.
The least-annoying fix here is to just use the concret type.
Signed-off-by: John Snow <jsnow@redhat.com>
Message-Id: <
20230215000011.
1725012-4-jsnow@redhat.com>
[Dumbed down from Sequence[str] to List[str], commit message adjusted]
Reviewed-by: Markus Armbruster <armbru@redhat.com>
import re
from typing import (
- Collection,
Dict,
Iterable,
List,
def check_keys(value: _JSONObject,
info: QAPISourceInfo,
source: str,
- required: Collection[str],
- optional: Collection[str]) -> None:
+ required: List[str],
+ optional: List[str]) -> None:
"""
Ensure that a dict has a specific set of keys.