Hi,
As mentioned in the dev meeting, I'm redoing Freshen in Python so it
can use the system code as much as possible. I have an early draft
written (gets list of programs, orders and outputs them) that I've
checked in, but I'm not sure I'm doing everything the right way - in
particular, calling CheckDependencies to get the set of dependencies
seems like it might be inefficient. I've cut the time down for a graph
build to around 45s for me (was over 8 minutes, until I figured
passing the URL would help). Are there points I could be using the
tools code better?

As I said, I've checked it in, and it works with some caveats:
1) For the moment, it generates a file called "cache" in the current
directory to save its data to (to avoid regenerating the graph each
time). Delete it to generate the graph again.
2) The sort isn't particularly well tested, beyond "it looks right"
and some sample checking.
3) Where there are cycles in the graph the ordering of the elements of
the cycle is arbitrary (but guaranteed to be consistent between runs
with the same state). It *won't* be an infinite loop, though (yay!),
and it doesn't affect other elements. There's a list of detected
cycles at the end as well.

You can change "if False:" at the top to get screeds of debugging
output if something looks wrong. Feedback and advice is welcome and
invited.
-Michael
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to