Age | Commit message (Collapse) | Author |
|
* .guix/guile-email-package.scm: Import coreutils and gnu-make
from (gnu packages base), emacs-minimal from (gnu packages emacs),
texinfo from (gnu packages texinfo).
(guile-email-website-gexp, guile-email-website): New variables.
|
|
* NEWS: Update.
* website/releases/guile-email-0.3.1.tar.lz,
website/releases/guile-email-0.3.1.tar.lz.asc: New files.
|
|
* email/email.scm (define-atom-pattern): Support customization of the
atext pattern as well.
(define-phrase-pattern): New macro.
(obs-phrase): Define using define-phrase-pattern.
(liberal-atext, liberal-cfws-captured-atom,
liberal-cfws-captured-word, liberal-phrase): New patterns.
(display-name): Use liberal-phrase instead of phrase.
* tests/email.scm ("tolerate email addresses with parentheses in
name"): New test.
|
|
* .guix-authorizations, .guix-channel: New files.
* guix.scm: Convert to a symlink pointing to
.guix/guile-email-package.scm. Move original there.
* .guix/guile-email-package.scm: Convert into a module with public
packages.
|
|
* README.org (Contributors): Add Aleix Conchillo Flaqué.
|
|
The cp on macOS does not support the --parents flag. Also, install
correctly replaces files when they already exist.
* Makefile (install): Use install instead of cp and mkdir.
Reported-by: Aleix Conchillo Flaqué <aconchillo@gmail.com>
|
|
* website/releases/guile-email-0.3.0.tar.lz,
website/releases/guile-email-0.3.0.tar.lz.asc: New files.
|
|
This reverts commit 5cc34d6be3daada501ff952fc9edf1ac04d9c24a. We go
back to releasing tarballs since tarballs are still important for
package managers other than Guix. e.g., homebrew.
|
|
* .gitignore: Remove website. Add website/index.html and
website/manual.
|
|
* Makefile (version, GIT, GPG, LZIP, distribute_files, dist_archive):
New variables.
(dist, $(dist_archive), %.asc): New rules.
(.PHONY): Add dist.
|
|
* README.org (Download): Declare that releases are only tagged in git
from now on.
* build-aux/build-website.el (org-dblock-write:releases): Exclude
releases after and including v0.3.0.
|
|
* build-aux/build-website.el (org-dblock-write:releases): Use the
--contains argument of git for-each-ref to exclude the v0.1.0 release.
|
|
* NEWS: Update.
|
|
* README.org (Features): Declare that obsolete syntax is supported.
(Future work): Remove obsolete syntax.
|
|
This is admittedly a nitpicky change, but it slightly improves
consistency.
* tests/email.scm ("parse obsolete Received header", "parse names with
more than two words", "assume application/octet-stream Content-Type if
Content-Transfer-Encoding is unrecognized", "parse Received header
with two tokens but no timestamp"): Downcase test names.
|
|
* 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.
|