Bug 280832 - end support for Eclipse 3.3
Summary: end support for Eclipse 3.3
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P2 enhancement with 1 vote (vote)
Target Milestone: 3.3   Edit
Assignee: Steffen Pingel CLA
QA Contact:
URL:
Whiteboard:
Keywords: plan
Depends on:
Blocks: 360273
  Show dependency tree
 
Reported: 2009-06-18 16:22 EDT by Steffen Pingel CLA
Modified: 2011-10-08 01:08 EDT (History)
3 users (show)

See Also:


Attachments
mylyn/context/zip (2.01 KB, application/octet-stream)
2009-06-19 12:13 EDT, David Green CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2009-06-18 16:22:55 EDT
Mylyn currently supports three different Eclipse platform versions: 3.3, 3.4 and 3.5. With the Eclipse Galileo release support for Eclipse 3.6 will be added. Due to the way Mylyn's integrates with the platform it is not always possible to solely rely on API and a number of Mylyn plug-ins have been branched for Eclipse 3.3 to account for changes in the platform. In other places reflective code is used to make the implementation work across all supported Eclipse versions. 

The maintenance of branches, reflective code, multiple update sites and testing on different Eclipse versions imposes significant overhead on Mylyn committers. Feedback from the Mylyn community suggests that Eclipse 3.3 usage has decreased significantly and major Eclipse based product and distributions have moved to Eclipse 3.4 at this point. In order to reduce the maintenance overhead it is planned to end support for Eclipse 3.3 starting with Mylyn 3.3. In addition this will enable Mylyn to take advantage of platform enhancements added in Eclipse 3.4.
Comment 1 Jörg Thönnes CLA 2009-06-19 04:48:05 EDT
While we are still using Eclipse 3.3, we plan to upgrade at least 3.4.2 soon.

Steffen, could you comment which 3.4 feature you are planning to use?

Thanks, Jörg

Comment 2 David Green CLA 2009-06-19 12:13:41 EDT
(In reply to comment #1)
> could you comment which 3.4 feature you are planning to use?

Supporting Eclipse 3.3 means that we have code that looks like this:

bc. 
informationControlCreator = new IInformationControlCreator() {
				@SuppressWarnings("deprecation")
				public IInformationControl createInformationControl(Shell shell) {
					try {
						// try reflection to access 3.4 APIs
						// 	DefaultInformationControl(Shell parent, ToolBarManager toolBarManager, IInformationPresenter presenter);
						return DefaultInformationControl.class.getConstructor(Shell.class, ToolBarManager.class,
								IInformationPresenter.class)
								.newInstance(shell, toolBarManager, new HtmlTextPresenter());
					} catch (NoSuchMethodException e) {
						// no way with 3.3 to get V_SCROLL and a ToolBarManager
						return new DefaultInformationControl(shell, SWT.RESIZE, SWT.V_SCROLL | SWT.H_SCROLL,
								new HtmlTextPresenter());
					} catch (Exception e) {
						throw new IllegalStateException(e);
					}
				}
			};
			
The code is tricky, ugly, and error-prone.  Furthermore you can't use reflection to call a superclass constructor.
Comment 3 David Green CLA 2009-06-19 12:13:45 EDT
Created attachment 139649 [details]
mylyn/context/zip
Comment 4 Steffen Pingel CLA 2009-06-19 14:01:01 EDT
(In reply to comment #1)
> Steffen, could you comment which 3.4 feature you are planning to use?

You can find enhancements that are pending for Eclipse 3.4 by looking for the [e3.4] tag in our Bugzilla. In the long run we would like to take advantage of these 3.4 features:

222429: [e3.4] use colored label decorations in the Task List
https://bugs.eclipse.org/bugs/show_bug.cgi?id=222429

237042: [e3.4] use secure storage to save passwords
https://bugs.eclipse.org/bugs/show_bug.cgi?id=237042

In addition we use "// TODO e3.4 ..." comments in the code to mark pending refactorings (see David's comment 2).
Comment 5 Mik Kersten CLA 2009-07-24 12:24:45 EDT
Steffen: What's your recommendation here?
Comment 6 Steffen Pingel CLA 2009-07-27 13:19:47 EDT
I am in favor of discontinuing Eclipse 3.3 support with the next Mylyn 3.3. release. Users on Eclipse 3.3 will be able to run on the 3.2.x stream for a while until they migrate to Eclipse 3.4 or later. All major Eclipse distributions have a 3.4 based version as far as I know.
Comment 7 Mik Kersten CLA 2009-07-28 19:31:26 EDT
+1
Comment 8 Shawn Minto CLA 2009-07-28 19:41:03 EDT
+1
Comment 9 Jörg Thönnes CLA 2009-07-29 14:32:06 EDT
+1
Comment 10 Steffen Pingel CLA 2009-07-29 17:13:42 EDT
I have created branches for the 3.2.x service release stream: http://dev.eclipse.org/mhonarc/lists/mylyn-dev/msg00757.html

The e_3_3_m_3_x branch will not be updated any further and the e3.3 weekly site will be removed with the next weekly build.
Comment 11 Mik Kersten CLA 2009-09-18 12:23:22 EDT
Support for the Eclipse 3.3 branch has ended.  Those interested in extending the support should comment here, or seek commercial support for that branch, listed at: http://www.eclipse.org/mylyn/support/