Age | Commit message (Collapse) | Author |
|
* email/email.scm (parse-email-headers): Extend the date-time parser to
match when seconds are missing, defaulting to "0".
* tests/email.scm ("parse Date", "parse Date without seconds"): New
tests.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
* build-aux/test-corpus.scm (test-corpus): Accept fail-directory
argument.
* build-aux/test-corpus.scm (main): Pass fail-directory argument to
test-corpus.
|
|
Assume fail directory exists and do not attempt to clear it.
* build-aux/test-corpus.scm (main): Do not create or delete fail
directory.
|
|
Make test-corpus.scm a script loadable from the REPL rather than
something that must be run on the shell. Loadable scripts are easier
to deal with since one does not have to deal with command-line
arguments.
* build-aux/test-corpus.scm (%fail-directory): Delete variable.
(write-failed-email): Add fail-directory argument.
(main): New function.
|
|
* build-aux/test-driver.scm: Bump copyright year for Arun Isaac.
|
|
* .dir-locals.el (makefile-gmake-mode): Set indent-tabs-mode to t.
|
|
For a simple package like guile-email, the autotools build system is
more trouble than it is worth. We prefer a hand-written Makefile. As
the commit summary suggests, the autotools are indeed a bad habit that
we must "quit".
* Makefile: New file.
* Makefile.am, bootstrap.sh, configure.ac, pre-inst-env.in: Delete
files.
* build-aux/test-corpus.scm.in: Rename to ...
* build-aux/test-corpus.scm: ... this. Remove shebang.
* build-aux/test-driver.scm.in: Rename to ...
* build-aux/test-driver.scm: ... this. Remove autotools specific
parts.
* guix.scm: Import (guix utils).
(guile-email)[arguments]: Add prefix to #:make-flags. Delete configure
phase.
* .gitignore: Remove INSTALL, Makefile, Makefile.in, aclocal.m4,
autom4te.cache, build-aux/install-sh, build-aux/missing,
build-aux/test-corpus.scm, config.log, config.status, configure,
doc/.dirstamp, pre-inst-env, test-suite.log, tests/*.log and
tests/*.trs.
|
|
* tests/base64.scm: Import (srfi srfi-64).
|
|
* guix.scm (guile-email)[naive-inputs]: Rewrite using modify-inputs.
|
|
* guix.scm: Import (guix gexp) and (guix git-download).
(%source-dir): New variable.
(guile-email)[source]: Use local source.
|
|
* README.org (Contributors): Add Andrew Whatson.
|
|
* 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>
|
|
* .dir-locals.el: Delete trailing blank lines.
|
|
* README (Download): Fix broken link to signing key.
|
|
* build-aux/pull-corpus.scm: Pull bug-guix mailing list archives.
* build-aux/test-corpus.scm.in: Test bug-guix corpus.
|
|
* build-aux/pull-corpus.scm (pull-mailing-list): Create corpus
directory if it does not exist.
|
|
* 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.
|
|
* tests/email.scm ("Trace with only one Received header must be a list
of lists, not a list"): New test.
|
|
* 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.
|
|
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.
|
|
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.
|
|
* 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.
|
|
High contrast feels more readable. Low contrast makes me squint.
* website/style.css (body): Remove color property. Let it be the
default black.
|
|
* README.org (Contributors): New section.
|
|
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>
|
|
* README.org (Download): Replace releases with dynamic block.
* build-aux/build-website.el: Update dynamic blocks before exporting.
(org-dblock-write:releases): New function.
|
|
* build-aux/build-website.el (make-backup-files): Set to nil.
|
|
* README.org (Download): Link repology badge to repology page.
|
|
* README.org: Link to the Guix data service, instead of just
mentioning it.
|
|
* website/style.css (object): Set pointer-events to none.
|
|
* .gitignore: Add INSTALL, doc/.dirstamp, doc/guile-email.html,
doc/guile-email.info, website.
|
|
* Makefile.am: Comment on website build and clean rules.
|
|
* website/style.css (body): Set max-width to 900px.
|
|
* 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.
|
|
* 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.
|
|
* configure.ac: Check for emacs.
* Makefile.am (website/index.html): Use EMACS from configure instead
of emacs.
|
|
* Makefile.am (website/index.html): Use MKDIR_P instead of `mkdir -p'.
|
|
* 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.
|
|
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.
|
|
* README.org: Add nightly tests badge, that is, for the
"guile-email-nightly" job.
|
|
This is a follow-up to commit 7a78c23f6f2f1c32abb508563a700cd535b29ad1
adding a file that was missed out.
* build-aux/pull-corpus.scm: New file.
|
|
* 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.
|
|
Scheme code is more readable than arcane bash.
* pre-inst-env.in: Rewrite in scheme.
|
|
* doc/guile-email.texi (Reading Email): Update mbox->emails
documentation.
|
|
SVG image export works correctly out of the box in org.
* build-website.el (org-html--svg-image): Delete function.
|
|
* README.org (ci-badge): New macro.
Add continuous integration badges.
|
|
* email/email.scm (obs-phrase): Replace word with cfws-captured-word.
* tests/email.scm ("Parse names with more than two words"): New test.
|
|
* build-website.el (org-html--svg-image): Override to export svg using
an img tag instead of an object tag.
|
|
* README.org (Download): Add repology packaging status badge.
|
|
* tests/email.scm ("Trace with only one Received header should be a
list of received traces, not a single received trace"): New test.
|