The best might be to remind users that call "port sync" that "port selfupdate" is the "usual" next step in updating ports. i.e. "port sync" would end by displaying something like

"Portfiles successfully updated. To upgrade installed ports to their latest versions, please run port selfupdate."

selfupdate doesn't update anything but update MacPorts itself and the ports tree. If I understood you correctly, they'd then be running `port upgrade outdated` which still leaves MacPorts itself not updated.

Oh -_- Right, having higher level scripts that call these commands automatically made me forget how things worked... People are calling sync ? I agree then that this isn't ideal, and your solution (sync works just as selfupdate, with a --portfiles_only option) seems adequate to me.

If there isn't a consensus on this "merging", however, reminding users that the "port" command hasn't been upgraded would be a minimum (fix my end-of-sync sentence above to read "To upgrade the 'port' command, please run 'port selfupdate'." :) ).

However, you do bring up an interesting idea I hadn't considered: why don't we have a command to do a all-things upgrade? That is `selfupdate` + `upgrade outdated`?

This has been discussed before (Ryan probably was the clearest on why we do things this way, iirc). One reason I think was that "port upgrade" warranted some caution, in particular as to which ports would be in fact, upgraded, so that many users do

port selfupdate
port outdated
port upgrade outdated (if "port outdated"'s output isn't scary, else they upgrade only some ports)

this would be the equivalent of other packaging system's "confirmation before upgrading" dialogs (apt-get, aptitude ask before upgrading installed software and list the changes that will be made). This would be a bit more development, and I guess discussion came to an end there.
_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to