[PATCH] Stop automatic dependency selection on setup.exe chooser screen

Andy Koppe andy.koppe@gmail.com
Fri Jul 23 00:47:00 GMT 2010


Hi,

Here's a small setup.exe patch addressing the issues reported at
http://cygwin.com/ml/cygwin/2010-07/msg00448.html.

The underlying problem here is that automatic dependency selection is
being done while the user is still choosing packages, without keeping
track of which packages were added automatically. Hence when the user
decides not to install a package after all, its dependencies will
remain selected. Also, cycling through the package actions to get to
'Uninstall' repeatedly invokes the dependency resolver, which makes it
nearly impossible to uninstall a group of packages with non-trivial
dependencies between them.

Making instant dependency updates work properly both for adding and
removing packages would be a major undertaking, and I think in their
current state they cause more problems than they're worth. Therefore,
this patch simply disables dependency updates during package
selection.

Instead, the 'Resolve Dependencies' screen which would usually have
been skipped will get more use. This has the nice feature that it
explicitly tells users what packages are being added and why. So as
not to needlessly scare users, the patch drops the "Warning!" from
"Warning! Unmet Dependencies Found" at the top of the screen.

I checked that the 'Resolve Dependencies' screen does not appear for a
fresh default installation. Going back from the 'Resolve Dependencies'
to package selection also appears to be working fine.

ChangeLog:
	* PickPackageLine.cc (PickPackageLine::{click,set_action}):
	Don't trigger automatic package selection when clicking on
	packages or categories on chooser screen.
	* PickCategoryLine.cc (PickCategoryLine::click): No more need to
	prepare for automatic package selection with markUnVisited().
	* res.rc: Drop "Warning!" from caption of Resolve Dependencies
	screen.

Andy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: depends.patch
Type: application/octet-stream
Size: 3147 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-apps/attachments/20100723/97827f8b/attachment.obj>


More information about the Cygwin-apps mailing list