Long-term success of Cabal configurations? (was: Stability vs
latest features)
Thomas Schilling
nominolo at googlemail.com
Thu Aug 16 15:29:28 EDT 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 15 aug 2007, at 20.20, Stefan O'Rear wrote:
>
> I'd much prefer a situation where the (much smaller number of) library
> authors carry the burden of compatibility; maybe something like
>
> {- in base-2.0's .cabal -}
>
> Provides: fps-1.0 by { Data.ByteString* }
>
> ... which unfortunately doesn't handle splits (FiniteMap etc) anywhere
> near as well.
How far would re-exporting imported modules bring us? This would
allow some sort of "virtual" packages (put in quotes, because I don't
know how much this reflects the usage of this term in, e.g., Gentoo),
which could at least solve package splits quite nicely.
Assume we have base-2.0. Then the .cabal for base-1.0 could look
somewhat like:
build-depends: base >= 2.0, filepath, {- ... -}
exposed-modules: Data.ByteString*, System.FilePath*, {- ... -}
I really don't like hacks with configurations like
if flag(small_base) {
build-depends: base >= 2.0, filepath >= 1.0, ...
} else {
build-depenhs: base >= 1.0 && base < 2.0
}
since they have to be put in _every_ .cabal file.
/ Thomas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iQEVAwUBRsSlmCuNq1ISBIDTAQJuiwf+LNA5Y0q3s9C+7BqRB/GG1Zs9tA73uYPz
2oEVcna8SGSZb+oRNXvKBg8vv0AHVxMIV6C9AiCXgm8N+BNuZPj9m38fYg+m1nZg
cRTBs5fT1Vn4cQNoa67gNQxLSuUxZpn3U4IGzCs7E0y1VAW2twVkyKua/XwZD8/K
3bVTSK9AfCJOdJHdrnvcFOKE3bbBYeyY9rsx+p6rZgstDpcdn/5zbH4n3ibQNJle
/OA5I8Uoe8fFYo+lSCxfOvgAjX5+CpJrMsiWHBYIKfHD/zAEJjPGsZ1CaGmAQ9DP
t5qYLj4meZdROEVkijlBKPCl2+eEfYciKVNq//D+Fr+UAF026wQpdQ==
=CCMd
-----END PGP SIGNATURE-----
More information about the Libraries
mailing list