darcs

Issue 16 Remotely unavailable .git might produce garbage on screen

Title Remotely unavailable .git might produce garbage on screen
Priority feature Status resolved
Milestone Resolved in
Superseder Nosy List darcs-devel, dmitry.kurochkin, eivuokko, jch, kowey, markstos, thorkilnaur, tommy, wglozer, zooko
Assigned To wglozer
Topics Windows

Created on 2005-11-22.12:41:59 by eivuokko, last changed 2009-08-27.14:03:38 by admin.

Messages
msg63 (view) Author: eivuokko Date: 2005-11-22.12:41:59
Darcs tries to access .git on remote repository over http, and in some cases,
even when site returns 404, darcs prints the body of http response on screen. 
This happens when using darcs send, even when there is nothing to send.

I have seen this with 1.0.3 (Windows, Will Glozer's build), and it was reported
in irc by munga, to happen on 1.0.4 (MacOsX, some before-release-version).

As this is second-hand bug report, I am not sure exact steps to reproduce.
- darcs repo on http server
- retrieving .git returns 404 and human-friendly error page
- darcs send (whetever there is changes or not)

Probably one of those nasty libcurl features.

--Esa
msg72 (view) Author: droundy Date: 2005-11-23.12:38:36
I'm not sure what would trigger this, but my best guess is that it would
happen if we're using curl rather than libcurl to access the file.
Accesses to nonexistent files ought to give us an error report, rather than
something human-readable.

If someone could post an available repository (and version of darcs)
that'll reproduce this bug, that would be great.
-- 
David Roundy
http://www.darcs.net
msg74 (view) Author: zooko Date: 2005-11-23.17:05:29
I made a repository consisting of a single empty file, on Linux.  I tried to
"darcs get" that repository from w32.  I got the .git noise.
msg77 (view) Author: eivuokko Date: 2005-11-24.13:02:00
>
> David Roundy <droundy@darcs.net> added the comment:
>
> I'm not sure what would trigger this, but my best guess is that it would
> happen if we're using curl rather than libcurl to access the file.

I did see see the garbage, the html that was 404 page, on darcs 1.0.3
release, so it can't be curl vs libcurl.  Maybe it was some sort of
.git motd? (darcs motd was ok, and accesible, but empty.)

> Accesses to nonexistent files ought to give us an error report, rather
> than something human-readable.

> If someone could post an available repository (and version of darcs)
> that'll reproduce this bug, that would be great.

This person "munga" in irc had unreleased repo, and gave address to
access it, but he had changed his web server settings somehow when I
made report on next day.  Reading backlogs, he had:
 * no directory listings
 * some sort of Drupal-site
 * there was some talk about redirect, but I didn't see this on my tests
   with lynx

--Esa
msg78 (view) Author: droundy Date: 2005-11-24.13:10:04
On Wed, Nov 23, 2005 at 05:05:29PM +0000, Zooko wrote:
> I made a repository consisting of a single empty file, on Linux.  I tried to
> "darcs get" that repository from w32.  I got the .git noise.

Could you post the .git error message? Does it only show up if you do the
darcs get from w32?
-- 
David Roundy
http://www.darcs.net
msg81 (view) Author: zooko Date: 2005-11-24.16:50:51
> Could you post the .git error message?

Not for at least a few days -- I'm travelling.  Someone else should try to
reproduce this.

> Does it only show up if you do the
> darcs get from w32?

Correct.

Regards,

Zooko
msg139 (view) Author: zooko Date: 2005-12-01.20:15:03
Here's a "garbage on screen" example.  This is normal for me when pulling using
darcs-1.0.5rc1 on w32:

HACK allmydat-61800b:~/sandboxes/dw-merge-plane-blockstore-hacking$ time darcs
pull -v
zooko@192.168.175.1:work/newnewtailorfrom770/dw-merge-plane-blockstore-hacking
darcs55633c               |        223 kB | 224.0 kB/s | ETA: 00:00:00 | 100%
unable to identify
work/newnewtailorfrom770/dw-merge-plane-blockstore-hacking/.git/HEAD: no such
file or directory
unable to identify
work/newnewtailorfrom770/dw-merge-plane-blockstore-hacking/_darcs/format: no
such file or directory
unable to identify
work/newnewtailorfrom770/dw-merge-plane-blockstore-hacking/.git/darcs-format: no
such file or directory
darcs366537               |        223 kB | 224.0 kB/s | ETA: 00:00:00 | 100%
darcs4897b1               |          5 kB |   5.6 kB/s | ETA: 00:00:00 | 100%
darcs24b965               |          2 kB |   2.0 kB/s | ETA: 00:00:00 | 100%
darcs7b2e43               |          0 kB |   0.3 kB/s | ETA: 00:00:00 | 100%
darcs588467               |          0 kB |   0.7 kB/s | ETA: 00:00:00 | 100%
darcs4a1550               |          0 kB |   0.3 kB/s | ETA: 00:00:00 | 100%
darcs5e770d               |          0 kB |   0.2 kB/s | ETA: 00:00:00 | 100%
darcs30732a               |          0 kB |   0.8 kB/s | ETA: 00:00:00 | 100%
darcs6ac73b               |          1 kB |   1.0 kB/s | ETA: 00:00:00 | 100%
darcs310c5a               |          1 kB |   1.4 kB/s | ETA: 00:00:00 | 100%
darcs3eda42               |          1 kB |   1.4 kB/s | ETA: 00:00:00 | 100%
darcs6fde1c               |          1 kB |   1.1 kB/s | ETA: 00:00:00 | 100%
darcs1c5d4e               |          2 kB |   2.1 kB/s | ETA: 00:00:00 | 100%
We have the following new (to them) patches:
They have the following patches to pull:
Mon Nov 28 04:17:39 Pacific Standard Time 2005  zooko@zooko.com
msg141 (view) Author: droundy Date: 2005-12-02.13:03:15
On Thu, Dec 01, 2005 at 08:15:03PM +0000, Zooko wrote:
> Here's a "garbage on screen" example.  This is normal for me when pulling
> using darcs-1.0.5rc1 on w32:

Thanks!

[...]

I see.  It's not just .git that's leading to garbage on the screen, but
your screen's way more crowded than it ought to be--most likely because we
aren't redirecting the stderr from scp when we call external programs on
Windows.  I wonder if using System.Process when we're using ghc 6.4 would
solve this? It would also eliminate the feedback you get on each download.
-- 
David Roundy
http://www.darcs.net
msg207 (view) Author: wglozer Date: 2005-12-13.06:37:14
I've sent in a patch to use System.Process.runProcess in the win32 exec
implementation and to redirect stderr to the NUL device.  This patch resolves
the garbage issue when using SSH, but I haven't seen the same problem when
getting or pulling over HTTP.
msg208 (view) Author: zooko Date: 2005-12-13.12:51:49
Will, would you please build a Windows .exe including your patch?
msg244 (view) Author: markstos Date: 2005-12-19.01:36:17
Someone accessing my repo just got this too, possibly related to using 
"mod_speling" instead of just throwing a 404. The repo address is: 
http://mark.stosberg.com/darcs_hive/uploader/ 
 
dartmouth > darcs send -o bignose.patch 
 
darcs failed:  Can't understand repo format: <!DOCTYPE HTML PUBLIC 
"-//IETF//DTD HTML 2.0//EN"> 
Can't understand repo format: <HTML><HEAD> 
Can't understand repo format: <TITLE>300 Multiple Choices</TITLE> 
Can't understand repo format: </HEAD><BODY> 
Can't understand repo format: <H1>Multiple Choices</H1> 
Can't understand repo format: The document name you requested 
(<code>/darcs_hive/uploader/.git/darcs-format</code>) could not be 
found on this server. 
Can't understand repo format: However, we found documents with names 
similar to the one you requested.<p>Available documents: 
Can't understand repo format: <ul> 
Can't understand repo format: <li><a 
href="/darcs_hive/uploader/./darcs-format">/darcs_hive/uploader/./darcs-format</a> 
(common basename) 
Can't understand repo format: <li><a 
href="/darcs_hive/uploader/../darcs-format">/darcs_hive/uploader/../darcs-format</a> 
(common basename) 
Can't understand repo format: </ul> 
Can't understand repo format: <HR> 
Can't understand repo format: <ADDRESS>Apache/1.3.34 Server at 
mark.stosberg.com Port 80</ADDRESS> 
Can't understand repo format: </BODY></HTML>
msg245 (view) Author: markstos Date: 2005-12-19.01:46:59
On Mon, Dec 19, 2005 at 01:36:18AM +0000, Mark Stosberg wrote:
> 
> Mark Stosberg <mark@summersault.com> added the comment:
> 
> Someone accessing my repo just got this too, possibly related to using 
> "mod_speling" instead of just throwing a 404. The repo address is: 
> http://mark.stosberg.com/darcs_hive/uploader/ 
>  
> dartmouth > darcs send -o bignose.patch 

However, I just disabled mod_spelling for that directory so I can get
the patches I want. I could re-enable it if necessary to help with
further debugging.

    Mark
msg561 (view) Author: zooko Date: 2006-03-13.16:29:33
The Windows package of 1.0.6 still has this bug.
msg576 (view) Author: jch Date: 2006-03-22.18:34:57
Darcs relies on getting 404s reliably from the server.  mod_spelling replaces
404s with random other data.


A possible workaround would be to treat 300 as synonymous with 404, which is
a rather nasty hack and might break something other.  How badly do people need
Darcs to interoperate with mod_spelling?

For now, I hereby declare darcs incompatible with mod_spelling, and downgrade
this report to a wishlist item.
msg3145 (view) Author: markstos Date: 2008-02-06.04:39:28
This is deferred while the "git" integration is broken.
msg3151 (view) Author: droundy Date: 2008-02-06.16:11:23
Actually, this is fixed in unstable, since we removed the (broken) git support.
History
Date User Action Args
2005-11-22 12:41:59eivuokkocreate
2005-11-23 12:38:37droundysetstatus: unread -> unknown
nosy: droundy, tommy, eivuokko
messages: + msg72
2005-11-23 17:05:29zookosetnosy: + zooko
messages: + msg74
2005-11-24 13:02:01eivuokkosetnosy: droundy, tommy, zooko, eivuokko
messages: + msg77
2005-11-24 13:10:04droundysetnosy: droundy, tommy, zooko, eivuokko
messages: + msg78
2005-11-24 16:50:51zookosetnosy: droundy, tommy, zooko, eivuokko
messages: + msg81
2005-12-01 17:40:51jchsettopic: + Windows
nosy: + wglozer
2005-12-01 20:15:03zookosetnosy: droundy, tommy, wglozer, zooko, eivuokko
messages: + msg139
2005-12-02 13:03:16droundysetnosy: droundy, tommy, wglozer, zooko, eivuokko
messages: + msg141
2005-12-12 19:26:23wglozersetnosy: droundy, tommy, wglozer, zooko, eivuokko
2005-12-13 06:37:14wglozersetnosy: droundy, tommy, wglozer, zooko, eivuokko
messages: + msg207
2005-12-13 12:51:49zookosetnosy: droundy, tommy, wglozer, zooko, eivuokko
messages: + msg208
2005-12-19 01:34:15markstossetnosy: + markstos
2005-12-19 01:36:18markstossetnosy: droundy, tommy, markstos, wglozer, zooko, eivuokko
messages: + msg244
2005-12-19 01:46:59markstossetnosy: droundy, tommy, markstos, wglozer, zooko, eivuokko
messages: + msg245
2006-03-13 16:29:35zookosetnosy: droundy, tommy, markstos, wglozer, zooko, eivuokko
messages: + msg561
2006-03-22 18:34:59jchsetpriority: bug -> feature
nosy: + jch
messages: + msg576
2008-02-06 04:39:29markstossetstatus: unknown -> deferred
nosy: + kowey, beschmi
messages: + msg3145
2008-02-06 16:11:24droundysetstatus: deferred -> resolved-in-unstable
nosy: droundy, jch, tommy, beschmi, kowey, markstos, wglozer, zooko, eivuokko
messages: + msg3151
2008-09-04 21:27:40adminsetstatus: resolved-in-unstable -> resolved
nosy: + dagit
2009-08-06 17:38:17adminsetnosy: + jast, Serware, dmitry.kurochkin, darcs-devel, mornfall, simon, thorkilnaur, - droundy, jch, wglozer, eivuokko
2009-08-06 20:46:17adminsetnosy: - beschmi
2009-08-10 21:45:11adminsetnosy: + wglozer, eivuokko, jch, - darcs-devel, jast, Serware, mornfall
2009-08-10 23:54:00adminsetnosy: - dagit
2009-08-25 17:51:54adminsetnosy: + darcs-devel, - simon
2009-08-27 14:03:38adminsetnosy: jch, tommy, kowey, markstos, wglozer, darcs-devel, zooko, eivuokko, thorkilnaur, dmitry.kurochkin