Bug 1666 - display module for missing dependency
display module for missing dependency
Status: REOPENED
Product: bake
Classification: Unclassified
Component: bake
unspecified
All All
: P5 normal
Assigned To: Daniel Camara
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-05-02 22:58 EDT by Tom Henderson
Modified: 2014-04-18 14:55 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tom Henderson 2013-05-02 22:58:06 EDT
Here is 'bake.py download' for Ubuntu 13.04 machine without the python prerequisites to build bindings and pyviz:

-./bake.py download
 >> Searching for system dependency python-dev - Problem
 > Problem: Optional dependency, module "python-dev" failed.
   This may reduce the  functionalities of the final build. 
   However, bake will continue since "python-dev" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Searching for system dependency pygraphviz - Problem
 > Problem: Optional dependency, module "pygraphviz" failed.
   This may reduce the  functionalities of the final build. 
   However, bake will continue since "pygraphviz" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Searching for system dependency pygoocanvas - Problem
 > Problem: Optional dependency, module "pygoocanvas" failed.
   This may reduce the  functionalities of the final build. 
   However, bake will continue since "pygoocanvas" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.


it might be nice to show what is the impact of the missing dependency; i.e. which module will fail to build as a result.

Also, this could be improved a bit.

- > Problem: Optional dependency, module "pygoocanvas" failed.
-   This may reduce the  functionalities of the final build. 
+ > Problem: Optional dependency, module "pygoocanvas" not found.
+   This may reduce the functionality of the final build. 


   >> The python-dev, needed for python is not installed, try to install it.
Comment 1 Daniel Camara 2013-05-03 09:18:39 EDT
The comment improvement showing what is going on is a good idea and who depends on it is a good idea, but given that methods are reused by different parts of the code, not so evident to do. I perform some small changes but to do it properly a refactoring of some specific parts of the code will be needed. I will let the bug open so that I will not forget to do it in the future. 

 Knowing who depends on this module is even more complex since this information is not stored after the list of dependencies is made. Again, it is possible but I will need to rebuild some parts of the code. As an option the user can just call the --enabledTree in the bake show, that will give this information in a visual way.
Comment 2 Tom Henderson 2013-05-03 10:02:47 EDT
(In reply to comment #1)
> The comment improvement showing what is going on is a good idea and who depends
> on it is a good idea, but given that methods are reused by different parts of
> the code, not so evident to do. I perform some small changes but to do it
> properly a refactoring of some specific parts of the code will be needed. I
> will let the bug open so that I will not forget to do it in the future. 

I recognize this, small improvements are OK.

> 
>  Knowing who depends on this module is even more complex since this information
> is not stored after the list of dependencies is made. Again, it is possible but
> I will need to rebuild some parts of the code. As an option the user can just
> call the --enabledTree in the bake show, that will give this information in a
> visual way.

I was thinking that, perhaps upon a module build failure, there can be a conf check to alert the user something like:

>> build failed, perhaps it is because you miss dependencies X, Y, and Z

it might not be hard to correlate this at the point of module build time.

Anyway, this kind of refinement can be left for future work.