[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [wtp-dev] Re: Improve WTP startup performance, use manifest instead of plugin.xml
|
Hi,
Most of Eclipse has used the 'Hide this
package' checkbox instead. This allows downstream plugins to make use of
the internal classes but receive a compile warning by default. The warning
can be removed or changed into an error by using the JDT's new 'Discouraged
reference' setting under the Java > Compiler > Errors/Warnings preferences.
(BTW, you might want to go into all of your JUnit plugins and enable project
specific settings to disable this, since most JUnit plugins will make use
of internal API) Until we are confident that we've got the right API exposed
we should use this option instead of not exposing packages at all.
Where appropriate, the 'friends' option
can also be used by adding plugins to the list right below the checkbox.
This allows the named plugins to have unrestricted access to the packages,
but restricts everyone else. This is appropriate for things like core/UI
plugin pairs (or within a component) so that the UI plugin does not receive
warnings when using internal classes in the core plugin.
Tim deBoer
WebSphere Tools - IBM Canada Ltd.
(905) 413-3503 (tieline 969)
deboer@xxxxxxxxxx
Jeffrey Liu/Toronto/IBM@IBMCA
Sent by: wtp-dev-bounces@xxxxxxxxxxx
05/31/2005 10:52 AM
Please respond to
"General discussion of project-wide or architectural issues." |
|
To
| "General discussion
of project-wide or architectural issues." <wtp-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [wtp-dev] Re: Improve
WTP startup performance, use manifest
instead of plugin.xml |
|
Hi Philippe,
I got to admit, I'm not very familiar with this feature myself. Is this
feature becoming the convention on how to hide internal packages? If so,
I totally agree that we should exploit this feature more, but probably
not in the 1.0 timeframe. My concern with the 1.0 timeframe is that we
have been freely using APIs within ourselves, I'm pretty sure hiding internal
APIs now will cause tons of compilation errors. Doesn't sound like something
that we want to do at this stage, but definitely in the next release. So
for the moment, I made everything available, just like when we are using
plugin.xml. If component leads strongly believe a certain package should
not be available to clients, feel free. Just make sure your change does
not break anyone higher up.
Thanks,
Jeffrey Liu
IBM Rational Software - Performance Analyst
IBM Toronto Lab.
8200 Warden Ave. Markham, Ontario, L6G 1C7
Internal mail: D3/R8V/8200/MKM (D3-268)
T/L: 969 3531
Tel: (905) 413 3531
Fax: (905) 413 4920
jeffliu@xxxxxxxxxx
"Philippe Ombredanne"
<pombredanne@xxxxxxxxx>
Sent by: wtp-dev-bounces@xxxxxxxxxxx
05/30/2005 06:43 PM
Please respond to
"General discussion of project-wide or architectural issues." |
|
To
| "'General
discussion of project-wide or architectural issues.'" <wtp-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
| RE: [wtp-dev] Re: Improve
WTP startup performance, use manifest instead
of plugin.xml |
|
Jeffrey,
Note that if you are systematically adding packages to the manifest you
are a bit defeating the idea behind this feature.
Instead you would want to do it only for non internal package, and only
add new packages when that is required by another plugin.
If that is an internal package, then you may want to consider creating
some public API between them at that stage, and taking them out of internals.
A bit similar to the idea to start coding with a private method, and make
it progressively protected to public, as needed.
But limiting the visibility by default to the least needed visibility.
It has the side benefit of respecting Eclipse's conventions, as well as
progressively make API things which are needed by other plugins within
WTP.
And they might happen to be exactly the things that other folks building
integration with WTP may be willing to extend too.
Just my 2cents... :-)
--
Cheers
Philippe
philippe ombredanne | nexB - Open by Design (tm)
1 650 799 0949 | pombredanne at nexb.com
http://www.nexb.com
-----Original Message-----
From: wtp-dev-bounces@xxxxxxxxxxx [mailto:wtp-dev-bounces@xxxxxxxxxxx]
On Behalf Of Jeffrey Liu
Sent: Monday, May 30, 2005 3:14 PM
To: General discussion of project-wide or architectural issues.
Subject: Re: [wtp-dev] Re: Improve WTP startup performance,use manifest
instead of plugin.xml
I've comitted the plugin.xml to manifest conversion into CVS. A couple
of things to watch out for:
1. In the future, if you are adding new Java packages to your plugin, be
sure to add them to the manifest file. If you don't do this, the newly
added packages will not be visible to plugins higher up the stack. You
can use the plugin editor to add the packages. Double click on plugin.xml
and switch to the runtime tab.
2. If you are using M7, read on. I know a couple of people (myself included)
have run into compilation errors that read something like the following:
Access restriction: package org.eclipse.wst.<whatever> is not visible.
If you run into this, shutdown Eclipse, bring it back up, re-build/clean
all projects and the errors will go away. M7 bug, seems to be fixed in
RC1.
Thanks,
Jeffrey Liu
IBM Rational Software - Performance Analyst
IBM Toronto Lab.
8200 Warden Ave. Markham, Ontario, L6G 1C7
Internal mail: D3/R8V/8200/MKM (D3-268)
T/L: 969 3531
Tel: (905) 413 3531
Fax: (905) 413 4920
jeffliu@xxxxxxxxxx
Jeffrey Liu/Toronto/IBM@IBMCA
Sent by: wtp-dev-bounces@xxxxxxxxxxx
05/27/2005 01:29 PM
Please respond to
"General discussion of project-wide or architectural issues." |
|
To
| "General discussion
of project-wide or architectural issues." <wtp-dev@xxxxxxxxxxx>
|
cc
| "General discussion
of project-wide or architectural issues." <wtp-dev@xxxxxxxxxxx>,
wtp-dev-bounces@xxxxxxxxxxx
|
Subject
| Re: [wtp-dev] Re: Improve
WTP startup performance, use manifest instead
of plugin.xml |
|
Thanks Larry. I won't change any of the RDB plugins.
Jeffrey Liu
IBM Rational Software - Performance Analyst
IBM Toronto Lab.
8200 Warden Ave. Markham, Ontario, L6G 1C7
Internal mail: D3/R8V/8200/MKM (D3-268)
T/L: 969 3531
Tel: (905) 413 3531
Fax: (905) 413 4920
jeffliu@xxxxxxxxxx
Lawrence E Dunnell <ledunnel@xxxxxxxxxx>
Sent by: wtp-dev-bounces@xxxxxxxxxxx
05/27/2005 01:20 PM
Please respond to
"General discussion of project-wide or architectural issues." |
|
To
| "General discussion
of project-wide or architectural issues." <wtp-dev@xxxxxxxxxxx>
|
cc
| wtp-dev@xxxxxxxxxxx, wtp-dev-bounces@xxxxxxxxxxx
|
Subject
| Re: [wtp-dev] Re: Improve
WTP startup performance, use manifest instead
of plugin.xml |
|
Jeffrey,
Please do not make this change for the RDB component.
RDB component must run on Eclipse 3.0. I believe if you deliver this
change, you will break us for Eclipse 3.0.
Larry Dunnell
RAD Data Tools and DB2 Tooling
IBM DB2 Information Management Software
Notes address: Lawrence E Dunnell/Redmond/IBM@IBMUS
Internet address: ledunnel@xxxxxxxxxx
tel: 425 949 1058
tie line: 349 4422
Jeffrey Liu <jeffliu@xxxxxxxxxx>
Sent by: wtp-dev-bounces@xxxxxxxxxxx
05/27/2005 10:18 AM
Please respond to
"General discussion of project-wide or architectural issues." |
|
To
| wtp-dev@xxxxxxxxxxx
|
cc
|
|
Subject
| [wtp-dev] Re: Improve WTP
startup performance, use manifest instead of
plugin.xml |
|
Component leads,
We have yet to convert our plugin.xml to manifest. Since I've already made
the change in my local workspace, I'll go ahead and commit all of them
unless you object.
Thanks,
Jeffrey Liu
IBM Rational Software - Performance Analyst
IBM Toronto Lab.
8200 Warden Ave. Markham, Ontario, L6G 1C7
Internal mail: D3/R8V/8200/MKM (D3-268)
T/L: 969 3531
Tel: (905) 413 3531
Fax: (905) 413 4920
jeffliu@xxxxxxxxxx
Jeffrey Liu/Toronto/IBM
05/15/2005 02:26 PM
|
To
| wtp-dev@xxxxxxxxxxx
|
cc
|
|
Subject
| Improve WTP startup performance,
use manifest instead of plugin.xml |
|
I've done some measurements of using manifest.mf verses plugin.xml. Results
suggest that using manifest.mf can improve startup performance. Details
below:
| manifest.mf (sec)
| plugin.xml (sec)
|
Cold startup (reboot, new install)
- elapsed time
| 49.9
| 54.2
|
Cold startup (reboot, existing install)
- elapsed time
| 22.8
| 24.4
|
Warm startup - elapsed time
| 4.5
| 4.7 |
The numbers are based on 5 sample runs each. In case of cold startup, it
shows ~8% improvement. Althought warm startup is not as impressive and
that users will probably not notice it, still, this is a cheap investment
with nice gain. I suggest we do this in M5. Here's what needs to be done:
1. Open up your plugin.xml in the Plug-in Manifest Editor. In the Overview
tab, there's a link that creates the manifest.mf file. Click that link.

2. Switch to the Runtime tab and make sure your packages are exported.
If they are not, add them to the list.

3. Save and close the editor. Commit and release your changes.
This change does not need to be coordinated since you can have plug-ins
that use plugin.xml and other plug-ins that use manifest.mf. It's a very
simple change, should only take 15 minutes. Can plug-in owners put in this
change when they have a chance? Let me know if you have any concerns.
Thanks,
Jeffrey Liu
IBM Rational Software - Performance Analyst
IBM Toronto Lab.
8200 Warden Ave. Markham, Ontario, L6G 1C7
Internal mail: D3/R8V/8200/MKM (D3-268)
T/L: 969 3531
Tel: (905) 413 3531
Fax: (905) 413 4920
jeffliu@xxxxxxxxxx
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev