all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Eric S. Raymond" <esr@thyrsus.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: schwab@linux-m68k.org, emacs-devel@gnu.org
Subject: Re: Goals for repo conversion day
Date: Sat, 25 Jan 2014 11:01:24 -0500	[thread overview]
Message-ID: <20140125160124.GA8171@thyrsus.com> (raw)
In-Reply-To: <83vbx8azss.fsf@gnu.org>

Eli Zaretskii <eliz@gnu.org>:
> > Date: Sat, 25 Jan 2014 09:06:38 -0500
> > From: "Eric S. Raymond" <esr@thyrsus.com>
> > Cc: schwab@linux-m68k.org, emacs-devel@gnu.org
> > 
> > 1. Unlifted Bazaar and CVS commit references.
> 
> A mapping file would be more than appropriate for that.  The number of
> references is below 200, which is small.  This was suggested already,
> and I don't think anyone objected vociferously enough for us to
> consider that as a non-option.

*I* object to this.  On the grounds that I've been through this dance
many times before, and know that such out-of-band representations
generally cost more hassle and deliver less than people expect when
they think them up.
 
> And, btw, I'm still not sure you have uncovered all of those
> references, since the numbers you posted were significantly smaller
> than what I get using simple bzr commands.  So it could be that you
> will be investing a non-trivial effort to do a partial job.

I'm not yet certain I have all the CVS references, but I'm pretty sure
I have all the Bazaar ones now. Your last feedback led me to improve
my search scripts.  I'll do another pass before I'm finished.

> > 2. CVS commit cliques that should have been coalesced but were not,
> >    probably because the time window was defaulted too small when parsecvs
> >    was run.  (Very often these seem to be a pairs of a change and its
> >    ChangeLog description with an empty comment.)
> 
> I'd say leave that alone.  When Emacs used CVS, it was customary to
> commit each file as a separate CVS command (RMS actually asked for
> that), and moreover, have the ChangeLog be committed once for several
> unrelated changes in the same directory.  So you will be unable to fix
> this without a lot of manual work, and for what? we've been living
> with this in bzr for several years, with no one complaining.

Much less manual work than you think.  Reposurgeon was designed with
this kind of fixup in mind.  While it does take some human judgment
to apply the tool properly, the process does not involve grovelling
through every commit by hand.  It's a tolerable amount of effort
even for a repository this large - and if it weren't, I'd add 
capability to reposurgeon until it became so.

As for nobody complaining...this is because your standards are low,
and your standards are low because the tools historically used for these
conversions were mostly shoddy and badly designed. Windows users don't 
complain about Notepad, either, because they don't know any better -
but that doesn't make Emacs a waste of time.

> > 3. Multiple roots.  Two of the multiples are emacs and elpa, but others 
> >    are junk lost+found branches which should be carefully inspected and
> >    then (probably) removed.
> 
> Leave them alone, they don't bother anyone.  Removal can be deferred
> for later, if we ever feel it to be necessary.

See "low standards", above.

> > 4. Obsolete tags (very minor problem, unlike the previous three easily
> >    fixed in git itself, but I might as well do it while larger cleanups
> >    are in progress).
> 
> Since this is minor, it isn't not worth the trouble, IMO.

By itself, no, it wouldn't be.

> > 5. Unconverted .bzrignores (and possibly .cvsignores) in the history.
> 
> Why is that a problem?

See "seamless history browsing".
 
> > Andreas is not to blame for these problems; the tools available to him
> > were deficient in a number of respects (I had not yet written reposurgeon at
> > the time of the move to Bazaar). These are all normal issues
> > which I've seen before in over a dozen large conversions.  
> 
> The repository converted by Andreas has one significant advantage: it
> is being actively used for many months.  Personally, I trust that more
> than any fancy new conversions, especially if we have to switch to git
> without a prolonged interregnum, during which both bzr and git are
> used (which is probably highly undesirable, if even possible).

You appear to have forgotten some important aspects of the plan I
posted.  Andreas's work isn't going to be thrown away, and there isn't
going to be any lengthy interregnum.

The way this is working is that I am building a reposurgeon script that
expresses a sequence of edits to Andreas's mirror. On conversion day 
we will apply that script once, after which everyone can re-clone and
go on as before.

> Noble goals all of them, but I'm skeptical as to whether they can be
> achieved in practice.  What's worse, we won't know whether some issues
> remained until much later.

I know they can be achieved in practice because I have achieved them before,
many times.  Most recently in the conversion of the groff history, but
you could check with the maintainers of NUT or Hercules or robotfindskitten
or Roundup as well. Or the Blender Foundation - blender is a big reposurgeon
conversion done by someone else.

If we find any problems afterwards, I have the tools to fix them. Part of
my commitment is to do that.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>



  parent reply	other threads:[~2014-01-25 16:01 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-24 16:29 The git mirror is *very* badly screwed up Eric S. Raymond
2014-01-24 16:42 ` Andreas Schwab
2014-01-24 17:07   ` Eric S. Raymond
2014-01-24 17:22     ` Andreas Schwab
2014-01-24 18:54       ` Eric S. Raymond
2014-01-24 20:03         ` Eric S. Raymond
2014-01-24 21:06         ` Andreas Schwab
2014-01-24 21:27         ` Eli Zaretskii
2014-01-25  6:25           ` Eric S. Raymond
2014-01-25  7:44             ` Eli Zaretskii
2014-01-25 14:06               ` Goals for repo conversion day Eric S. Raymond
2014-01-25 14:42                 ` Eli Zaretskii
2014-01-25 14:46                   ` Eli Zaretskii
2014-01-25 16:01                   ` Eric S. Raymond [this message]
2014-01-25 16:15                     ` Paul Eggert
2014-01-25 17:15                     ` Eli Zaretskii
2014-01-25 21:01                       ` Eric S. Raymond
2014-01-26 17:32                         ` Eli Zaretskii
2014-01-27  0:33                           ` Eric S. Raymond
2014-01-27  5:16                             ` Werner LEMBERG
2014-01-27 16:31                               ` Eli Zaretskii
2014-01-27 17:42                                 ` Werner LEMBERG
2014-01-27 17:54                                   ` Eli Zaretskii
2014-01-27 10:04                             ` Andreas Schwab
2014-01-27 13:22                               ` Eric S. Raymond
2014-01-28  8:14                                 ` Ulrich Mueller
2014-01-28  8:58                                   ` Andreas Schwab
2014-01-28  9:07                                     ` David Kastrup
2014-01-28 15:40                                     ` What to do about the attic files Eric S. Raymond
2014-01-27 16:25                             ` Goals for repo conversion day Eli Zaretskii
2014-01-27 16:28                             ` Bzr's "confusion" between branches and repositories Eli Zaretskii
2014-01-27 16:47                               ` Andreas Schwab
2014-01-27 16:53                                 ` Eli Zaretskii
2014-01-27 17:15                                   ` Eli Zaretskii
2014-01-25 19:32                   ` Goals for repo conversion day Glenn Morris
2014-01-25 16:09                 ` Andreas Schwab
2014-01-25 17:01                 ` Thien-Thi Nguyen
2014-01-25 19:54                   ` Eric S. Raymond
2014-01-25 22:08                     ` Thien-Thi Nguyen
2014-01-26  3:24                       ` Eric S. Raymond
2014-01-25 21:57             ` The git mirror is *very* badly screwed up Stefan Monnier
2014-01-25 23:27               ` Eric S. Raymond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140125160124.GA8171@thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=schwab@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.