Opened 4 years ago

#60473 new enhancement

[wishlist] -u: allow not to uninstall all inactive versions

Reported by: RJVB (René Bertin) Owned by:
Priority: Normal Milestone:
Component: base Version:
Keywords: Cc:
Port:

Description

"base" has an option to keep the an installation lean and mean by installing all inactive versions of the just upgraded port(s), but AFAIC that only caters to users who have perfect and justified faith in each and every update. And who don't use the de/activate mechanism to keep several install variants around.

From what I've seen, "base" is able to compare versions, so it should be possible to parametrise the -u option

  • with an N option that tells indicates how many older versions must be skipped (left installed).
  • with an option that make the algorithm consider only inactive (older) versions of the same install variant.

I would already be happy with the option to leave the previous version installed (= the one active at the time of upgrading), combined with variant specificity. For ports where I want to keep multiple older versions (which does happen) I can just as well do the pruning by hand.

Considering only inactive versions that have the same combination of variants should be trivial. The logic behind the other option is a bit less trivial and that's why I haven't yet rolled my own implementation. Should it just leave the version active at the time of upgrading, or should it leave the newest version available at that time. Those are not necessarily the same thing, and when they are not that's often for a reason ("I upgraded but discovered the new version doesn't work for me so backed out and left the new version to keep selfupdate+upgrade,outdated happy"). That almost calls for 2 different options...

Change History (0)

Note: See TracTickets for help on using tickets.