From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: esr@thyrsus.com (Eric S. Raymond) Newsgroups: gmane.emacs.devel Subject: Repository follies Date: Thu, 13 Feb 2014 18:49:38 -0500 (EST) Message-ID: <20140213234938.30E943805B4@snark.thyrsus.com> NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1392335415 26525 80.91.229.3 (13 Feb 2014 23:50:15 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 13 Feb 2014 23:50:15 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Feb 14 00:50:24 2014 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 1WE62w-0000cA-6e for ged-emacs-devel@m.gmane.org; Fri, 14 Feb 2014 00:50:22 +0100 Original-Received: from localhost ([::1]:49140 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WE62v-0006AG-Hp for ged-emacs-devel@m.gmane.org; Thu, 13 Feb 2014 18:50:21 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36140) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WE62p-0006A9-C1 for emacs-devel@gnu.org; Thu, 13 Feb 2014 18:50:19 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WE62k-0005h5-F6 for emacs-devel@gnu.org; Thu, 13 Feb 2014 18:50:15 -0500 Original-Received: from static-71-162-243-5.phlapa.fios.verizon.net ([71.162.243.5]:56984 helo=snark.thyrsus.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WE62k-0005gA-9i for emacs-devel@gnu.org; Thu, 13 Feb 2014 18:50:10 -0500 Original-Received: by snark.thyrsus.com (Postfix, from userid 1000) id 30E943805B4; Thu, 13 Feb 2014 18:49:38 -0500 (EST) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 71.162.243.5 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:169591 Archived-At: I have unscrambled the mess made by up-converting a bunch of RCS files into CVS about as much as is possible. I've figured out which =-prefixed attic files need to be renamed and in a couple of places where the real deletion points were. Finding those deletion points turns out to be quite hard to do in general. I've just added an extension to reposurgeon that allows it to run custom Python procedures with full access to the deserialized data structures inside the tool; I may try writing a crawler that mines the Changelog files looking for final mentions. While doing this, I ran across some weird artifacts. There is a whole series of commits that modify both rcslog and =rcslog, pointing to identical blobs for both. The fix (dropping the =rcslog fileops) is clear enough. There's one small group of commits that's even weirder. 1992-04-19T08:53:55Z!jimb@redhat.com Makefile.in :1743 :1737 1992-12-06T22:12:37Z!jimb@redhat.com Makefile.in :5094 :5092 1993-01-26T01:58:16Z!jimb@redhat.com Makefile.in :5479 :5455 These three commits contain fileops for Makefile.in and =Makefile.in *pointing to different blobs*. I wrote the custom-code extension because I had a dark suspicion things like this might exist and wanted to be able to write code to find them. Here's what the crawler code looks like: # This is a reposurgeon script that sanity-checks a property of the Emacs repo. # It is expected that stripped.fi was produced by stripping blobs out of # attic.fi to preserve the structure. read Eric S. Raymond "I hold it, that a little rebellion, now and then, is a good thing, and as necessary in the political world as storms in the physical." -- Thomas Jefferson, Letter to James Madison, January 30, 1787