[racket-dev] planet2 and versions

From: Sam Tobin-Hochstadt (samth at ccs.neu.edu)
Date: Thu Dec 13 11:31:41 EST 2012

On Thu, Dec 13, 2012 at 10:08 AM, Jay McCarthy <jay.mccarthy at gmail.com> wrote:
>
>> Finally, as a meta-point, is there any evidence that just throwing away
>> versions will work? Any precedents? So far, this seems like a classic case
>> of throwing the baby out with the bathwater: versions sometimes cause
>> problems... so we won't have them. Now we have the same problems but fewer
>> tools for handling them. (See also Eli's response.)
>
> Most OSes work like this because you can't install different versions
> of the same package. Yes, they have version numbers, but the only
> useful semantics of those is that the installed and the current
> version number aren't equal (so you need to update.) If you also allow
> Package A to depend on Package B's version X or above, then
> essentially you are allowing Package B to switch to Package B' at
> version X, because before that point it did something different. P2
> just makes that explicit.

I'm not certain about other OS-level package managers, but dpkg, the
one I know best, has more semantics than this.  In particular, you can
get situations where versions conflict, preventing you from upgrading
some package. The way this happens is that you can specify version
equality or maximum version constraints for dependencies, or conflicts
with other packages of specific versions. If I understand Planet2
correctly, you're always able to upgrade any particular package.

Sam

Posted on the dev mailing list.