tvl-depot/third_party/lisp/mime4cl/README.md
sterni 8f199c65df docs(3p/lisp/mime4cl): describe changes compared to original version
Spell out that “may diverge” is more of a “has diverged by now”. We are
essentially maintaining a fork of mime4cl.

Change-Id: I9049e8296a666c3d1b08eae28813147f360771ef
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8621
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2023-05-23 12:43:43 +00:00

27 lines
1.3 KiB
Markdown

# 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](http://wcp.sdf-eu.org/software/mime4cl-20150207T211851.tbz)
to be exact) as upstream has become inactive. Its [original
website](http://wcp.sdf-eu.org/software/#mime4cl) 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/buildLisp` is used as the build system. ASDF is currently untested and
may be broken.
* The dependency on [sclf](http://wcp.sdf-eu.org/software/#sclf) has been
eliminated by inlining the relevant parts.
* `MY-STRING-INPUT-STREAM`, `DELIMITED-INPUT-STREAM`,
`CHARACTER-INPUT-ADAPTER-STREAM`, `BINARY-INPUT-ADAPTER-STREAM` etc. have been
replaced by (thin wrappers around) flexi-streams. In addition to improved
handling of encodings, this allows using `READ-SEQUENCE` via the gray stream
interface.