Cabal-Install Update Problems

Hi, I'm trying to use cabal-install on two machines, Debian Sid and OS X 10.5, but I am unable to run "update" on either. Most other commands seem to work fine, but the networking for "update" gives an error on both machines, completely independently: Downloading package list from server 'http://hackage.haskell.org/packages/archive' cabal: recv: resource vanished (Connection reset by peer) Both machines are using a vanilla Netgear ProSafe VPN Firewall FVS318v3, a very simple prosumer router. Obviously, the router works fine for everything else, and has been running flawlessly for ages. This is using cabal-install from darcs and the cabal 1.4 branch. Thanks a bunch for helping, Jeff Wheeler

On Fri, 2008-07-25 at 21:43 -0500, Jeff Wheeler wrote:
Hi,
I'm trying to use cabal-install on two machines, Debian Sid and OS X 10.5, but I am unable to run "update" on either. Most other commands seem to work fine, but the networking for "update" gives an error on both machines, completely independently:
Downloading package list from server 'http://hackage.haskell.org/packages/archive' cabal: recv: resource vanished (Connection reset by peer)
Both machines are using a vanilla Netgear ProSafe VPN Firewall FVS318v3, a very simple prosumer router. Obviously, the router works fine for everything else, and has been running flawlessly for ages.
This is using cabal-install from darcs and the cabal 1.4 branch.
We're using the Haskell HTTP package, so it might be worth trying to construct a cut-down test case using that. Using update with the -v3 flag should dump the http conversation which might give us some indication of which phase goes wrong. Duncan

On Jul 25, 2008, at 11:38 PM, Duncan Coutts wrote:
We're using the Haskell HTTP package, so it might be worth trying to construct a cut-down test case using that. Using update with the -v3 flag should dump the http conversation which might give us some indication of which phase goes wrong.
That makes sense, but unfortunately I don't think I'm getting much useful information from the verbose version: Daedalus:Downloads jeff$ cabal update -v3 Downloading package list from server 'http://hackage.haskell.org/packages/archive' Sending: GET http://hackage.haskell.org/packages/archive/00-index.tar.gz HTTP/1.1 User-Agent: cabal-install/0.5.1 Creating new connection to hackage.haskell.org cabal: recv: resource vanished (Connection reset by peer) Interestingly, the first time I tried accessing this (the tar file) from within Safari, it hung for a few seconds and I had to refresh the page. It now seems to always work from with Safari, even after quitting and resuming. Are there any other Haskell utilities that try connecting to the internet? Perhaps I should try one of those. Jeff Wheeler

On Jul 26, 2008, at 12:25 AM, Jeff Wheeler wrote:
That makes sense, but unfortunately I don't think I'm getting much useful information from the verbose version:
Daedalus:Downloads jeff$ cabal update -v3 Downloading package list from server 'http://hackage.haskell.org/packages/archive' Sending: GET http://hackage.haskell.org/packages/archive/00-index.tar.gz HTTP/ 1.1 User-Agent: cabal-install/0.5.1 Creating new connection to hackage.haskell.org cabal: recv: resource vanished (Connection reset by peer)
I am still unable to figure out what is causing this issue, but while experimenting, I found something interesting. Changing the request in cabal-install to POST instead of GET causes it to work perfectly (obviously, this is really ugly, and I know that), avoiding any problems. The example get.hs file from the HTTP library works fine (even with the same file), so this is not a global problem with my network and Haskell. :-/ Jeff Wheeler

On 2008 Jul 27, at 21:45, Jeff Wheeler wrote:
I am still unable to figure out what is causing this issue, but while experimenting, I found something interesting. Changing the request in cabal-install to POST instead of GET causes it to work perfectly (obviously, this is really ugly, and I know that), avoiding any problems.
The example get.hs file from the HTTP library works fine (even with the same file), so this is not a global problem with my network and Haskell. :-/
This sounds like your ISP is running a misconfigured cache. -- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

On Sun, 2008-07-27 at 20:45 -0500, Jeff Wheeler wrote:
On Jul 26, 2008, at 12:25 AM, Jeff Wheeler wrote:
That makes sense, but unfortunately I don't think I'm getting much useful information from the verbose version:
Daedalus:Downloads jeff$ cabal update -v3 Downloading package list from server 'http://hackage.haskell.org/packages/archive' Sending: GET http://hackage.haskell.org/packages/archive/00-index.tar.gz HTTP/ 1.1 User-Agent: cabal-install/0.5.1 Creating new connection to hackage.haskell.org cabal: recv: resource vanished (Connection reset by peer)
I am still unable to figure out what is causing this issue, but while experimenting, I found something interesting. Changing the request in cabal-install to POST instead of GET causes it to work perfectly (obviously, this is really ugly, and I know that), avoiding any problems.
The example get.hs file from the HTTP library works fine (even with the same file), so this is not a global problem with my network and Haskell. :-/
Is the example get.hs file using a proxy server? Are you using a proxy server? cabal-install will use one if the http_proxy/HTTP_PROXY env var is set. See Hackage/HttpUtils.hs in cabal-install. Duncan
participants (3)
-
Brandon S. Allbery KF8NH
-
Duncan Coutts
-
Jeff Wheeler