Finish mail (#396)

* remove old email files

* finish email.mime

* finish email.encoders

* email.utils: stubgen run, reorder

* finish email.utils

* finish email.iterators

* email.mime is a module

* fix mime
This commit is contained in:
Valérian Rousset
2016-07-30 00:25:52 +02:00
committed by Matthias Kramm
parent af860ee993
commit 24086b2195
17 changed files with 78 additions and 532 deletions

View File

@@ -1,397 +0,0 @@
# Stubs for email._header_value_parser (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Any
WSP = ... # type: Any
CFWS_LEADER = ... # type: Any
SPECIALS = ... # type: Any
ATOM_ENDS = ... # type: Any
DOT_ATOM_ENDS = ... # type: Any
PHRASE_ENDS = ... # type: Any
TSPECIALS = ... # type: Any
TOKEN_ENDS = ... # type: Any
ASPECIALS = ... # type: Any
ATTRIBUTE_ENDS = ... # type: Any
EXTENDED_ATTRIBUTE_ENDS = ... # type: Any
def quote_string(value): ...
class _Folded:
maxlen = ... # type: Any
policy = ... # type: Any
lastlen = ... # type: Any
stickyspace = ... # type: Any
firstline = ... # type: Any
done = ... # type: Any
current = ... # type: Any
def __init__(self, maxlen, policy) -> None: ...
def newline(self): ...
def finalize(self): ...
def append(self, stoken): ...
def append_if_fits(self, token, stoken=...): ...
class TokenList(list):
token_type = ... # type: Any
defects = ... # type: Any
def __init__(self, *args, **kw) -> None: ...
@property
def value(self): ...
@property
def all_defects(self): ...
@property
def parts(self): ...
def startswith_fws(self): ...
def pop_leading_fws(self): ...
def pop_trailing_ws(self): ...
@property
def has_fws(self): ...
def has_leading_comment(self): ...
@property
def comments(self): ...
def fold(self, policy): ...
def as_encoded_word(self, charset): ...
def cte_encode(self, charset, policy): ...
def pprint(self, indent=...): ...
def ppstr(self, indent=...): ...
class WhiteSpaceTokenList(TokenList):
@property
def value(self): ...
@property
def comments(self): ...
class UnstructuredTokenList(TokenList):
token_type = ... # type: Any
def cte_encode(self, charset, policy): ...
class Phrase(TokenList):
token_type = ... # type: Any
def cte_encode(self, charset, policy): ...
class Word(TokenList):
token_type = ... # type: Any
class CFWSList(WhiteSpaceTokenList):
token_type = ... # type: Any
def has_leading_comment(self): ...
class Atom(TokenList):
token_type = ... # type: Any
class Token(TokenList):
token_type = ... # type: Any
class EncodedWord(TokenList):
token_type = ... # type: Any
cte = ... # type: Any
charset = ... # type: Any
lang = ... # type: Any
@property
def encoded(self): ...
class QuotedString(TokenList):
token_type = ... # type: Any
@property
def content(self): ...
@property
def quoted_value(self): ...
@property
def stripped_value(self): ...
class BareQuotedString(QuotedString):
token_type = ... # type: Any
@property
def value(self): ...
class Comment(WhiteSpaceTokenList):
token_type = ... # type: Any
def quote(self, value): ...
@property
def content(self): ...
@property
def comments(self): ...
class AddressList(TokenList):
token_type = ... # type: Any
@property
def addresses(self): ...
@property
def mailboxes(self): ...
@property
def all_mailboxes(self): ...
class Address(TokenList):
token_type = ... # type: Any
@property
def display_name(self): ...
@property
def mailboxes(self): ...
@property
def all_mailboxes(self): ...
class MailboxList(TokenList):
token_type = ... # type: Any
@property
def mailboxes(self): ...
@property
def all_mailboxes(self): ...
class GroupList(TokenList):
token_type = ... # type: Any
@property
def mailboxes(self): ...
@property
def all_mailboxes(self): ...
class Group(TokenList):
token_type = ... # type: Any
@property
def mailboxes(self): ...
@property
def all_mailboxes(self): ...
@property
def display_name(self): ...
class NameAddr(TokenList):
token_type = ... # type: Any
@property
def display_name(self): ...
@property
def local_part(self): ...
@property
def domain(self): ...
@property
def route(self): ...
@property
def addr_spec(self): ...
class AngleAddr(TokenList):
token_type = ... # type: Any
@property
def local_part(self): ...
@property
def domain(self): ...
@property
def route(self): ...
@property
def addr_spec(self): ...
class ObsRoute(TokenList):
token_type = ... # type: Any
@property
def domains(self): ...
class Mailbox(TokenList):
token_type = ... # type: Any
@property
def display_name(self): ...
@property
def local_part(self): ...
@property
def domain(self): ...
@property
def route(self): ...
@property
def addr_spec(self): ...
class InvalidMailbox(TokenList):
token_type = ... # type: Any
@property
def display_name(self): ...
local_part = ... # type: Any
class Domain(TokenList):
token_type = ... # type: Any
@property
def domain(self): ...
class DotAtom(TokenList):
token_type = ... # type: Any
class DotAtomText(TokenList):
token_type = ... # type: Any
class AddrSpec(TokenList):
token_type = ... # type: Any
@property
def local_part(self): ...
@property
def domain(self): ...
@property
def value(self): ...
@property
def addr_spec(self): ...
class ObsLocalPart(TokenList):
token_type = ... # type: Any
class DisplayName(Phrase):
token_type = ... # type: Any
@property
def display_name(self): ...
@property
def value(self): ...
class LocalPart(TokenList):
token_type = ... # type: Any
@property
def value(self): ...
@property
def local_part(self): ...
class DomainLiteral(TokenList):
token_type = ... # type: Any
@property
def domain(self): ...
@property
def ip(self): ...
class MIMEVersion(TokenList):
token_type = ... # type: Any
major = ... # type: Any
minor = ... # type: Any
class Parameter(TokenList):
token_type = ... # type: Any
sectioned = ... # type: Any
extended = ... # type: Any
charset = ... # type: Any
@property
def section_number(self): ...
@property
def param_value(self): ...
class InvalidParameter(Parameter):
token_type = ... # type: Any
class Attribute(TokenList):
token_type = ... # type: Any
@property
def stripped_value(self): ...
class Section(TokenList):
token_type = ... # type: Any
number = ... # type: Any
class Value(TokenList):
token_type = ... # type: Any
@property
def stripped_value(self): ...
class MimeParameters(TokenList):
token_type = ... # type: Any
@property
def params(self): ...
class ParameterizedHeaderValue(TokenList):
@property
def params(self): ...
@property
def parts(self): ...
class ContentType(ParameterizedHeaderValue):
token_type = ... # type: Any
maintype = ... # type: Any
subtype = ... # type: Any
class ContentDisposition(ParameterizedHeaderValue):
token_type = ... # type: Any
content_disposition = ... # type: Any
class ContentTransferEncoding(TokenList):
token_type = ... # type: Any
cte = ... # type: Any
class HeaderLabel(TokenList):
token_type = ... # type: Any
class Header(TokenList):
token_type = ... # type: Any
class Terminal(str):
token_type = ... # type: Any
defects = ... # type: Any
def __new__(cls, value, token_type): ...
@property
def all_defects(self): ...
def cte_encode(self, charset, policy): ...
def pop_trailing_ws(self): ...
def pop_leading_fws(self): ...
@property
def comments(self): ...
def has_leading_comment(self): ...
def __getnewargs__(self): ...
class WhiteSpaceTerminal(Terminal):
@property
def value(self): ...
def startswith_fws(self): ...
has_fws = ... # type: Any
class ValueTerminal(Terminal):
@property
def value(self): ...
def startswith_fws(self): ...
has_fws = ... # type: Any
def as_encoded_word(self, charset): ...
class EWWhiteSpaceTerminal(WhiteSpaceTerminal):
@property
def value(self): ...
@property
def encoded(self): ...
has_fws = ... # type: Any
DOT = ... # type: Any
ListSeparator = ... # type: Any
RouteComponentMarker = ... # type: Any
def get_fws(value): ...
def get_encoded_word(value): ...
def get_unstructured(value): ...
def get_qp_ctext(value): ...
def get_qcontent(value): ...
def get_atext(value): ...
def get_bare_quoted_string(value): ...
def get_comment(value): ...
def get_cfws(value): ...
def get_quoted_string(value): ...
def get_atom(value): ...
def get_dot_atom_text(value): ...
def get_dot_atom(value): ...
def get_word(value): ...
def get_phrase(value): ...
def get_local_part(value): ...
def get_obs_local_part(value): ...
def get_dtext(value): ...
def get_domain_literal(value): ...
def get_domain(value): ...
def get_addr_spec(value): ...
def get_obs_route(value): ...
def get_angle_addr(value): ...
def get_display_name(value): ...
def get_name_addr(value): ...
def get_mailbox(value): ...
def get_invalid_mailbox(value, endchars): ...
def get_mailbox_list(value): ...
def get_group_list(value): ...
def get_group(value): ...
def get_address(value): ...
def get_address_list(value): ...
def parse_mime_version(value): ...
def get_invalid_parameter(value): ...
def get_ttext(value): ...
def get_token(value): ...
def get_attrtext(value): ...
def get_attribute(value): ...
def get_extended_attrtext(value): ...
def get_extended_attribute(value): ...
def get_section(value): ...
def get_value(value): ...
def get_parameter(value): ...
def parse_mime_parameters(value): ...
def parse_content_type_header(value): ...
def parse_content_disposition_header(value): ...
def parse_content_transfer_encoding_header(value): ...

View File

@@ -1,44 +0,0 @@
# Stubs for email._parseaddr (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Any
def parsedate_tz(data): ...
def parsedate(data): ...
def mktime_tz(data): ...
def quote(str): ...
class AddrlistClass:
specials = ... # type: Any
pos = ... # type: Any
LWS = ... # type: Any
CR = ... # type: Any
FWS = ... # type: Any
atomends = ... # type: Any
phraseends = ... # type: Any
field = ... # type: Any
commentlist = ... # type: Any
def __init__(self, field) -> None: ...
def gotonext(self): ...
def getaddrlist(self): ...
def getaddress(self): ...
def getrouteaddr(self): ...
def getaddrspec(self): ...
def getdomain(self): ...
def getdelimited(self, beginchar, endchars, allowcomments=...): ...
def getquote(self): ...
def getcomment(self): ...
def getdomainliteral(self): ...
def getatom(self, atomends=...): ...
def getphraselist(self): ...
class AddressList(AddrlistClass):
addresslist = ... # type: Any
def __init__(self, field) -> None: ...
def __len__(self): ...
def __add__(self, other): ...
def __iadd__(self, other): ...
def __sub__(self, other): ...
def __isub__(self, other): ...
def __getitem__(self, index): ...

View File

@@ -1,13 +0,0 @@
# Stubs for email.base64mime (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Any
def header_length(bytearray): ...
def header_encode(header_bytes, charset=...): ...
def body_encode(s, maxlinelen=..., eol=...): ...
def decode(string): ...
body_decode = ... # type: Any
decodestring = ... # type: Any

View File

@@ -1,8 +1,8 @@
# Stubs for email.encoders (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
def encode_base64(msg): ...
def encode_quopri(msg): ...
def encode_7or8bit(msg): ...
def encode_noop(msg): ...
from email.message import Message
def encode_base64(msg: Message) -> None: ...
def encode_quopri(msg: Message) -> None: ...
def encode_7or8bit(msg: Message) -> None: ...
def encode_noop(msg: Message) -> None: ...

View File

@@ -1,7 +1,8 @@
# Stubs for email.iterators (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
def walk(self): ...
def body_line_iterator(msg, decode=...): ...
def typed_subpart_iterator(msg, maintype=..., subtype=...): ...
from typing import Iterator, Optional
from email.message import Message
def body_line_iterator(msg: Message, decode: bool = ...) -> Iterator[str]: ...
def typed_subpart_iterator(msg: Message, maintype: str = ...,
subtype: Optional[str] = ...) -> Iterator[str]: ...

View File

View File

@@ -1,4 +0,0 @@
# Stubs for email.mime (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.

View File

@@ -1,8 +1,11 @@
# Stubs for email.mime.application (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Callable, Optional, Tuple, Union
from email.mime.nonmultipart import MIMENonMultipart
_ParamsType = Union[str, None, Tuple[str, Optional[str], str]]
class MIMEApplication(MIMENonMultipart):
def __init__(self, _data, _subtype=..., _encoder=..., **_params) -> None: ...
def __init__(self, _data: bytes, _subtype: str = ...,
_encoder: Callable[[MIMEApplication], None] = ...,
**_params: _ParamsType) -> None: ...

View File

@@ -1,8 +1,11 @@
# Stubs for email.mime.audio (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Callable, Optional, Tuple, Union
from email.mime.nonmultipart import MIMENonMultipart
_ParamsType = Union[str, None, Tuple[str, Optional[str], str]]
class MIMEAudio(MIMENonMultipart):
def __init__(self, _audiodata, _subtype=..., _encoder=..., **_params) -> None: ...
def __init__(self, _audiodata: bytes, _subtype: Optional[str] = ...,
_encoder: Callable[[MIMEAudio], None] = ...,
**_params: _ParamsType) -> None: ...

View File

@@ -1,8 +1,10 @@
# Stubs for email.mime.base (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from email import message
from typing import Optional, Tuple, Union
import email.message
class MIMEBase(message.Message):
def __init__(self, _maintype, _subtype, **_params) -> None: ...
_ParamsType = Union[str, None, Tuple[str, Optional[str], str]]
class MIMEBase(email.message.Message):
def __init__(self, _maintype: str, _subtype: str,
**_params: _ParamsType) -> None: ...

View File

@@ -1,8 +1,11 @@
# Stubs for email.mime.image (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Callable, Optional, Tuple, Union
from email.mime.nonmultipart import MIMENonMultipart
_ParamsType = Union[str, None, Tuple[str, Optional[str], str]]
class MIMEImage(MIMENonMultipart):
def __init__(self, _imagedata, _subtype=..., _encoder=..., **_params) -> None: ...
def __init__(self, _imagedata: bytes, _subtype: Optional[str] = ...,
_encoder: Callable[[MIMEImage], None] = ...,
**_params: _ParamsType) -> None: ...

View File

@@ -1,8 +1,7 @@
# Stubs for email.mime.message (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from email.message import Message
from email.mime.nonmultipart import MIMENonMultipart
class MIMEMessage(MIMENonMultipart):
def __init__(self, _msg, _subtype=...) -> None: ...
def __init__(self, _msg: Message, _subtype: str = ...) -> None: ...

View File

@@ -1,8 +1,12 @@
# Stubs for email.mime.multipart (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Optional, Sequence, Tuple, Union
from email.message import Message
from email.mime.base import MIMEBase
_ParamsType = Union[str, None, Tuple[str, Optional[str], str]]
class MIMEMultipart(MIMEBase):
def __init__(self, _subtype=..., boundary=..., _subparts=..., **_params) -> None: ...
def __init__(self, _subtype: str = ..., boundary: Optional[str] = ...,
_subparts: Optional[Sequence[Message]] = ...,
**_params: _ParamsType) -> None: ...

View File

@@ -1,8 +1,5 @@
# Stubs for email.mime.nonmultipart (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from email.mime.base import MIMEBase
class MIMENonMultipart(MIMEBase):
def attach(self, payload): ...
class MIMENonMultipart(MIMEBase): ...

View File

@@ -1,8 +1,8 @@
# Stubs for email.mime.text (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Optional
from email.mime.nonmultipart import MIMENonMultipart
class MIMEText(MIMENonMultipart):
def __init__(self, _text, _subtype=..., _charset=...) -> None: ...
def __init__(self, _text: str, _subtype: str = ...,
_charset: Optional[str] = ...) -> None: ...

View File

@@ -1,18 +0,0 @@
# Stubs for email.quoprimime (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
from typing import Any
def header_length(bytearray): ...
def body_length(bytearray): ...
def unquote(s): ...
def quote(c): ...
def header_encode(header_bytes, charset=...): ...
def body_encode(body, maxlinelen=..., eol=...): ...
def decode(encoded, eol=...): ...
body_decode = ... # type: Any
decodestring = ... # type: Any
def header_decode(s): ...

View File

@@ -1,22 +1,32 @@
# Stubs for email.utils (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.
import email._parseaddr
from typing import List, Optional, Tuple, Union
from email.charset import Charset
import datetime
mktime_tz = email._parseaddr.mktime_tz
parsedate = email._parseaddr.parsedate
parsedate_tz = email._parseaddr.parsedate_tz
_ParamType = Union[str, Tuple[Optional[str], Optional[str], str]]
_PDTZ = Tuple[str, str, str, str, str, str, str, str, str, str]
def formataddr(pair, charset=...): ...
def getaddresses(fieldvalues): ...
def formatdate(timeval=..., localtime=..., usegmt=...): ...
def format_datetime(dt, usegmt=...): ...
def make_msgid(idstring=..., domain=...): ...
def parsedate_to_datetime(data): ...
def parseaddr(addr): ...
def unquote(str): ...
def decode_rfc2231(s): ...
def encode_rfc2231(s, charset=..., language=...): ...
def decode_params(params): ...
def collapse_rfc2231_value(value, errors=..., fallback_charset=...): ...
def quote(str: str) -> str: ...
def unquote(str: str) -> str: ...
def parseaddr(address: str) -> Tuple[str, str]: ...
def formataddr(pair: Tuple[str, str],
charset: Union[str, Charset] = ...) -> str: ...
def getaddresses(fieldvalues: List[str]) -> List[Tuple[str, str]]: ...
def parsedate(date: str) -> Optional[Tuple[str, str, str, str, str, str, str, str, str]]: ...
def parsedate_tz(date: str) -> Optional[_PDTZ]: ...
def parsedate_to_datetime(date: str) -> datetime.datetime: ...
def mktime_tz(tuple: _PDTZ) -> int: ...
def formatdate(timeval: Optional[float] = ..., localtime: bool = ...,
usegmt: bool = ...) -> str: ...
def format_datetime(dt: datetime.datetime, usegmt: bool = ...) -> str: ...
def localtime(dt: Optional[datetime.datetime] = ...) -> datetime.datetime: ...
def make_msgid(idstring: Optional[str] = ...,
domain: Optional[str] = ...) -> str: ...
def decode_rfc2231(s: str) -> Tuple[Optional[str], Optional[str], str]: ...
def encode_rfc2231(s: str, charset: Optional[str] = ...,
language: Optional[str] = ...) -> str: ...
def collapse_rfc2231_value(value: _ParamType, errors: str = ...,
fallback_charset: str = ...) -> str: ...
def decode_params(params: List[Tuple[str, str]]) \
-> List[Tuple[str, _ParamType]]: ...