Re: [PATCH v1 2/2] travis-ci: disable GIT_TEST_HTTPD for macOS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 10, 2016 at 01:33:29PM -0800, Junio C Hamano wrote:

> Jeff King <peff@xxxxxxxx> writes:
> 
> > IMHO, the value in the http tests is not testing the server side, but
> > the client side. Without being able to set up a dummy HTTP server, we do
> > not have any way to exercise the client side of git-over-http at all.
> > And people on macOS _do_ use that. :)
> 
> Amen to that.
> 
> I however do not know what the universally available simplest dummy
> HTTP server would be.  There probably are better alternative than
> Apache with distro-customized ways of configuration that we have to
> adjust.  
> 
> A solution around HTTP::Server::Simple sounds attractive but is it
> a realistic alternative or too much effort required?  I dunno.

I'm less concerned about the amount of effort (though I agree it may be
a blocker) than about the fact that it may not behave similarly to real
servers. We have had real bugs and surprises with the way that various
web servers implement things. A few that come to mind are:

  1. Buffering/deadlock issues between the webserver and the CGI (this
     was an issue with Apache, but I don't know about other servers).

  2. The handling of CONTENT_LENGTH with chunked-encoding (this is still
     an issue with IIS).

  3. What happens when you ask for "foo.git/info/refs" and "foo.git" is
     a bundle file (Apache gives you a 404, lighttpd serves the bundle).

Ideally we'd test against a lot of different webservers, but that's
expensive (in CPU, but also in developer time). But I'd guess that
Apache is at least more representative than HTTP::Server::Simple of real
servers in the wild.

So if we had a simple fallback in addition to Apache, I'd be OK with
that. But we still have a problem that (say) people on MacOS would never
actually test against Apache, because it's not supported there.

-Peff



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]