git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: "Grégoire Barbier" <devel@gbarbier.org>,
	git@vger.kernel.org, "Daniel Barkalow" <barkalow@iabervon.org>
Subject: Re: [PATCH] http-push: making HTTP push more robust and more user-friendly
Date: Mon, 21 Jan 2008 12:18:14 -0800	[thread overview]
Message-ID: <7vejcbx795.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: <alpine.LSU.1.00.0801211212010.5731@racer.site> (Johannes Schindelin's message of "Mon, 21 Jan 2008 12:17:10 +0000 (GMT)")

Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:

> IMHO it is safer to disable it for curl < 7.0xa -- even if it affects a 
> number of distros -- than to give the illusion that it works, when it does 
> not.
>
> As for fixing it in the non-MULTI case, I have a hunch that Mike's 
> cleanups will help that, but that this is a 1.5.5 feature.
>
> So, I would like to read in the ReleaseNotes something like this:
>
> -- snip --
> Support for pushing via HTTP was broken with curl versions prior to 7.16, 
> so we disabled it for now.  However, it is likely that a major cleanup of 
> the http transport code -- scheduled after the release of git 1.5.4 -- 
> will be supported with more curl versions.
> -- snap --

That's tempting but I suspect that it might be a wrong approach.

I think two important questions are:

 * Do we know that the current code is broken for everybody, or
   just broken for the majority of people who do nontrivial
   things?

 * Is the code in 1.5.3.8 any better?  IOW, did we make it worse
   during 1.5.4 cycle?

The feature was added by one person who needed it, and it was
included because the need was satisfid with an implementation,
so at some point in the past, it must have worked for _somebody_
(I am hoping that this is not a regression during 1.5.4 cycle).

Imagine that you are like that somebody who have been happily
using http-push.  Or imagine that you are starting to use git
and are tempted to use http-push.  With the above wording, I
strongly suspect that you would say "Crap --- 1.5.4 does not let
me run http-push, so I'll stay at 1.5.3.8 until 1.5.X lets me
use it again".

Which is _not_ a solution, if 1.5.3.8 has an http-push that is
broken the same way.  You will be choosing a version with the
same brokenness with respect to http-push, and are missing fixes
we made to http-push during 1.5.4 cycle, let alone fixes and
enhancements to other programs that comes with 1.5.4.

So while I strongly agree that we should warn the users about
existing breakages, I think it is better to just revert the code
to limit its use to USE_CURL_MULTI, if that is the case.

Do we even know what exactly is broken?

On the other hand, if the "transport.c" rewrite broke it and the
current one for 1.5.4 is fundamentally much worse than what we
used to have in 1.5.3.8, would it be possible as an interim
measure to revert http-push changes (but keep changes to other
programs that already are converetd to use transport.c) so that
we can ship the same code as 1.5.3.8 only for http-push?
Perhaps copy in selected old sources in a subdirectory to build
and link a standalone http-push program?

  reply	other threads:[~2008-01-21 20:18 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-13 19:02 [PATCH] http-push: making HTTP push more robust and more user-friendly Grégoire Barbier
2008-01-13 19:02 ` [PATCH] http-push: fix webdav lock leak Grégoire Barbier
2008-01-13 19:02   ` [PATCH] http-push: disable http-push without USE_CURL_MULTI Grégoire Barbier
2008-01-13 23:01 ` [PATCH] http-push: making HTTP push more robust and more user-friendly Junio C Hamano
2008-01-14 11:21   ` Johannes Schindelin
2008-01-14 19:35     ` Junio C Hamano
2008-01-14 20:22       ` Johannes Schindelin
2008-01-19 15:21   ` Grégoire Barbier
2008-01-19 23:18     ` Johannes Schindelin
2008-01-21 10:09   ` Grégoire Barbier
2008-01-21 10:20     ` Junio C Hamano
2008-01-21 10:27       ` Grégoire Barbier
2008-01-21 11:06         ` Junio C Hamano
2008-01-21 12:17           ` Johannes Schindelin
2008-01-21 20:18             ` Junio C Hamano [this message]
2008-01-21 20:29               ` Mike Hommey
2008-01-22  0:58                 ` Johannes Schindelin
2008-01-22  1:34                   ` Junio C Hamano
2008-01-22  1:38                     ` Johannes Schindelin
2008-01-22  2:04                       ` Junio C Hamano
2008-01-22  2:14                         ` Johannes Schindelin
2008-01-21 21:30               ` Daniel Barkalow
2008-01-21 22:05                 ` Junio C Hamano
2008-01-21 23:12                   ` Grégoire Barbier

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=7vejcbx795.fsf@gitster.siamese.dyndns.org \
    --to=gitster@pobox.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=barkalow@iabervon.org \
    --cc=devel@gbarbier.org \
    --cc=git@vger.kernel.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.
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).