From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1QS6gl-0006nY-3n for garchives@archives.gentoo.org; Thu, 02 Jun 2011 12:07:49 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B44B21C12D for ; Thu, 2 Jun 2011 12:07:46 +0000 (UTC) Received: from mail-wy0-f181.google.com (mail-wy0-f181.google.com [74.125.82.181]) by pigeon.gentoo.org (Postfix) with ESMTP id 04DE11C065 for ; Thu, 2 Jun 2011 11:05:44 +0000 (UTC) Received: by wyi11 with SMTP id 11so697035wyi.40 for ; Thu, 02 Jun 2011 04:05:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:from :date:x-google-sender-auth:message-id:subject:to:content-type; bh=8qhG4/rcN9yvABqHUcsmbhM5lo2Unm4Xx2e0hyL59so=; b=WJjQyjDuiUKQhRsjQDEL14JQNIvb856yPknzQzakPAVh84WtSl9PVPd27a/bE9rxGR WU6afSphGcCSDR82X5lq5ijc3CNMoPoNBphZ7ka7d31HGClYhY+lpa5df4cu0nGZU0eK Pjm1JoYPp4thv8TiSzSNKawGRWNgEVhEuF1tY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type; b=MS6Or5iOox2UjO8J9BGOraE8j2OHygzyaoseThob+itiOriycyEDDgxgVaLHkOtwAp zeMuaYNnvXd1iQK4mAmrOeEkedwiYIizAlOvCGHY36eUOQcE1zIXpxyc1Xa/BLau43Jw j3B7OTBt3E8N9b6uJ1Jy9z5pP01Vn4VRFXwdU= Received: by 10.216.68.6 with SMTP id k6mr5808351wed.85.1307012744149; Thu, 02 Jun 2011 04:05:44 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Sender: nirbheek.chauhan@gmail.com Received: by 10.216.30.140 with HTTP; Thu, 2 Jun 2011 04:05:24 -0700 (PDT) In-Reply-To: <4DE6CB57.5080709@gentoo.org> References: <4DD24EBE.5060002@gentoo.org> <201106011739.45691.dilfridge@gentoo.org> <201106011824.06028.dilfridge@gentoo.org> <4DE6CB57.5080709@gentoo.org> From: Nirbheek Chauhan Date: Thu, 2 Jun 2011 16:35:24 +0530 X-Google-Sender-Auth: d6DACmV5LNkCDBWVUE18wGQcoB0 Message-ID: Subject: Re: [gentoo-dev] Re: RFC: better policy for ChageLogs To: gentoo-dev@lists.gentoo.org Content-Type: text/plain; charset=UTF-8 X-Archives-Salt: X-Archives-Hash: 762890d45a60891dd4f6b08dfa2269a5 On Thu, Jun 2, 2011 at 4:59 AM, Jorge Manuel B. S. Vicetto wrote: > On 01-06-2011 19:50, Nirbheek Chauhan wrote: >> The current situation is: >> >> (a) Not dire. >> (b) Not urgent. > > (c) has irked enough developers and users that people pushed council to > update the policy about the use of ChangeLogs. Yes, and I'm surprised that these same developers pushed towards a negative solution (kick productive people out) rather than a positive solution (move to git). >> And if we decide, hey, let's move to git instead of having this >> discussion, the current situation is also: >> >> (c) A waste of everyone's time. >> >> So no, future plans are not independent of the current situation, and >> a move to git *is* a way to deal with the current situation. >> >> In effect, we kill (at least) two birds with one stone and prevent a >> lot of argument and bad blood. > > To be clear I support the goal to move our tree to git. > However, I'd like to point out that simply moving to git will leave us > in the same state. Assuming everyone agrees that git is far more useful > than cvs to check for changes in the tree, a simple but important issue > remains: the plan is to move the "development tree" to git, but to keep > the rsync mirrors for users. So the "move to git" doesn't fix the issue > for users or developers using an rsync tree. Arguably, if developers want to know the history they should use the copy of the git tree that they're supposed to be having. Relying on ChangeLogs for history is just silly if you have the complete history at your fingertips with git. > One solution that has been proposed before and that was raised again in > this thread is to generate ChangeLogs directly from scm commit messages. > That is already a solution with cvs, so moving to git won't help here. This is not true. One of the main problems of generating ChangeLog messages from cvs/svn is that you don't have much control over the `cvs log` output, cvs itself is extremely slow, and cvs maintains log information *per-file*. Hence ChangeLog generation in the format we want would be slow/impractical. There's tens of thousands of packages. How long do you think it'll take to generate ChangeLogs from cvs for all of them? Notice how every project that did a move to git from cvs/svn started auto-generating ChangeLogs[1]. One reason was that ChangeLogs will *always* cause merge conflicts, and they're duplicate information, so there's no point keeping them in the local tree. The other reason is that with git it takes a fraction of a second to generate a ChangeLog from the commit messages. 1. https://live.gnome.org/Git/ChangeLog > The same objections that have been raised about doing it for cvs, not > being able to use different messages for the commit message and in > ChangeLog (something I understand but admit have hardly used before), > are also valid if we move to git. > Not really. This problem has been raised and the solution is to add a '[trivial]' or '#trivial' etc tag to the commit message (either subject of body), and it won't be included in the auto-generated ChangeLog. The main issue that people have with not writing ChangeLog messages for removals is that developers can't figure out when, why, and by whom an ebuild was removed; because there's no ChangeLog entry, and cvs log/cvs diff is too painful to use. This makes it hard to fix breakage. There's a fringe issue of users wanting to know why an 'old' ebuild was removed while they're offline in a train or something (and don't want to keep a cloned git repo around), but that's not reason enough to kick our second-most-hardworking developer. In essence, the most basic issue here is *not* users who want to have all information offline, but the fact that /developers/ rely on ChangeLog for information because cvs log/diff suck. Note that the developer in question always wrote proper commit messages, so `git log` WOULD solve all our problems. Cheers, -- ~Nirbheek Chauhan Gentoo GNOME+Mozilla Team