Age | Commit message (Expand) | Author |
2023-01-03 | guix.scm: Use modify-inputs.•••* guix.scm (guile-email)[naive-inputs]: Rewrite using modify-inputs.
| Arun Isaac |
2023-01-03 | guix.scm: Build package from local source.•••* guix.scm: Import (guix gexp) and (guix git-download).
(%source-dir): New variable.
(guile-email)[source]: Use local source.
| Arun Isaac |
2023-01-03 | README: Thank Andrew Whatson for code.•••* README.org (Contributors): Add Andrew Whatson.
| Arun Isaac |
2023-01-03 | email: Support quoted-printable CR LF sequences.•••* email/quoted-printable.scm (quoted-printable-decode): Ignore "=\r\n"
sequences in the input.
* tests/quoted-printable.scm ("quoted-printable decoding of soft line
breaks (=\\n)", "quoted-printable decoding of soft line
breaks (=\\r\\n)"): New tests.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
| Andrew Whatson |
2022-12-29 | dir-locals.el: Delete trailing blank lines.•••* .dir-locals.el: Delete trailing blank lines.
| Arun Isaac |
2022-01-19 | README: Fix broken link to signing key.•••* README (Download): Fix broken link to signing key.
| Arun Isaac |
2021-10-24 | build-aux: Test bug-guix corpus.•••* build-aux/pull-corpus.scm: Pull bug-guix mailing list archives.
* build-aux/test-corpus.scm.in: Test bug-guix corpus.
| Arun Isaac |
2021-10-24 | build-aux: Create corpus directory if it does not exist.•••* build-aux/pull-corpus.scm (pull-mailing-list): Create corpus
directory if it does not exist.
| Arun Isaac |
2021-10-24 | email: Handle Received header with two tokens but no timestamp.•••* email/email.scm (parse-email-headers): Match Received header with
timestamp more precisely.
* tests/email.scm ("Parse Received header with two tokens but no
timestamp"): No test.
| Arun Isaac |
2021-10-24 | tests: Return trace with only one Receieved header as a list of lists.•••* tests/email.scm ("Trace with only one Received header must be a list
of lists, not a list"): New test.
| Arun Isaac |
2021-10-24 | email: Handle unrecognized Content-Transfer-Encoding headers.•••* email/email.scm (handle-invalid-headers): New function.
(parse-email-headers): Handle invalid headers.
* tests/email.scm ("Assume application/octet-stream Content-Type if
Content-Transfer-Encoding is unrecognized"): New test.
| Arun Isaac |
2021-10-24 | tests: Paginate tests/email.scm.•••tests/email.scm is getting really long. Pagination make it easier to
understand.
* tests/email.scm: Split into three pages---Emails, Email addresses
and MIME encoded words.
| Arun Isaac |
2021-10-23 | build-aux: Read emails one by one from mbox corpora.•••Reading emails one by one avoids allocating memory for a list of
emails.
* build-aux/test-corpus.scm.in (read-next-email-in-mbox): New function.
(test-corpus): Use port-transduce to read emails one by one.
| Arun Isaac |
2021-10-23 | build-aux: Write failed corpus test emails to filesystem.•••* build-aux/test-corpus.scm.in: Import (rnrs io ports), (srfi
srfi-26), (srfi srfi-28), (srfi srfi-171), (ice-9 ftw) and (ice-9
match).
(%fail-directory): New variable.
(directory-files, write-failed-email): New function.
Write failed corpus test emails to a "fail directory" specified on the
command line.
| Arun Isaac |
2021-10-06 | website: Switch to high contrast.•••High contrast feels more readable. Low contrast makes me squint.
* website/style.css (body): Remove color property. Let it be the
default black.
| Arun Isaac |
2021-10-02 | README: Add Contributors section.•••* README.org (Contributors): New section.
| Arun Isaac |
2021-10-02 | email: Do not use an empty bytevector to test the charset.•••Using an empty bytevector no longer throws an exception since Guile
commit 5ea8c69e9153a970952bf6f0b32c4fad6a28e839.
* email/email.scm (post-process-content-transfer-encoding): Use a
bytevector of unit length to test the charset validity.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
| Mathieu Othacehe |
2021-09-28 | README: Use a dynamic block to list releases.•••* README.org (Download): Replace releases with dynamic block.
* build-aux/build-website.el: Update dynamic blocks before exporting.
(org-dblock-write:releases): New function.
| Arun Isaac |
2021-09-28 | build-aux: Do not create backup files when building website.•••* build-aux/build-website.el (make-backup-files): Set to nil.
| Arun Isaac |
2021-06-18 | README: Link repology badge to repology page.•••* README.org (Download): Link repology badge to repology page.
| Arun Isaac |
2021-06-18 | README: Link to the Guix data service.•••* README.org: Link to the Guix data service, instead of just
mentioning it.
| Arun Isaac |
2021-06-18 | website: Make SVG badges clickable.•••* website/style.css (object): Set pointer-events to none.
| Arun Isaac |
2021-06-18 | .gitignore: Add files.•••* .gitignore: Add INSTALL, doc/.dirstamp, doc/guile-email.html,
doc/guile-email.info, website.
| Arun Isaac |
2021-06-18 | Comment on website build and clean rules.•••* Makefile.am: Comment on website build and clean rules.
| Arun Isaac |
2021-06-18 | website: Widen to 900px.•••* website/style.css (body): Set max-width to 900px.
| Arun Isaac |
2021-06-18 | website: Reference external stylesheet.•••* website/style.css: New file.
* Makefile.am (AM_MAKEINFOHTMLFLAGS): Set to --css-ref=/style.css.
* build-aux/build-website.el (org-html-head): Set to <link> tag
referencing external stylesheet.
| Arun Isaac |
2021-06-18 | build-aux: Move build-website.el into build-aux directory.•••* build-website.el: Move to build-aux/build-website.el.
* Makefile.am (website/index.html): Use build-aux/build-website.el
instead of build-website.el.
| Arun Isaac |
2021-06-18 | Configure path to emacs.•••* configure.ac: Check for emacs.
* Makefile.am (website/index.html): Use EMACS from configure instead
of emacs.
| Arun Isaac |
2021-06-18 | Use MKDIR_P.•••* Makefile.am (website/index.html): Use MKDIR_P instead of `mkdir -p'.
| Arun Isaac |
2021-06-18 | Copy manual to website in a separate target.•••* Makefile.am (website/manual/dev/en): New target.
(website): Depend on website/manual/dev/en instead of building
directly. Do not depend on phony target html.
| Arun Isaac |
2021-06-18 | website: Move releases into website directory.•••If the releases directory is already in the website directory, then we
don't need to redundantly copy it while building the website.
* releases: Move to website/releases.
* Makefile.am (website): Do not copy releases.
(clean-local): Do not clean website/releases.
| Arun Isaac |
2021-06-17 | README: Add nightly tests badge.•••* README.org: Add nightly tests badge, that is, for the
"guile-email-nightly" job.
| Arun Isaac |
2021-06-15 | build-aux: Add corpus pull script.•••This is a follow-up to commit 7a78c23f6f2f1c32abb508563a700cd535b29ad1
adding a file that was missed out.
* build-aux/pull-corpus.scm: New file.
| Arun Isaac |
2021-06-14 | Add corpus test scripts.•••* build-aux/pull-corpus.scm, build-aux/test-corpus.scm.in: New files.
* configure.ac: Configure build-aux/test-corpus.scm.
* .gitignore: Add build-aux/test-corpus.scm.
| Arun Isaac |
2021-06-13 | pre-inst-env: Rewrite pre-inst-env in scheme.•••Scheme code is more readable than arcane bash.
* pre-inst-env.in: Rewrite in scheme.
| Arun Isaac |
2021-06-10 | doc: Update mbox->emails documentation.•••* doc/guile-email.texi (Reading Email): Update mbox->emails
documentation.
| Arun Isaac |
2021-06-10 | build-website: Do not override org-html--svg-image.•••SVG image export works correctly out of the box in org.
* build-website.el (org-html--svg-image): Delete function.
| Arun Isaac |
2021-06-10 | README: Add continuous integration badges.•••* README.org (ci-badge): New macro.
Add continuous integration badges.
| Arun Isaac |
2021-03-15 | email: Use only cfws-captured-words in obs-phrase.•••* email/email.scm (obs-phrase): Replace word with cfws-captured-word.
* tests/email.scm ("Parse names with more than two words"): New test.
| Arun Isaac |
2020-12-06 | website: Export svg using img tag.•••* build-website.el (org-html--svg-image): Override to export svg using
an img tag instead of an object tag.
| Arun Isaac |
2020-12-06 | README: Add repology packaging status badge.•••* README.org (Download): Add repology packaging status badge.
| Arun Isaac |
2020-12-06 | tests: Return a list of Received headers for trace.•••* tests/email.scm ("Trace with only one Received header should be a
list of received traces, not a single received trace"): New test.
| Arun Isaac |
2020-12-06 | tests: Parse obsolete Received header.•••* tests/email.scm ("Parse obsolete Received header"): New test.
| Arun Isaac |
2020-12-05 | tests: Add example from RFC5322 A.6.3.•••* tests/email.scm ("RFC5322 A.6.3. Obsolete white space and
comments"): New test.
| Arun Isaac |
2020-12-05 | email: Indent better.•••* email/email.scm (define-cfws-pattern): Indent better.
| Arun Isaac |
2020-12-05 | email: Give higher precedence to obsolete id-left, id-right patterns.•••* email/email.scm (id-left, id-right): Give higher precedence to
obsolete patterns.
| Arun Isaac |
2020-12-05 | email: Support remaining obsolete specification.•••* email/email.scm (obs-phrase-list, obs-utext, obs-unstruct,
obs-optional): New macros.
(unstructured, in-reply-to, references, keywords, optional-field):
Include obsolete patterns.
| Arun Isaac |
2020-12-05 | email: Support obsolete Received header.•••* email/email.scm (received): Include obsolete pattern.
(parse-mime-entity): Post process obsolete received forms.
| Arun Isaac |
2020-12-05 | email: Do not capture cfws in atoms and dot-atoms.•••* email/email.scm (define-atom-pattern): Do not capture cfws unless
specified.
(atom): Do not specify cfws.
(define-dot-atom-pattern): Do not capture cfws.
(define-word-pattern): New macro.
(cfws-captured-atom, cfws-captured-word): New patterns.
(obs-phrase): Use cfws-captured-word.
(received-token): Capture all.
(parse-mime-entity): Post process received and received-token.
* tests/email.scm ("parse email headers"): Fix test.
| Arun Isaac |
2020-12-05 | email: Support obsolete date and time.•••* email/email.scm (obs-day-of-week, obs-day, obs-year, obs-hour,
obs-minute, obs-second, obs-zone): New macros.
(day-of-week, day, year, hours, minutes, seconds, zone): Include
obsolete pattern.
(parse-email-headers): Handle obsolete two and three digit years, and
alphabetic time zone specifiers.
* tests/email.scm ("RFC5322 A.6.2. Obsolete dates"): New test.
| Arun Isaac |