Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recent server update caused apt-cyg to start infinitely recursing #18

Closed
GoogleCodeExporter opened this issue Feb 18, 2016 · 3 comments
Closed

Comments

@GoogleCodeExporter
Copy link

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

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

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

@GoogleCodeExporter
Copy link
Author

Fixed in r22, thanks.

Original comment by i...@skl.me on 19 Feb 2014 at 8:46

  • Changed state: Fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant