summaryrefslogtreecommitdiffstats
path: root/Lib/email
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2023-08-22 08:49:35 (GMT)
committerGitHub <noreply@github.com>2023-08-22 08:49:35 (GMT)
commitdd0a1f9da283bd784e2c88efec0a45cef978516a (patch)
tree0d79879ecc4e266adada5aa68a061f782002489a /Lib/email
parentcc42182c978cf9e304c1b03f94486c0a0785a477 (diff)
downloadcpython-dd0a1f9da283bd784e2c88efec0a45cef978516a.zip
cpython-dd0a1f9da283bd784e2c88efec0a45cef978516a.tar.gz
cpython-dd0a1f9da283bd784e2c88efec0a45cef978516a.tar.bz2
[3.11] gh-102507 Remove invisible pagebreak characters (GH-102531) (#108266)
gh-102507 Remove invisible pagebreak characters (GH-102531) (cherry picked from commit b097925858c6975c73e989226cf278cc382c0416) Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com> Co-authored-by: AlexWaygood <alex.waygood@gmail.com>
Diffstat (limited to 'Lib/email')
-rw-r--r--Lib/email/__init__.py1
-rw-r--r--Lib/email/base64mime.py4
-rw-r--r--Lib/email/charset.py5
-rw-r--r--Lib/email/encoders.py4
-rw-r--r--Lib/email/feedparser.py2
-rw-r--r--Lib/email/generator.py5
-rw-r--r--Lib/email/header.py5
-rw-r--r--Lib/email/iterators.py3
-rw-r--r--Lib/email/mime/base.py1
-rw-r--r--Lib/email/mime/message.py1
-rw-r--r--Lib/email/mime/multipart.py1
-rw-r--r--Lib/email/mime/nonmultipart.py1
-rw-r--r--Lib/email/mime/text.py1
-rw-r--r--Lib/email/parser.py3
14 files changed, 2 insertions, 35 deletions
diff --git a/Lib/email/__init__.py b/Lib/email/__init__.py
index fae8724..9fa4778 100644
--- a/Lib/email/__init__.py
+++ b/Lib/email/__init__.py
@@ -25,7 +25,6 @@ __all__ = [
]
-
# Some convenience routines. Don't import Parser and Message as side-effects
# of importing email since those cascadingly import most of the rest of the
# email package.
diff --git a/Lib/email/base64mime.py b/Lib/email/base64mime.py
index a7cc373..4cdf226 100644
--- a/Lib/email/base64mime.py
+++ b/Lib/email/base64mime.py
@@ -45,7 +45,6 @@ EMPTYSTRING = ''
MISC_LEN = 7
-
# Helpers
def header_length(bytearray):
"""Return the length of s when it is encoded with base64."""
@@ -57,7 +56,6 @@ def header_length(bytearray):
return n
-
def header_encode(header_bytes, charset='iso-8859-1'):
"""Encode a single header line with Base64 encoding in a given charset.
@@ -72,7 +70,6 @@ def header_encode(header_bytes, charset='iso-8859-1'):
return '=?%s?b?%s?=' % (charset, encoded)
-
def body_encode(s, maxlinelen=76, eol=NL):
r"""Encode a string with base64.
@@ -98,7 +95,6 @@ def body_encode(s, maxlinelen=76, eol=NL):
return EMPTYSTRING.join(encvec)
-
def decode(string):
"""Decode a raw base64 string, returning a bytes object.
diff --git a/Lib/email/charset.py b/Lib/email/charset.py
index d3d759a..1d4db7c 100644
--- a/Lib/email/charset.py
+++ b/Lib/email/charset.py
@@ -18,7 +18,6 @@ from email import errors
from email.encoders import encode_7or8bit
-
# Flags for types of header encodings
QP = 1 # Quoted-Printable
BASE64 = 2 # Base64
@@ -32,7 +31,6 @@ UNKNOWN8BIT = 'unknown-8bit'
EMPTYSTRING = ''
-
# Defaults
CHARSETS = {
# input header enc body enc output conv
@@ -104,7 +102,6 @@ CODEC_MAP = {
}
-
# Convenience functions for extending the above mappings
def add_charset(charset, header_enc=None, body_enc=None, output_charset=None):
"""Add character set properties to the global registry.
@@ -153,7 +150,6 @@ def add_codec(charset, codecname):
CODEC_MAP[charset] = codecname
-
# Convenience function for encoding strings, taking into account
# that they might be unknown-8bit (ie: have surrogate-escaped bytes)
def _encode(string, codec):
@@ -163,7 +159,6 @@ def _encode(string, codec):
return string.encode(codec)
-
class Charset:
"""Map character sets to their email properties.
diff --git a/Lib/email/encoders.py b/Lib/email/encoders.py
index 0a66acb..17bd1ab 100644
--- a/Lib/email/encoders.py
+++ b/Lib/email/encoders.py
@@ -16,7 +16,6 @@ from base64 import encodebytes as _bencode
from quopri import encodestring as _encodestring
-
def _qencode(s):
enc = _encodestring(s, quotetabs=True)
# Must encode spaces, which quopri.encodestring() doesn't do
@@ -34,7 +33,6 @@ def encode_base64(msg):
msg['Content-Transfer-Encoding'] = 'base64'
-
def encode_quopri(msg):
"""Encode the message's payload in quoted-printable.
@@ -46,7 +44,6 @@ def encode_quopri(msg):
msg['Content-Transfer-Encoding'] = 'quoted-printable'
-
def encode_7or8bit(msg):
"""Set the Content-Transfer-Encoding header to 7bit or 8bit."""
orig = msg.get_payload(decode=True)
@@ -64,6 +61,5 @@ def encode_7or8bit(msg):
msg['Content-Transfer-Encoding'] = '7bit'
-
def encode_noop(msg):
"""Do nothing."""
diff --git a/Lib/email/feedparser.py b/Lib/email/feedparser.py
index e400dc7..89c7391 100644
--- a/Lib/email/feedparser.py
+++ b/Lib/email/feedparser.py
@@ -41,7 +41,6 @@ NL = '\n'
NeedMoreData = object()
-
class BufferedSubFile(object):
"""A file-ish object that can have new data loaded into it.
@@ -132,7 +131,6 @@ class BufferedSubFile(object):
return line
-
class FeedParser:
"""A feed-style parser of email."""
diff --git a/Lib/email/generator.py b/Lib/email/generator.py
index c9b1216..b8c1091 100644
--- a/Lib/email/generator.py
+++ b/Lib/email/generator.py
@@ -22,7 +22,6 @@ NLCRE = re.compile(r'\r\n|\r|\n')
fcre = re.compile(r'^From ', re.MULTILINE)
-
class Generator:
"""Generates output from a Message object tree.
@@ -392,7 +391,7 @@ class Generator:
def _compile_re(cls, s, flags):
return re.compile(s, flags)
-
+
class BytesGenerator(Generator):
"""Generates a bytes version of a Message object tree.
@@ -443,7 +442,6 @@ class BytesGenerator(Generator):
return re.compile(s.encode('ascii'), flags)
-
_FMT = '[Non-text (%(type)s) part of message omitted, filename %(filename)s]'
class DecodedGenerator(Generator):
@@ -503,7 +501,6 @@ class DecodedGenerator(Generator):
}, file=self)
-
# Helper used by Generator._make_boundary
_width = len(repr(sys.maxsize-1))
_fmt = '%%0%dd' % _width
diff --git a/Lib/email/header.py b/Lib/email/header.py
index 4ab0032..984851a 100644
--- a/Lib/email/header.py
+++ b/Lib/email/header.py
@@ -52,12 +52,10 @@ fcre = re.compile(r'[\041-\176]+:$')
_embedded_header = re.compile(r'\n[^ \t]+:')
-
# Helpers
_max_append = email.quoprimime._max_append
-
def decode_header(header):
"""Decode a message header value without converting charset.
@@ -152,7 +150,6 @@ def decode_header(header):
return collapsed
-
def make_header(decoded_seq, maxlinelen=None, header_name=None,
continuation_ws=' '):
"""Create a Header from a sequence of pairs as returned by decode_header()
@@ -175,7 +172,6 @@ def make_header(decoded_seq, maxlinelen=None, header_name=None,
return h
-
class Header:
def __init__(self, s=None, charset=None,
maxlinelen=None, header_name=None,
@@ -409,7 +405,6 @@ class Header:
self._chunks = chunks
-
class _ValueFormatter:
def __init__(self, headerlen, maxlen, continuation_ws, splitchars):
self._maxlen = maxlen
diff --git a/Lib/email/iterators.py b/Lib/email/iterators.py
index b5502ee..3410935 100644
--- a/Lib/email/iterators.py
+++ b/Lib/email/iterators.py
@@ -15,7 +15,6 @@ import sys
from io import StringIO
-
# This function will become a method of the Message class
def walk(self):
"""Walk over the message tree, yielding each subpart.
@@ -29,7 +28,6 @@ def walk(self):
yield from subpart.walk()
-
# These two functions are imported into the Iterators.py interface module.
def body_line_iterator(msg, decode=False):
"""Iterate over the parts, returning string payloads line-by-line.
@@ -55,7 +53,6 @@ def typed_subpart_iterator(msg, maintype='text', subtype=None):
yield subpart
-
def _structure(msg, fp=None, level=0, include_default=False):
"""A handy debugging aid"""
if fp is None:
diff --git a/Lib/email/mime/base.py b/Lib/email/mime/base.py
index 1a3f9b5..f601f62 100644
--- a/Lib/email/mime/base.py
+++ b/Lib/email/mime/base.py
@@ -11,7 +11,6 @@ import email.policy
from email import message
-
class MIMEBase(message.Message):
"""Base class for MIME specializations."""
diff --git a/Lib/email/mime/message.py b/Lib/email/mime/message.py
index 07e4f2d..61836b5 100644
--- a/Lib/email/mime/message.py
+++ b/Lib/email/mime/message.py
@@ -10,7 +10,6 @@ from email import message
from email.mime.nonmultipart import MIMENonMultipart
-
class MIMEMessage(MIMENonMultipart):
"""Class representing message/* MIME documents."""
diff --git a/Lib/email/mime/multipart.py b/Lib/email/mime/multipart.py
index 2d3f288..94d81c7 100644
--- a/Lib/email/mime/multipart.py
+++ b/Lib/email/mime/multipart.py
@@ -9,7 +9,6 @@ __all__ = ['MIMEMultipart']
from email.mime.base import MIMEBase
-
class MIMEMultipart(MIMEBase):
"""Base class for MIME multipart/* type messages."""
diff --git a/Lib/email/mime/nonmultipart.py b/Lib/email/mime/nonmultipart.py
index e1f5196..a41386e 100644
--- a/Lib/email/mime/nonmultipart.py
+++ b/Lib/email/mime/nonmultipart.py
@@ -10,7 +10,6 @@ from email import errors
from email.mime.base import MIMEBase
-
class MIMENonMultipart(MIMEBase):
"""Base class for MIME non-multipart type messages."""
diff --git a/Lib/email/mime/text.py b/Lib/email/mime/text.py
index 35b4423..dfe53c4 100644
--- a/Lib/email/mime/text.py
+++ b/Lib/email/mime/text.py
@@ -10,7 +10,6 @@ from email.charset import Charset
from email.mime.nonmultipart import MIMENonMultipart
-
class MIMEText(MIMENonMultipart):
"""Class for generating text/* type MIME documents."""
diff --git a/Lib/email/parser.py b/Lib/email/parser.py
index 7db4da1..b1ca08d 100644
--- a/Lib/email/parser.py
+++ b/Lib/email/parser.py
@@ -67,7 +67,6 @@ class Parser:
return self.parse(StringIO(text), headersonly=headersonly)
-
class HeaderParser(Parser):
def parse(self, fp, headersonly=True):
return Parser.parse(self, fp, True)
@@ -75,7 +74,7 @@ class HeaderParser(Parser):
def parsestr(self, text, headersonly=True):
return Parser.parsestr(self, text, True)
-
+
class BytesParser:
def __init__(self, *args, **kw):