From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21108 invoked by alias); 10 Jan 2020 15:27:47 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 21018 invoked by uid 89); 10 Jan 2020 15:27:46 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 spammy=fence, bernd, unproven, Schmidt X-HELO: snark.thyrsus.com Received: from thyrsus.com (HELO snark.thyrsus.com) (71.162.243.5) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 10 Jan 2020 15:27:44 +0000 Received: by snark.thyrsus.com (Postfix, from userid 1000) id 0E4AB47049BF; Fri, 10 Jan 2020 10:27:43 -0500 (EST) Date: Fri, 10 Jan 2020 15:27:00 -0000 From: "Eric S. Raymond" To: Bernd Schmidt Cc: Maxim Kuvyrkov , Joseph Myers , "Richard Earnshaw (lists)" , GCC Development , Alexandre Oliva , Jeff Law , Mark Wielaard , Jakub Jelinek , Segher Boessenkool Subject: Re: Proposal for the transition timetable for the move to GIT Message-ID: <20200110152743.GA115450@thyrsus.com> Reply-To: esr@thyrsus.com References: <9B71A0F7-CD93-4636-BFC7-1D1DBC040F07@linaro.org> <6EE7BD53-6677-49D2-BCDD-56CD7DA855E9@linaro.org> <88B4DAF3-33C1-445F-8F5A-809D5463D0F9@linaro.org> <20200108221119.GA94728@thyrsus.com> <20200109023804.GR3191@gate.crashing.org> <27A7DEAB-42B9-4A5A-BE89-618F7ED2347E@linaro.org> <79ab2338-2924-d820-cd8e-d15bc297eeef@t-online.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <79ab2338-2924-d820-cd8e-d15bc297eeef@t-online.de> User-Agent: Mutt/1.10.1 (2018-07-13) X-IsSubscribed: yes X-SW-Source: 2020-01/txt/msg00125.txt.bz2 Bernd Schmidt : > I was on the fence for a long time, since I felt that the rewritten > reposurgeon was still somewhat unproven. And that was a fair criticism for a short while, until the first compare-all verification on the GCC history came back clean. The most difficult point in the whole process for me was in late November. That was when I faced up to the fact that, while I had a Subversion dump reader that was 95% good, (1) that 5% could disqualify it for this complex a history, and (2) I wasn't going to be able to solve that last 5% without tearing down most of the reader and rebuilding it. The problem was that I'd been patching the dump reader to fix edge cases for too long, and the code had rigidified. Too many auxiliary data structures with partially overlapping semabtics - I couldn't change anything without breaking everything. Which is the universe's way of telling you it's time for a rewrite. Of course the risk was that I wouldn't get that rewrite done in time for deadline. But I had two assets that mitigated the risk. One was a couple of very sharp collaborators, Julien Rivaud and Daniel Brooks (and later another, Edward Cree). The other was having a really good test suite, and a well-established procedure for integrating new tests that jsm and rearnshaw were able to use. It was (as the Duke of Wellington famously said) a damned near-run thing. With all those advantages, if I had waited even a week longer to make the crucial scrap-and-rebuild decision, the new reader might have landed too late. There's a lesson in here somewhere. When I figure out what it is, I'll put it in my next book. -- Eric S. Raymond