software/mumi.git
22 months agomumi: extract-attachment: Extract the mime-entity body.
Ricardo Wurmus [Sun, 11 Nov 2018 19:43:56 +0000 (20:43 +0100)] 
mumi: extract-attachment: Extract the mime-entity body.

* mumi/messages.scm (extract-attachment): Extract the mime-entity-body
instead of expecting a tagged list.

22 months agoHandle nested mime entries recursively.
Ricardo Wurmus [Sun, 11 Nov 2018 19:43:04 +0000 (20:43 +0100)] 
Handle nested mime entries recursively.

* mumi/web/view/utils.scm (display-message-body): Apply
display-mime-entity recursively.

22 months agoDeclare Guile JSON as a dependency.
Ricardo Wurmus [Sat, 10 Nov 2018 11:21:16 +0000 (12:21 +0100)] 
Declare Guile JSON as a dependency.

22 months agoUse Guile Fibers web server.
Ricardo Wurmus [Sat, 10 Nov 2018 09:52:49 +0000 (10:52 +0100)] 
Use Guile Fibers web server.

* mumi/web/server.scm (handler): Simplify.
(start-mumi-web-server): Use fiberized server.
* guix.scm: Add guile-fibers to inputs.
* configure.ac: Check for availability of fibers.

22 months agoview: Be more defensive when working with message subject.
Ricardo Wurmus [Fri, 9 Nov 2018 21:41:03 +0000 (22:41 +0100)] 
view: Be more defensive when working with message subject.

* mumi/web/view/html.scm (issue-page): Ensure that the message subject
is always a string before comparing it.

22 months agoRemove dependency on mailutils.
Ricardo Wurmus [Fri, 9 Nov 2018 21:35:47 +0000 (22:35 +0100)] 
Remove dependency on mailutils.

* configure.ac: Remove check for mailutils.
* guix.scm (mailutils-next): Remove variable.
* mumi/message.scm (qp-decoder): Remove procedure.

22 months agomumi: Use (email quoted-printable).
Ricardo Wurmus [Fri, 9 Nov 2018 21:33:19 +0000 (22:33 +0100)] 
mumi: Use (email quoted-printable).

* mumi/web/download.scm (handle-download): Use quoted-printable-decode
from guile-email to decode body.

22 months agomumi: Try harder to extract a display name.
Ricardo Wurmus [Fri, 9 Nov 2018 21:32:32 +0000 (22:32 +0100)] 
mumi: Try harder to extract a display name.

* mumi/messages.scm (extract-name): Try to extract a name from the
email address.

22 months agomumi: Remove "decode" procedure.
Ricardo Wurmus [Fri, 9 Nov 2018 21:23:16 +0000 (22:23 +0100)] 
mumi: Remove "decode" procedure.

* mumi/messages.scm (decode): Remove procedure.

22 months agomumi: Remove parser procedures.
Ricardo Wurmus [Fri, 9 Nov 2018 21:19:38 +0000 (22:19 +0100)] 
mumi: Remove parser procedures.

* mumi/messages.scm (split-multipart-message, read-token, read-until,
read-between, read-key-value-pair, throw-away, parse-multipart-header,
multipart-header?): Remove procedures.

22 months agoguix: Update to latest version of guile-debbugs.
Ricardo Wurmus [Fri, 9 Nov 2018 21:16:41 +0000 (22:16 +0100)] 
guix: Update to latest version of guile-debbugs.

22 months agoguix: Add missing inputs to mailutils-next.
Ricardo Wurmus [Fri, 9 Nov 2018 21:16:12 +0000 (22:16 +0100)] 
guix: Add missing inputs to mailutils-next.

22 months agomumi: handle-download: Operate on mime-entity.
Ricardo Wurmus [Fri, 9 Nov 2018 21:14:54 +0000 (22:14 +0100)] 
mumi: handle-download: Operate on mime-entity.

* mumi/web/download.scm (handle-download): Match on mime-entity
as returned by guile-email instead of custom data structure.

22 months agomumi: extract-attachment: Use the email-body directly.
Ricardo Wurmus [Fri, 9 Nov 2018 21:12:36 +0000 (22:12 +0100)] 
mumi: extract-attachment: Use the email-body directly.

* mumi/messages.scm (extract-attachment): Remove call to
split-multipart-message and use the email body directly.

22 months agoAdd guile-email dependency.
Arun Isaac [Mon, 1 Oct 2018 20:27:24 +0000 (01:57 +0530)] 
Add guile-email dependency.

* configure.ac: Check for guile-email.
* guix.scm (guile-email): New variable.
(mumi)[inputs]: Add guile-email.

22 months agoUse guile-email.
Arun Isaac [Mon, 1 Oct 2018 20:19:49 +0000 (01:49 +0530)] 
Use guile-email.

