Skip to content
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

Enum experiment draft5 #7036

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion packages/pyright-internal/src/analyzer/enums.ts
Expand Up @@ -307,7 +307,7 @@ export function transformTypeForPossibleEnumClass(
nameNode.parent?.nodeType === ParseNodeType.TypeAnnotation &&
nameNode.parent.valueExpression === nameNode
) {
isMemberOfEnumeration = true;
// isMemberOfEnumeration = true;
}

// The spec specifically excludes names that start and end with a single underscore.
Expand Down
Expand Up @@ -15,6 +15,6 @@ if sys.version_info >= (3, 12):
THREAD_JOIN_TIMEOUT: Literal[300]

class _SendfileMode(enum.Enum):
UNSUPPORTED: int
TRY_NATIVE: int
FALLBACK: int
UNSUPPORTED = ...
TRY_NATIVE = ...
FALLBACK = ...
Expand Up @@ -98,10 +98,10 @@ class BoundedSemaphore(Semaphore): ...

if sys.version_info >= (3, 11):
class _BarrierState(enum.Enum): # undocumented
FILLING: str
DRAINING: str
RESETTING: str
BROKEN: str
FILLING = ...
DRAINING = ...
RESETTING = ...
BROKEN = ...

class Barrier(_LoopBoundMixin):
def __init__(self, parties: int) -> None: ...
Expand Down
Expand Up @@ -14,17 +14,17 @@ if sys.version_info >= (3, 11):
SSLAgainErrors: tuple[type[ssl.SSLWantReadError], type[ssl.SSLSyscallError]]

class SSLProtocolState(Enum):
UNWRAPPED: str
DO_HANDSHAKE: str
WRAPPED: str
FLUSHING: str
SHUTDOWN: str
UNWRAPPED = ...
DO_HANDSHAKE = ...
WRAPPED = ...
FLUSHING = ...
SHUTDOWN = ...

class AppProtocolState(Enum):
STATE_INIT: str
STATE_CON_MADE: str
STATE_EOF: str
STATE_CON_LOST: str
STATE_INIT = ...
STATE_CON_MADE = ...
STATE_EOF = ...
STATE_CON_LOST = ...
def add_flowcontrol_defaults(high: int | None, low: int | None, kb: int) -> tuple[int, int]: ...

else:
Expand Down
136 changes: 68 additions & 68 deletions packages/pyright-internal/typeshed-fallback/stdlib/http/__init__.pyi
Expand Up @@ -15,65 +15,65 @@ class HTTPStatus(IntEnum):
def phrase(self) -> str: ...
@property
def description(self) -> str: ...
CONTINUE: int
SWITCHING_PROTOCOLS: int
PROCESSING: int
OK: int
CREATED: int
ACCEPTED: int
NON_AUTHORITATIVE_INFORMATION: int
NO_CONTENT: int
RESET_CONTENT: int
PARTIAL_CONTENT: int
MULTI_STATUS: int
ALREADY_REPORTED: int
IM_USED: int
MULTIPLE_CHOICES: int
MOVED_PERMANENTLY: int
FOUND: int
SEE_OTHER: int
NOT_MODIFIED: int
USE_PROXY: int
TEMPORARY_REDIRECT: int
PERMANENT_REDIRECT: int
BAD_REQUEST: int
UNAUTHORIZED: int
PAYMENT_REQUIRED: int
FORBIDDEN: int
NOT_FOUND: int
METHOD_NOT_ALLOWED: int
NOT_ACCEPTABLE: int
PROXY_AUTHENTICATION_REQUIRED: int
REQUEST_TIMEOUT: int
CONFLICT: int
GONE: int
LENGTH_REQUIRED: int
PRECONDITION_FAILED: int
REQUEST_ENTITY_TOO_LARGE: int
REQUEST_URI_TOO_LONG: int
UNSUPPORTED_MEDIA_TYPE: int
REQUESTED_RANGE_NOT_SATISFIABLE: int
EXPECTATION_FAILED: int
UNPROCESSABLE_ENTITY: int
LOCKED: int
FAILED_DEPENDENCY: int
UPGRADE_REQUIRED: int
PRECONDITION_REQUIRED: int
TOO_MANY_REQUESTS: int
REQUEST_HEADER_FIELDS_TOO_LARGE: int
INTERNAL_SERVER_ERROR: int
NOT_IMPLEMENTED: int
BAD_GATEWAY: int
SERVICE_UNAVAILABLE: int
GATEWAY_TIMEOUT: int
HTTP_VERSION_NOT_SUPPORTED: int
VARIANT_ALSO_NEGOTIATES: int
INSUFFICIENT_STORAGE: int
LOOP_DETECTED: int
NOT_EXTENDED: int
NETWORK_AUTHENTICATION_REQUIRED: int
MISDIRECTED_REQUEST: int
UNAVAILABLE_FOR_LEGAL_REASONS: int
CONTINUE = ...
SWITCHING_PROTOCOLS = ...
PROCESSING = ...
OK = ...
CREATED = ...
ACCEPTED = ...
NON_AUTHORITATIVE_INFORMATION = ...
NO_CONTENT = ...
RESET_CONTENT = ...
PARTIAL_CONTENT = ...
MULTI_STATUS = ...
ALREADY_REPORTED = ...
IM_USED = ...
MULTIPLE_CHOICES = ...
MOVED_PERMANENTLY = ...
FOUND = ...
SEE_OTHER = ...
NOT_MODIFIED = ...
USE_PROXY = ...
TEMPORARY_REDIRECT = ...
PERMANENT_REDIRECT = ...
BAD_REQUEST = ...
UNAUTHORIZED = ...
PAYMENT_REQUIRED = ...
FORBIDDEN = ...
NOT_FOUND = ...
METHOD_NOT_ALLOWED = ...
NOT_ACCEPTABLE = ...
PROXY_AUTHENTICATION_REQUIRED = ...
REQUEST_TIMEOUT = ...
CONFLICT = ...
GONE = ...
LENGTH_REQUIRED = ...
PRECONDITION_FAILED = ...
REQUEST_ENTITY_TOO_LARGE = ...
REQUEST_URI_TOO_LONG = ...
UNSUPPORTED_MEDIA_TYPE = ...
REQUESTED_RANGE_NOT_SATISFIABLE = ...
EXPECTATION_FAILED = ...
UNPROCESSABLE_ENTITY = ...
LOCKED = ...
FAILED_DEPENDENCY = ...
UPGRADE_REQUIRED = ...
PRECONDITION_REQUIRED = ...
TOO_MANY_REQUESTS = ...
REQUEST_HEADER_FIELDS_TOO_LARGE = ...
INTERNAL_SERVER_ERROR = ...
NOT_IMPLEMENTED = ...
BAD_GATEWAY = ...
SERVICE_UNAVAILABLE = ...
GATEWAY_TIMEOUT = ...
HTTP_VERSION_NOT_SUPPORTED = ...
VARIANT_ALSO_NEGOTIATES = ...
INSUFFICIENT_STORAGE = ...
LOOP_DETECTED = ...
NOT_EXTENDED = ...
NETWORK_AUTHENTICATION_REQUIRED = ...
MISDIRECTED_REQUEST = ...
UNAVAILABLE_FOR_LEGAL_REASONS = ...
if sys.version_info >= (3, 9):
EARLY_HINTS: Literal[103]
IM_A_TEAPOT: Literal[418]
Expand All @@ -94,12 +94,12 @@ if sys.version_info >= (3, 11):
class HTTPMethod(StrEnum):
@property
def description(self) -> str: ...
CONNECT: str
DELETE: str
GET: str
HEAD: str
OPTIONS: str
PATCH: str
POST: str
PUT: str
TRACE: str
CONNECT = ...
DELETE = ...
GET = ...
HEAD = ...
OPTIONS = ...
PATCH = ...
POST = ...
PUT = ...
TRACE = ...
48 changes: 24 additions & 24 deletions packages/pyright-internal/typeshed-fallback/stdlib/inspect.pyi
Expand Up @@ -347,11 +347,11 @@ if sys.version_info >= (3, 10):

