Jump to: navigation, search

Difference between revisions of "Mylyn/Porting Guide"

(Changes in 3.2)
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:Mylyn]]  
 
[[Category:Mylyn]]  
  
= Porting from 1.0 to 2.0 =
+
= General =
  
See the <b>[[Mylyn Porting Guide 2.0]]</b>
+
Mylyn follows the Eclipse conventions for [[Version_Numbering|version numbering]] and guarantees [[Evolving_Java-based_APIs|binary backwards compatibility]] for minor releases. Internals are binary backwards compatible between service releases.
  
= Porting from 2.0 to 3.0 =
+
API enhancements can be tracked by searching the source code for the corresponding @since JavaDoc tags or by querying for bugs that have [api] in their summary.
  
See the <b>[[Mylyn/Porting Guide/3.0]]</b>
+
= Pending API changes in 3.10 =
  
= Changes in 3.1 =
+
= Porting from 3.8 to 3.9 =
  
* <code>AbstractRepositoryConnectorUi.getAddExistingTaskWizard()</code> now returns null
+
== Mylyn Reviews ==
* New hyperlink detection {{bug|167941}}
+
* <code>AttributeEditorFactory</code> now requires an <code>IContextService</code> to enable the WikiText task editor extensions
+
* <code>AbstractTaskRepositoryLinkProvider.setTaskRepository()</code> may have repository set to <code>null</code> if association is cleared
+
* <code>AbstractRepositorySettingsPage</code> is now extensible
+
* <code>IUserAttentionListener.userAttentionGained()</code> only fired once {{bug|250072}}
+
* <code>AbstractTaskEditorPage.getEditor()</code>'s signature has changed.
+
  
== Breaking changes ==
+
The Reviews framework has had a major update which resulted in changes to the core model and API. In consequence, the version was updated to 2.0.
  
* Constants in <code>AbstractRepositorySettingsPage</code> have changed
+
= Porting from 3.7 to 3.8 =
  
 +
No API changes that affect integrators.
  
= Changes in 3.2 =
+
= Porting from 3.6 to 3.7 =
* <code>AbstractContextListener</code> uses a single <code>contextChanged(ContextChangeEvent)</code> method instead of separate methods for each event type.  Old methods deprecated.
+
  
== WikiText 1.1 ==
+
== Mylyn Commons ==
  
WikiText 1.1 was released as part of Mylyn 3.2.  WikiText 1.1 has several new API additions which can be found in the source by searching for <tt>@since 1.1</tt>.  All API additions are non-breaking changes unless your project subclasses WikiText classes.  When porting to WikiText 1.1 care should be taken to review these additions where subclassing is used.
+
* {{bug|305782}} Restructuring of Mylyn Commons features
  
The following changes should be noted when porting, as they may cause warnings in your projects:
+
The Mylyn Commons components were restructured and provisional packages were promoted to API. Several bundle IDs, package names and extension IDs were changed in the process. Classes in provisional packages were kept but marked as deprecated and will be removed in a future release. None of the changes break API backwards compatibility but integrations that consumed internal packages or extensions points may need to be adapted.
  
* Several methods in WikiText have been marked as @noreference.  These methods were previously marked as <em>Not API</em> in the javadoc, however @noreference is more explicit and works well with the PDT API tools.  More information about these changes can be found on {{bug|280614}}
+
The following bundles were renamed:
** <code>org.eclipse.mylyn.wikitext.ui.viewer.HtmlViewer.getStylesheet()</code>
+
** <code>org.eclipse.mylyn.wikitext.ui.viewer.HtmlViewer.setStylesheet(Stylesheet)</code>
+
** <code>org.eclipse.mylyn.wikitext.ui.viewer.HtmlViewerConfiguration.createAnnotationHyperlinkDetector()</code>
+
** <code>org.eclipse.mylyn.wikitext.tasks.ui.editor.MarkupTaskEditorExtension.TaskMarkupViewerConfiguration.createAnnotationHyperlinkDetector()</code>
+
  
= Pending changes for 3.x =
+
org.eclipse.mylyn.commons.identity      -> org.eclipse.mylyn.commons.identity.core
 +
org.eclipse.mylyn.commons.notifications -> org.eclipse.mylyn.commons.notifications.ui
 +
org.eclipse.mylyn.commons.repositories  -> org.eclipse.mylyn.commons.repositories.core
 +
org.eclipse.mylyn.commons.team          -> org.eclipse.mylyn.commons.repositories.ui
  
* Closing of idle HttpClient connections
+
A complete list of renamed and added bundles can be found on bug 305782 on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=305782#c13 comment 13].
 +
 
 +
The following packages were renamed:
 +
 
 +
org.eclipse.mylyn.commons.identity    -> org.eclipse.mylyn.commons.identity.core
 +
org.eclipse.mylyn.commons.repositories -> org.eclipse.mylyn.commons.repositories.core
 +
org.eclipse.mylyn.commons.ui.team      -> org.eclipse.mylyn.commons.repositories.ui
 +
 
 +
The following provisional packages were promoted to API (see {{bug|360301}}):
 +
 
 +
org.eclipse.mylyn.internal.provisional.commons.core        -> org.eclipse.mylyn.commons.core
 +
org.eclipse.mylyn.internal.provisional.commons.ui          -> org.eclipse.mylyn.commons.ui
 +
                                                            -> org.eclipse.mylyn.commons.workbench
 +
                                                            -> org.eclipse.mylyn.commons.workbench.browser
 +
                                                            -> org.eclipse.mylyn.commons.workbench.editors
 +
                                                            -> org.eclipse.mylyn.commons.workbench.forms
 +
                                                            -> org.eclipse.mylyn.commons.workbench.search
 +
