git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: What's cooking in git.git (Apr 2014, #09; Tue, 29)

From
John Keeping <john@keeping.me.uk>
Date
May 6, 2014, 08:07 UTC
Message-ID
<20140506080749.GD23935@serenity.lan>
In-Reply-To
<xmqqoazb944d.fsf@gitster.dls.corp.google.com>
On Mon, May 05, 2014 at 04:50:58PM -0700, Junio C Hamano wrote:
Show 16 quoted lines
> John Keeping <john@keeping.me.uk> writes:
> 
> Having said all that, there is one caveat.
> 
> > 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.
> 
> You are correct to say that a remote helper has to talk with a
> foreign system and it would not help to dictate the update schedule
> of helpers to match the release cycle of Git itself.  At the same
> time, however, the interface the remote helpers use to talk to Git
> has not been as stable as you seem to think, I am afraid.  For
> example, a recent remote-hg/bzr series needed some enhancements to
> fast-import to achieve the feature parity with native transports by
> adding a missing feature or two on the Git side.

This doesn't qualify as an unstable interface for me. In this case, the remote helpers could not support a feature without Git supporting it first, which is quite natural and the remote helper can then guard that feature with a capability check. I do not think it likely that the remote helper interface will ever change in such a way that all remote helpers must be updated, at least not without a long deprecation period.

The Mercurial API makes no such guarantee; it is considered a private implementation detail and most releases seem to contain some changes that require all consumers to be updated.

There is a different level of urgency between "you cannot use this new feature until you update Git" and "if you update Mercurial then the remote helper will stop working", and that's why I think the remote helpers may benefit from a separate release schedule.

Previous: Felipe ContrerasNext: Felipe Contreras
Message 12 of 35 in “What's cooking in git.git (Apr 2014, #09; Tue, 29)”
  1. Junio C HamanoApr 29, 2014
  2. John KeepingMay 5, 2014
  3. Felipe ContrerasMay 5, 2014
  4. John KeepingMay 5, 2014
  5. Felipe ContrerasMay 5, 2014
  6. Felipe ContrerasMay 5, 2014
  7. Junio C HamanoMay 6, 2014
  8. Felipe ContrerasMay 6, 2014
  9. Junio C HamanoMay 5, 2014
  10. Felipe ContrerasMay 6, 2014
  11. Felipe ContrerasMay 6, 2014
  12. John KeepingMay 6, 2014
  13. Felipe ContrerasMay 6, 2014
  14. Junio C HamanoMay 6, 2014
  15. Felipe ContrerasMay 6, 2014
  16. Greg TroxelMay 7, 2014
  17. Felipe ContrerasMay 7, 2014
  18. Greg TroxelMay 7, 2014
  19. Felipe ContrerasMay 8, 2014
  20. Chris PackhamMay 8, 2014
  21. Felipe ContrerasMay 8, 2014
  22. David LangMay 9, 2014
  23. Felipe ContrerasMay 9, 2014
  24. Submodule improvements (Re: What's cooking in git.git (Apr 2014, #09; Tue, 29))Jonathan Nieder, May 9, 2014
  25. Junio C HamanoMay 8, 2014
  26. Junio C HamanoMay 7, 2014
  27. Felipe ContrerasMay 7, 2014
  28. John KeepingMay 7, 2014
  29. Felipe ContrerasMay 7, 2014
  30. Junio C HamanoMay 7, 2014
  31. John KeepingMay 7, 2014
  32. Felipe ContrerasMay 7, 2014
  33. Felipe ContrerasMay 7, 2014
  34. John KeepingMay 7, 2014
  35. Felipe ContrerasMay 7, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.