* mumi/messages.scm (extract-name, extract-email, header, sender,
sender-email, date, subject, message-id, participants, recipients,
closing?, multipart-message?): Modify to use guile-email API.
* mumi/web/view/html.scm (issue-page): Likewise.
* mumi/web/view/utils.scm (content-type->css-class,
display-message-body): Likewise.

22 months agoSimplify definition of nth.
Arun Isaac [Tue, 25 Sep 2018 06:55:08 +0000 (12:25 +0530)] 
Simplify definition of nth.

* mumi/messages.scm (extract-attachment): Simplify definition of nth
by using list-ref instead of drop and first.

22 months agoUse iota generated message numbers instead of debbugs' msg-num.
Arun Isaac [Tue, 25 Sep 2018 06:25:46 +0000 (11:55 +0530)] 
Use iota generated message numbers instead of debbugs' msg-num.

* mumi/messages.scm (extract-attachment): Use nth instead of find to
get message.
* mumi/web/view/html.scm (issue-page): Let show-message accept
message-number as an argument. Update invocations of show-message.
* mumi/web/view/utils.scm (display-message-body): Accept
message-number as an argument.

22 months agoSupport live hacking.
Arun Isaac [Wed, 5 Sep 2018 10:51:23 +0000 (16:21 +0530)] 
Support live hacking.

* scripts/mumi.in: Spawn REPL server to support live hacking, if
--listen-repl is provided on the command line.

23 months agoguix: Update to latest guile-debbugs-next.
Ricardo Wurmus [Tue, 9 Oct 2018 14:06:57 +0000 (16:06 +0200)] 
guix: Update to latest guile-debbugs-next.

2 years agoview: Fix submitter example.
Ricardo Wurmus [Thu, 20 Sep 2018 17:21:11 +0000 (19:21 +0200)] 
view: Fix submitter example.

Reported-by: Pierre Neidhardt <mail@ambrevar.xyz>.
2 years agoview: Show changed message subjects.
Ricardo Wurmus [Thu, 20 Sep 2018 13:46:49 +0000 (15:46 +0200)] 
view: Show changed message subjects.

Suggested-by: Ludovic Courtès <ludo@gnu.org>
2 years agoview: Allow downloading any message part.
Ricardo Wurmus [Fri, 7 Sep 2018 11:01:52 +0000 (13:01 +0200)] 
view: Allow downloading any message part.

2 years agorecent-bugs: Include recently submitted bugs.
Ricardo Wurmus [Fri, 7 Sep 2018 09:53:29 +0000 (11:53 +0200)] 
recent-bugs: Include recently submitted bugs.

2 years agoprettify: Pass down a bit of context to avoid false matches.
Ricardo Wurmus [Tue, 4 Sep 2018 08:03:29 +0000 (10:03 +0200)] 
prettify: Pass down a bit of context to avoid false matches.

2 years agocss: Use monospace font for Scheme code.
Ricardo Wurmus [Tue, 4 Sep 2018 00:50:11 +0000 (02:50 +0200)] 
css: Use monospace font for Scheme code.

2 years agoAdd syntax highlighting for Scheme files.
Ricardo Wurmus [Tue, 4 Sep 2018 00:47:26 +0000 (02:47 +0200)] 
Add syntax highlighting for Scheme files.

2 years agoAdd missing module.
Ricardo Wurmus [Tue, 4 Sep 2018 00:07:43 +0000 (02:07 +0200)] 
Add missing module.

2 years agoSupport downloading of attachments.
Ricardo Wurmus [Tue, 4 Sep 2018 00:02:45 +0000 (02:02 +0200)] 
Support downloading of attachments.

* assets/css/screen.css (.attachment:before): Add rule.
* assets/img/file.svg: New file.
* mumi/web/controller.scm (controller): Handle attachment route.
* mumi/web/download.scm: New file.
* mumi/web/view/utils.scm (display-multipart-chunk): Move into...
(display-message-body): ...this procedure; adjust to include
attachment download links.
* mumi/web/view/html.scm (issue-page): Adjust.

2 years agoSupport SVG MIME type.
Ricardo Wurmus [Tue, 4 Sep 2018 00:01:33 +0000 (02:01 +0200)] 
Support SVG MIME type.

* mumi/web/render.scm (file-mime-types): Add type for SVG.

2 years agoAdd extract-attachment procedure.
Ricardo Wurmus [Tue, 4 Sep 2018 00:00:56 +0000 (02:00 +0200)] 
Add extract-attachment procedure.

* mumi/messages.scm (extract-attachment): New procedure.

2 years agorecent-bugs: Simplify.
Ricardo Wurmus [Mon, 3 Sep 2018 14:04:29 +0000 (16:04 +0200)] 
recent-bugs: Simplify.

2 years agorecent-bugs: Avoid out of bounds error.
Ricardo Wurmus [Mon, 3 Sep 2018 14:01:57 +0000 (16:01 +0200)] 
recent-bugs: Avoid out of bounds error.

