freebsd / portupgrade

FreeBSD ports and packages management app
http://www.FreeBSD.org/
BSD 3-Clause "New" or "Revised" License
42 stars 26 forks source link

Incorrect use of package when option is different #65

Open HenryHu opened 8 years ago

HenryHu commented 8 years ago

I have a locally compiled, old vim installed (7.4.979). Locally, I deselected option TCL, and tcl is not installed on the system. During a 'portupgrade -P -v -a', portupgrade detected that vim should be upgraded. It recognized that the new version is vim 7.4.1229, and found a package for it. However, the package is built using default options, so TCL is enabled and tcl is a dependency. portupgrade then tried to install the package, which failed due to the missing dependency. If a package uses different options, then portupgrade should not use it. Even if it wants to use it, it should handle its dependencies, although I think that it should build from source instead. I'm not sure if my other ports with different options are overridden by portupgrade with the default package.

relevant log: ---> Checking for the latest package of 'editors/vim' ---> Found a package of 'editors/vim': /usr/ports/packages/All/vim-7.4.1229.txz (vim-7.4.1229) ---> Upgrade of editors/vim started at: Sat, 13 Feb 2016 18:45:57 -0500 ---> Upgrading 'vim-7.4.979' to 'vim-7.4.1229' (editors/vim) using a package ---> Updating dependency info ---> Uninstallation of vim-7.4.979 started at: Sat, 13 Feb 2016 18:45:57 -0500 ---> Fixing up dependencies before creating a package ---> Backing up the old version ---> Uninstalling the old version [Reading data from pkg(8) ... - 1174 packages found - done] ---> Deinstalling 'vim-7.4.979' Checking integrity... done (0 conflicting) Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED: vim-7.4.979

The operation will free 28 MiB. stats: Installed packages : 1174 | Disk space: 9584 MB <<<

[1/1] Deinstalling vim-7.4.979... [1/1] Deleting files for vim-7.4.979: 100% stats: Installed packages : 1173 | Disk space: 9556 MB <<<

[Reading data from pkg(8) ... - 1173 packages found - done] ---> Uninstallation of vim-7.4.979 ended at: Sat, 13 Feb 2016 18:46:19 -0500 (consumed 00:00:21) ---> Installation of vim-7.4.1229 started at: Sat, 13 Feb 2016 18:46:19 -0500 ---> Installing the new version via the package Installing vim-7.4.1229... pkg: Missing dependency 'tcl86'

Failed to install the following 1 package(s): /usr/ports/packages/All/vim-7.4.1229.txz * Command failed [exit code 70]: /usr/bin/script -qa /tmp/portupgrade20160213-17271-1n8a3t8 /usr/bin/env UPGRADE_TOOL=portupgrade UPGRADE_PORT=vim-7.4.1229 UPGRADE_PORT_VE$ =7.4.1229 /usr/local/sbin/pkg add /usr/ports/packages/All/vim-7.4.1229.txz ---> Updating dependency info ---> Restoring the old version Installing vim-7.4.979... Extracting vim-7.4.979: 100% ---> Removing old package' * Fix the package's problem and try again. ---> Installation of vim-7.4.1229 ended at: Sat, 13 Feb 2016 18:46:21 -0500 (consumed 00:00:02) ---> Upgrade of editors/vim ended at: Sat, 13 Feb 2016 18:46:21 -0500 (consumed 00:00:24)