git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: John Keeping <john@keeping.me.uk>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: What's cooking in git.git (Apr 2014, #09; Tue, 29)
Date: Mon, 5 May 2014 19:45:46 +0100	[thread overview]
Message-ID: <20140505184546.GB23935@serenity.lan> (raw)
In-Reply-To: <xmqq7g67iwxc.fsf@gitster.dls.corp.google.com>

On Tue, Apr 29, 2014 at 03:38:07PM -0700, Junio C Hamano wrote:
> * fc/remote-helpers-hg-bzr-graduation (2014-04-29) 11 commits
>  - remote-hg: trivial cleanups
>  - remote-hg: make sure we omit multiple heads
>  - git-remote-hg: use internal clone's hgrc
>  - t: remote-hg: split into setup test
>  - remote-hg: properly detect missing contexts
>  - remote-{hg,bzr}: store marks only on success
>  - remote-hg: update to 'public' phase when pushing
>  - remote-hg: fix parsing of custom committer
>   (merged to 'next' on 2014-04-22 at fed170a)
>  + remote-helpers: move tests out of contrib
>  + remote-helpers: move out of contrib
>  + remote-helpers: squelch python import exceptions
> 
>  Move remote-hg and remote-bzr out of contrib/.  There were some
>  suggestions on the follow-up fix patches still not in 'next', which
>  may result in a reroll.
> 
>  Will merge to 'next' and keep it there for the remainder of the
>  cycle.

I'd like to register my opposition to moving git-remote-{bzr,hg} out of
contrib/.

I am not convinced that tools for interoperating with other VCSs need to
be part of core Git; as Junio has pointed out previously, while contrib/
was necessary for promoting associated tools when Git was young and had
not established mindshare, Git is now by far the most popular DVCS and
is rapidly catching up with centralized systems.  Associated tools can
therefore live on their own and do not need to be promoted as part of
Git itself (as git-imerge is doing successfully).

In the case of git-remote-hg specifically, the remote helper has to use
an interface that the Mercurial developers consider unstable [1]; the
version currently on 'pu' fails the test suite for me because I have
Mercurial 3.0:

	AttributeError: 'mqrepo' object has no attribute 'getbundle'

I do not want to end up in a situation where an update to Git is blocked
by a distribution because git-remote-hg is not updated to support newer
versions of Mercurial sufficiently quickly; this previously happened in
Gentoo due to git-svn and meant that was stuck on 1.7.8 until 1.7.13 was
released [2].

Since the remote helper interface is stable and the remote helpers do
not use any of the Git internals, I consider the risks of including them
in core Git to outweigh the benefits of wider distribution.  In fact,
the remote helpers may benefit from having their own release cadences
so that they can respond to changes in related projects more quickly
than the normal Git release cycle.


[1] http://mercurial.selenic.com/wiki/MercurialApi#Why_you_shouldn.27t_use_Mercurial.27s_internal_API
[2] https://bugs.gentoo.org/show_bug.cgi?id=418431

  reply	other threads:[~2014-05-06 16:21 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-29 22:38 What's cooking in git.git (Apr 2014, #09; Tue, 29) Junio C Hamano
2014-05-05 18:45 ` John Keeping [this message]
2014-05-05 19:08   ` Felipe Contreras
2014-05-05 19:55     ` John Keeping
2014-05-05 20:34       ` Felipe Contreras
2014-05-05 21:43         ` Felipe Contreras
2014-05-06 17:59       ` Junio C Hamano
2014-05-06 18:54         ` Felipe Contreras
2014-05-05 23:50   ` Junio C Hamano
2014-05-06  0:20     ` Felipe Contreras
2014-05-06  0:39       ` Felipe Contreras
2014-05-06  8:07     ` John Keeping
2014-05-06  8:32       ` Felipe Contreras
2014-05-06 19:34       ` Junio C Hamano
2014-05-06 19:39         ` Felipe Contreras
2014-05-07 11:44     ` Greg Troxel
2014-05-07 19:54       ` Felipe Contreras
2014-05-07 23:38         ` Greg Troxel
2014-05-08  0:18           ` Felipe Contreras
2014-05-08  7:29     ` Chris Packham
2014-05-08  7:56       ` Felipe Contreras
2014-05-09  0:40         ` David Lang
2014-05-09  0:58           ` Felipe Contreras
2014-05-09  0:58           ` Submodule improvements (Re: What's cooking in git.git (Apr 2014, #09; Tue, 29)) Jonathan Nieder
2014-05-08 18:31       ` What's cooking in git.git (Apr 2014, #09; Tue, 29) Junio C Hamano
2014-05-07  0:01   ` Junio C Hamano
2014-05-07  0:17     ` Felipe Contreras
2014-05-07  8:05     ` John Keeping
2014-05-07  9:26       ` Felipe Contreras
2014-05-07 18:56       ` Junio C Hamano
2014-05-07 19:28         ` John Keeping
2014-05-07 19:50           ` Felipe Contreras
2014-05-07 20:26         ` Felipe Contreras
2014-05-07 20:44           ` John Keeping
2014-05-07 21:38             ` Felipe Contreras

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=20140505184546.GB23935@serenity.lan \
    --to=john@keeping.me.uk \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).