org.eclipse.mylyn.internal.provisional.commons.ui.actions  -> org.eclipse.mylyn.commons.ui
 +
org.eclipse.mylyn.internal.provisional.commons.ui.commands -> org.eclipse.mylyn.commons.workbench.texteditor
 +
org.eclipse.mylyn.internal.provisional.commons.ui.dialogs  -> org.eclipse.mylyn.commons.ui.dialogs
 +
org.eclipse.mylyn.internal.provisional.commons.ui.editor  -> org.eclipse.mylyn.commons.workbench
 +
 
 +
In some cases provisional packages do not map directly to API packages but classes were distributed among several packages.
 +
 
 +
The following extension points have moved:
 +
 
 +
org.eclipse.mylyn.commons.team.newWizards -> org.eclipse.mylyn.commons.repositories.ui.newWizards
 +
 
 +
The following extension IDs have changed:
 +
 
 +
org.eclipse.mylyn.commons.team.navigator.Repositories -> org.eclipse.mylyn.commons.repositories.ui.navigator.Repositories
 +
org.eclipse.mylyn.commons.team.category              -> org.eclipse.mylyn.commons.repositories.ui.category.Team
 +
 
 +
= Porting from 3.0 to 3.6 =
 +
 
 +
See the <b>[[Mylyn/Porting Guide/3.x]]</b>
 +
 
 +
= Porting from 2.0 to 3.0 =
 +
 
 +
See the <b>[[Mylyn/Porting Guide/3.0]]</b>
 +
 
 +
 
 +
= Porting from 1.0 to 2.0 =
 +
 
 +
See the <b>[[Mylyn Porting Guide 2.0]]</b>

Revision as of 02:48, 6 September 2013


General

Mylyn follows the Eclipse conventions for version numbering and guarantees binary backwards compatibility for minor releases. Internals are binary backwards compatible between service releases.

API enhancements can be tracked by searching the source code for the corresponding @since JavaDoc tags or by querying for bugs that have [api] in their summary.

Pending API changes in 3.10

Porting from 3.8 to 3.9

Mylyn Reviews

The Reviews framework has had a major update which resulted in changes to the core model and API. In consequence, the version was updated to 2.0.

Porting from 3.7 to 3.8

No API changes that affect integrators.

Porting from 3.6 to 3.7

Mylyn Commons

  • bug 305782 Restructuring of Mylyn Commons features

The Mylyn Commons components were restructured and provisional packages were promoted to API. Several bundle IDs, package names and extension IDs were changed in the process. Classes in provisional packages were kept but marked as deprecated and will be removed in a future release. None of the changes break API backwards compatibility but integrations that consumed internal packages or extensions points may need to be adapted.

The following bundles were renamed:

org.eclipse.mylyn.commons.identity      -> org.eclipse.mylyn.commons.identity.core
org.eclipse.mylyn.commons.notifications -> org.eclipse.mylyn.commons.notifications.ui
org.eclipse.mylyn.commons.repositories  -> org.eclipse.mylyn.commons.repositories.core
org.eclipse.mylyn.commons.team          -> org.eclipse.mylyn.commons.repositories.ui

A complete list of renamed and added bundles can be found on bug 305782 on comment 13.

The following packages were renamed:

org.eclipse.mylyn.commons.identity     -> org.eclipse.mylyn.commons.identity.core
org.eclipse.mylyn.commons.repositories -> org.eclipse.mylyn.commons.repositories.core
org.eclipse.mylyn.commons.ui.team      -> org.eclipse.mylyn.commons.repositories.ui

The following provisional packages were promoted to API (see bug 360301):

org.eclipse.mylyn.internal.provisional.commons.core        -> org.eclipse.mylyn.commons.core
org.eclipse.mylyn.internal.provisional.commons.ui          -> org.eclipse.mylyn.commons.ui
                                                           -> org.eclipse.mylyn.commons.workbench
                                                           -> org.eclipse.mylyn.commons.workbench.browser
                                                           -> org.eclipse.mylyn.commons.workbench.editors
                                                           -> org.eclipse.mylyn.commons.workbench.forms
                                                           -> org.eclipse.mylyn.commons.workbench.search
org.eclipse.mylyn.internal.provisional.commons.ui.actions  -> org.eclipse.mylyn.commons.ui
org.eclipse.mylyn.internal.provisional.commons.ui.commands -> org.eclipse.mylyn.commons.workbench.texteditor
org.eclipse.mylyn.internal.provisional.commons.ui.dialogs  -> org.eclipse.mylyn.commons.ui.dialogs
org.eclipse.mylyn.internal.provisional.commons.ui.editor   -> org.eclipse.mylyn.commons.workbench

In some cases provisional packages do not map directly to API packages but classes were distributed among several packages.

The following extension points have moved:

org.eclipse.mylyn.commons.team.newWizards -> org.eclipse.mylyn.commons.repositories.ui.newWizards

The following extension IDs have changed:

org.eclipse.mylyn.commons.team.navigator.Repositories -> org.eclipse.mylyn.commons.repositories.ui.navigator.Repositories
org.eclipse.mylyn.commons.team.category               -> org.eclipse.mylyn.commons.repositories.ui.category.Team

Porting from 3.0 to 3.6

See the Mylyn/Porting Guide/3.x

Porting from 2.0 to 3.0

See the Mylyn/Porting Guide/3.0


Porting from 1.0 to 2.0

See the Mylyn Porting Guide 2.0