On Tue, Jan 8, 2013 at 8:30 AM, Kazu Yamamoto <kazu@iij.ad.jp> wrote:
Hello,

The network package contains both socket modules and a URI
module. They are in different level. Since new features are actively
added to the socket modules, we may want to install a new network
package even though Haskell Platform includes it. However, the
Network.URI module depends on Parsec which depends on the text
package. This sometimes causes dependency hell.

I would like to propose to split the network package into:
- new network package which contains socket modules only
- network-uri package which contains Network.URI only

Example implementations are available:
        https://github.com/kazu-yamamoto/network/tree/no-uri
        https://github.com/kazu-yamamoto/network-uri

Note that they keep necessary commit history.

In HP, only "HTTP" and "cgi" depends on "network" and they use
"Network.URI". They can be compiled by just adding "network-uri" as
dependency.  Also, "http-conduit" uses "Network.URI". This can also be
compiled by adding "network-uri".

For more information, please refer to:
        https://github.com/haskell/network/issues/76

Discussion period: 2 weeks

--Kazu

_______________________________________________
Libraries mailing list
Libraries@haskell.org
http://www.haskell.org/mailman/listinfo/libraries

+1. When doing testing on Windows, I've run into this dependency hell multiple times, and the ultimate solution was just to remove a number of HP packages from the global database.

Michael