From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nix Newsgroups: gmane.emacs.devel Subject: Re: Emacs on OS X development Date: Tue, 31 Jul 2012 14:50:53 +0100 Message-ID: <87boiwqbsy.fsf@spindle.srvr.nix> References: <87r4s68rr4.fsf@lifelogs.com> <83A41E83-79C8-4490-966B-CD224041E840@gmail.com> <6BC9F752-C724-4C3D-B2B9-088597A57C3E@gmail.com> <878ve943r8.fsf@lifelogs.com> <87obn3zyw2.fsf@lifelogs.com> <87394aqjx3.fsf@lifelogs.com> <87d33ektbo.fsf@wanadoo.es> <837gtmgcb3.fsf@gnu.org> <878ve1lurc.fsf@wanadoo.es> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1343742686 9340 80.91.229.3 (31 Jul 2012 13:51:26 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 31 Jul 2012 13:51:26 +0000 (UTC) Cc: emacs-devel@gnu.org To: =?utf-8?Q?=C3=93scar?= Fuentes Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 31 15:51:22 2012 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 1SwCqy-000282-Sj for ged-emacs-devel@m.gmane.org; Tue, 31 Jul 2012 15:51:17 +0200 Original-Received: from localhost ([::1]:53518 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCqy-0001XR-95 for ged-emacs-devel@m.gmane.org; Tue, 31 Jul 2012 09:51:16 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:49514) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCqq-0001LV-Pp for emacs-devel@gnu.org; Tue, 31 Jul 2012 09:51:14 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SwCqk-0004y9-Bt for emacs-devel@gnu.org; Tue, 31 Jul 2012 09:51:08 -0400 Original-Received: from icebox.esperi.org.uk ([81.187.191.129]:58662 helo=mail.esperi.org.uk) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SwCqk-0004wh-25 for emacs-devel@gnu.org; Tue, 31 Jul 2012 09:51:02 -0400 Original-Received: from esperi.org.uk (nix@spindle.srvr.nix [192.168.14.15]) by mail.esperi.org.uk (8.14.5/8.14.5) with ESMTP id q6VDosMC003585; Tue, 31 Jul 2012 14:50:54 +0100 Original-Received: (from nix@localhost) by esperi.org.uk (8.14.5/8.14.5/Submit) id q6VDorXF015716; Tue, 31 Jul 2012 14:50:53 +0100 Emacs: no job too big... no job. In-Reply-To: <878ve1lurc.fsf@wanadoo.es> (=?utf-8?Q?=22=C3=93scar?= Fuentes"'s message of "Mon, 30 Jul 2012 06:48:07 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) X-DCC-wuwien-Metrics: spindle 1290; Body=2 Fuz1=2 Fuz2=2 X-MIME-Autoconverted: from 8bit to quoted-printable by mail.esperi.org.uk id q6VDosMC003585 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 81.187.191.129 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:152001 Archived-At: On 30 Jul 2012, =C3=93scar Fuentes spake thusly: > Eli Zaretskii writes: >> The real price to pay will be the bugs we miss on each separate >> platform, which are only revealed on the other, due to a different >> compiler/library/environment/memory arrangement/whatever. How many >> times in the past bugs in the Emacs code were found on Windows (or >> even in the MS-DOS port)? Segregate the ports, and you will lose all >> that. In effect, the project will be split into several ones that >> hardly ever communicate. > > I don't see how using a branch instead of #ifdef's with its associated > platform-specific macro definitions makes any difference here. Well, you can if you like think of a branch as being equivalent to a giant #ifdef around every single file, splitting each file into sections as large as the whole file is now, one for each platform. And that is where the problem lies. Right now, most of the code in Emacs is generic, and people who encounter bugs (or mistaken portability assumptions) in that code on one platform, and fix it, fix it on all. With multiple per-platform branches, that doesn't happen. (Particularly with bzr as bad as it is at keeping branches in synch. Cross-branch merges? Really?) Splitting ports into their own branches might be done because the port maintainer just can't get on with the other maintainers, or because their port is churning hard in early bringup phase and they're planning to merge back to trunk when it settles down, but I can't see a *sensible* reason to do it long-term. --=20 NULL && (void)