Package management

Brandon Moore brandon_m_moore at yahoo.com
Tue Apr 26 23:05:33 CEST 2011


Based on my own misadventures and Albert Y. C. Lai's SICP 
(http://www.vex.net/~trebla/haskell/sicp.xhtml)
it seems the that root of all install problems is that reinstalling a particular 
version of a particular package
deletes any other existing builds of that version, even if other packages 
already depend on them.

Deleting perfectly good versions seems to be the root of all package management 
problems.

There are already hashes to keep incompatible builds of a package separate. 
Would anything break if
existing packages were left alone when a new version was installed? (perhaps 
preferring the most
recent if a package flag specifies version but not hash).

For example, It seems the butterfly effect

http://cdsmith.wordpress.com/2011/01/17/the-butterfly-effect-in-cabal/

could be avoided if the package database was allowed to simultaneously
contain a "twittertags-1.0.0-hashA" and "twittertags-1.0.0-hashB" built against
different dependencies.

The obvious difficulty is a little more trouble to manually specify packages. 
Are there any other problems
with this idea?

Brandon




More information about the Glasgow-haskell-users mailing list