Project

General

Profile

Bug #20

[fullpkg-find] rewrite order creation

mtjm - about 12 years ago - . Updated over 9 years ago.

Status:
not-a-bug
Priority:
bug
Category:
-
Assignee:
% Done:

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

Related to libretools - Bug #24: [fullpkg] and [treepkg] solve the same problemfixed2012-02-27

Actions

History

#4

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.

#5

Updated by fauno about 10 years ago

  • Related to Bug #24: [fullpkg] and [treepkg] solve the same problem added
#6

Updated by mtjm over 9 years ago

  • Status changed from open to not-a-bug

dagpkg will solve this, #504.

Also available in: Atom PDF