Community
Participate
Working Groups
Fix broken externalized strings for the Platform Project. Starting in Eclipse 3.2, the JDT provides a sub-menu on the Source context menu called "Find Broken Externalized Strings" for searching for broken externalized strings in a selected property file, package, project or set of projects: http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/ref-menu-source.htm Since translation is of property string or resource bundles is costly to the project, each Project Lead should ensure unreferenced/unused translated property strings and their resource bundle keys are removed. The Project Lead should ensure all resource bundles in their project's plug-ins are updated before 4.5 is released. Note: Disregard the product/component for this defect since there is no Bugzilla component for general maintenance in a project.
Can you include this in the 4.5 plan (P1 priority/plan keyword)?
Unused keys in: messages.properties - org.eclipse.hyades.execution/src-automation-client/org/eclipse/hyades/automation/client/adapters/shell (4 matches) Undefined keys in: CommandLineArgumentParser.java - org.eclipse.hyades.automation.client.adapters.shell (3 matches) Unused keys in: messages.properties - org.eclipse.hyades.probekit.ui/src/org/eclipse/hyades/probekit/editor/internal/core/util (9 matches) Unused keys in: ProbekitMessages.java - org.eclipse.hyades.probekit.editor.internal.core.util (9 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common/src/org/eclipse/hyades/security/internal/util Unused keys in: SecurityMessages.java - org.eclipse.hyades.security.internal.util Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-common-external/org/eclipse/tptp/platform/common/ui/trace/internal (2 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-common-internal/org/eclipse/tptp/platform/common/ui/internal (69 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-uml2sd/org/eclipse/hyades/uml2sd/util (3 matches) Unused keys in: CommonUIMessages.java - org.eclipse.tptp.platform.common.ui.internal (69 matches) Unused keys in: CommonUITraceMessages.java - org.eclipse.tptp.platform.common.ui.trace.internal (2 matches) Unused keys in: SDMessages.java - org.eclipse.hyades.uml2sd.util (3 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui.trace/src/org/eclipse/hyades/trace/ui/internal/wizard (6 matches) Unused keys in: TraceWizardMessages.java - org.eclipse.hyades.trace.ui.internal.wizard (6 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.iac.administrator/src/org/eclipse/tptp/platform/iac/administrator/internal/preference Unused keys in: PreferenceMessages.java - org.eclipse.tptp.platform.iac.administrator.internal.preference Unused keys in: messages.properties - org.eclipse.tptp.platform.instrumentation.ui/src/org/eclipse/tptp/platform/instrumentation/ui/internal/util (14 matches) Undefined keys in: InstrumentMessages.java - org.eclipse.tptp.platform.instrumentation.ui.internal.util Unused keys in: InstrumentMessages.java - org.eclipse.tptp.platform.instrumentation.ui.internal.util (8 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.jvmti.client/src/org/eclipse/tptp/platform/jvmti/client/internal (2 matches) Unused keys in: TIMessages.java - org.eclipse.tptp.platform.jvmti.client.internal (2 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.la.core/correlation_and_analysis/org/eclipse/hyades/logc/internal/util (2 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.llc.launch/src/org/eclipse/tptp/platform/llc/launch/internal/core (3 matches) Unused keys in: LLCLaunchMessages.java - org.eclipse.tptp.platform.llc.launch.internal.core (3 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.log.views/src/org/eclipse/tptp/platform/log/views/internal (34 matches) Unused keys in: LogViewsMessages.java - org.eclipse.tptp.platform.log.views.internal (34 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/common (64 matches) Undefined keys in: CFGCategoryImpl.java - org.eclipse.hyades.models.common.configuration.impl Undefined keys in: ModelsPlugin.java - org.eclipse.hyades.models.plugin Unused keys in: messages.properties - org.eclipse.tptp.platform.probekit.launch/src/org/eclipse/tptp/platform/probekit/launch/internal/config (7 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.probekit.launch/src/org/eclipse/tptp/platform/probekit/launch/internal/wizard (5 matches) Unused keys in: Messages.java - org.eclipse.tptp.platform.probekit.launch.internal.wizard (5 matches) Unused keys in: ProbekitLaunchMessages.java - org.eclipse.tptp.platform.probekit.launch.internal.config (7 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.profile.server.wst/src/org/eclipse/tptp/platform/profile/server/wst/internal Unused keys in: PluginMessages.java - org.eclipse.tptp.platform.profile.server.wst.internal Unused keys in: messages.properties - org.eclipse.tptp.platform.rcp.common/src/org/eclipse/tptp/platform/rcp/common/provisional (3 matches) Unused keys in: CommonMessages.java - org.eclipse.tptp.platform.rcp.common.provisional (3 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.rcp.log/src/org/eclipse/tptp/platform/rcp/log/internal (7 matches) Unused keys in: LogMessages.java - org.eclipse.tptp.platform.rcp.log.internal (6 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.statistical.report.birt/src/org/eclipse/tptp/platform/statistical/report/birt/internal (3 matches) Undefined keys in: BIRTStatReportWizard.java - org.eclipse.tptp.platform.statistical.report.birt.ui.internal Unused keys in: Messages.java - org.eclipse.tptp.platform.statistical.report.birt.internal (3 matches) Plus 148 problems in org.eclipse.hyades.trace.ui
Created attachment 92947 [details] patch for ProbeKit
Created attachment 92950 [details] Patch for platform.common
Created attachment 93136 [details] Patch for hyades.execution
Created attachment 93137 [details] Patch for platform.common.ui.*
Created attachment 93138 [details] Patch for platform.common.ui.trace
Created attachment 93161 [details] Patch for hyades.trace.ui
Created attachment 93162 [details] Patch for platform.iac.administrator
Created attachment 93163 [details] Patch for platform.instrumentation.ui
Created attachment 93164 [details] Patch for platform.jvmti.client
Created attachment 93165 [details] Patch for platform.la.core
Created attachment 93166 [details] Patch for platform.llc.launch
Created attachment 93167 [details] Patch for platform.log.views
Created attachment 93168 [details] Patch for platform.models
Created attachment 93169 [details] Patch for platform.probekit.launch
Created attachment 93170 [details] Patch for platform.profile.server.wst
Created attachment 93171 [details] Patch for platform.rcp.common
Created attachment 93172 [details] patch for platform.rcp.log
Created attachment 93173 [details] Patch for pltform.statistical.report.birt
Alex, would you please review these patches? Some errors are result of code refactoring for log and trace and perfmon. Thanks.
The following patches contain errors and I couldn't apply them probekit, platform.common,. Please synch up with CVS and recreate the patches. Here are some findings: - org.eclipse.hyades.trace.ui AGENT_DISCOVERER_NAME not removed from org.eclipse.hyades.trace.ui\src\org\eclipse\tptp\trace\ui\internal\control\provider\application\messages.properties - changes in org.eclipse.tptp.platform.common.ui\src-common-internal\org\eclipse\tptp\platform\common\ui\internal\CommonUIMessages.java are breaking the plugin org.eclipse.hyades.ui, please revisit these changes and make sure org.eclipse.hyades.ui is compiling - org.eclipse.tptp.platform.log.views exportLogLabel = E&xport Log With from org.eclipse.tptp.platform.log.views\src\org\eclipse\tptp\platform\log\views\internal\messages.properties should also be removed, it's not used. - it looks to me that the strings in org.eclipse.tptp.platform.models\src-test\org\eclipse\hyades\models\common\common\messages.properties are not used so they can be removed but please confirm with Paul! The rest of the patches look good.
Let me list again the patches that need to be recreated because I couldn't apply them (I missed one): probekit, platform.common, hyades.execution.
Thanks Alex. I had already applied the first two patches because I was sure they were fine. Am looking over the rest of your comments now.
The following patches were previously applied: patch for ProbeKit - Liz had reviewed under https://bugs.eclipse.org/bugs/show_bug.cgi?id=216576 (which will be closed as a DUP of this defect) Patch for platform.common which was simply the removal of one unused message and so I was comfortable checking in that change I will investigate why the patch for hyades.execution could not be applied
Created attachment 93196 [details] Updated patch for hyades.trace.ui
Created attachment 93197 [details] Updated patch for platform.log.views
All patches committed with following exceptions: 1) hyades.execution 2) org.eclipse.tptp.platform.common.ui 3) org.eclipse.tptp.platform.models as per Alex's review comments.
Created attachment 93198 [details] Updated patch for hyades.execution
Paul, would you please review the patch for platform.models and the updated patch for hyades.execution? I am still working on platform.comm.ui.* patch
*** Bug 216576 has been marked as a duplicate of this bug. ***
(In reply to comment #30) > Paul, would you please review the patch for platform.models and the updated > patch for hyades.execution? I am still working on platform.comm.ui.* patch > Reviewed with comments: platform.models: -org.eclipse.hyades.models.common.common.Messages.java needs to be converted to the new Eclipse 3.1 message bundle format (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=127273#c0). -DEPLOY_ROOTDIR_DSC cannot be removed since it is still used in org.eclipse.hyades.models.common.configuration.impl.HyadesRootDirectroyCategoryImpl.java. -The message keys under the '# Categories' comment in /org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/common/messages.properties (except DEPLOY_ROOTDIR_DSC) appear to be used in classes in the org.eclipse.hyades.models.common.configuration.impl package. For example, PROC_SPD_DISP_NAME is used in org.eclipse.hyades.models.common.configuration.impl.HyadesProcessorSpeedCategoryImpl.HyadesProcessorSpeedCategoryImpl(): this.setInternalDisplayName("PROC_SPD_DISP_NAME"); //$NON-NLS-1$ We need to confirm with the Marius (original committer of these classes) if this was the intent or the internal display name should be formattted/tranlsated. For example, this.setInternalDisplayName(Messages.getString("PROC_SPD_DISP_NAME")); //$NON-NLS-1$ hyades.execution: -CommandLineArgumentParser.java does not have any code changes so we do not need to increment the copyright year. -org.eclipse.hyades.automation.client.adapters.shell.Messages.java needs to be converted to the new Eclipse 3.1 message bundle format (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=127273#c0).
Created attachment 94041 [details] Revised patch for hyades.execution
Marius, any feedback re comment 32 please?
Created attachment 94062 [details] Updated patch for platform.models
Created attachment 94083 [details] Updated patch for platform.common.ui
Created attachment 94084 [details] Gets rid of hyades.ui errors
Paul, would you please review the last three active patches: hyades.execution - your comments addressed platform.models - your comments addressed hyades.ui errors - patch for platform.common.ui addressing Alex's comments
Alex, would you pls review? Paul is unavailable and I would like to get this into tonight's build
Joanna the patches for hyades.execution and platform.common.ui are looking good. There is one point I have to make for the execution plugin, I noticed that the resource bundle was moved to use the osgi NLS utility. If the exection plugin is running in standalone mode you need to make sure the org.eclipse.osgi plugin is also packaged. The models patch has problems, it introduces two compiling errors for: ModelsPlugin and CFGCategoryImpl. These classes still use Messages.getString() which doesn't exist anymore. I also noticed that CFGCategoryImpl looks up the string "internalDisplayName" which doesn't exist and didn't exit before. Not sure about this string, perhaps Paul can answer, CFGCategoryImpl is in the test models.
(In reply to comment #40) > There is one point I have to make for the execution plugin, I noticed that the > resource bundle was moved to use the osgi NLS utility. If the exection plugin > is running in standalone mode you need to make sure the org.eclipse.osgi plugin > is also packaged. The OSGi plug-in is already shipped with the Agent Controller so this will not be an issue. > The models patch has problems, it introduces two compiling errors for: > ModelsPlugin and CFGCategoryImpl. These classes still use Messages.getString() > which doesn't exist anymore. > I also noticed that CFGCategoryImpl looks up the string "internalDisplayName" > which doesn't exist and didn't exit before. Not sure about this string, perhaps > Paul can answer, CFGCategoryImpl is in the test models. After looking at the code, org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.java handles resolving internal display names for subclasses (e.g. org.eclipse.hyades.models.common.configuration.impl.HyadesClasspathCategoryImpl.java). This is why the /org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/common/messages.properties strings appeared to not be required in the scan. Since these are public APIs, the solution is: 1) Have each subclass set the localized display name (e.g. ) instead of the internal display name (e.g. org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.setDisplayName(String)) org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.setInternalDisplayName(String)). 2) Depreate the org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.setInternalDisplayName(String) and org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.getDisplayNameGen() methods. 3) Change the body of the org.eclipse.hyades.models.common.configuration.impl.CFGCategoryImpl.setInternalDisplayName(String) method to: setDisplayName(displayName);
(In reply to comment #38) > Paul, would you please review the last three active patches: > hyades.execution - your comments addressed > platform.models - your comments addressed > hyades.ui errors - patch for platform.common.ui addressing Alex's comments > Thanks Joanna for handling all these changes! Review with comments: hyades.execution: -src-automation-client/org/eclipse/hyades/automation/client/adapters/shell/Messages.java needs the '$Id: Messages.java,v 1.4 2005/11/07 00:16:39 sschneid Exp $' added back to the copyright statement and the class comment is missing. -There do not appear to be any changes in the strings for src-automation-client/org/eclipse/hyades/automation/client/adapters/shell/messages.properties but the patch contains updates for each of the strings. platform.models: -The copyright year on src-test/org/eclipse/hyades/models/common/common/Messages.java needs to be changed to '2003, 2008'. Also, the copyright statement is missing the '$Id: Messages.java,v 1.2 2006/02/08 19:56:44 slavescu Exp $'. -For src-test/org/eclipse/hyades/models/common/common/messages.properties, see my comment #41. [Original Comment:] -The message keys under the '# Categories' comment in /org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/common/messages.properties (except DEPLOY_ROOTDIR_DSC) appear to be used in classes in the org.eclipse.hyades.models.common.configuration.impl package. For example, PROC_SPD_DISP_NAME is used in org.eclipse.hyades.models.common.configuration.impl.HyadesProcessorSpeedCategoryImpl.HyadesProcessorSpeedCategoryImpl(): this.setInternalDisplayName("PROC_SPD_DISP_NAME"); //$NON-NLS-1$ We need to confirm with the Marius (original committer of these classes) if this was the intent or the internal display name should be formattted/tranlsated. For example, this.setInternalDisplayName(Messages.getString("PROC_SPD_DISP_NAME")); //$NON-NLS-1$
deferring remaining items in this defect to future with PMC approval
Mass update of P1 enhancements and defects targetted to future to P2.
Kathy, please triage.
Let's try to address the remaining problems in TPTP 4.7.
The copyright years appears to have been fixed since the copyright checker tool is not complaining about these. Resolving.
There appears to more broken externalized strings for the Platform project (based on CVS HEAD): Unused keys in: messages.properties - org.eclipse.hyades.trace.ui/src/org/eclipse/hyades/trace/ui/internal/util (6 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-common-external/org/eclipse/tptp/platform/common/ui/trace/internal (5 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-common-internal/org/eclipse/tptp/platform/common/ui/internal (80 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.common.ui/src-uml2sd/org/eclipse/hyades/uml2sd/util (3 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.la.core/cbe/org/eclipse/tptp/monitoring/log/internal/export (12 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.log.views/src/org/eclipse/tptp/platform/log/views/internal Unused keys in: messages.properties - org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/common (64 matches) Unused keys in: messages.properties - org.eclipse.tptp.platform.models/src-test/org/eclipse/hyades/models/common/datapool/impl (10 matches) Undefined keys in: AttachActionDelegate.java - org.eclipse.hyades.trace.ui.internal.actions Undefined keys in: AttachInfoDialog.java - org.eclipse.hyades.trace.ui.internal.util Undefined keys in: CFGCategoryImpl.java - org.eclipse.hyades.models.common.configuration.impl Undefined keys in: CollectObjRefActionDelegate.java - org.eclipse.hyades.trace.ui.internal.actions Undefined keys in: CSVTraceStatReportWizard.java - org.eclipse.hyades.trace.ui.internal.reports (4 matches) Undefined keys in: DPLEquivalenceClassImpl.java - org.eclipse.hyades.models.common.datapool.impl Undefined keys in: HTMLTraceReportWizard.java - org.eclipse.hyades.trace.ui.internal.reports Undefined keys in: ImportTracePage1.java - org.eclipse.hyades.trace.ui.internal.wizard (5 matches) Undefined keys in: InstrumentAgentControlProvider.java - org.eclipse.tptp.platform.instrumentation.ui.internal.control.provider.application (2 matches) Undefined keys in: InstrumentFiltersUI.java - org.eclipse.tptp.platform.instrumentation.ui.internal.configuration (2 matches) Undefined keys in: InstrumentProcessListener.java - org.eclipse.tptp.platform.instrumentation.ui.internal.launcher.listener (2 matches) Undefined keys in: LaunchProcessUI.java - org.eclipse.hyades.trace.ui.internal.core Undefined keys in: LogAgentControlProvider.java - org.eclipse.tptp.trace.ui.internal.control.provider.application (2 matches) Undefined keys in: ModelsPlugin.java - org.eclipse.hyades.models.plugin Undefined keys in: OpenAgentWizard.java - org.eclipse.hyades.trace.ui.internal.wizard Undefined keys in: OpenCoverageReportView.java - org.eclipse.tptp.platform.llc.launch.internal.actions (6 matches) Undefined keys in: OpenMonitorWizard.java - org.eclipse.hyades.trace.ui.internal.wizard Undefined keys in: OpenProcessWizard.java - org.eclipse.hyades.trace.ui.internal.wizard Undefined keys in: OpenProfAgentWizard.java - org.eclipse.hyades.trace.ui.internal.wizard Undefined keys in: PDCoreUtil.java - org.eclipse.hyades.trace.ui.internal.util Undefined keys in: PIProcessListener.java - org.eclipse.hyades.trace.ui.internal.piclient Undefined keys in: PrimaryLaunchDelegate.java - org.eclipse.tptp.trace.ui.provisional.launcher Undefined keys in: ProcessControlProvider.java - org.eclipse.tptp.trace.ui.provisional.control.provider Undefined keys in: ProcessTreeItem.java - org.eclipse.hyades.trace.ui.internal.util (2 matches) Undefined keys in: ResourceItemControlProvider.java - org.eclipse.tptp.trace.ui.provisional.control.provider (2 matches) Undefined keys in: RunGCActionDelegate.java - org.eclipse.hyades.trace.ui.internal.actions Undefined keys in: TerminateProcessActionDelegate.java - org.eclipse.hyades.trace.ui.internal.actions Undefined keys in: TIInstrumentProcessControlProvider.java - org.eclipse.tptp.platform.instrumentation.ui.internal.control.provider.application Undefined keys in: TIProcessControlProvider.java - org.eclipse.tptp.platform.jvmti.client.internal.controlproviders Undefined keys in: TraceFileUI.java - org.eclipse.hyades.trace.ui.internal.core Undefined keys in: TraceLogActionGroup.java - org.eclipse.hyades.trace.ui.internal.actions Undefined keys in: TraceLogUI.java - org.eclipse.hyades.trace.ui.internal.core (3 matches) Undefined keys in: TraceNavigatorActionGroup.java - org.eclipse.hyades.trace.ui.internal.actions (3 matches) Undefined keys in: TraceProfileFiltersUI.java - org.eclipse.hyades.trace.ui.internal.core (2 matches) Undefined keys in: UIPlugin.java - org.eclipse.hyades.trace.ui Unused keys in: CommonUIMessages.java - org.eclipse.tptp.platform.common.ui.internal (80 matches) Unused keys in: CommonUITraceMessages.java - org.eclipse.tptp.platform.common.ui.trace.internal (5 matches) Unused keys in: LogViewsMessages.java - org.eclipse.tptp.platform.log.views.internal Unused keys in: SDMessages.java - org.eclipse.hyades.uml2sd.util (3 matches) Unused keys in: TraceMessages.java - org.eclipse.hyades.trace.ui.internal.util (6 matches)
Mike, Could you please take a look?
First pass through this, reveals many of the messages are not accurate; it seems the tooling does not understand the way we inherit messages from a base class. There do appear to be a number of messages that are not in fact used, but it is difficult to be sure at this moment since I do not have the entire set of TPTP projects in a single workspace. I'm going to estimate going through this thoroughly at about a day. There may be some risk that a resulting patch may break the build as some of this work is tedious and prone to error. However any breakage should be fairly trivial to correct.
Based on Mike's assessment that many of the strings deemed unused might actually still be used (because of deficiency in the checking code), we'll defer this to a later release.
Deferring to TPTP 4.7.2.
As outlined above, the problem is largely due to the fact that the tooling is reported many false positives. Sorting them from strings that are actually unused is extremely time consuming. No current plans to fix.
Closing.