#2730: wxGUI: wx.metadata/wx.mwprecip/etc: Unable to fetch interface description
for command 'wx.metadata'
---------------------------------------------+-------------------------
Reporter: mlennert | Owner: grass-dev@…
Type: defect | Status: new
Priority: normal | Milestone: 7.0.2
Component: wxGUI | Version: svn-trunk
Keywords: interface-description toolboxes | CPU: Unspecified
Platform: Unspecified |
---------------------------------------------+-------------------------
Apparently, at start up, the wxGUI tries to get interface descriptions of
all addon modules. To do this, it (core/toolboxes.py) uses the name of the
addon. However, some addons are not modules, but GUI toolboxes that might
contain modules, and as such they do not provide interface descriptions.
This is the case, for example, with wx.metadata and wx.mwprecip which lead
to
{{{
WARNING: Some addons failed when loading. Please consider to update your
addons by running 'g.extension.all -f'.
}}}
I don't really understand why this has to be called at all when the user
does not have any toolboxes defined...
Replying to [ticket:2730 mlennert]:
> I don't really understand why this has to be called at all when the user
does not have any toolboxes defined...
The reason is that addon modules go to the module tree in *Search modules*
tab. We want them there (at least we wanted some time ago, it's probably
few years already). You need to call addons to get their descriptions. We
are not doing this on MS Win because it would give error windows. We can
put there just the name on all platforms. Alternatively, we can use
g.extension but it must be extended to output descriptions in some
parseable format (it doesn't output them at all now). The former is quite
stable but incomplete state, I guess there would be feature request soon.
The latter is quite good, requires some extensions of g.extension but I
tried to partially clean and document the code in the trunk version
recently, so it could be easy to do it. (g.extension reads the previously
stored descriptions from XML.)
As for the wrong entries, there might be some wrong/insufficient info
coming from g.extension (the list of installed addons is acquired using
`g.extension -a`).
Replying to [comment:1 wenzeslaus]:
> Replying to [ticket:2730 mlennert]:
> > I don't really understand why this has to be called at all when the
user does not have any toolboxes defined...
>
> The reason is that addon modules go to the module tree in *Search
modules* tab.
Ah, ok. Thanks for the explanation.
> As for the wrong entries, there might be some wrong/insufficient info
coming from g.extension (the list of installed addons is acquired using
`g.extension -a`).
There are no wrong entries. The problem is that g.extension -a lists the
names of extensions that have been installed, but extensions != modules in
some cases. There are, for example, extensions that provide several
modules. So, by using "g.extension -a" you cannot be sure that the names
you get are actually modules that can be called with --interface-
description.