Bug #20
[fullpkg-find] rewrite order creation
0%
Description
Use a depth first search of a directed acyclic graph (while checking that it has no cycles). Don't assume that it's a tree (it isn't, there are examples for this in abslibre-mips64el), don't count depths in the graph (they are useful only when showing it, but this assumes it being a tree).
Related issues
History
Updated by mtjm almost 11 years ago
I believe it's more important than a "wish" and I can do it (not before exams).
This occurred recently: a new ruby version with new soname was available, and a new graphviz version. This is the dependency graph:
graphviz -> ruby -> graphviz
fullpkg decided to build graphviz first, then ruby, thus making the graphviz Ruby binding not work: it needed the version of ruby available when it was built.
Running fullpkg on ruby instead of graphviz would make the other order, so it cannot be decided correctly by the script.
I believe this should be decided manually by the user, with fullpkg detecting the cycle and failing. (The real solution in this case was to build ruby ignoring the graphviz update, or build graphviz twice, releasing the new one only.)
Other situation where this is useful:
a -> b -> d a -> c
if d fails to build, it's still possible to build c, fullpkg currently won't do it.
Updated by fauno about 10 years ago
- Related to Bug #24: [fullpkg] and [treepkg] solve the same problem added
Updated by mtjm over 9 years ago
- Status changed from open to not-a-bug
dagpkg will solve this, #504.