This is the mail archive of the cygwin-apps@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Uninstall .dll last, reinstall first - final version


Igor Pechtchanski wrote:

Circular dependencies are not bugs.

Well, there are two types of circular dependencies, and they're only a problem in one of these instances.


Circular dependencies of packages in operation is not a problem. That is, you can say that there is Package A which uses facilities in Package B, and vice versa, and this is not a problem. These two packages simply have be installed together or uninstalled together to avoid a dependency problem.

Circular dependencies during the [un]installation process _is_ a problem. This is where we get the old problem of cygwin.dll or bash being removed during an upgrade before all the uninstall scripts for other packages are run. This requires a different dependency tree than required to solve the above problem.

The distinction is this: it can't be said that 'man' requires /bin/sh in operation, but its uninstall script does. We shouldn't demand that bash be installed along with man, because any of several packages can provide /bin/sh. But if bash is the one providing /bin/sh on your system, it has to be removed after man during an upgrade where both packages have been updated.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]