Circular dependencies
Dimitris Glezos
dimitris at glezos.com
Wed Nov 8 21:00:04 UTC 2006
Ralf Ertzinger wrote:
> Is it "legal" to have two packages which Require: each other
> (explicitly or implicitly)?
Speaking in general graph theory (dependencies can be seen as nodes
connected with directed arrows producing a directed graph), it becomes
more tricky when one allows circles, ie jump from Directed Acyclic
Graphs (DAGs) to cyclic ones.
I can't imagine how this could currently affect our tools but it could
become a thorn if we ever need to do smart handling of the dependency
graph. For example, Directed Acyclic Graphs have topological orders [1]
(which might be useful for, or is already used by yum), simpler/faster
search algorithms (depth-first search) etc.
Don't know if this "potential" is worth the effort of circumventing the
mutual dependency though (for example, by creating a dummy "parent"
dependency package that both package will depend on, etc). I would say
*it is*, because it keeps things simple and keeps some potentials open,
but then again, I am neither a maintainer nor the specialist on the
internals of rpm/yum, or even on graph theory. :)
-d
[1]: http://en.wikipedia.org/wiki/Topological_sort
--
Dimitris Glezos
Jabber ID: glezos at jabber.org, PGP: 0xA5A04C3B
http://dimitris.glezos.com/
"He who gives up functionality for ease of use
loses both and deserves neither." (Anonymous)
--
More information about the fedora-extras-list
mailing list