This should allow for refactors with more confidence as we can make sure
base functionality stays the same. It is important to test image
extraction, so unfortunately we need to check in a base64 rendering of
an image file. I've used //users/tvlbot.jpg, so git should at least be
able to deduplicate the extracted content. Note that this was achieved
by altering the note message since I wasn't able to add the picture in
the iOS Notes.app without the image being recompressed.
To get extra benefit, we also add the test note to the mime4cl test suite.
The expected output can be updated with
mblog $(mg build :maildir) expected
Change-Id: I0aa493b206439018ad89745bacbd47af78bd1396
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12911
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
|
||
|---|---|---|
| .. | ||
| benchmark | ||
| test | ||
| address.lisp | ||
| default.nix | ||
| endec.lisp | ||
| ex-sclf.lisp | ||
| mime.lisp | ||
| mime4cl-tests.asd | ||
| mime4cl.asd | ||
| OWNERS | ||
| package.lisp | ||
| README.md | ||
| streams.lisp | ||
mime4cl
MIME4CL is a Common Lisp library for dealing with MIME messages. It was
originally been written by Walter C. Pelissero and vendored into depot
(mime4cl-20150207T211851.tbz
to be exact) as upstream has become inactive. Its original
website can still be accessed.
The depot version has since diverged from upstream. Main aims were to improve performance and reduce code size by relying on third party libraries like flexi-streams. It is planned to improve encoding handling in the long term. Currently, the library is being worked on intermittently and not very well tested—it may not work as expected.
Differences from the original version
-
//nix/buildLispis used as the build system. ASDF is currently untested and may be broken. -
The dependency on sclf has been eliminated by inlining the relevant parts.
-
MY-STRING-INPUT-STREAM,DELIMITED-INPUT-STREAM,CHARACTER-INPUT-ADAPTER-STREAM,BINARY-INPUT-ADAPTER-STREAMetc. have been replaced by (thin wrappers around) flexi-streams. In addition to improved handling of encodings, this allows usingREAD-SEQUENCEvia the gray stream interface.