2 years agoview: Provide search hints and link to /help.
Ricardo Wurmus [Mon, 3 Sep 2018 12:49:51 +0000 (14:49 +0200)] 
view: Provide search hints and link to /help.

2 years agoview: Add /help page.
Ricardo Wurmus [Mon, 3 Sep 2018 12:49:34 +0000 (14:49 +0200)] 
view: Add /help page.

2 years agoprocess-query: Support date filtering.
Ricardo Wurmus [Mon, 3 Sep 2018 11:41:04 +0000 (13:41 +0200)] 
process-query: Support date filtering.

* mumi/messages.scm (ago, date-term->epoch-seconds): New procedures.
(process-query): Support "date" and "mdate" queries.

2 years agoguix: Use Guile-Debbugs from git.
Ricardo Wurmus [Sun, 2 Sep 2018 20:41:10 +0000 (22:41 +0200)] 
guix: Use Guile-Debbugs from git.

2 years agocontroller: Fetch more messages if we need to filter locally.
Ricardo Wurmus [Sun, 2 Sep 2018 20:35:10 +0000 (22:35 +0200)] 
controller: Fetch more messages if we need to filter locally.

2 years agoprocess-query: Improve results of "submitter" query.
Ricardo Wurmus [Sun, 2 Sep 2018 20:33:55 +0000 (22:33 +0200)] 
process-query: Improve results of "submitter" query.

2 years agocss: Remove rounded corners from header.
Ricardo Wurmus [Sun, 2 Sep 2018 20:33:31 +0000 (22:33 +0200)] 
css: Remove rounded corners from header.

2 years agoview: Sort participants by email.
Ricardo Wurmus [Sun, 2 Sep 2018 19:52:17 +0000 (21:52 +0200)] 
view: Sort participants by email.

2 years agoview: Display severity.
Ricardo Wurmus [Sun, 2 Sep 2018 19:52:09 +0000 (21:52 +0200)] 
view: Display severity.

2 years agocollect-parts: Allow empty line before boundary.
Ricardo Wurmus [Sun, 2 Sep 2018 19:38:34 +0000 (21:38 +0200)] 
collect-parts: Allow empty line before boundary.

2 years agoAdjust search box styles.
Ricardo Wurmus [Sun, 2 Sep 2018 19:14:58 +0000 (21:14 +0200)] 
Adjust search box styles.

2 years agoview: Change title for list of issues with recent activity.
Ricardo Wurmus [Sun, 2 Sep 2018 12:46:33 +0000 (14:46 +0200)] 
view: Change title for list of issues with recent activity.

2 years agocss: Make tables fill the whole container width.
Ricardo Wurmus [Sun, 2 Sep 2018 12:46:13 +0000 (14:46 +0200)] 
css: Make tables fill the whole container width.

2 years agoDefend against empty headers.
Ricardo Wurmus [Sat, 1 Sep 2018 20:14:29 +0000 (22:14 +0200)] 
Defend against empty headers.

2 years agorender: Allow clients to cache static files.
Ludovic Courtès [Fri, 31 Aug 2018 22:52:19 +0000 (00:52 +0200)] 
render: Allow clients to cache static files.

2 years agoDon't use bug-originator with mu-header-decode.
Ricardo Wurmus [Sat, 1 Sep 2018 19:41:04 +0000 (21:41 +0200)] 
Don't use bug-originator with mu-header-decode.

2 years agoAdd style for cut-here lines.
Ricardo Wurmus [Sat, 1 Sep 2018 19:40:51 +0000 (21:40 +0200)] 
Add style for cut-here lines.

2 years agoAdd some support for multipart messages.
Ricardo Wurmus [Sat, 1 Sep 2018 19:40:07 +0000 (21:40 +0200)] 
Add some support for multipart messages.

2 years agoview: Add missing docstring.
Ricardo Wurmus [Sat, 1 Sep 2018 06:54:03 +0000 (08:54 +0200)] 
view: Add missing docstring.

2 years agoview: Fix type error.
Ricardo Wurmus [Tue, 28 Aug 2018 21:31:14 +0000 (23:31 +0200)] 
view: Fix type error.

2 years agoGoodbye mu, hello guile-debbugs!
Ricardo Wurmus [Tue, 28 Aug 2018 21:21:38 +0000 (23:21 +0200)] 
Goodbye mu, hello guile-debbugs!

2 years agoAdd script to fetch mail archives.
Ricardo Wurmus [Wed, 1 Nov 2017 07:15:03 +0000 (08:15 +0100)] 
Add script to fetch mail archives.

* scripts/fetch-mailbox.sh: New file.

2 years agoInitial commit.
Ricardo Wurmus [Fri, 27 Oct 2017 21:28:37 +0000 (23:28 +0200)] 
Initial commit.