summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStanley <46876382+slateny@users.noreply.github.com>2022-09-26 04:06:11 (GMT)
committerGitHub <noreply@github.com>2022-09-26 04:06:11 (GMT)
commit2b428a1faed88f148ede131e3b86ab6227c6c3f0 (patch)
tree16617563bd9870213e132612f41fe73e9581551b
parent05c92759b6078fd667ed2275a523893f0685f0b9 (diff)
downloadcpython-2b428a1faed88f148ede131e3b86ab6227c6c3f0.zip
cpython-2b428a1faed88f148ede131e3b86ab6227c6c3f0.tar.gz
cpython-2b428a1faed88f148ede131e3b86ab6227c6c3f0.tar.bz2
gh-82530: Create blank function instead of invalid import for email example (#97529)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
-rw-r--r--Doc/includes/email-read-alternative.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/Doc/includes/email-read-alternative.py b/Doc/includes/email-read-alternative.py
index 5ea84e6..8d0b4e6 100644
--- a/Doc/includes/email-read-alternative.py
+++ b/Doc/includes/email-read-alternative.py
@@ -8,8 +8,15 @@ import webbrowser
from email import policy
from email.parser import BytesParser
-# An imaginary module that would make this work and be safe.
-from imaginary import magic_html_parser
+
+def magic_html_parser(html_text, partfiles):
+ """Return safety-sanitized html linked to partfiles.
+
+ Rewrite the href="cid:...." attributes to point to the filenames in partfiles.
+ Though not trivial, this should be possible using html.parser.
+ """
+ raise NotImplementedError("Add the magic needed")
+
# In a real program you'd get the filename from the arguments.
with open('outgoing.msg', 'rb') as fp:
@@ -62,9 +69,6 @@ else:
print("Don't know how to display {}".format(richest.get_content_type()))
sys.exit()
with tempfile.NamedTemporaryFile(mode='w', delete=False) as f:
- # The magic_html_parser has to rewrite the href="cid:...." attributes to
- # point to the filenames in partfiles. It also has to do a safety-sanitize
- # of the html. It could be written using html.parser.
f.write(magic_html_parser(body.get_content(), partfiles))
webbrowser.open(f.name)
os.remove(f.name)