octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [pkg.m] Load order of dependencies


From: Juan Pablo Carbajal
Subject: Re: [pkg.m] Load order of dependencies
Date: Fri, 20 Dec 2019 07:11:59 +0100

Dear all,

In terms of functionality I think that the dependencydag (temporal)
package is more or less drafted.

You should be able to install it doing

pkg install 
https://gitlab.com/kakila/dependencydag/-/archive/v0.1.0/dependencydag-v0.1.0.tar.gz

The attached image was created with

pkg install -forge bim
fid = fopen('/tmp/bim.dot','w');
fdisp (fid, dag2graphviz (nthargout (1:3, @dependencydag, 'bim'){:}));
fclose (fid);

system ('dot -Tpng:cairo:cairo /tmp/bim.dot > /tmp/bim.png');
imshow('/tmp/bim.png');

This install the forge package bim (deepest dag so far) and requires
graphviz in your system, with cairo renderer (you can also erase
':cairo:cairo' to use the default renderer)

The TODO include versatility of the function dependencydag (or better
a new function), particularly building the global graph from a (cell
of) url(s). This requires the ability to: 1. download DESCRIPTION from
url, 2. parse DESCRIPTION file. This functionality is already
available in pkg private functions, hence my plan is to slowly set up
a pkganalyzer and pkgcreator packages to expose this (and other)
functionality to the user. My approach is functional not OO (once a
functional APi is inplace, a OO API is trivial).
I have also submitted a patch[1] for pkg/private/describe.m to provide
dependency information. This is a quick solution for the TODO.

@Andrew: do you have better pkginfo files parsers than pkg? I would
also need writers of those files for pkgcreator

[1] https://savannah.gnu.org/patch/index.php?9880

Attachment: bim.png
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]