diff --git a/stubs/pyasn1/@tests/stubtest_allowlist.txt b/stubs/pyasn1/@tests/stubtest_allowlist.txt index 2d7a6bbca..a4f02448e 100644 --- a/stubs/pyasn1/@tests/stubtest_allowlist.txt +++ b/stubs/pyasn1/@tests/stubtest_allowlist.txt @@ -8,3 +8,9 @@ pyasn1.codec.native.encoder.SetEncoder.protoDict # Attempted "__ne__" operation on ASN.1 schema object pyasn1.type.base pyasn1.type.univ + +# Specifying kwargs +pyasn1.codec.ber.decoder.Decoder.__call__ +pyasn1.codec.ber.decoder.StreamingDecoder.__init__ +pyasn1.codec.native.decoder.Decoder.__init__ +pyasn1.codec.native.encoder.Encoder.__init__ diff --git a/stubs/pyasn1/METADATA.toml b/stubs/pyasn1/METADATA.toml index 3effa864a..c1210224d 100644 --- a/stubs/pyasn1/METADATA.toml +++ b/stubs/pyasn1/METADATA.toml @@ -1,2 +1,2 @@ -version = "0.4.*" +version = "0.5.*" upstream_repository = "https://github.com/pyasn1/pyasn1" diff --git a/stubs/pyasn1/pyasn1/__init__.pyi b/stubs/pyasn1/pyasn1/__init__.pyi index e69de29bb..a578d2b81 100644 --- a/stubs/pyasn1/pyasn1/__init__.pyi +++ b/stubs/pyasn1/pyasn1/__init__.pyi @@ -0,0 +1,3 @@ +from typing_extensions import Final + +__version__: Final[str] diff --git a/stubs/pyasn1/pyasn1/codec/ber/decoder.pyi b/stubs/pyasn1/pyasn1/codec/ber/decoder.pyi index 3e5e0eb6a..32149c41b 100644 --- a/stubs/pyasn1/pyasn1/codec/ber/decoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/ber/decoder.pyi @@ -6,7 +6,9 @@ from pyasn1.type import base, char, univ, useful from pyasn1.type.base import Asn1Type from pyasn1.type.tag import TagSet -class AbstractDecoder: +__all__ = ["StreamingDecoder", "Decoder", "decode"] + +class AbstractPayloadDecoder: protoComponent: Asn1Type | None @abstractmethod def valueDecoder( @@ -33,11 +35,11 @@ class AbstractDecoder: **options, ) -> None: ... -class AbstractSimpleDecoder(AbstractDecoder, metaclass=ABCMeta): +class AbstractSimplePayloadDecoder(AbstractPayloadDecoder, metaclass=ABCMeta): @staticmethod - def substrateCollector(asn1Object, substrate, length): ... + def substrateCollector(asn1Object, substrate, length, options): ... -class ExplicitTagDecoder(AbstractSimpleDecoder): +class RawPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.Any def valueDecoder( self, @@ -62,7 +64,7 @@ class ExplicitTagDecoder(AbstractSimpleDecoder): **options, ): ... -class IntegerDecoder(AbstractSimpleDecoder): +class IntegerPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.Integer def valueDecoder( self, @@ -76,10 +78,10 @@ class IntegerDecoder(AbstractSimpleDecoder): **options, ): ... -class BooleanDecoder(IntegerDecoder): +class BooleanPayloadDecoder(IntegerPayloadDecoder): protoComponent: univ.Boolean -class BitStringDecoder(AbstractSimpleDecoder): +class BitStringPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.BitString supportConstructedForm: bool def valueDecoder( @@ -105,7 +107,7 @@ class BitStringDecoder(AbstractSimpleDecoder): **options, ): ... -class OctetStringDecoder(AbstractSimpleDecoder): +class OctetStringPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.OctetString supportConstructedForm: bool def valueDecoder( @@ -131,7 +133,7 @@ class OctetStringDecoder(AbstractSimpleDecoder): **options, ): ... -class NullDecoder(AbstractSimpleDecoder): +class NullPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.Null def valueDecoder( self, @@ -145,7 +147,7 @@ class NullDecoder(AbstractSimpleDecoder): **options, ): ... -class ObjectIdentifierDecoder(AbstractSimpleDecoder): +class ObjectIdentifierPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.ObjectIdentifier def valueDecoder( self, @@ -159,7 +161,7 @@ class ObjectIdentifierDecoder(AbstractSimpleDecoder): **options, ): ... -class RealDecoder(AbstractSimpleDecoder): +class RealPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.Real def valueDecoder( self, @@ -173,10 +175,10 @@ class RealDecoder(AbstractSimpleDecoder): **options, ): ... -class AbstractConstructedDecoder(AbstractDecoder, metaclass=ABCMeta): +class AbstractConstructedPayloadDecoder(AbstractPayloadDecoder, metaclass=ABCMeta): protoComponent: base.ConstructedAsn1Type | None -class UniversalConstructedTypeDecoder(AbstractConstructedDecoder): +class ConstructedPayloadDecoderBase(AbstractConstructedPayloadDecoder): protoRecordComponent: univ.SequenceAndSetBase | None protoSequenceComponent: univ.SequenceOfAndSetOfBase | None def valueDecoder( @@ -202,27 +204,27 @@ class UniversalConstructedTypeDecoder(AbstractConstructedDecoder): **options, ): ... -class SequenceOrSequenceOfDecoder(UniversalConstructedTypeDecoder): +class SequenceOrSequenceOfPayloadDecoder(ConstructedPayloadDecoderBase): protoRecordComponent: univ.Sequence protoSequenceComponent: univ.SequenceOf -class SequenceDecoder(SequenceOrSequenceOfDecoder): +class SequencePayloadDecoder(SequenceOrSequenceOfPayloadDecoder): protoComponent: univ.Sequence -class SequenceOfDecoder(SequenceOrSequenceOfDecoder): +class SequenceOfPayloadDecoder(SequenceOrSequenceOfPayloadDecoder): protoComponent: univ.SequenceOf -class SetOrSetOfDecoder(UniversalConstructedTypeDecoder): +class SetOrSetOfPayloadDecoder(ConstructedPayloadDecoderBase): protoRecordComponent: univ.Set protoSequenceComponent: univ.SetOf -class SetDecoder(SetOrSetOfDecoder): +class SetPayloadDecoder(SetOrSetOfPayloadDecoder): protoComponent: univ.Set -class SetOfDecoder(SetOrSetOfDecoder): +class SetOfPayloadDecoder(SetOrSetOfPayloadDecoder): protoComponent: univ.SetOf -class ChoiceDecoder(AbstractConstructedDecoder): +class ChoicePayloadDecoder(AbstractConstructedPayloadDecoder): protoComponent: univ.Choice def valueDecoder( self, @@ -247,7 +249,7 @@ class ChoiceDecoder(AbstractConstructedDecoder): **options, ): ... -class AnyDecoder(AbstractSimpleDecoder): +class AnyPayloadDecoder(AbstractSimplePayloadDecoder): protoComponent: univ.Any def valueDecoder( self, @@ -272,53 +274,61 @@ class AnyDecoder(AbstractSimpleDecoder): **options, ): ... -class UTF8StringDecoder(OctetStringDecoder): +class UTF8StringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.UTF8String -class NumericStringDecoder(OctetStringDecoder): +class NumericStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.NumericString -class PrintableStringDecoder(OctetStringDecoder): +class PrintableStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.PrintableString -class TeletexStringDecoder(OctetStringDecoder): +class TeletexStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.TeletexString -class VideotexStringDecoder(OctetStringDecoder): +class VideotexStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.VideotexString -class IA5StringDecoder(OctetStringDecoder): +class IA5StringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.IA5String -class GraphicStringDecoder(OctetStringDecoder): +class GraphicStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.GraphicString -class VisibleStringDecoder(OctetStringDecoder): +class VisibleStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.VisibleString -class GeneralStringDecoder(OctetStringDecoder): +class GeneralStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.GeneralString -class UniversalStringDecoder(OctetStringDecoder): +class UniversalStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.UniversalString -class BMPStringDecoder(OctetStringDecoder): +class BMPStringPayloadDecoder(OctetStringPayloadDecoder): protoComponent: char.BMPString -class ObjectDescriptorDecoder(OctetStringDecoder): +class ObjectDescriptorPayloadDecoder(OctetStringPayloadDecoder): protoComponent: useful.ObjectDescriptor -class GeneralizedTimeDecoder(OctetStringDecoder): +class GeneralizedTimePayloadDecoder(OctetStringPayloadDecoder): protoComponent: useful.GeneralizedTime -class UTCTimeDecoder(OctetStringDecoder): +class UTCTimePayloadDecoder(OctetStringPayloadDecoder): protoComponent: useful.UTCTime -class Decoder: +TAG_MAP: dict[TagSet, AbstractPayloadDecoder] +TYPE_MAP: dict[int, AbstractPayloadDecoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemDecoder: defaultErrorState: int - defaultRawDecoder: AnyDecoder + defaultRawDecoder: AnyPayloadDecoder supportIndefLength: bool - def __init__(self, tagMap, typeMap={}) -> None: ... + TAG_MAP: dict[TagSet, AbstractPayloadDecoder] + TYPE_MAP: dict[int, AbstractPayloadDecoder] + def __init__(self, tagMap=..., typeMap=..., **ignored: Unused) -> None: ... def __call__( self, substrate, @@ -332,3 +342,15 @@ class Decoder: ): ... decode: Decoder + +class StreamingDecoder: + SINGLE_ITEM_DECODER: type[SingleItemDecoder] + + def __init__(self, substrate, asn1Spec=None, tagMap=..., typeMap=..., **ignored: Unused) -> None: ... + def __iter__(self): ... + +class Decoder: + STREAMING_DECODER: type[StreamingDecoder] + + @classmethod + def __call__(cls, substrate, asn1Spec=None, tagMap=..., typeMap=..., **ignored: Unused): ... diff --git a/stubs/pyasn1/pyasn1/codec/ber/encoder.pyi b/stubs/pyasn1/pyasn1/codec/ber/encoder.pyi index d9ed6218d..8a78123b4 100644 --- a/stubs/pyasn1/pyasn1/codec/ber/encoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/ber/encoder.pyi @@ -1,7 +1,10 @@ -from _typeshed import Incomplete +from _typeshed import Incomplete, Unused from abc import abstractmethod from pyasn1.type.base import Asn1Type +from pyasn1.type.tag import TagSet + +__all__ = ["Encoder", "encode"] class AbstractItemEncoder: supportIndefLenMode: bool @@ -58,10 +61,25 @@ class ChoiceEncoder(AbstractItemEncoder): class AnyEncoder(OctetStringEncoder): def encodeValue(self, value, asn1Spec, encodeFun, **options): ... -class Encoder: +TAG_MAP: dict[TagSet, AbstractItemEncoder] +TYPE_MAP: dict[int, AbstractItemEncoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemEncoder: fixedDefLengthMode: bool | None fixedChunkSize: int | None - def __init__(self, tagMap, typeMap={}) -> None: ... + TAG_MAP: dict[TagSet, AbstractItemEncoder] + TYPE_MAP: dict[int, AbstractItemEncoder] + + def __init__(self, tagMap=..., typeMap=..., **ignored: Unused) -> None: ... def __call__(self, value, asn1Spec: Asn1Type | None = None, **options): ... +class Encoder: + SINGLE_ITEM_ENCODER: type[SingleItemEncoder] + + def __init__(self, tagMap=..., typeMap=..., **options: Unused) -> None: ... + def __call__(self, pyObject, asn1Spec: Asn1Type | None = None, **options): ... + encode: Encoder diff --git a/stubs/pyasn1/pyasn1/codec/ber/eoo.pyi b/stubs/pyasn1/pyasn1/codec/ber/eoo.pyi index b34fb621f..00375f576 100644 --- a/stubs/pyasn1/pyasn1/codec/ber/eoo.pyi +++ b/stubs/pyasn1/pyasn1/codec/ber/eoo.pyi @@ -1,6 +1,8 @@ from pyasn1.type import base from pyasn1.type.tag import TagSet +__all__ = ["endOfOctets"] + class EndOfOctets(base.SimpleAsn1Type): defaultValue: int tagSet: TagSet diff --git a/stubs/pyasn1/pyasn1/codec/cer/decoder.pyi b/stubs/pyasn1/pyasn1/codec/cer/decoder.pyi index 024d3509e..f847313ad 100644 --- a/stubs/pyasn1/pyasn1/codec/cer/decoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/cer/decoder.pyi @@ -4,7 +4,9 @@ from pyasn1.codec.ber import decoder from pyasn1.type import univ from pyasn1.type.tag import TagSet -class BooleanDecoder(decoder.AbstractSimpleDecoder): +__all__ = ["decode", "StreamingDecoder"] + +class BooleanPayloadDecoder(decoder.AbstractSimplePayloadDecoder): protoComponent: univ.Boolean def valueDecoder( self, @@ -18,10 +20,24 @@ class BooleanDecoder(decoder.AbstractSimpleDecoder): **options, ): ... -BitStringDecoder = decoder.BitStringDecoder -OctetStringDecoder = decoder.OctetStringDecoder -RealDecoder = decoder.RealDecoder +BitStringPayloadDecoder = decoder.BitStringPayloadDecoder +OctetStringPayloadDecoder = decoder.OctetStringPayloadDecoder +RealPayloadDecoder = decoder.RealPayloadDecoder -class Decoder(decoder.Decoder): ... +TAG_MAP: dict[TagSet, decoder.AbstractPayloadDecoder] +TYPE_MAP: dict[int, decoder.AbstractPayloadDecoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemDecoder(decoder.SingleItemDecoder): + TAG_MAP: dict[TagSet, decoder.AbstractPayloadDecoder] + TYPE_MAP: dict[int, decoder.AbstractPayloadDecoder] + +class StreamingDecoder(decoder.StreamingDecoder): + SINGLE_ITEM_DECODER: type[SingleItemDecoder] + +class Decoder(decoder.Decoder): + STREAMING_DECODER: type[StreamingDecoder] decode: Decoder diff --git a/stubs/pyasn1/pyasn1/codec/cer/encoder.pyi b/stubs/pyasn1/pyasn1/codec/cer/encoder.pyi index 3b01db7d4..25552d917 100644 --- a/stubs/pyasn1/pyasn1/codec/cer/encoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/cer/encoder.pyi @@ -1,6 +1,9 @@ from typing import ClassVar from pyasn1.codec.ber import encoder +from pyasn1.type.tag import TagSet + +__all__ = ["Encoder", "encode"] class BooleanEncoder(encoder.IntegerEncoder): def encodeValue(self, value, asn1Spec, encodeFun, **options): ... @@ -33,8 +36,20 @@ class SetEncoder(encoder.SequenceEncoder): class SequenceEncoder(encoder.SequenceEncoder): omitEmptyOptionals: bool -class Encoder(encoder.Encoder): +TAG_MAP: dict[TagSet, encoder.AbstractItemEncoder] +TYPE_MAP: dict[int, encoder.AbstractItemEncoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemEncoder(encoder.SingleItemEncoder): fixedDefLengthMode: bool fixedChunkSize: int + TAG_MAP: dict[TagSet, encoder.AbstractItemEncoder] + TYPE_MAP: dict[int, encoder.AbstractItemEncoder] + +class Encoder(encoder.Encoder): + SINGLE_ITEM_ENCODER: type[SingleItemEncoder] + encode: Encoder diff --git a/stubs/pyasn1/pyasn1/codec/der/decoder.pyi b/stubs/pyasn1/pyasn1/codec/der/decoder.pyi index 68aeb5993..042470f21 100644 --- a/stubs/pyasn1/pyasn1/codec/der/decoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/der/decoder.pyi @@ -1,12 +1,33 @@ +from pyasn1.codec.ber.decoder import AbstractPayloadDecoder from pyasn1.codec.cer import decoder +from pyasn1.type.tag import TagSet -class BitStringDecoder(decoder.BitStringDecoder): +__all__ = ["decode", "StreamingDecoder"] + +class BitStringPayloadDecoder(decoder.BitStringPayloadDecoder): supportConstructedForm: bool -class OctetStringDecoder(decoder.OctetStringDecoder): +class OctetStringPayloadDecoder(decoder.OctetStringPayloadDecoder): supportConstructedForm: bool -class Decoder(decoder.Decoder): +RealPayloadDecoder = decoder.RealPayloadDecoder + +TAG_MAP: dict[TagSet, AbstractPayloadDecoder] +TYPE_MAP: dict[int, AbstractPayloadDecoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemDecoder(decoder.SingleItemDecoder): + TAG_MAP: dict[TagSet, AbstractPayloadDecoder] + TYPE_MAP: dict[int, AbstractPayloadDecoder] + supportIndefLength: bool +class StreamingDecoder(decoder.StreamingDecoder): + SINGLE_ITEM_DECODER: type[SingleItemDecoder] + +class Decoder(decoder.Decoder): + STREAMING_DECODER: type[StreamingDecoder] + decode: Decoder diff --git a/stubs/pyasn1/pyasn1/codec/der/encoder.pyi b/stubs/pyasn1/pyasn1/codec/der/encoder.pyi index 55c024e6c..3b1b5a4a6 100644 --- a/stubs/pyasn1/pyasn1/codec/der/encoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/der/encoder.pyi @@ -1,9 +1,25 @@ +from pyasn1.codec.ber.encoder import AbstractItemEncoder from pyasn1.codec.cer import encoder +from pyasn1.type.tag import TagSet + +__all__ = ["Encoder", "encode"] class SetEncoder(encoder.SetEncoder): ... -class Encoder(encoder.Encoder): +TAG_MAP: dict[TagSet, AbstractItemEncoder] +TYPE_MAP: dict[int, AbstractItemEncoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemEncoder(encoder.SingleItemEncoder): fixedDefLengthMode: bool fixedChunkSize: int + TAG_MAP: dict[TagSet, AbstractItemEncoder] + TYPE_MAP: dict[int, AbstractItemEncoder] + +class Encoder(encoder.Encoder): + SINGLE_ITEM_ENCODER: type[SingleItemEncoder] + encode: Encoder diff --git a/stubs/pyasn1/pyasn1/codec/native/decoder.pyi b/stubs/pyasn1/pyasn1/codec/native/decoder.pyi index e25ef738a..a1bbb983b 100644 --- a/stubs/pyasn1/pyasn1/codec/native/decoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/native/decoder.pyi @@ -1,23 +1,42 @@ from _typeshed import Incomplete, Unused from collections.abc import Callable -class AbstractScalarDecoder: +from pyasn1.type.tag import TagSet + +__all__ = ["decode"] + +class AbstractScalarPayloadDecoder: def __call__(self, pyObject, asn1Spec, decodeFun: Unused = None, **options): ... -class BitStringDecoder(AbstractScalarDecoder): +class BitStringPayloadDecoder(AbstractScalarPayloadDecoder): def __call__(self, pyObject, asn1Spec, decodeFun: Unused = None, **options): ... -class SequenceOrSetDecoder: +class SequenceOrSetPayloadDecoder: def __call__(self, pyObject, asn1Spec, decodeFun: Callable[..., Incomplete] | None = None, **options): ... -class SequenceOfOrSetOfDecoder: +class SequenceOfOrSetOfPayloadDecoder: def __call__(self, pyObject, asn1Spec, decodeFun: Callable[..., Incomplete] | None = None, **options): ... -class ChoiceDecoder: +class ChoicePayloadDecoder: def __call__(self, pyObject, asn1Spec, decodeFun: Callable[..., Incomplete] | None = None, **options): ... -class Decoder: - def __init__(self, tagMap, typeMap) -> None: ... +TAG_MAP: dict[TagSet, AbstractScalarPayloadDecoder | SequenceOrSetPayloadDecoder | ChoicePayloadDecoder] +TYPE_MAP: dict[int, AbstractScalarPayloadDecoder | SequenceOrSetPayloadDecoder | ChoicePayloadDecoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemDecoder: + TAG_MAP: dict[TagSet, AbstractScalarPayloadDecoder | SequenceOrSetPayloadDecoder | ChoicePayloadDecoder] + TYPE_MAP: dict[int, AbstractScalarPayloadDecoder | SequenceOrSetPayloadDecoder | ChoicePayloadDecoder] + + def __init__(self, tagMap=..., typeMap=..., **ignored: Unused) -> None: ... def __call__(self, pyObject, asn1Spec, **options): ... +class Decoder: + SINGLE_ITEM_DECODER: type[SingleItemDecoder] + + def __init__(self, tagMap=..., typeMap=..., **options: Unused) -> None: ... + def __call__(self, pyObject, asn1Spec=None, **kwargs): ... + decode: Decoder diff --git a/stubs/pyasn1/pyasn1/codec/native/encoder.pyi b/stubs/pyasn1/pyasn1/codec/native/encoder.pyi index 337ab2329..a69a11346 100644 --- a/stubs/pyasn1/pyasn1/codec/native/encoder.pyi +++ b/stubs/pyasn1/pyasn1/codec/native/encoder.pyi @@ -1,6 +1,11 @@ +from _typeshed import Unused from abc import abstractmethod from collections import OrderedDict +from pyasn1.type.tag import TagSet + +__all__ = ["encode"] + class AbstractItemEncoder: @abstractmethod def encode(self, value, encodeFun, **options) -> None: ... @@ -44,8 +49,23 @@ class ChoiceEncoder(SequenceEncoder): ... class AnyEncoder(AbstractItemEncoder): def encode(self, value, encodeFun, **options): ... -class Encoder: - def __init__(self, tagMap, typeMap={}) -> None: ... +TAG_MAP: dict[TagSet, AbstractItemEncoder] +TYPE_MAP: dict[int, AbstractItemEncoder] +# deprecated aliases +tagMap = TAG_MAP +typeMap = TYPE_MAP + +class SingleItemEncoder: + TAG_MAP: dict[TagSet, AbstractItemEncoder] + TYPE_MAP: dict[int, AbstractItemEncoder] + + def __init__(self, tagMap=..., typeMap=..., **ignored: Unused) -> None: ... def __call__(self, value, **options): ... -encode: Encoder +class Encoder: + SINGLE_ITEM_ENCODER: type[SingleItemEncoder] + + def __init__(self, tagMap=..., typeMap=..., **options: Unused): ... + def __call__(self, pyObject, asn1Spec=None, **options): ... + +encode: SingleItemEncoder diff --git a/stubs/pyasn1/pyasn1/codec/streaming.pyi b/stubs/pyasn1/pyasn1/codec/streaming.pyi new file mode 100644 index 000000000..9c90e7e06 --- /dev/null +++ b/stubs/pyasn1/pyasn1/codec/streaming.pyi @@ -0,0 +1,21 @@ +import io +from _typeshed import Incomplete +from collections.abc import Generator + +from pyasn1 import error as error +from pyasn1.type import univ as univ + +class CachingStreamWrapper(io.IOBase): + def __init__(self, raw) -> None: ... + def peek(self, n): ... + def seekable(self): ... + def seek(self, n: int = -1, whence=0): ... + def read(self, n: int = -1): ... + @property + def markedPosition(self): ... + def tell(self): ... + +def asSeekableStream(substrate): ... +def isEndOfStream(substrate) -> Generator[Incomplete, None, None]: ... +def peekIntoStream(substrate, size: int = -1) -> Generator[Incomplete, None, None]: ... +def readFromStream(substrate, size: int = -1, context: Incomplete | None = None) -> Generator[Incomplete, None, None]: ... diff --git a/stubs/pyasn1/pyasn1/compat/binary.pyi b/stubs/pyasn1/pyasn1/compat/binary.pyi deleted file mode 100644 index d034c5045..000000000 --- a/stubs/pyasn1/pyasn1/compat/binary.pyi +++ /dev/null @@ -1 +0,0 @@ -from builtins import bin as bin diff --git a/stubs/pyasn1/pyasn1/compat/calling.pyi b/stubs/pyasn1/pyasn1/compat/calling.pyi deleted file mode 100644 index 9b1d682f3..000000000 --- a/stubs/pyasn1/pyasn1/compat/calling.pyi +++ /dev/null @@ -1 +0,0 @@ -from builtins import callable as callable diff --git a/stubs/pyasn1/pyasn1/compat/dateandtime.pyi b/stubs/pyasn1/pyasn1/compat/dateandtime.pyi deleted file mode 100644 index 739dbe57c..000000000 --- a/stubs/pyasn1/pyasn1/compat/dateandtime.pyi +++ /dev/null @@ -1,3 +0,0 @@ -from datetime import datetime - -strptime = datetime.strptime diff --git a/stubs/pyasn1/pyasn1/compat/string.pyi b/stubs/pyasn1/pyasn1/compat/string.pyi deleted file mode 100644 index c88881c11..000000000 --- a/stubs/pyasn1/pyasn1/compat/string.pyi +++ /dev/null @@ -1,2 +0,0 @@ -# Same as string.partition(sep) -def partition(string: str, sep: str) -> tuple[str, str, str]: ... diff --git a/stubs/pyasn1/pyasn1/debug.pyi b/stubs/pyasn1/pyasn1/debug.pyi index 5af57249f..b0060f42b 100644 --- a/stubs/pyasn1/pyasn1/debug.pyi +++ b/stubs/pyasn1/pyasn1/debug.pyi @@ -1,6 +1,8 @@ import logging from typing import TextIO +__all__ = ["Debug", "setLogger", "hexdump"] + class Printer: def __init__( self, @@ -10,8 +12,6 @@ class Printer: ) -> None: ... def __call__(self, msg) -> None: ... -NullHandler = logging.NullHandler - class Debug: defaultPrinter: Printer def __init__(self, *flags, **options) -> None: ... diff --git a/stubs/pyasn1/pyasn1/error.pyi b/stubs/pyasn1/pyasn1/error.pyi index 892e6e2c5..2625bb2cd 100644 --- a/stubs/pyasn1/pyasn1/error.pyi +++ b/stubs/pyasn1/pyasn1/error.pyi @@ -1,6 +1,12 @@ -class PyAsn1Error(Exception): ... +class PyAsn1Error(Exception): + def __init__(self, *args, **kwargs) -> None: ... + @property + def context(self): ... + class ValueConstraintError(PyAsn1Error): ... class SubstrateUnderrunError(PyAsn1Error): ... +class EndOfStreamError(SubstrateUnderrunError): ... +class UnsupportedSubstrateError(PyAsn1Error): ... class PyAsn1UnicodeError(PyAsn1Error, UnicodeError): def __init__(self, message, unicode_error: UnicodeError | None = None) -> None: ... diff --git a/stubs/pyasn1/pyasn1/type/base.pyi b/stubs/pyasn1/pyasn1/type/base.pyi index 808cff5f1..a5f60f50e 100644 --- a/stubs/pyasn1/pyasn1/type/base.pyi +++ b/stubs/pyasn1/pyasn1/type/base.pyi @@ -5,6 +5,8 @@ from typing_extensions import final from pyasn1.type import constraint, namedtype from pyasn1.type.tag import TagSet +__all__ = ["Asn1Item", "Asn1Type", "SimpleAsn1Type", "ConstructedAsn1Type"] + class Asn1Item: @classmethod def getTypeId(cls, increment: int = 1): ... diff --git a/stubs/pyasn1/pyasn1/type/char.pyi b/stubs/pyasn1/pyasn1/type/char.pyi index 61a43f6fc..8791c07ab 100644 --- a/stubs/pyasn1/pyasn1/type/char.pyi +++ b/stubs/pyasn1/pyasn1/type/char.pyi @@ -1,6 +1,22 @@ from pyasn1.type import univ from pyasn1.type.tag import TagSet +__all__ = [ + "NumericString", + "PrintableString", + "TeletexString", + "T61String", + "VideotexString", + "IA5String", + "GraphicString", + "VisibleString", + "ISO646String", + "GeneralString", + "UniversalString", + "BMPString", + "UTF8String", +] + class AbstractCharacterString(univ.OctetString): def __bytes__(self) -> bytes: ... def prettyIn(self, value): ... diff --git a/stubs/pyasn1/pyasn1/type/constraint.pyi b/stubs/pyasn1/pyasn1/type/constraint.pyi index 21728b81f..df8d2c558 100644 --- a/stubs/pyasn1/pyasn1/type/constraint.pyi +++ b/stubs/pyasn1/pyasn1/type/constraint.pyi @@ -1,3 +1,15 @@ +__all__ = [ + "SingleValueConstraint", + "ContainedSubtypeConstraint", + "ValueRangeConstraint", + "ValueSizeConstraint", + "PermittedAlphabetConstraint", + "InnerTypeConstraint", + "ConstraintsExclusion", + "ConstraintsIntersection", + "ConstraintsUnion", +] + class AbstractConstraint: def __init__(self, *values) -> None: ... def __call__(self, value, idx: int | None = None) -> None: ... diff --git a/stubs/pyasn1/pyasn1/type/namedtype.pyi b/stubs/pyasn1/pyasn1/type/namedtype.pyi index 5c4eadf30..c8d12b5de 100644 --- a/stubs/pyasn1/pyasn1/type/namedtype.pyi +++ b/stubs/pyasn1/pyasn1/type/namedtype.pyi @@ -1,3 +1,5 @@ +__all__ = ["NamedType", "OptionalNamedType", "DefaultedNamedType", "NamedTypes"] + class NamedType: isOptional: bool isDefaulted: bool diff --git a/stubs/pyasn1/pyasn1/type/namedval.pyi b/stubs/pyasn1/pyasn1/type/namedval.pyi index 348fb9174..20c190470 100644 --- a/stubs/pyasn1/pyasn1/type/namedval.pyi +++ b/stubs/pyasn1/pyasn1/type/namedval.pyi @@ -1,6 +1,8 @@ from _typeshed import Incomplete from collections.abc import Generator +__all__ = ["NamedValues"] + class NamedValues: def __init__(self, *args, **kwargs) -> None: ... def __eq__(self, other): ... diff --git a/stubs/pyasn1/pyasn1/type/opentype.pyi b/stubs/pyasn1/pyasn1/type/opentype.pyi index 919055315..8317aa0db 100644 --- a/stubs/pyasn1/pyasn1/type/opentype.pyi +++ b/stubs/pyasn1/pyasn1/type/opentype.pyi @@ -3,6 +3,8 @@ from collections.abc import Mapping from pyasn1.type.base import Asn1Type +__all__ = ["OpenType"] + class OpenType: def __init__(self, name, typeMap: Mapping[Incomplete, Asn1Type] | None = None) -> None: ... @property diff --git a/stubs/pyasn1/pyasn1/type/tag.pyi b/stubs/pyasn1/pyasn1/type/tag.pyi index 732916513..15d26de05 100644 --- a/stubs/pyasn1/pyasn1/type/tag.pyi +++ b/stubs/pyasn1/pyasn1/type/tag.pyi @@ -1,3 +1,16 @@ +__all__ = [ + "tagClassUniversal", + "tagClassApplication", + "tagClassContext", + "tagClassPrivate", + "tagFormatSimple", + "tagFormatConstructed", + "tagCategoryImplicit", + "tagCategoryExplicit", + "tagCategoryUntagged", + "Tag", + "TagSet", +] tagClassUniversal: int tagClassApplication: int tagClassContext: int diff --git a/stubs/pyasn1/pyasn1/type/tagmap.pyi b/stubs/pyasn1/pyasn1/type/tagmap.pyi index 175da1faa..b842e0a4a 100644 --- a/stubs/pyasn1/pyasn1/type/tagmap.pyi +++ b/stubs/pyasn1/pyasn1/type/tagmap.pyi @@ -2,6 +2,8 @@ from collections.abc import Container, Mapping from pyasn1.type.base import Asn1Type +__all__ = ["TagMap"] + class TagMap: def __init__( self, diff --git a/stubs/pyasn1/pyasn1/type/univ.pyi b/stubs/pyasn1/pyasn1/type/univ.pyi index 6330ba5d4..f48d1bdf6 100644 --- a/stubs/pyasn1/pyasn1/type/univ.pyi +++ b/stubs/pyasn1/pyasn1/type/univ.pyi @@ -6,6 +6,26 @@ from typing_extensions import Self, SupportsIndex, TypeAlias from pyasn1.type import base, constraint, namedtype, namedval from pyasn1.type.tag import TagSet +__all__ = [ + "Integer", + "Boolean", + "BitString", + "OctetString", + "Null", + "ObjectIdentifier", + "Real", + "Enumerated", + "SequenceOfAndSetOfBase", + "SequenceOf", + "SetOf", + "SequenceAndSetBase", + "Sequence", + "Set", + "Choice", + "Any", + "NoValue", + "noValue", +] _SizedIntegerable: TypeAlias = ReadableBuffer | str | SupportsInt | SupportsIndex | SupportsTrunc NoValue = base.NoValue diff --git a/stubs/pyasn1/pyasn1/type/useful.pyi b/stubs/pyasn1/pyasn1/type/useful.pyi index 76a80aefe..5d2ad64b3 100644 --- a/stubs/pyasn1/pyasn1/type/useful.pyi +++ b/stubs/pyasn1/pyasn1/type/useful.pyi @@ -3,6 +3,8 @@ import datetime from pyasn1.type import char from pyasn1.type.tag import TagSet +__all__ = ["ObjectDescriptor", "GeneralizedTime", "UTCTime"] + class ObjectDescriptor(char.GraphicString): tagSet: TagSet typeId: int