From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: BuGit Date: Tue, 02 Feb 2016 11:43:03 -0500 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1454431410 30652 80.91.229.3 (2 Feb 2016 16:43:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 2 Feb 2016 16:43:30 +0000 (UTC) Cc: Emacs development discussions To: =?windows-1252?Q?Aur=E9lien?= Aptel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 02 17:43:21 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1aQe2z-0006va-19 for ged-emacs-devel@m.gmane.org; Tue, 02 Feb 2016 17:43:21 +0100 Original-Received: from localhost ([::1]:58062 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQe2y-0003gP-BA for ged-emacs-devel@m.gmane.org; Tue, 02 Feb 2016 11:43:20 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60920) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQe2s-0003cW-9f for emacs-devel@gnu.org; Tue, 02 Feb 2016 11:43:15 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aQe2m-0003rp-R0 for emacs-devel@gnu.org; Tue, 02 Feb 2016 11:43:14 -0500 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:56631) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQe2m-0003rK-L6 for emacs-devel@gnu.org; Tue, 02 Feb 2016 11:43:08 -0500 Original-Received: from ceviche.home (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.DIT.UMontreal.CA (8.14.1/8.14.1) with ESMTP id u12Gh3L5021998; Tue, 2 Feb 2016 11:43:03 -0500 Original-Received: by ceviche.home (Postfix, from userid 20848) id 0FAE466158; Tue, 2 Feb 2016 11:43:03 -0500 (EST) In-Reply-To: (=?windows-1252?Q?=22Aur=E9lien?= Aptel"'s message of "Tue, 2 Feb 2016 17:10:08 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) X-NAI-Spam-Flag: NO X-NAI-Spam-Level: X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0.4 X-NAI-Spam-Rules: 3 Rules triggered GEN_SPAM_FEATRE=0.2, TRK_NCM1=0.2, RV5569=0 X-NAI-Spam-Version: 2.3.0.9418 : core <5569> : inlines <4259> : streams <1581103> : uri <2131614> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.22 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:199173 Archived-At: >> 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