Recent server update caused apt-cyg to start infinitely recursing
GoogleCodeExporter opened this issue · comments
What steps will reproduce the problem?
1. apt-cyg install (anything)
What is the expected output? What do you see instead?
When apt-cyg worked, I would show the requirement install tree like this:
* package
** cygwin
*** base-cygwin
** requirement
*** cygwin
**** base-cygwin
** ...
Recently, the servers have been updated so the package "cygwin", which apt-cyg
thinks every package requires, requires _autorebase, and that made apt-cyg
infinitely recurse. I would show the new requirement install tree like this:
* package
** cygwin
*** base-cygwin
*** _autorebase
**** dash
***** cygwin
****** base-cygwin
****** _autorebase
******* ...
**** libgcc1
***** cygwin
****** base-cygwin
****** _autorebase
******* ...
** requirement
*** cygwin
**** base-cygwin
**** _autorebase
***** dash
****** cygwin
******* base-cygwin
******* _autorebase
******** ...
***** libgcc1
****** cygwin
******* base-cygwin
******* _autorebase
******** ...
** ...
What version of the product are you using? On what operating system?
apt-cyg Revision 18, default mirror (mirror.mcs.anl.gov), Cygwin 1.7.12-1
Please provide any additional information below.
Original issue reported on code.google.com by rohanpai12
on 13 Apr 2012 at 3:18
[deleted comment]
A good solution is to keep a list of already-installed requirements during
requirement checks and installation. Then it could be:
* package
** cygwin
*** base-cygwin
*** _autorebase
**** dash
***** cygwin (in already-installed requirements list, skip)
**** libgcc1
***** cygwin (in already-installed requirements list, skip)
** requirement
*** cygwin (in already-installed requirements list, skip)
** ...
However, I don't mean keep a list of already-intsalled requirements from some
setup file like /etc/setup/installed.db, but I mean to keep a list of what is
already installed in the program that is empty when the program starts, even if
it is reinstalling an already-installed package, so the program won't reinstall
anything more than once.
Another good solution is to always skip installation of the package "cygwin",
even if it's a requirement of any package, because it includes attempting to
replace cygwin1.dll (which is surely in use by apt-cyg or any Cygwin
application)
Original comment by rohanpai12
on 27 Apr 2012 at 10:09
Fixed in r22, thanks.
Original comment by i...@skl.me
on 19 Feb 2014 at 8:46
- Changed state: Fixed