Proposal: splitting the network package

Conrad Parker conrad at
Wed Jan 9 13:17:23 CET 2013

On 9 January 2013 19:47, Joachim Breitner <mail at> wrote:
> Hi,
> Am Dienstag, den 08.01.2013, 18:07 +0900 schrieb Kazu Yamamoto:
>> > Splitting the package sounds like a good idea. How about the simpler
>> > package name "uri"?
>> Unfortunately, "uri" is already registered on Hackage.
> in the interest of package name sanity we could add Network.URI to the
> uri package and use that as the base for network. Would be less
> confusing to users to have only one “something-uri” package.

Yes, but then the "uri" package currently only defines one module, Text.URI:

which is mostly similar and incompatible with Network.URI:

Network.URI more completely implements the RFCs in that it handles
relative and absolute URIs, and URI normalization.

Text.URI includes a few functions for parsing (key,value) pairs for
CGI query parameters, which iirc is not actually part of the URI
specification, but rather part of the CGI conventions. I think these
query parameters are better handled by the "cgi" package, or by any of
the web frameworks (Yesod, Snap etc.).

I think the only sensible way to use the "uri" package name would be
to replace it (ie. remove Text.URI and add Network.URI).


More information about the Libraries mailing list