I'm trying to check this out with some software that uses a previous version (HXml toolbox), and I get the following error from Hugs:
[[
Reading file "..\http\Browser.hs":
Type checking
ERROR "..\http\Browser.hs":865 - Type error in application
*** Expression : ioAction $ openTCP hst
*** Term : ioAction
*** Type : IO a -> BrowserAction a
*** Does not match : (Int -> IO Connection) -> BrowserAction a
]]
It appears that the signature for "openTCP" has changed...
Previous version (HTTP.hs): [[ openTCP :: String -> IO Connection openTCP uri = ]] -- http://homepages.paradise.net.nz/warrickg/haskell/http/HTTP.hs
Latest version (HTTP.hs): [[ openTCP :: String -> Int -> IO Connection openTCP uri port = ]] -- http://www.dtek.chalmers.se/~d00bring/haskell-xml-rpc/HTTP.hs
But this is referenced by the copy of Browser indicated from your web page: [[ ; c <- ioAction $ openTCP hst ]] http://homepages.paradise.net.nz/warrickg/haskell/http/Browser.hs
I'm guessing that you also have a modified version of Browser.hs?
#g --
At 00:16 16/03/04 +0100, Bjorn Bringert wrote:
The Haskell HTTP client implementation available from [1] seems to be without a maintainer (if anyone knows how to reach Warrick Gray, who wrote it, let me know).
I include a modified version of this module in the XML-RPC library [2]. Changes from the original module include:
* made it Hugs compatible * disabled 100-continue transfers as they caused POST requests to HTTP/1.0 servers to stall * called it Network.HTTP instead of HTTP * added support for URIs with a port number * added a simple toggle for HTTP traffic logging
The modified HTTP module is available from:
http://www.dtek.chalmers.se/~d00bring/haskell-xml-rpc/http.html
In line with Graham Klyne's suggestion [3] that a consistent version of this module be brought into some "community space", it will probably move to the haskell-libs project at SourceForge in the not too distant future.
Yours truly,
Bjorn Bringert
[1] http://homepages.paradise.net.nz/warrickg/haskell/http/
[2] http://www.dtek.chalmers.se/~d00bring/haskell-xml-rpc/
[3] http://www.haskell.org/pipermail/libraries/2004-February/001693.html
Actually I don't have a modified version of Browser, since I have never
used that module :). Of course I should have realized that I would break
other software by adding a port argument to openTCP, but at the time I did that I had no idea that others would use it.
I have reverted the type of the exported openTCP to String -> IO
Connection, it now always uses port 80 like the old version did. Instead there is an internal function openTCPPort that takes a port number. I will try to have a look at the Browser module to see what needs to be done to make it support arbitrary port numbers and if it needs any other updates.
An updated version of HTTP.hs is available at http://www.dtek.chalmers.se/~d00bring/haskell-xml-rpc/HTTP.hs
Thanks for pointing that out.
/Bjorn
_______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell