all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: "Aurélien Aptel" <aurelien.aptel+emacs@gmail.com>
Cc: Emacs development discussions <emacs-devel@gnu.org>
Subject: Re: BuGit
Date: Tue, 02 Feb 2016 11:43:03 -0500	[thread overview]
Message-ID: <jwv60y7ks1m.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <CA+5B0FNy_22YBGd+Akq8zmd+3-hvJJq9q2RdxqQkCVR19VZV2A@mail.gmail.com> ("Aurélien Aptel"'s message of "Tue, 2 Feb 2016 17:10:08 +0100")

>> For those curious about what I've been upto lately, one of the things
>> I've been working on is a new distributed issue tracking system which
>> I call BuGit:
>> https://gitlab.com/monnier/bugit
>> It's still primitive (only the command-line UI and the email
>> notification system are more or less complete: the web UI is still
>> read-only, and there is no email UI at all).
> I like the offline work+sync later feature.  This looks really
> interesting.  I see in the source you have code to import debbugs
> issues.  Do you have an emacs-bugit repo?

I wrote the debbugs conversion code in order to see how the system
scales to largish databases (using debbugs.gnu.org as the largish
database).  So yes, I have an "emacs-bugit" repo (actually it contains
a bit more since debbugs.gnu.org is used for more than just Emacs).

But the debbugs conversion code doesn't know anything about MIME, so the
result is not really usable: the majority of messages are OK, but many
appear as base64 line-noise, and none of the attachments are recognized
as attachments.

My next goal is to add an email UI so it can be used "as
a mailing-list", just like we do for debbugs (the "control@debbugs" part
of debbugs's UI is of lesser importance to me).  Once that code works,
it should be easy to improve the debbugs conversion so as to make an
actually usable "emacs-bugit" repo (since the email UI will have to
deal with MIME).

But that'd only be of interest if Emacs wants to switch to BuGit, which
seems unlikely in the short term.  Again, the only reason for this
debbugs conversion code was to get a realistic database to play with.

> How does querying for say open bugs work?

"bugit list" or click on "list all issues" in the web UI.

> Do you think it can scale to emacs bugs database?

My tests on the emacs-repo so far indicate that it should be possible to
make it scale to that kind of size.  There are a few cases where it
currently gets slow at such sizes, tho.  We may need to add caching of
some sort at a few places.

> The web and especially the email UI are going to be a PITA to write
> but they are essential so keep up the good work!

The code is currently written 100% in /bin/sh, which was great for the
command-line UI (I very quickly managed to get something usable), and
indeed handling MIME with /bin/sh is a PITA.

So I'll probably use Python for that (I actually expect most of the code
to be rewritten in Python over time), where it should actually be fairly
easy to write the email UI.  All we really need is, give a single
email:
- figure out if it's a new bug or a reply.
- find the corresponding issue id.
- split it into "body + attachments" (that's where sh sucks compared to
  something like Python's mail library).
- pass the result to Git.
- that's about it, tho afterwards we'll want to add support for things like
  closing-via-email and things like that, but these should also be easy.

I don't foresee any real PITA on the web UI side either, actually (tho
I'm very much unversed in web technologies, so I might be
underestimating the problems).

Any help welcome, of course.


        Stefan



  reply	other threads:[~2016-02-02 16:43 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-02 15:09 BuGit Stefan Monnier
2016-02-02 16:10 ` BuGit Aurélien Aptel
2016-02-02 16:43   ` Stefan Monnier [this message]
2016-02-03 10:37     ` BuGit Aurélien Aptel
2016-02-03 13:03       ` BuGit Stefan Monnier
2016-02-02 16:26 ` BuGit Nicolas Petton
2016-02-02 17:08   ` BuGit Stefan Monnier
2016-02-02 18:37 ` BuGit Aaron Conole
2016-02-02 19:40   ` BuGit Stefan Monnier
2016-02-02 19:30 ` BuGit Dmitry Gutov
2016-02-02 22:06   ` BuGit Stefan Monnier
2016-02-03 10:21 ` BuGit Aurélien Aptel
2016-02-03 13:04   ` BuGit Stefan Monnier
2016-02-03 16:45   ` BuGit John Wiegley

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwv60y7ks1m.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=aurelien.aptel+emacs@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.