From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar?= Fuentes Newsgroups: gmane.emacs.devel Subject: Re: bzr repository ready? Date: Sat, 21 Nov 2009 21:17:01 +0100 Message-ID: <87einr63b6.fsf@telefonica.net> References: <87639fr3w7.fsf@red-bean.com> <87vdhfpil2.fsf@red-bean.com> <87einvxy9c.fsf@red-bean.com> <20091118230952.GB908@muc.de> <87my2jw05z.fsf@red-bean.com> <83skc9pbf7.fsf@gnu.org> <87iqd5vw5n.fsf@red-bean.com> <877htl53tc.fsf@telefonica.net> <87ws1ku7zd.fsf@red-bean.com> <87hbso4s13.fsf@telefonica.net> <83aaygoy90.fsf@gnu.org> <87vdh36d48.fsf@telefonica.net> <831vjrptha.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1258841511 31779 80.91.229.12 (21 Nov 2009 22:11:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 21 Nov 2009 22:11:51 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Nov 21 23:11:43 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1NByA1-0003SB-TP for ged-emacs-devel@m.gmane.org; Sat, 21 Nov 2009 23:10:30 +0100 Original-Received: from localhost ([127.0.0.1]:52970 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NBwQ8-00065K-IQ for ged-emacs-devel@m.gmane.org; Sat, 21 Nov 2009 15:19:00 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NBwQ2-00064O-Sx for emacs-devel@gnu.org; Sat, 21 Nov 2009 15:18:54 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NBwPx-00062l-J3 for emacs-devel@gnu.org; Sat, 21 Nov 2009 15:18:53 -0500 Original-Received: from [199.232.76.173] (port=60024 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NBwPx-00062h-Cp for emacs-devel@gnu.org; Sat, 21 Nov 2009 15:18:49 -0500 Original-Received: from impaqm5.telefonica.net ([213.4.138.5]:57362) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NBwPw-000416-QH for emacs-devel@gnu.org; Sat, 21 Nov 2009 15:18:49 -0500 Original-Received: from IMPmailhost1.adm.correo ([10.20.102.38]) by IMPaqm5.telefonica.net with bizsmtp id 7u0a1d01Z0piX6q3RwJbuG; Sat, 21 Nov 2009 21:18:35 +0100 Original-Received: from qcore ([88.24.228.153]) by IMPmailhost1.adm.correo with BIZ IMP id 7wJa1d0053KD41U1hwJaCt; Sat, 21 Nov 2009 21:18:35 +0100 X-TE-authinfo: authemail="981711563$telefonica.net" |auth_email="981711563@telefonica.net" X-TE-AcuTerraCos: auth_cuTerraCos="cosuitnetc01" In-Reply-To: <831vjrptha.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 21 Nov 2009 21:29:05 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:117466 Archived-At: Eli Zaretskii writes: >> >> For large compiled projects such as Emacs, the use of feature branches >> >> is not that great. First, building takes a long time. >> > >> > Why does the building take a long time in that case? >> > >> >> Second, it imposes a large penalty on those who just want to hack >> >> some elisp. >> > >> > What penalty is that? >>=20 >> Let's suppose that you want to do some lightweight hacking on a elisp >> component of emacs. The `feature branch' workflow says that you create a >> new local branch specifically for that: >>=20 >> bzr branch path/to/my/local/emacs/mirror fix-bug-3429 >>=20 >> and then you edit the .el files. But at some point you want to test >> them, and for that you need an emacs executable. Now, building emacs is >> not a fast operation even on a GNU/Linux modern desktop (let's not >> mention Windows). Hence, even when you start the build right after the >> feature branch creation, it is possible that you end your modifications >> before the build ends. This certainly will occur often on slow GNU/Linux >> machines and even on fast Windows machines. > > I'm not quite sure I understand. Are you talking about bootstrap? > That one indeed can take 30 minutes on Windows. But that's a one-time > thing; subsequent builds, when just a handful of files are modified > are much faster. It's a rare feature or even a bugfix that needs only > one build.=20 The newly created feature branch you are working on is a pristine set of versioned files on a new directory. If you want to test your change, you need to build the emacs executable, because it is not there. > And its already clear that making a full-fledged branch for a simple > bugfix is not the best idea. IMO, yes, but other DVCS proponents will try to convince you that creating feature branches even for simple changes is the Right Thing. And that is true if your project doesn't require building before testing. [snip] > Actually, I think I've understood enough to know what to do first when > we switch to bzr. About the only thing that's still not clear enough > is whether to keep my bidi branch locally or on subversions. Any > thoughts? Precisely DVCS shines on cases like yours: you have your own private branch were you develop bidi and, besides synching with emacs' master branch from time to time, you occasionally push your changes to a publicly availabe mirror of your bidi branch, so people can follow your development and hopefully test it and contribute patches. DVCS makes this very easy, either using your own machine as the server (a http server suffices for read-only access) or a service like launchpad, which adds bug reporting, patch management, etc. If you need help on figuring out how to do that, please ask. How do you manage your bidi branch right now? Is it a CVS branch on the Emacs repository or a set of patches that you store on your machine? --=20 =C3=93scar