| Age | Commit message (Collapse) | Author | 
|---|
|  | * email/email.scm (read-next-email-in-mbox): Add docstring. | 
|  | * email/email.scm (email->headers+body): If non-ASCII non-UTF-8
characters occur in the headers, do not raise a decoding error. Work
around using the substitute conversion strategy.
* tests/email.scm ("tolerate non-ASCII characters in headers"): Rename
to "decode utf-8 characters in headers".
("tolerate non-ascii non-utf-8 characters in headers"): New test.
Reported-by: Christopher Baines <mail@cbaines.net> | 
|  | Guile looks for compiled go files in libdir. So, put them there.
* Makefile.am (godir): Set to libdir, instead of moddir. | 
|  | * guix.scm: New file. | 
|  | We tolerate non-ASCII characters in headers in order to support Emacs
message mode parens style addresses.
* email/email.scm (email->headers+body): Read headers as UTF-8
characters.
* tests/email.scm ("tolerate non-ascii characters in headers"): New
tests.
Reported-by: Christopher Baines <mail@cbaines.net> | 
|  | * Makefile.am (website): Publish manual to link with version and
language information.
* README.org (Documentation): Update link to manual. | 
|  | * Makefile.am (website): Publish releases folder on website.
* README.org (Download): New section. | 
|  | * releases/guile-email-0.2.0.tar.lz,
releases/guile-email-0.2.0.tar.lz.asc: New files. | 
|  | * configure.ac: Bump version.
* NEWS: New file. | 
|  | * build-aux/test-driver.scm: Rename to build-aux/test-driver.scm.in.
* build-aux/test-driver.scm.in: Specify log file as an absolute
path. Change to top level source directory before running tests.
* configure.ac: Generate test-driver.scm.
* Makefile.am (EXTRA_DIST): Unregister
build-aux/test-driver.scm. Register build-aux/test-driver.scm.in. | 
|  | * Makefile.am (EXTRA_DIST): Add
tests/multipart-email-with-a-8bit-encoding-and-non-utf8-charset-part
and tests/email-with-8bit-encoding-and-non-utf8-charset. | 
|  | * tests/quoted-printable.scm: Remove execution permission. | 
|  | Setting PATH is unnecessary since we do not have any script; we only
have a library.
* pre-inst-env.in: Do not set PATH. | 
|  | * doc/guile-email.texi (Reading Email): New chapter.
* email/email.scm (mbox->emails): Add docstring. | 
|  | * email/utils.scm (read-while): Clarify docstring. | 
|  | * doc/guile-email.texi (Top): Add Data Types chapter to menu. | 
|  | The features list provide a more detailed description. We need not
repeat the features in the short project description.
* README.org: Simplify project description. | 
|  | * README.org (Future work): Mention PGP support. | 
|  | * README.org (Features): Mention mbox reading. | 
|  | * doc/guile-email.texi (Encoding and Decoding)[Quoted-Printable
encoding]: Move mention of (email quoted-printable) module to after
the first paragraph. | 
|  | * doc/guile-email.texi (Data Types): New chapter. | 
|  | * doc/guile-email.texi (Parsing Email): Mention (email email) module. | 
|  | * doc/guile-email.texi (Top, Parsing Email): Change e-mail to email. | 
|  | * Makefile.am: Update Copyright header. | 
|  | * tests/email.scm ("RFC5322 A.1.1. A message from one person to
another with simple addressing", "RFC5322 A.1.2. Different types of
mailboxes"): New tests. | 
|  | * email/email.scm (post-process-content-type): Mention that RFC6657
specifies UTF-8 as the default charset only for text/* media types. | 
|  | * email/email.scm (read-next-email-in-mbox): Read bytes from mboxes,
not characters. | 
|  | * tests/utils.scm ("read-while returns eof-object on end of file"):
New test. | 
|  | * email/utils.scm (read-bytes-till): Return eof-object, not #vu8(), on
end of file.
* tests/utils.scm: New file.
* Makefile.am (SCM_TESTS): Register it. | 
|  | * tests/email.scm ("RFC2046 5.1.1. Common syntax"): New test. | 
|  | * email/email.scm (email->headers+body): If there are no headers,
return "" as headers not an eof-object.
(parse-email-body): Parse headers of parent entity or email to
parse-mime-entity.
(add-default-mime-entity-headers): New function.
(parse-mime-entity): Use add-default-mime-entity-headers instead of
add-default-headers. Handle MIME entities without headers.
* tests/email.scm ("decode MIME entity without headers"): New test. | 
|  | Prior to this, parse-email would accept email in the form of a
string. A string is constrained to use the same encoding for all its
characters whereas an email can have characters encoded using
different encoding schemes. Therefore, it is more correct that
parse-email deals with bytevectors instead of strings.
* email/utils.scm (read-bytes-till): New function.
* email/email.scm (body->mime-entities, email->headers+body,
decode-body): Deal with emails as bytevectors instead of strings.
(parse-mime-entity): Rename text argument to bv.
(parse-email, parse-email-body): Overload to handle input in the form
of a string or bytevector.
* doc/guile-email.texi (Parsing e-mail): Document overloading of
parse-email and parse-email-body.
* tests/email.scm ("handle truncated multipart message gracefully"):
Deal in bytevectors instead of strings.
("email with 8 bit encoding and non UTF-8 charset", "multipart email
with a 8 bit encoding and non UTF-8 charset part"): New tests.
* tests/email-with-8bit-encoding-and-non-utf8-charset,
tests/multipart-email-with-a-8bit-encoding-and-non-utf8-charset-part:
New files.
Reported-by: Jack Hill <jackhill@jackhill.us> | 
|  | * email/email.scm (parse-mime-entity): Match mime-entity-fields only
against the headers, not the whole email. | 
|  | * email/email.scm: Import all of (email utils), not a subset of the
exported functions. | 
|  | * configure.ac: Add check-news to automake options. | 
|  | * configure.ac: Add no-dist-gzip and dist-lzip to automake options. | 
|  | * README.org (Contributing): Link to mailing list info page so that
users can subscribe. | 
|  | * README.org (Contributing): Link to archives of the mailing list. | 
|  | Prior to this, MIME encoded words in the Subject header were not
decoded.
* email/email.scm (parse-email-headers): Decode MIME encoded words in
Subject header.
* tests/email.scm ("decode MIME encoded words in Subject header"): New
test.
Reported-by: Ricardo Wurmus <rekado@elephly.net> | 
|  | * tests/email.scm ("decode MIME encoded phrases that contain multiple
MIME encoded words each with their own encoding"): New test. | 
|  | * README.org (Contributing), doc/guile-email.texi (Contributing):
Advertise the new guile-email@systemreboot.net mailing list. | 
|  | * doc/guile-email.texi (Encoding and Decoding): Specify module paths. | 
|  | * README.org: Advertise usage in mumi. | 
|  | * doc/guile-email.texi (Encoding and Decoding): Move unmatched `@end
deffn' to previous node from where it is missing. | 
|  | * doc/guile-email.texi (Encoding and Decoding): New chapter. | 
|  | * email/email.scm (parse-mime-entity): Replace "a" with "an" in
docstring. | 
|  | The manual link not only appears on the website, but also in the
README. Hence, we cannot use a relative link.
* README.org (Documentation): Use absolute link to manual. | 
|  | * README.org (Documentation): New headline. | 
|  | * build-website.el (org-html-head-include-default-style,
org-html-head-include-scripts): Set to nil. | 
|  | * README.org (#+TITLE): Set to guile-email. |