Proposal: splitting the network package

Herbert Valerio Riedel hvr at gnu.org
Thu Jan 31 14:28:45 CET 2013


Michael Snoyman <michael at snoyman.com> writes:


[...]

> * Release a new version of network (1.5) that does not include the
> Network.URI module.
> * Create a network-uri package that uses conditionals in the cabal file.
>     * If it's compiled against network version 1.4 or earlier, it doesn't
> provide any modules.
>     * If it's compiled against network 1.5 or later, it provides the
> Network.URI module.
>
> This way, there's only ever one package which is providing Network.URI.

Alas, this causes some of the conditional-API issues mentioned in [1],
specifically the following situation:

Say, I have a package which specifies only its dependancy on
'network-uri' (but not 'network') for its 'Network.URI' module, then the
package compilation breaks depending on the actual version of the
'network' package linked against.



 [1]: http://www.haskell.org/pipermail/libraries/2012-November/018750.html



More information about the Libraries mailing list