summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* scripts: Regularly index the mail directory.Ricardo Wurmus2019-07-214-1/+22
| | | | | | | * configure.ac: Detect mu. * guix.scm: Add "mu" to the environment. * mumi/config.scm.in (%config)[mu-executable]: Add it. * scripts/mumi.in: Spawn "mu index" regularly.
* scripts: Add support for "--fetch" option.Ricardo Wurmus2019-07-212-9/+43
| | | | | | | * scripts/mumi.in (%options): Recognize "fetch" option. (%default-options): Set default for "fetch". * mumi/config.scm.in (%config): Remove extraneous quotes from "lists" and "packages".
* messages: Add download-message.Ricardo Wurmus2019-07-212-0/+38
| | | | | * mumi/config.scm.in (%config): Add mail-dir. * mumi/messages.scm (download-message): New procedure.
* Remove unused module import.Ricardo Wurmus2019-07-211-1/+0
| | | | * mumi/messages.scm: Do not import (debbugs rfc822).
* guix: Update guile-debbugs.Ricardo Wurmus2019-07-211-2/+29
| | | | * guix.scm (guile-debbugs-devel): New variable.
* config: Use %gnu instance function.Ricardo Wurmus2019-07-211-2/+3
| | | | * mumi/config.scm.in (%config): Use %gnu function instead of URL string.
* Update styles.Ricardo Wurmus2019-07-117-5519/+7707
| | | | | | | | | | | | | | | | | * assets/css/bootstrap.css: Replace with Bootstrap 4.1.1. * assets/css/screen.scm: Remove obsolete rules. * assets/img/logo.png: Use same logo as on ci.guix.gnu.org. * assets/js/mumi.js (loadSnippet): Replace outer HTML. * mumi/config.scm.in (%config): Add submission-bug-email-address. * mumi/web/view/html.scm (layout, search-form, header, index, issue-page): Adjust CSS classes. (index): Mention submission-bug-email-address; merge tables of recent/priority bugs. (issue-page): Use DL/DD/DT instead of UL for issue stats. (list-of-bugs): Return only table rows. (priority-bugs): Same. (list-of-matching-bugs): Adjust by adding table and table header. * mumi/web/controller.scm (controller): Adjust use of PRIORITY-BUGS.
* view: Handle bugs without subjects gracefully.Ricardo Wurmus2019-05-152-10/+11
| | | | | | * mumi/messages.scm (subject): Always return a string. * mumi/web/view/html.scm (bug-subject*): New procedure. (issue-page, list-of-bugs): Use it.
* html: Fix URL in footer.Ricardo Wurmus2019-02-051-1/+1
|
* html: Add footer.Ricardo Wurmus2019-02-052-1/+21
| | | | | * mumi/web/view/html.scm (layout): Add footer. * assets/css/screen.css (footer): Add new rule.
* html: Show block info.Ricardo Wurmus2019-02-042-2/+34
| | | | | | * mumi/web/view/html.scm (issue-page): Handle blocks and blockedby fields. * assets/css/screen.css: Add styles for blockedby and blocks lists.
* html: Handle type quirk of "mergedwith" field.Ricardo Wurmus2019-02-041-1/+9
| | | | | | * mumi/web/view/html.scm (issue-page): Deal with confusing type of "mergedwith" field, which may be a string representing a list or a proper number.
* html: Show related bugs that were merged.Ricardo Wurmus2019-02-042-1/+16
| | | | | * mumi/web/view/html.scm (issue-page): Process "mergedwith" field. * assets/css/screen.css: Add rules for ul.merged.
* controller: Load expensive lists via JavaScriptRicardo Wurmus2019-02-015-10/+55
| | | | | | | | | | * mumi/web/controller.scm (controller): Add routes for rendering snippets. * mumi/web/view/html.scm (list-of-bugs): Export; add severity class. (priority-bugs): New procedure. (index): Add sections for priority bugs. * assets/js/mumi.js: New file. * assets/css/screen.css: Color serious and important bugs.
* messages: Add bugs-by-severity.Ricardo Wurmus2019-02-011-0/+11
| | | | * mumi/messages.scm (bugs-by-severity): New procedure.
* messages: Use status-with-cache.Ricardo Wurmus2019-02-011-2/+2
| | | | * mumi/messages.scm (search-bugs, recent-bugs): Use status-with-cache.
* messages: Add status-with-cache.Ricardo Wurmus2019-02-011-1/+15
| | | | * mumi/messages.scm (status-with-cache): New procedure.
* guix: Add missing module reference.Ricardo Wurmus2019-02-011-0/+1
|
* view: Treat image attachments as binaries.Ricardo Wurmus2019-01-281-1/+2
| | | | | * mumi/web/view/utils.scm (display-message-body): Handle attachments of type "image" like any other binary attachment.
* view: Handle bytevector mime parts.Ricardo Wurmus2019-01-281-3/+12
| | | | | * mumi/web/view/utils.scm (display-message-body): Handle mime entities with a bytevector part.
* guix: Remove custom versions of packages.Ricardo Wurmus2019-01-281-58/+0
| | | | * guix.scm (guile-debbugs-next, guile-email): Remove.
* guix: Use GUILE-2.2 variable.Ricardo Wurmus2019-01-281-1/+1
| | | | * guix.scm (mumi)[propagated-inputs]: Replace guile-2.2.4 with guile-2.2.
* Use the Guix logo instead of GuixSD.Ricardo Wurmus2019-01-283-3/+18
| | | | | | * assets/css/screen.css (.logo): New rules. * assets/img/logo.png: Replace file. * mumi/web/view/html.scm (header): Remove IMG tag.
* Present download links for single part messages.Arun Isaac2019-01-271-2/+5
| | | | | | * mumi/web/view/utils.scm (display-message-body): Pass single part messages through the same display-mime-entity function so that download links are presented for them too.
* Support download of single part messages.Arun Isaac2019-01-272-17/+25
| | | | | | * mumi/messages.scm (extract-attachment): Return <email> record for single part messages. * mumi/web/download.scm (handle-download): Handle <email> record type.
* Do not attempt to decode the message body.Arun Isaac2019-01-271-12/+2
| | | | | | | guile-email handles decoding of the message body. * mumi/web/download.scm (handle-download): Do not attempt to decode the message body.
* Display subject only when message actually has a subject.Arun Isaac2019-01-271-3/+4
| | | | | * mumi/web/view/html.scm (issue-page): Check if message actually has a subject field before attempting to display it.
* mumi: extract-attachment: Extract the mime-entity body.Ricardo Wurmus2018-11-111-3/+2
| | | | | * mumi/messages.scm (extract-attachment): Extract the mime-entity-body instead of expecting a tagged list.
* Handle nested mime entries recursively.Ricardo Wurmus2018-11-111-13/+13
| | | | | * mumi/web/view/utils.scm (display-message-body): Apply display-mime-entity recursively.
* Declare Guile JSON as a dependency.Ricardo Wurmus2018-11-102-0/+6
|
* Use Guile Fibers web server.Ricardo Wurmus2018-11-103-9/+12
| | | | | | | * 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.
* view: Be more defensive when working with message subject.Ricardo Wurmus2018-11-091-1/+2
| | | | | * mumi/web/view/html.scm (issue-page): Ensure that the message subject is always a string before comparing it.
* Remove dependency on mailutils.Ricardo Wurmus2018-11-093-92/+1
| | | | | | * configure.ac: Remove check for mailutils. * guix.scm (mailutils-next): Remove variable. * mumi/message.scm (qp-decoder): Remove procedure.
* mumi: Use (email quoted-printable).Ricardo Wurmus2018-11-091-2/+2
| | | | | * mumi/web/download.scm (handle-download): Use quoted-printable-decode from guile-email to decode body.
* mumi: Try harder to extract a display name.Ricardo Wurmus2018-11-091-0/+3
| | | | | * mumi/messages.scm (extract-name): Try to extract a name from the email address.
* mumi: Remove "decode" procedure.Ricardo Wurmus2018-11-091-10/+0
| | | | * mumi/messages.scm (decode): Remove procedure.
* mumi: Remove parser procedures.Ricardo Wurmus2018-11-091-156/+0
| | | | | | * 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.
* guix: Update to latest version of guile-debbugs.Ricardo Wurmus2018-11-091-3/+4
|
* guix: Add missing inputs to mailutils-next.Ricardo Wurmus2018-11-091-0/+4
|
* mumi: handle-download: Operate on mime-entity.Ricardo Wurmus2018-11-091-25/+25
| | | | | * mumi/web/download.scm (handle-download): Match on mime-entity as returned by guile-email instead of custom data structure.
* mumi: extract-attachment: Use the email-body directly.Ricardo Wurmus2018-11-091-5/+2
| | | | | * mumi/messages.scm (extract-attachment): Remove call to split-multipart-message and use the email body directly.
* Add guile-email dependency.Arun Isaac2018-11-092-0/+34
| | | | | | * configure.ac: Check for guile-email. * guix.scm (guile-email): New variable. (mumi)[inputs]: Add guile-email.
* Use guile-email.Arun Isaac2018-11-093-67/+52
| | | | | | | | | * 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.
* Simplify definition of nth.Arun Isaac2018-11-091-1/+1
| | | | | * mumi/messages.scm (extract-attachment): Simplify definition of nth by using list-ref instead of drop and first.
* Use iota generated message numbers instead of debbugs' msg-num.Arun Isaac2018-11-093-11/+13
| | | | | | | | | * 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.
* Support live hacking.Arun Isaac2018-11-091-1/+40
| | | | | * scripts/mumi.in: Spawn REPL server to support live hacking, if --listen-repl is provided on the command line.
* guix: Update to latest guile-debbugs-next.Ricardo Wurmus2018-10-091-2/+2
|
* view: Fix submitter example.Ricardo Wurmus2018-09-201-1/+1
| | | | Reported-by: Pierre Neidhardt <mail@ambrevar.xyz>.
* view: Show changed message subjects.Ricardo Wurmus2018-09-201-8/+16
| | | | Suggested-by: Ludovic Courtès <ludo@gnu.org>
* view: Allow downloading any message part.Ricardo Wurmus2018-09-072-9/+23
|