# The name is the same as the enum's name in CPython
class _ParameterKind(enum.IntEnum):
POSITIONAL_ONLY: int
POSITIONAL_OR_KEYWORD: int
VAR_POSITIONAL: int
KEYWORD_ONLY: int
VAR_KEYWORD: int
POSITIONAL_ONLY = ...
POSITIONAL_OR_KEYWORD = ...
VAR_POSITIONAL = ...
KEYWORD_ONLY = ...
VAR_KEYWORD = ...

@property
def description(self) -> str: ...
Expand Down Expand Up @@ -610,22 +610,22 @@ if sys.version_info >= (3, 9):

if sys.version_info >= (3, 12):
class BufferFlags(enum.IntFlag):
SIMPLE: int
WRITABLE: int
FORMAT: int
ND: int
STRIDES: int
C_CONTIGUOUS: int
F_CONTIGUOUS: int
ANY_CONTIGUOUS: int
INDIRECT: int
CONTIG: int
CONTIG_RO: int
STRIDED: int
STRIDED_RO: int
RECORDS: int
RECORDS_RO: int
FULL: int
FULL_RO: int
READ: int
WRITE: int
SIMPLE = ...
WRITABLE = ...
FORMAT = ...
ND = ...
STRIDES = ...
C_CONTIGUOUS = ...
F_CONTIGUOUS = ...
ANY_CONTIGUOUS = ...
INDIRECT = ...
CONTIG = ...
CONTIG_RO = ...
STRIDED = ...
STRIDED_RO = ...
RECORDS = ...
RECORDS_RO = ...
FULL = ...
FULL_RO = ...
READ = ...
WRITE = ...
Expand Up @@ -11,8 +11,8 @@ if sys.version_info < (3, 9):
__all__ += ["readPlist", "writePlist", "readPlistFromBytes", "writePlistToBytes", "Data"]

class PlistFormat(Enum):
FMT_XML: int
FMT_BINARY: int
FMT_XML = ...
FMT_BINARY = ...

FMT_XML = PlistFormat.FMT_XML
FMT_BINARY = PlistFormat.FMT_BINARY
Expand Down
18 changes: 9 additions & 9 deletions packages/pyright-internal/typeshed-fallback/stdlib/pstats.pyi
Expand Up @@ -14,15 +14,15 @@ else:
_Selector: TypeAlias = str | float | int

class SortKey(StrEnum):
CALLS: str
CUMULATIVE: str
FILENAME: str
LINE: str
NAME: str
NFL: str
PCALLS: str
STDNAME: str
TIME: str
CALLS = ...
CUMULATIVE = ...
FILENAME = ...
LINE = ...
NAME = ...
NFL = ...
PCALLS = ...
STDNAME = ...
TIME = ...

if sys.version_info >= (3, 9):
from dataclasses import dataclass
Expand Down
Expand Up @@ -12,9 +12,9 @@ class PyCompileError(Exception):
def __init__(self, exc_type: type[BaseException], exc_value: BaseException, file: str, msg: str = "") -> None: ...

class PycInvalidationMode(enum.Enum):
TIMESTAMP: int
CHECKED_HASH: int
UNCHECKED_HASH: int
TIMESTAMP = ...
CHECKED_HASH = ...
UNCHECKED_HASH = ...

def _get_default_invalidation_mode() -> PycInvalidationMode: ...
def compile(
Expand Down