Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] Eierlegende Wollmilchsau

Camille ,

Sorry, it's not my intent to offend anyone and I hoped not to do a lot of finger pointing though of course it's good if people pay attention and fix problems that are home grown. This is a reflection of how darned frustrated I was with Papyrus when I was trying to get Oomph's automated preference initialization code to work with all the stuff it's likely to encounter on the release train because I didn't want a whack of Oomph bugs opened simple because preferences pages themselves are ill behaved. Also, being the Modeling project lead, I feel somewhat personally responsible for the state of the modeling projects. So I definitely appreciate that you've responded with an action plan immediately! And I'm sorry that I over generalized my statements.

There's been some discussion about automated testing. The fact that Oomph provides support to automatically visit all preference pages and to log warnings about any that are ill behaved is perhaps a step in that direction. Certainly one can imagine using Eierlegende Wollmilchsau to install a staged version of Mars.2 and use the preference initialization support to visit all preference pages, and drive bug reports for projects to fix their preference pages before Mar.2 is released. And of course you can do the same test yourself with any Papyrus installation.

Thanks,
Ed


On 09/12/2015 11:38 AM, LETAVERNIER Camille wrote:
Hi Ed,

Thanks for the initiative. Just a quick answer on this part:

  > In the Error log you'll see many new errors.   Papyrus is a big
offender.   Please someone on the Papyrus team, review what is going on
with all your preference pages!  They just don't work at all.
We have a single preference page (+ 2 sub pages), generated from an XText Grammar, which apparently has not been properly regenerated recently. Admittedly, when opening these 3 pages, that generates 12 errors in the log (4/page or subpage) and a bunch of Eclipse error dialogs, so it's scary. But that's a little bit harsh to jump to the conclusion that "Our preferences don't work at all". Anyway, we're looking into the issue.

Otherwise, that's an interesting initiative. Thanks for the feedback :)

Regards,
Camille

-----Message d'origine-----
De : cross-project-issues-dev-bounces@xxxxxxxxxxx [mailto:cross-project-issues-dev-bounces@xxxxxxxxxxx] De la part de Ed Merks
Envoyé : mercredi 9 décembre 2015 07:54
À : Cross project issues <cross-project-issues-dev@xxxxxxxxxxx>
Objet : [cross-project-issues-dev] Eierlegende Wollmilchsau

Hi,

We've created an all-in-one Eclipse product affectionately called
Eclipse Eierlegende Wollmilchsau. For the linguistically challenged,
it's the Eclipse Egg-laying Wool-milk-pig.   Like the ultimate
all-in-one farm animal, this Eclipse product can do everything because
it installs everything on the release train.  Unfortunately, it's not
pretty.   I've opened
https://bugs.eclipse.org/bugs/show_bug.cgi?id=483982 to track this
issue.  It's probably best that follow up discussions take place on this
Bugzilla.

To give it a try, use the Eclipse Installer, switch to advanced mode,
and locate this product in the Eclipse.org Applications product catalog;
typing "wol" in the filter will locate it quickly.   Probably you'll
want to pick the Mars version so that your bundle pool fills with useful
things you might want to install some other time.  We generate this
product such that it installs all the categories on the release train,
except the the RT category.

Some immediate observations.  The toolbar has a lot of buttons, some of
them very large compared to the others.   Unless you're blessed with a
very wide monitor, they won't all fit on one line.   Do we really need
all these buttons in all perspectives?

Open the Error log when the installation first starts.  Clearly there
are some ill behaved plugins.  ECF contributes some things that don't
work well.  BPMN2 and Papyrus don't play well together. Nor do Eclipse
FX and Papyrus.  There's a battle for key bindings. Scout feels the need
to inform the user of fact that it's started.

Open the Progress view and note that there will be jobs that never will
finish.  What are these jobs trying to do?

One reason we created this product is so we can test what's going on
with all the preferences.  There are certainly a great many of them.  In
fact, if you try to visit them all, you'll run out of SWT handles, so
don't do that.  With the latest version of Oomph, the preferences dialog
includes an alert (little light bulb) down in the bottom left of the
preferences dialog that allows you to initialize all preferences to
their defaults; it will show only if you enable the preference recorder
(via the button to the right of the help button).   A great many
preference pages change preferences just by virtue of visiting the page
and hitting OK.   With the preference recorder, this results in many
preferences being recorded that you've never actually changed to be
different from the default. Using the alert button, Oomph automatically
visits all pages without recording any changes.  It must periodically
dismiss the preference dialog to ensure it doesn't run out of SWT
handles.   You might want to give that a try; please read the Help
documentation of the "Preference Initialization" dialog.

Some things to note afterward.   How many preferences cause UI freeze
report? Now that all bundles have been started, the jobs on the Progress
view go crazy and they never ever finish.  My computer fan comes on.
It's not pleasant.  Restarting the IDE helps put a stop to this.   I
believe it's the Linux tools doing this.  Does it make sense to have
Linux tools on my Windows machine?  Probably not, but why is it an
option if it makes no sense? I.e., can't the category requirements
include filters to eliminate these choices? There are also several linux
tools in the General Purpose Tools category, e.g.,  docker, changelog,
and rpm.  Are these really general purpose or Linux specific?  Certainly
RPM does not play nicely on my Windows box; jobs that apparently never
finish, but work very hard doing goodness knows what...

In the Error log you'll see many new errors.   Papyrus is a big
offender.   Please someone on the Papyrus team, review what is going on
with all your preference pages!  They just don't work at all. Also note
that Oomph logs warnings for all pages that come up in an invalid state
initially.  Once the user navigates to this preference page, they can't
leave.  No page should be initially invalid.  Thym and Linux tools are
offenders in this case.  LDT, Data Tools, and BIRT should all have a
look at this log because visiting their preferences result in errors.

Also have a look at Help ->  About Eclipse Platform -> Installation
details and turn to the Plug-ins tab.  Type "examples" in the filter.
There are a great many of them!  Does it make sense for people to
install examples in their IDE?   Aren't examples meant to be something I
can easily add to my workspace (File -> New -> Example..) so I can see
the source and play with it?   Why are examples available for
installation on the release train?

The following example features are categorized as available for
installation.  I believe none of them should be.

org.eclipse.equinox.p2.iu/org.eclipse.gef4.mvc.examples.source.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.gef4.zest.examples.source.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.emf.query.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.emf.transaction.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.emf.transaction.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.emf.validation.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.gef.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.gmf.examples.runtime.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.graphiti.feature.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.ocl.examples.feature.group
org.eclipse.equinox.p2.iu/org.eclipse.bpmn2.modeler.examples.feature.group

In other cases, the project SDK includes a dependency on the examples
feature.  I found EMF examples on the train, but I don't believe that
EMF itself contributes them, so someone is generously doing that on our
behalf.

If you love Eclipse, please give the Eclipse Eierlegende Wollmilchsau
some of your love.  Or just ignore it, and accept the fact that Eclipse
as a whole is an ugly pig.

Regards,
Ed
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev



Back to the top