I did not have enough time to follow in details the
conversation. I will try again in a couple of days, so in the
meantime, please take my reply as a draft :).
I like the distinction between "Project" and
"Dependencies". Also, any Project configuration should be seen
as a convenience. In these terms, the ConfigurationOfMoose has
to become a Project configuration.
Every engine we have, except for Moose Core, has its own
configuration, and most of them are pretty much a Project
configuration. So, from this point of view, anyone can
easily build his own Project using them.
When I mentioned the MooseEngines configuration, I
referred to a Project configuration to be included in the
ConfigurationOfMoose that we support as a whole. At this
moment, this should include the following:
- Roassal2 & co
- MooseAlgos
- PetitParser
- Fame + Metanool
- Glamour
- MooseCore (this does not exist yet)
- XMLReader
The term engine comes from this diagram:
Then, we should have a ConfigurationOfFAMIX that includes
FAMIX entities + extensions, importers. I see it as a
Dependencies configuration.
Then, we should have ConfigurationOfMooseFinder which
includes some basic tools like the MooseFinder and the
MetaBrowser. This is a Dependency configuration. On top of
that we should also have a ConfigurationOfFAMIXFinder that
depends on ConfigurationOfFAMIX and
ConfigurationOfMooseFinder and that includes all the
visualizations and the ui extensions. This will be a bit
hairy to do but I think it would be worth it.
If we move in this direction, the ConfigurationOfMoose
will finally become empty of explicit Monticello packages.
Cheers,
Doru